'
- // (e.g., 'storage.buckets.list'). A value of '*' matches all
- // permissions,
- // and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
- Permissions []string `json:"permissions,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Action") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Action") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__Rule) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__Rule
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
// GoogleIamV1__SetIamPolicyRequest: Request message for `SetIamPolicy`
// method.
type GoogleIamV1__SetIamPolicyRequest struct {
@@ -2812,8 +2245,8 @@ func (s *GoogleLongrunning__ListOperationsResponse) MarshalJSON() ([]byte, error
type GoogleLongrunning__Operation struct {
// Done: If the value is `false`, it means the operation is still in
// progress.
- // If true, the operation is completed, and either `error` or `response`
- // is
+ // If `true`, the operation is completed, and either `error` or
+ // `response` is
// available.
Done bool `json:"done,omitempty"`
@@ -2983,9 +2416,9 @@ type GoogleRpc__Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -3764,6 +3197,148 @@ func (c *ProjectsJobsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1
}
+// method id "ml.projects.jobs.getIamPolicy":
+
+type ProjectsJobsGetIamPolicyCall struct {
+ s *Service
+ resource string
+ urlParams_ gensupport.URLParams
+ ifNoneMatch_ string
+ ctx_ context.Context
+ header_ http.Header
+}
+
+// GetIamPolicy: Gets the access control policy for a resource.
+// Returns an empty policy if the resource exists and does not have a
+// policy
+// set.
+func (r *ProjectsJobsService) GetIamPolicy(resource string) *ProjectsJobsGetIamPolicyCall {
+ c := &ProjectsJobsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+ c.resource = resource
+ return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *ProjectsJobsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsJobsGetIamPolicyCall {
+ c.urlParams_.Set("fields", googleapi.CombineFields(s))
+ return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *ProjectsJobsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsJobsGetIamPolicyCall {
+ c.ifNoneMatch_ = entityTag
+ return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *ProjectsJobsGetIamPolicyCall) Context(ctx context.Context) *ProjectsJobsGetIamPolicyCall {
+ c.ctx_ = ctx
+ return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *ProjectsJobsGetIamPolicyCall) Header() http.Header {
+ if c.header_ == nil {
+ c.header_ = make(http.Header)
+ }
+ return c.header_
+}
+
+func (c *ProjectsJobsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
+ reqHeaders := make(http.Header)
+ for k, v := range c.header_ {
+ reqHeaders[k] = v
+ }
+ reqHeaders.Set("User-Agent", c.s.userAgent())
+ if c.ifNoneMatch_ != "" {
+ reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+ }
+ var body io.Reader = nil
+ c.urlParams_.Set("alt", alt)
+ urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
+ urls += "?" + c.urlParams_.Encode()
+ req, _ := http.NewRequest("GET", urls, body)
+ req.Header = reqHeaders
+ googleapi.Expand(req.URL, map[string]string{
+ "resource": c.resource,
+ })
+ return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "ml.projects.jobs.getIamPolicy" call.
+// Exactly one of *GoogleIamV1__Policy or error will be non-nil. Any
+// non-2xx status code is an error. Response headers are in either
+// *GoogleIamV1__Policy.ServerResponse.Header or (if a response was
+// returned at all) in error.(*googleapi.Error).Header. Use
+// googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *ProjectsJobsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1__Policy, error) {
+ gensupport.SetOptions(c.urlParams_, opts...)
+ res, err := c.doRequest("json")
+ if res != nil && res.StatusCode == http.StatusNotModified {
+ if res.Body != nil {
+ res.Body.Close()
+ }
+ return nil, &googleapi.Error{
+ Code: res.StatusCode,
+ Header: res.Header,
+ }
+ }
+ if err != nil {
+ return nil, err
+ }
+ defer googleapi.CloseBody(res)
+ if err := googleapi.CheckResponse(res); err != nil {
+ return nil, err
+ }
+ ret := &GoogleIamV1__Policy{
+ ServerResponse: googleapi.ServerResponse{
+ Header: res.Header,
+ HTTPStatusCode: res.StatusCode,
+ },
+ }
+ target := &ret
+ if err := json.NewDecoder(res.Body).Decode(target); err != nil {
+ return nil, err
+ }
+ return ret, nil
+ // {
+ // "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
+ // "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:getIamPolicy",
+ // "httpMethod": "GET",
+ // "id": "ml.projects.jobs.getIamPolicy",
+ // "parameterOrder": [
+ // "resource"
+ // ],
+ // "parameters": {
+ // "resource": {
+ // "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ // "location": "path",
+ // "pattern": "^projects/[^/]+/jobs/[^/]+$",
+ // "required": true,
+ // "type": "string"
+ // }
+ // },
+ // "path": "v1/{+resource}:getIamPolicy",
+ // "response": {
+ // "$ref": "GoogleIamV1__Policy"
+ // },
+ // "scopes": [
+ // "https://www.googleapis.com/auth/cloud-platform"
+ // ]
+ // }
+
+}
+
// method id "ml.projects.jobs.list":
type ProjectsJobsListCall struct {
@@ -3971,6 +3546,289 @@ func (c *ProjectsJobsListCall) Pages(ctx context.Context, f func(*GoogleCloudMlV
}
}
+// method id "ml.projects.jobs.setIamPolicy":
+
+type ProjectsJobsSetIamPolicyCall struct {
+ s *Service
+ resource string
+ googleiamv1__setiampolicyrequest *GoogleIamV1__SetIamPolicyRequest
+ urlParams_ gensupport.URLParams
+ ctx_ context.Context
+ header_ http.Header
+}
+
+// SetIamPolicy: Sets the access control policy on the specified
+// resource. Replaces any
+// existing policy.
+func (r *ProjectsJobsService) SetIamPolicy(resource string, googleiamv1__setiampolicyrequest *GoogleIamV1__SetIamPolicyRequest) *ProjectsJobsSetIamPolicyCall {
+ c := &ProjectsJobsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+ c.resource = resource
+ c.googleiamv1__setiampolicyrequest = googleiamv1__setiampolicyrequest
+ return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *ProjectsJobsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsJobsSetIamPolicyCall {
+ c.urlParams_.Set("fields", googleapi.CombineFields(s))
+ return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *ProjectsJobsSetIamPolicyCall) Context(ctx context.Context) *ProjectsJobsSetIamPolicyCall {
+ c.ctx_ = ctx
+ return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *ProjectsJobsSetIamPolicyCall) Header() http.Header {
+ if c.header_ == nil {
+ c.header_ = make(http.Header)
+ }
+ return c.header_
+}
+
+func (c *ProjectsJobsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
+ reqHeaders := make(http.Header)
+ for k, v := range c.header_ {
+ reqHeaders[k] = v
+ }
+ reqHeaders.Set("User-Agent", c.s.userAgent())
+ var body io.Reader = nil
+ body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1__setiampolicyrequest)
+ if err != nil {
+ return nil, err
+ }
+ reqHeaders.Set("Content-Type", "application/json")
+ c.urlParams_.Set("alt", alt)
+ urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
+ urls += "?" + c.urlParams_.Encode()
+ req, _ := http.NewRequest("POST", urls, body)
+ req.Header = reqHeaders
+ googleapi.Expand(req.URL, map[string]string{
+ "resource": c.resource,
+ })
+ return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "ml.projects.jobs.setIamPolicy" call.
+// Exactly one of *GoogleIamV1__Policy or error will be non-nil. Any
+// non-2xx status code is an error. Response headers are in either
+// *GoogleIamV1__Policy.ServerResponse.Header or (if a response was
+// returned at all) in error.(*googleapi.Error).Header. Use
+// googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *ProjectsJobsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1__Policy, error) {
+ gensupport.SetOptions(c.urlParams_, opts...)
+ res, err := c.doRequest("json")
+ if res != nil && res.StatusCode == http.StatusNotModified {
+ if res.Body != nil {
+ res.Body.Close()
+ }
+ return nil, &googleapi.Error{
+ Code: res.StatusCode,
+ Header: res.Header,
+ }
+ }
+ if err != nil {
+ return nil, err
+ }
+ defer googleapi.CloseBody(res)
+ if err := googleapi.CheckResponse(res); err != nil {
+ return nil, err
+ }
+ ret := &GoogleIamV1__Policy{
+ ServerResponse: googleapi.ServerResponse{
+ Header: res.Header,
+ HTTPStatusCode: res.StatusCode,
+ },
+ }
+ target := &ret
+ if err := json.NewDecoder(res.Body).Decode(target); err != nil {
+ return nil, err
+ }
+ return ret, nil
+ // {
+ // "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ // "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:setIamPolicy",
+ // "httpMethod": "POST",
+ // "id": "ml.projects.jobs.setIamPolicy",
+ // "parameterOrder": [
+ // "resource"
+ // ],
+ // "parameters": {
+ // "resource": {
+ // "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
+ // "location": "path",
+ // "pattern": "^projects/[^/]+/jobs/[^/]+$",
+ // "required": true,
+ // "type": "string"
+ // }
+ // },
+ // "path": "v1/{+resource}:setIamPolicy",
+ // "request": {
+ // "$ref": "GoogleIamV1__SetIamPolicyRequest"
+ // },
+ // "response": {
+ // "$ref": "GoogleIamV1__Policy"
+ // },
+ // "scopes": [
+ // "https://www.googleapis.com/auth/cloud-platform"
+ // ]
+ // }
+
+}
+
+// method id "ml.projects.jobs.testIamPermissions":
+
+type ProjectsJobsTestIamPermissionsCall struct {
+ s *Service
+ resource string
+ googleiamv1__testiampermissionsrequest *GoogleIamV1__TestIamPermissionsRequest
+ urlParams_ gensupport.URLParams
+ ctx_ context.Context
+ header_ http.Header
+}
+
+// TestIamPermissions: Returns permissions that a caller has on the
+// specified resource.
+// If the resource does not exist, this will return an empty set
+// of
+// permissions, not a NOT_FOUND error.
+//
+// Note: This operation is designed to be used for building
+// permission-aware
+// UIs and command-line tools, not for authorization checking. This
+// operation
+// may "fail open" without warning.
+func (r *ProjectsJobsService) TestIamPermissions(resource string, googleiamv1__testiampermissionsrequest *GoogleIamV1__TestIamPermissionsRequest) *ProjectsJobsTestIamPermissionsCall {
+ c := &ProjectsJobsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+ c.resource = resource
+ c.googleiamv1__testiampermissionsrequest = googleiamv1__testiampermissionsrequest
+ return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *ProjectsJobsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsJobsTestIamPermissionsCall {
+ c.urlParams_.Set("fields", googleapi.CombineFields(s))
+ return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *ProjectsJobsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsJobsTestIamPermissionsCall {
+ c.ctx_ = ctx
+ return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *ProjectsJobsTestIamPermissionsCall) Header() http.Header {
+ if c.header_ == nil {
+ c.header_ = make(http.Header)
+ }
+ return c.header_
+}
+
+func (c *ProjectsJobsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
+ reqHeaders := make(http.Header)
+ for k, v := range c.header_ {
+ reqHeaders[k] = v
+ }
+ reqHeaders.Set("User-Agent", c.s.userAgent())
+ var body io.Reader = nil
+ body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1__testiampermissionsrequest)
+ if err != nil {
+ return nil, err
+ }
+ reqHeaders.Set("Content-Type", "application/json")
+ c.urlParams_.Set("alt", alt)
+ urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
+ urls += "?" + c.urlParams_.Encode()
+ req, _ := http.NewRequest("POST", urls, body)
+ req.Header = reqHeaders
+ googleapi.Expand(req.URL, map[string]string{
+ "resource": c.resource,
+ })
+ return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "ml.projects.jobs.testIamPermissions" call.
+// Exactly one of *GoogleIamV1__TestIamPermissionsResponse or error will
+// be non-nil. Any non-2xx status code is an error. Response headers are
+// in either
+// *GoogleIamV1__TestIamPermissionsResponse.ServerResponse.Header or (if
+// a response was returned at all) in error.(*googleapi.Error).Header.
+// Use googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *ProjectsJobsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1__TestIamPermissionsResponse, error) {
+ gensupport.SetOptions(c.urlParams_, opts...)
+ res, err := c.doRequest("json")
+ if res != nil && res.StatusCode == http.StatusNotModified {
+ if res.Body != nil {
+ res.Body.Close()
+ }
+ return nil, &googleapi.Error{
+ Code: res.StatusCode,
+ Header: res.Header,
+ }
+ }
+ if err != nil {
+ return nil, err
+ }
+ defer googleapi.CloseBody(res)
+ if err := googleapi.CheckResponse(res); err != nil {
+ return nil, err
+ }
+ ret := &GoogleIamV1__TestIamPermissionsResponse{
+ ServerResponse: googleapi.ServerResponse{
+ Header: res.Header,
+ HTTPStatusCode: res.StatusCode,
+ },
+ }
+ target := &ret
+ if err := json.NewDecoder(res.Body).Decode(target); err != nil {
+ return nil, err
+ }
+ return ret, nil
+ // {
+ // "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ // "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:testIamPermissions",
+ // "httpMethod": "POST",
+ // "id": "ml.projects.jobs.testIamPermissions",
+ // "parameterOrder": [
+ // "resource"
+ // ],
+ // "parameters": {
+ // "resource": {
+ // "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ // "location": "path",
+ // "pattern": "^projects/[^/]+/jobs/[^/]+$",
+ // "required": true,
+ // "type": "string"
+ // }
+ // },
+ // "path": "v1/{+resource}:testIamPermissions",
+ // "request": {
+ // "$ref": "GoogleIamV1__TestIamPermissionsRequest"
+ // },
+ // "response": {
+ // "$ref": "GoogleIamV1__TestIamPermissionsResponse"
+ // },
+ // "scopes": [
+ // "https://www.googleapis.com/auth/cloud-platform"
+ // ]
+ // }
+
+}
+
// method id "ml.projects.models.create":
type ProjectsModelsCreateCall struct {
@@ -5768,7 +5626,7 @@ func (c *ProjectsModelsVersionsSetDefaultCall) Do(opts ...googleapi.CallOption)
// ],
// "parameters": {
// "name": {
- // "description": "Required. The name of the version to make the default for the model. You\ncan get the names of all the versions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).\n\nAuthorization: `ml.models.update` permission is required on the parent model.",
+ // "description": "Required. The name of the version to make the default for the model. You\ncan get the names of all the versions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).",
// "location": "path",
// "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
// "required": true,
diff --git a/vendor/google.golang.org/api/ml/v1beta1/ml-api.json b/vendor/google.golang.org/api/ml/v1beta1/ml-api.json
index a0ee121..3ed1064 100644
--- a/vendor/google.golang.org/api/ml/v1beta1/ml-api.json
+++ b/vendor/google.golang.org/api/ml/v1beta1/ml-api.json
@@ -1,2103 +1,7 @@
{
- "version_module": "True",
- "schemas": {
- "GoogleIamV1__LogConfig": {
- "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1",
- "type": "object",
- "properties": {
- "counter": {
- "$ref": "GoogleIamV1_LogConfig_CounterOptions",
- "description": "Counter options."
- },
- "dataAccess": {
- "$ref": "GoogleIamV1_LogConfig_DataAccessOptions",
- "description": "Data access options."
- },
- "cloudAudit": {
- "description": "Cloud audit options.",
- "$ref": "GoogleIamV1_LogConfig_CloudAuditOptions"
- }
- },
- "id": "GoogleIamV1__LogConfig"
- },
- "GoogleRpc__Status": {
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object",
- "properties": {
- "details": {
- "items": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "type": "array",
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use."
- },
- "code": {
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "type": "integer"
- },
- "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"
- }
- },
- "id": "GoogleRpc__Status"
- },
- "GoogleCloudMlV1beta1__PredictRequest": {
- "description": "Request for predictions to be issued against a trained model.\n\nThe body of the request is a single JSON object with a single top-level\nfield:\n\n\u003cdl\u003e\n \u003cdt\u003einstances\u003c/dt\u003e\n \u003cdd\u003eA JSON array containing values representing the instances to use for\n prediction.\u003c/dd\u003e\n\u003c/dl\u003e\n\nThe structure of each element of the instances list is determined by your\nmodel's input definition. Instances can include named inputs or can contain\nonly unlabeled values.\n\nNot all data includes named inputs. Some instances will be simple\nJSON values (boolean, number, or string). However, instances are often lists\nof simple values, or complex nested lists. Here are some examples of request\nbodies:\n\nCSV data with each row encoded as a string value:\n\u003cpre\u003e\n{\"instances\": [\"1.0,true,\\\\\"x\\\\\"\", \"-2.0,false,\\\\\"y\\\\\"\"]}\n\u003c/pre\u003e\nPlain text:\n\u003cpre\u003e\n{\"instances\": [\"the quick brown fox\", \"la bruja le dio\"]}\n\u003c/pre\u003e\nSentences encoded as lists of words (vectors of strings):\n\u003cpre\u003e\n{\n \"instances\": [\n [\"the\",\"quick\",\"brown\"],\n [\"la\",\"bruja\",\"le\"],\n ...\n ]\n}\n\u003c/pre\u003e\nFloating point scalar values:\n\u003cpre\u003e\n{\"instances\": [0.0, 1.1, 2.2]}\n\u003c/pre\u003e\nVectors of integers:\n\u003cpre\u003e\n{\n \"instances\": [\n [0, 1, 2],\n [3, 4, 5],\n ...\n ]\n}\n\u003c/pre\u003e\nTensors (in this case, two-dimensional tensors):\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [0, 1, 2],\n [3, 4, 5]\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nImages can be represented different ways. In this encoding scheme the first\ntwo dimensions represent the rows and columns of the image, and the third\ncontains lists (vectors) of the R, G, and B values for each pixel.\n\u003cpre\u003e\n{\n \"instances\": [\n [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ],\n ...\n ]\n}\n\u003c/pre\u003e\nJSON strings must be encoded as UTF-8. To send binary data, you must\nbase64-encode the data and mark it as binary. To mark a JSON string\nas binary, replace it with a JSON object with a single attribute named `b64`:\n\u003cpre\u003e{\"b64\": \"...\"} \u003c/pre\u003e\nFor example:\n\nTwo Serialized tf.Examples (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"X5ad6u\"}, {\"b64\": \"IA9j4nx\"}]}\n\u003c/pre\u003e\nTwo JPEG image byte strings (fake data, for illustrative purposes only):\n\u003cpre\u003e\n{\"instances\": [{\"b64\": \"ASa8asdf\"}, {\"b64\": \"JLK7ljk3\"}]}\n\u003c/pre\u003e\nIf your data includes named references, format each instance as a JSON object\nwith the named references as the keys:\n\nJSON input data to be preprocessed:\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"a\": 1.0,\n \"b\": true,\n \"c\": \"x\"\n },\n {\n \"a\": -2.0,\n \"b\": false,\n \"c\": \"y\"\n }\n ]\n}\n\u003c/pre\u003e\nSome models have an underlying TensorFlow graph that accepts multiple input\ntensors. In this case, you should use the names of JSON name/value pairs to\nidentify the input tensors, as shown in the following exmaples:\n\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(base64-encoded string):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": {\"b64\": \"ASa8asdf\"}\n },\n {\n \"tag\": \"car\",\n \"image\": {\"b64\": \"JLK7ljk3\"}\n }\n ]\n}\n\u003c/pre\u003e\nFor a graph with input tensor aliases \"tag\" (string) and \"image\"\n(3-dimensional array of 8-bit ints):\n\u003cpre\u003e\n{\n \"instances\": [\n {\n \"tag\": \"beach\",\n \"image\": [\n [\n [138, 30, 66],\n [130, 20, 56],\n ...\n ],\n [\n [126, 38, 61],\n [122, 24, 57],\n ...\n ],\n ...\n ]\n },\n {\n \"tag\": \"car\",\n \"image\": [\n [\n [255, 0, 102],\n [255, 0, 97],\n ...\n ],\n [\n [254, 1, 101],\n [254, 2, 93],\n ...\n ],\n ...\n ]\n },\n ...\n ]\n}\n\u003c/pre\u003e\nIf the call is successful, the response body will contain one prediction\nentry per instance in the request body. If prediction fails for any\ninstance, the response body will contain no predictions and will contian\na single error entry instead.",
- "type": "object",
- "properties": {
- "httpBody": {
- "$ref": "GoogleApi__HttpBody",
- "description": "\nRequired. The prediction request body."
- }
- },
- "id": "GoogleCloudMlV1beta1__PredictRequest"
- },
- "GoogleCloudMlV1beta1__PredictionInput": {
- "description": "Represents input parameters for a prediction job.",
- "type": "object",
- "properties": {
- "versionName": {
- "description": "Use this field if you want to specify a version of the model to use. The\nstring is formatted the same way as `model_version`, with the addition\nof the version information:\n\n`\"projects/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003eYOUR_MODEL/versions/\u003cvar\u003e[YOUR_VERSION]\u003c/var\u003e\"`",
- "type": "string"
- },
- "modelName": {
- "description": "Use this field if you want to use the default version for the specified\nmodel. The string must use the following format:\n\n`\"projects/\u003cvar\u003e[YOUR_PROJECT]\u003c/var\u003e/models/\u003cvar\u003e[YOUR_MODEL]\u003c/var\u003e\"`",
- "type": "string"
- },
- "outputPath": {
- "description": "Required. The output Google Cloud Storage location.",
- "type": "string"
- },
- "uri": {
- "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.",
- "type": "string"
- },
- "maxWorkerCount": {
- "format": "int64",
- "description": "Optional. The maximum number of workers to be used for parallel processing.\nDefaults to 10 if not specified.",
- "type": "string"
- },
- "dataFormat": {
- "enumDescriptions": [
- "Unspecified format.",
- "The source file is a text file with instances separated by the\nnew-line character.",
- "The source file is a TFRecord file.",
- "The source file is a GZIP-compressed TFRecord file."
- ],
- "enum": [
- "DATA_FORMAT_UNSPECIFIED",
- "TEXT",
- "TF_RECORD",
- "TF_RECORD_GZIP"
- ],
- "description": "Required. The format of the input data files.",
- "type": "string"
- },
- "runtimeVersion": {
- "description": "Optional. The Google Cloud ML runtime version to use for this batch\nprediction. If not set, Google Cloud ML will pick the runtime version used\nduring the CreateVersion request for this model version, or choose the\nlatest stable version when model version information is not available\nsuch as when the model is specified by uri.",
- "type": "string"
- },
- "inputPaths": {
- "description": "Required. The Google Cloud Storage location of the input data files.\nMay contain wildcards.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "region": {
- "description": "Required. The Google Compute Engine region to run the prediction job in.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1beta1__PredictionInput"
- },
- "GoogleApi__HttpBody": {
- "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.",
- "type": "object",
- "properties": {
- "extensions": {
- "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs.",
- "items": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "type": "array"
- },
- "data": {
- "format": "byte",
- "description": "HTTP body binary data.",
- "type": "string"
- },
- "contentType": {
- "description": "The HTTP Content-Type string representing the content type of the body.",
- "type": "string"
- }
- },
- "id": "GoogleApi__HttpBody"
- },
- "GoogleCloudMlV1beta1__ListVersionsResponse": {
- "description": "Response message for the ListVersions method.",
- "type": "object",
- "properties": {
- "nextPageToken": {
- "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.",
- "type": "string"
- },
- "versions": {
- "description": "The list of versions.",
- "items": {
- "$ref": "GoogleCloudMlV1beta1__Version"
- },
- "type": "array"
- }
- },
- "id": "GoogleCloudMlV1beta1__ListVersionsResponse"
- },
- "GoogleCloudMlV1beta1__Version": {
- "description": "Represents a version of the model.\n\nEach version is a trained model deployed in the cloud, ready to handle\nprediction requests. A model can have multiple versions. You can get\ninformation about all of the versions of a given model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.models.versions/list).",
- "type": "object",
- "properties": {
- "manualScaling": {
- "$ref": "GoogleCloudMlV1beta1__ManualScaling",
- "description": "Manually select the number of nodes to use for serving the\nmodel. You should generally use `automatic_scaling` with an appropriate\n`min_nodes` instead, but this option is available if you want predictable\nbilling. Beware that latency and error rates will increase if the\ntraffic exceeds that capability of the system to serve it based on\nthe selected number of nodes."
- },
- "state": {
- "enum": [
- "UNKNOWN",
- "READY",
- "CREATING",
- "FAILED"
- ],
- "description": "Output only. The state of a version.",
- "type": "string",
- "enumDescriptions": [
- "/ The version state is unspecified.",
- "The version is ready for prediction.",
- "The version is still in the process of creation.",
- "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure."
- ]
- },
- "name": {
- "type": "string",
- "description": "Required.The name specified for the version when it was created.\n\nThe version name must be unique within the model it is created in."
- },
- "errorMessage": {
- "description": "Output only. The details of a failure or a cancellation.",
- "type": "string"
- },
- "automaticScaling": {
- "description": "Automatically scale the number of nodes used to serve the model in\nresponse to increases and decreases in traffic. Care should be\ntaken to ramp up traffic according to the model's ability to scale\nor you will start seeing increases in latency and 429 response codes.",
- "$ref": "GoogleCloudMlV1beta1__AutomaticScaling"
- },
- "lastUseTime": {
- "format": "google-datetime",
- "description": "Output only. The time the version was last used for prediction.",
- "type": "string"
- },
- "runtimeVersion": {
- "description": "Optional. The Google Cloud ML runtime version to use for this deployment.\nIf not set, Google Cloud ML will choose a version.",
- "type": "string"
- },
- "description": {
- "description": "Optional. The description specified for the version when it was created.",
- "type": "string"
- },
- "deploymentUri": {
- "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) for more\ninformaiton.\n\nWhen passing Version to\n[projects.models.versions.create](/ml-engine/reference/rest/v1beta1/projects.models.versions/create)\nthe model service uses the specified location as the source of the model.\nOnce deployed, the model version is hosted by the prediction service, so\nthis location is useful only as a historical record.\nThe total number of model files can't exceed 1000.",
- "type": "string"
- },
- "isDefault": {
- "description": "Output only. If true, this version will be used to handle prediction\nrequests that do not specify a version.\n\nYou can change the default version by calling\n[projects.methods.versions.setDefault](/ml-engine/reference/rest/v1beta1/projects.models.versions/setDefault).",
- "type": "boolean"
- },
- "createTime": {
- "format": "google-datetime",
- "description": "Output only. The time the version was created.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1beta1__Version"
- },
- "GoogleCloudMlV1beta1__ListJobsResponse": {
- "properties": {
- "jobs": {
- "description": "The list of jobs.",
- "items": {
- "$ref": "GoogleCloudMlV1beta1__Job"
- },
- "type": "array"
- },
- "nextPageToken": {
- "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1beta1__ListJobsResponse",
- "description": "Response message for the ListJobs method.",
- "type": "object"
- },
- "GoogleIamV1__TestIamPermissionsResponse": {
- "properties": {
- "permissions": {
- "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "GoogleIamV1__TestIamPermissionsResponse",
- "description": "Response message for `TestIamPermissions` method.",
- "type": "object"
- },
- "GoogleIamV1__SetIamPolicyRequest": {
- "id": "GoogleIamV1__SetIamPolicyRequest",
- "description": "Request message for `SetIamPolicy` method.",
- "type": "object",
- "properties": {
- "updateMask": {
- "format": "google-fieldmask",
- "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.",
- "type": "string"
- },
- "policy": {
- "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.",
- "$ref": "GoogleIamV1__Policy"
- }
- }
- },
- "GoogleCloudMlV1__AutomaticScaling": {
- "id": "GoogleCloudMlV1__AutomaticScaling",
- "description": "Options for automatically scaling a model.",
- "type": "object",
- "properties": {
- "minNodes": {
- "type": "integer",
- "format": "int32",
- "description": "Optional. The minimum number of nodes to allocate for this model. These\nnodes are always up, starting from the time the model is deployed, so the\ncost of operating this model will be at least\n`rate` * `min_nodes` * number of hours since last billing cycle,\nwhere `rate` is the cost per node-hour as documented in\n[pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),\neven if no predictions are performed. There is additional cost for each\nprediction performed.\n\nUnlike manual scaling, if the load gets too heavy for the nodes\nthat are up, the service will automatically add nodes to handle the\nincreased load as well as scale back as traffic drops, always maintaining\nat least `min_nodes`. You will be charged for the time in which additional\nnodes are used.\n\nIf not specified, `min_nodes` defaults to 0, in which case, when traffic\nto a model stops (and after a cool-down period), nodes will be shut down\nand no charges will be incurred until traffic to the model resumes."
- }
- }
- },
- "GoogleCloudMlV1beta1__CancelJobRequest": {
- "description": "Request message for the CancelJob method.",
- "type": "object",
- "properties": {},
- "id": "GoogleCloudMlV1beta1__CancelJobRequest"
- },
- "GoogleCloudMlV1beta1__Model": {
- "id": "GoogleCloudMlV1beta1__Model",
- "description": "Represents a machine learning solution.\n\nA model can have multiple versions, each of which is a deployed, trained\nmodel ready to receive prediction requests. The model itself is just a\ncontainer.",
- "type": "object",
- "properties": {
- "onlinePredictionLogging": {
- "description": "Optional. If true, enables StackDriver Logging for online prediction.\nDefault is false.",
- "type": "boolean"
- },
- "defaultVersion": {
- "$ref": "GoogleCloudMlV1beta1__Version",
- "description": "Output only. The default version of the model. This version will be used to\nhandle prediction requests that do not specify a version.\n\nYou can change the default version by calling\n[projects.methods.versions.setDefault](/ml-engine/reference/rest/v1beta1/projects.models.versions/setDefault)."
- },
- "regions": {
- "description": "Optional. The list of regions where the model is going to be deployed.\nCurrently only one region per model is supported.\nDefaults to 'us-central1' if nothing is set.\nNote:\n* No matter where a model is deployed, it can always be accessed by\n users from anywhere, both for online and batch prediction.\n* The region for a batch prediction job is set by the region field when\n submitting the batch prediction job and does not take its value from\n this field.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "name": {
- "description": "Required. The name specified for the model when it was created.\n\nThe model name must be unique within the project it is created in.",
- "type": "string"
- },
- "description": {
- "description": "Optional. The description specified for the model when it was created.",
- "type": "string"
- }
- }
- },
- "GoogleIamV1__Policy": {
- "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
- "type": "object",
- "properties": {
- "etag": {
- "format": "byte",
- "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
- "type": "string"
- },
- "iamOwned": {
- "type": "boolean"
- },
- "rules": {
- "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.",
- "items": {
- "$ref": "GoogleIamV1__Rule"
- },
- "type": "array"
- },
- "version": {
- "format": "int32",
- "description": "Version of the `Policy`. The default version is 0.",
- "type": "integer"
- },
- "auditConfigs": {
- "description": "Specifies cloud audit logging configuration for this policy.",
- "items": {
- "$ref": "GoogleIamV1__AuditConfig"
- },
- "type": "array"
- },
- "bindings": {
- "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
- "items": {
- "$ref": "GoogleIamV1__Binding"
- },
- "type": "array"
- }
- },
- "id": "GoogleIamV1__Policy"
- },
- "GoogleCloudMlV1beta1__Job": {
- "description": "Represents a training or prediction job.",
- "type": "object",
- "properties": {
- "trainingOutput": {
- "$ref": "GoogleCloudMlV1beta1__TrainingOutput",
- "description": "The current training job result."
- },
- "createTime": {
- "format": "google-datetime",
- "description": "Output only. When the job was created.",
- "type": "string"
- },
- "trainingInput": {
- "description": "Input parameters to create a training job.",
- "$ref": "GoogleCloudMlV1beta1__TrainingInput"
- },
- "predictionInput": {
- "description": "Input parameters to create a prediction job.",
- "$ref": "GoogleCloudMlV1beta1__PredictionInput"
- },
- "state": {
- "enumDescriptions": [
- "The job state is unspecified.",
- "The job has been just created and processing has not yet begun.",
- "The service is preparing to run the job.",
- "The job is in progress.",
- "The job completed successfully.",
- "The job failed.\n`error_message` should contain the details of the failure.",
- "The job is being cancelled.\n`error_message` should describe the reason for the cancellation.",
- "The job has been cancelled.\n`error_message` should describe the reason for the cancellation."
- ],
- "enum": [
- "STATE_UNSPECIFIED",
- "QUEUED",
- "PREPARING",
- "RUNNING",
- "SUCCEEDED",
- "FAILED",
- "CANCELLING",
- "CANCELLED"
- ],
- "description": "Output only. The detailed state of a job.",
- "type": "string"
- },
- "errorMessage": {
- "description": "Output only. The details of a failure or a cancellation.",
- "type": "string"
- },
- "jobId": {
- "description": "Required. The user-specified id of the job.",
- "type": "string"
- },
- "endTime": {
- "format": "google-datetime",
- "description": "Output only. When the job processing was completed.",
- "type": "string"
- },
- "startTime": {
- "format": "google-datetime",
- "description": "Output only. When the job processing was started.",
- "type": "string"
- },
- "predictionOutput": {
- "description": "The current prediction job result.",
- "$ref": "GoogleCloudMlV1beta1__PredictionOutput"
- }
- },
- "id": "GoogleCloudMlV1beta1__Job"
- },
- "GoogleCloudMlV1beta1__AutomaticScaling": {
- "description": "Options for automatically scaling a model.",
- "type": "object",
- "properties": {
- "minNodes": {
- "format": "int32",
- "description": "Optional. The minimum number of nodes to allocate for this model. These\nnodes are always up, starting from the time the model is deployed, so the\ncost of operating this model will be at least\n`rate` * `min_nodes` * number of hours since last billing cycle,\nwhere `rate` is the cost per node-hour as documented in\n[pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),\neven if no predictions are performed. There is additional cost for each\nprediction performed.\n\nUnlike manual scaling, if the load gets too heavy for the nodes\nthat are up, the service will automatically add nodes to handle the\nincreased load as well as scale back as traffic drops, always maintaining\nat least `min_nodes`. You will be charged for the time in which additional\nnodes are used.\n\nIf not specified, `min_nodes` defaults to 0, in which case, when traffic\nto a model stops (and after a cool-down period), nodes will be shut down\nand no charges will be incurred until traffic to the model resumes.",
- "type": "integer"
- }
- },
- "id": "GoogleCloudMlV1beta1__AutomaticScaling"
- },
- "GoogleCloudMlV1beta1__TrainingInput": {
- "type": "object",
- "properties": {
- "workerType": {
- "description": "Optional. Specifies the type of virtual machine to use for your training\njob's worker nodes.\n\nThe supported values are the same as those described in the entry for\n`masterType`.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`workerCount` is greater than zero.",
- "type": "string"
- },
- "args": {
- "description": "Optional. Command line arguments to pass to the program.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "region": {
- "description": "Required. The Google Compute Engine region to run the training job in.",
- "type": "string"
- },
- "parameterServerType": {
- "description": "Optional. Specifies the type of virtual machine to use for your training\njob's parameter server.\n\nThe supported values are the same as those described in the entry for\n`master_type`.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`parameter_server_count` is greater than zero.",
- "type": "string"
- },
- "scaleTier": {
- "enum": [
- "BASIC",
- "STANDARD_1",
- "PREMIUM_1",
- "BASIC_GPU",
- "CUSTOM"
- ],
- "description": "Required. Specifies the machine types, the number of replicas for workers\nand parameter servers.",
- "type": "string",
- "enumDescriptions": [
- "A single worker instance. This tier is suitable for learning how to use\nCloud ML, and for experimenting with new models using small datasets.",
- "Many workers and a few parameter servers.",
- "A large number of workers with many parameter servers.",
- "A single worker instance [with a GPU](/ml-engine/docs/how-tos/using-gpus).",
- "The CUSTOM tier is not a set tier, but rather enables you to use your\nown cluster specification. When you use this tier, set values to\nconfigure your processing cluster according to these guidelines:\n\n* You _must_ set `TrainingInput.masterType` to specify the type\n of machine to use for your master node. This is the only required\n setting.\n\n* You _may_ set `TrainingInput.workerCount` to specify the number of\n workers to use. If you specify one or more workers, you _must_ also\n set `TrainingInput.workerType` to specify the type of machine to use\n for your worker nodes.\n\n* You _may_ set `TrainingInput.parameterServerCount` to specify the\n number of parameter servers to use. If you specify one or more\n parameter servers, you _must_ also set\n `TrainingInput.parameterServerType` to specify the type of machine to\n use for your parameter servers.\n\nNote that all of your workers must use the same machine type, which can\nbe different from your parameter server type and master type. Your\nparameter servers must likewise use the same machine type, which can be\ndifferent from your worker type and master type."
- ]
- },
- "jobDir": {
- "description": "Optional. A Google Cloud Storage path in which to store training outputs\nand other data needed for training. This path is passed to your TensorFlow\nprogram as the 'job_dir' command-line argument. The benefit of specifying\nthis field is that Cloud ML validates the path for use in training.",
- "type": "string"
- },
- "hyperparameters": {
- "$ref": "GoogleCloudMlV1beta1__HyperparameterSpec",
- "description": "Optional. The set of Hyperparameters to tune."
- },
- "parameterServerCount": {
- "format": "int64",
- "description": "Optional. The number of parameter server replicas to use for the training\njob. Each replica in the cluster will be of the type specified in\n`parameter_server_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`.If you\nset this value, you must also set `parameter_server_type`.",
- "type": "string"
- },
- "packageUris": {
- "description": "Required. The Google Cloud Storage location of the packages with\nthe training program and any additional dependencies.\nThe maximum number of package URIs is 100.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "workerCount": {
- "format": "int64",
- "description": "Optional. The number of worker replicas to use for the training job. Each\nreplica in the cluster will be of the type specified in `worker_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `worker_type`.",
- "type": "string"
- },
- "masterType": {
- "description": "Optional. Specifies the type of virtual machine to use for your training\njob's master worker.\n\nThe following types are supported:\n\n\u003cdl\u003e\n \u003cdt\u003estandard\u003c/dt\u003e\n \u003cdd\u003e\n A basic machine configuration suitable for training simple models with\n small to moderate datasets.\n \u003c/dd\u003e\n \u003cdt\u003elarge_model\u003c/dt\u003e\n \u003cdd\u003e\n A machine with a lot of memory, specially suited for parameter servers\n when your model is large (having many hidden layers or layers with very\n large numbers of nodes).\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_s\u003c/dt\u003e\n \u003cdd\u003e\n A machine suitable for the master and workers of the cluster when your\n model requires more computation than the standard machine can handle\n satisfactorily.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_m\u003c/dt\u003e\n \u003cdd\u003e\n A machine with roughly twice the number of cores and roughly double the\n memory of \u003ccode suppresswarning=\"true\"\u003ecomplex_model_s\u003c/code\u003e.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_l\u003c/dt\u003e\n \u003cdd\u003e\n A machine with roughly twice the number of cores and roughly double the\n memory of \u003ccode suppresswarning=\"true\"\u003ecomplex_model_m\u003c/code\u003e.\n \u003c/dd\u003e\n \u003cdt\u003estandard_gpu\u003c/dt\u003e\n \u003cdd\u003e\n A machine equivalent to \u003ccode suppresswarning=\"true\"\u003estandard\u003c/code\u003e that\n also includes a\n \u003ca href=\"/ml-engine/docs/how-tos/using-gpus\"\u003e\n GPU that you can use in your trainer\u003c/a\u003e.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_m_gpu\u003c/dt\u003e\n \u003cdd\u003e\n A machine equivalent to\n \u003ccode suppresswarning=\"true\"\u003ecomplex_model_m\u003c/code\u003e that also includes\n four GPUs.\n \u003c/dd\u003e\n\u003c/dl\u003e\n\nYou must set this value when `scaleTier` is set to `CUSTOM`.",
- "type": "string"
- },
- "runtimeVersion": {
- "description": "Optional. The Google Cloud ML runtime version to use for training. If not\nset, Google Cloud ML will choose the latest stable version.",
- "type": "string"
- },
- "pythonModule": {
- "description": "Required. The Python module name to run after installing the packages.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1beta1__TrainingInput",
- "description": "Represents input parameters for a training job."
- },
- "GoogleLongrunning__ListOperationsResponse": {
- "description": "The response message for Operations.ListOperations.",
- "type": "object",
- "properties": {
- "nextPageToken": {
- "description": "The standard List next-page token.",
- "type": "string"
- },
- "operations": {
- "description": "A list of operations that matches the specified filter in the request.",
- "items": {
- "$ref": "GoogleLongrunning__Operation"
- },
- "type": "array"
- }
- },
- "id": "GoogleLongrunning__ListOperationsResponse"
- },
- "GoogleIamV1__Condition": {
- "description": "A condition to be met.",
- "type": "object",
- "properties": {
- "value": {
- "description": "DEPRECATED. Use 'values' instead.",
- "type": "string"
- },
- "sys": {
- "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.",
- "type": "string",
- "enumDescriptions": [
- "Default non-attribute type",
- "Region of the resource",
- "Service name",
- "Resource name",
- "IP address of the caller"
- ],
- "enum": [
- "NO_ATTR",
- "REGION",
- "SERVICE",
- "NAME",
- "IP"
- ]
- },
- "values": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "The objects of the condition. This is mutually exclusive with 'value'."
- },
- "iam": {
- "description": "Trusted attributes supplied by the IAM system.",
- "type": "string",
- "enumDescriptions": [
- "Default non-attribute.",
- "Either principal or (if present) authority selector.",
- "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.",
- "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).",
- "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported."
- ],
- "enum": [
- "NO_ATTR",
- "AUTHORITY",
- "ATTRIBUTION",
- "APPROVER",
- "JUSTIFICATION_TYPE"
- ]
- },
- "op": {
- "enumDescriptions": [
- "Default no-op.",
- "DEPRECATED. Use IN instead.",
- "DEPRECATED. Use NOT_IN instead.",
- "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.",
- "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.",
- "Subject is discharged"
- ],
- "enum": [
- "NO_OP",
- "EQUALS",
- "NOT_EQUALS",
- "IN",
- "NOT_IN",
- "DISCHARGED"
- ],
- "description": "An operator to apply the subject with.",
- "type": "string"
- },
- "svc": {
- "description": "Trusted attributes discharged by the service.",
- "type": "string"
- }
- },
- "id": "GoogleIamV1__Condition"
- },
- "GoogleCloudMlV1beta1__GetConfigResponse": {
- "description": "Returns service account information associated with a project.",
- "type": "object",
- "properties": {
- "serviceAccountProject": {
- "type": "string",
- "format": "int64",
- "description": "The project number for `service_account`."
- },
- "serviceAccount": {
- "description": "The service account Cloud ML uses to access resources in the project.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1beta1__GetConfigResponse"
- },
- "GoogleCloudMlV1beta1__SetDefaultVersionRequest": {
- "id": "GoogleCloudMlV1beta1__SetDefaultVersionRequest",
- "description": "Request message for the SetDefaultVersion request.",
- "type": "object",
- "properties": {}
- },
- "GoogleCloudMlV1__ManualScaling": {
- "properties": {
- "nodes": {
- "type": "integer",
- "format": "int32",
- "description": "The number of nodes to allocate for this model. These nodes are always up,\nstarting from the time the model is deployed, so the cost of operating\nthis model will be proportional to `nodes` * number of hours since\nlast billing cycle plus the cost for each prediction performed."
- }
- },
- "id": "GoogleCloudMlV1__ManualScaling",
- "description": "Options for manually scaling a model.",
- "type": "object"
- },
- "GoogleIamV1__Binding": {
- "description": "Associates `members` with a `role`.",
- "type": "object",
- "properties": {
- "role": {
- "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
- "type": "string"
- },
- "condition": {
- "$ref": "GoogleType__Expr",
- "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL."
- },
- "members": {
- "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "GoogleIamV1__Binding"
- },
- "GoogleIamV1__Rule": {
- "description": "A rule to be applied in a Policy.",
- "type": "object",
- "properties": {
- "logConfig": {
- "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.",
- "items": {
- "$ref": "GoogleIamV1__LogConfig"
- },
- "type": "array"
- },
- "in": {
- "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "permissions": {
- "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "action": {
- "enumDescriptions": [
- "Default no action.",
- "Matching 'Entries' grant access.",
- "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.",
- "Matching 'Entries' deny access.",
- "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.",
- "Matching 'Entries' tell IAM.Check callers to generate logs."
- ],
- "enum": [
- "NO_ACTION",
- "ALLOW",
- "ALLOW_WITH_LOG",
- "DENY",
- "DENY_WITH_LOG",
- "LOG"
- ],
- "description": "Required",
- "type": "string"
- },
- "notIn": {
- "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "description": {
- "description": "Human-readable description of the rule.",
- "type": "string"
- },
- "conditions": {
- "description": "Additional restrictions that must be met",
- "items": {
- "$ref": "GoogleIamV1__Condition"
- },
- "type": "array"
- }
- },
- "id": "GoogleIamV1__Rule"
- },
- "GoogleIamV1_LogConfig_CounterOptions": {
- "description": "Options for counters",
- "type": "object",
- "properties": {
- "field": {
- "description": "The field value to attribute.",
- "type": "string"
- },
- "metric": {
- "type": "string",
- "description": "The metric to update."
- }
- },
- "id": "GoogleIamV1_LogConfig_CounterOptions"
- },
- "GoogleCloudMlV1beta1__ParameterSpec": {
- "type": "object",
- "properties": {
- "minValue": {
- "type": "number",
- "format": "double",
- "description": "Required if type is `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is INTEGER."
- },
- "discreteValues": {
- "description": "Required if type is `DISCRETE`.\nA list of feasible points.\nThe list should be in strictly increasing order. For instance, this\nparameter might have possible settings of 1.5, 2.5, and 4.0. This list\nshould not contain more than 1,000 values.",
- "items": {
- "format": "double",
- "type": "number"
- },
- "type": "array"
- },
- "scaleType": {
- "enumDescriptions": [
- "By default, no scaling is applied.",
- "Scales the feasible space to (0, 1) linearly.",
- "Scales the feasible space logarithmically to (0, 1). The entire feasible\nspace must be strictly positive.",
- "Scales the feasible space \"reverse\" logarithmically to (0, 1). The result\nis that values close to the top of the feasible space are spread out more\nthan points near the bottom. The entire feasible space must be strictly\npositive."
- ],
- "enum": [
- "NONE",
- "UNIT_LINEAR_SCALE",
- "UNIT_LOG_SCALE",
- "UNIT_REVERSE_LOG_SCALE"
- ],
- "description": "Optional. How the parameter should be scaled to the hypercube.\nLeave unset for categorical parameters.\nSome kind of scaling is strongly recommended for real or integral\nparameters (e.g., `UNIT_LINEAR_SCALE`).",
- "type": "string"
- },
- "maxValue": {
- "format": "double",
- "description": "Required if typeis `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is `INTEGER`.",
- "type": "number"
- },
- "type": {
- "description": "Required. The type of the parameter.",
- "type": "string",
- "enumDescriptions": [
- "You must specify a valid type. Using this unspecified type will result in\nan error.",
- "Type for real-valued parameters.",
- "Type for integral parameters.",
- "The parameter is categorical, with a value chosen from the categories\nfield.",
- "The parameter is real valued, with a fixed set of feasible points. If\n`type==DISCRETE`, feasible_points must be provided, and\n{`min_value`, `max_value`} will be ignored."
- ],
- "enum": [
- "PARAMETER_TYPE_UNSPECIFIED",
- "DOUBLE",
- "INTEGER",
- "CATEGORICAL",
- "DISCRETE"
- ]
- },
- "parameterName": {
- "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\".",
- "type": "string"
- },
- "categoricalValues": {
- "description": "Required if type is `CATEGORICAL`. The list of possible categories.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "GoogleCloudMlV1beta1__ParameterSpec",
- "description": "Represents a single hyperparameter to optimize."
- },
- "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric": {
- "properties": {
- "trainingStep": {
- "format": "int64",
- "description": "The global training step for this metric.",
- "type": "string"
- },
- "objectiveValue": {
- "format": "double",
- "description": "The objective value at this training step.",
- "type": "number"
- }
- },
- "id": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric",
- "description": "An observed value of a metric.",
- "type": "object"
- },
- "GoogleCloudMlV1beta1__PredictionOutput": {
- "description": "Represents results of a prediction job.",
- "type": "object",
- "properties": {
- "predictionCount": {
- "format": "int64",
- "description": "The number of generated predictions.",
- "type": "string"
- },
- "errorCount": {
- "format": "int64",
- "description": "The number of data instances which resulted in errors.",
- "type": "string"
- },
- "nodeHours": {
- "format": "double",
- "description": "Node hours used by the batch prediction job.",
- "type": "number"
- },
- "outputPath": {
- "description": "The output Google Cloud Storage location provided at the job creation time.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1beta1__PredictionOutput"
- },
- "GoogleCloudMlV1beta1__TrainingOutput": {
- "properties": {
- "trials": {
- "description": "Results for individual Hyperparameter trials.\nOnly set for hyperparameter tuning jobs.",
- "items": {
- "$ref": "GoogleCloudMlV1beta1__HyperparameterOutput"
- },
- "type": "array"
- },
- "completedTrialCount": {
- "format": "int64",
- "description": "The number of hyperparameter tuning trials that completed successfully.\nOnly set for hyperparameter tuning jobs.",
- "type": "string"
- },
- "isHyperparameterTuningJob": {
- "type": "boolean",
- "description": "Whether this job is a hyperparameter tuning job."
- },
- "consumedMLUnits": {
- "format": "double",
- "description": "The amount of ML units consumed by the job.",
- "type": "number"
- }
- },
- "id": "GoogleCloudMlV1beta1__TrainingOutput",
- "description": "Represents results of a training job. Output only.",
- "type": "object"
- },
- "GoogleIamV1_LogConfig_CloudAuditOptions": {
- "id": "GoogleIamV1_LogConfig_CloudAuditOptions",
- "description": "Write a Cloud Audit log",
- "type": "object",
- "properties": {
- "logName": {
- "enum": [
- "UNSPECIFIED_LOG_NAME",
- "ADMIN_ACTIVITY",
- "DATA_ACCESS"
- ],
- "description": "The log_name to populate in the Cloud Audit Record.",
- "type": "string",
- "enumDescriptions": [
- "Default. Should not be used.",
- "Corresponds to \"cloudaudit.googleapis.com/activity\"",
- "Corresponds to \"cloudaudit.googleapis.com/data_access\""
- ]
- }
- }
- },
- "GoogleCloudMlV1__Version": {
- "description": "Represents a version of the model.\n\nEach version is a trained model deployed in the cloud, ready to handle\nprediction requests. A model can have multiple versions. You can get\ninformation about all of the versions of a given model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).",
- "type": "object",
- "properties": {
- "isDefault": {
- "description": "Output only. If true, this version will be used to handle prediction\nrequests that do not specify a version.\n\nYou can change the default version by calling\n[projects.methods.versions.setDefault](/ml-engine/reference/rest/v1/projects.models.versions/setDefault).",
- "type": "boolean"
- },
- "createTime": {
- "format": "google-datetime",
- "description": "Output only. The time the version was created.",
- "type": "string"
- },
- "state": {
- "enum": [
- "UNKNOWN",
- "READY",
- "CREATING",
- "FAILED"
- ],
- "description": "Output only. The state of a version.",
- "type": "string",
- "enumDescriptions": [
- "The version state is unspecified.",
- "The version is ready for prediction.",
- "The version is still in the process of creation.",
- "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure."
- ]
- },
- "manualScaling": {
- "description": "Manually select the number of nodes to use for serving the\nmodel. You should generally use `automatic_scaling` with an appropriate\n`min_nodes` instead, but this option is available if you want more\npredictable billing. Beware that latency and error rates will increase\nif the traffic exceeds that capability of the system to serve it based\non the selected number of nodes.",
- "$ref": "GoogleCloudMlV1__ManualScaling"
- },
- "name": {
- "description": "Required.The name specified for the version when it was created.\n\nThe version name must be unique within the model it is created in.",
- "type": "string"
- },
- "errorMessage": {
- "description": "Output only. The details of a failure or a cancellation.",
- "type": "string"
- },
- "automaticScaling": {
- "$ref": "GoogleCloudMlV1__AutomaticScaling",
- "description": "Automatically scale the number of nodes used to serve the model in\nresponse to increases and decreases in traffic. Care should be\ntaken to ramp up traffic according to the model's ability to scale\nor you will start seeing increases in latency and 429 response codes."
- },
- "runtimeVersion": {
- "description": "Optional. The Google Cloud ML runtime version to use for this deployment.\nIf not set, Google Cloud ML will choose a version.",
- "type": "string"
- },
- "lastUseTime": {
- "format": "google-datetime",
- "description": "Output only. The time the version was last used for prediction.",
- "type": "string"
- },
- "description": {
- "description": "Optional. The description specified for the version when it was created.",
- "type": "string"
- },
- "deploymentUri": {
- "type": "string",
- "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[overview of model\ndeployment](/ml-engine/docs/concepts/deployment-overview) for more\ninformaiton.\n\nWhen passing Version to\n[projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)\nthe model service uses the specified location as the source of the model.\nOnce deployed, the model version is hosted by the prediction service, so\nthis location is useful only as a historical record.\nThe total number of model files can't exceed 1000."
- }
- },
- "id": "GoogleCloudMlV1__Version"
- },
- "GoogleIamV1_LogConfig_DataAccessOptions": {
- "id": "GoogleIamV1_LogConfig_DataAccessOptions",
- "description": "Write a Data Access (Gin) log",
- "type": "object",
- "properties": {}
- },
- "GoogleCloudMlV1beta1__HyperparameterSpec": {
- "id": "GoogleCloudMlV1beta1__HyperparameterSpec",
- "description": "Represents a set of hyperparameters to optimize.",
- "type": "object",
- "properties": {
- "maxTrials": {
- "format": "int32",
- "description": "Optional. How many training trials should be attempted to optimize\nthe specified hyperparameters.\n\nDefaults to one.",
- "type": "integer"
- },
- "params": {
- "description": "Required. The set of parameters to tune.",
- "items": {
- "$ref": "GoogleCloudMlV1beta1__ParameterSpec"
- },
- "type": "array"
- },
- "maxParallelTrials": {
- "format": "int32",
- "description": "Optional. The number of training trials to run concurrently.\nYou can reduce the time it takes to perform hyperparameter tuning by adding\ntrials in parallel. However, each trail only benefits from the information\ngained in completed trials. That means that a trial does not get access to\nthe results of trials running at the same time, which could reduce the\nquality of the overall optimization.\n\nEach trial will use the same scale tier and machine types.\n\nDefaults to one.",
- "type": "integer"
- },
- "hyperparameterMetricTag": {
- "description": "Optional. The Tensorflow summary tag name to use for optimizing trials. For\ncurrent versions of Tensorflow, this tag name should exactly match what is\nshown in Tensorboard, including all scopes. For versions of Tensorflow\nprior to 0.12, this should be only the tag passed to tf.Summary.\nBy default, \"training/hptuning/metric\" will be used.",
- "type": "string"
- },
- "goal": {
- "enum": [
- "GOAL_TYPE_UNSPECIFIED",
- "MAXIMIZE",
- "MINIMIZE"
- ],
- "description": "Required. The type of goal to use for tuning. Available types are\n`MAXIMIZE` and `MINIMIZE`.\n\nDefaults to `MAXIMIZE`.",
- "type": "string",
- "enumDescriptions": [
- "Goal Type will default to maximize.",
- "Maximize the goal metric.",
- "Minimize the goal metric."
- ]
- }
- }
- },
- "GoogleType__Expr": {
- "description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"",
- "type": "object",
- "properties": {
- "location": {
- "description": "An optional string indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.",
- "type": "string"
- },
- "title": {
- "description": "An optional title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.",
- "type": "string"
- },
- "description": {
- "description": "An optional description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.",
- "type": "string"
- },
- "expression": {
- "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.",
- "type": "string"
- }
- },
- "id": "GoogleType__Expr"
- },
- "GoogleIamV1__AuditLogConfig": {
- "properties": {
- "logType": {
- "enumDescriptions": [
- "Default case. Should never be this.",
- "Admin reads. Example: CloudIAM getIamPolicy",
- "Data writes. Example: CloudSQL Users create",
- "Data reads. Example: CloudSQL Users list"
- ],
- "enum": [
- "LOG_TYPE_UNSPECIFIED",
- "ADMIN_READ",
- "DATA_WRITE",
- "DATA_READ"
- ],
- "description": "The log type that this config enables.",
- "type": "string"
- },
- "exemptedMembers": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members."
- }
- },
- "id": "GoogleIamV1__AuditLogConfig",
- "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.",
- "type": "object"
- },
- "GoogleCloudMlV1__OperationMetadata": {
- "type": "object",
- "properties": {
- "modelName": {
- "description": "Contains the name of the model associated with the operation.",
- "type": "string"
- },
- "version": {
- "description": "Contains the version associated with the operation.",
- "$ref": "GoogleCloudMlV1__Version"
- },
- "endTime": {
- "format": "google-datetime",
- "description": "The time operation processing completed.",
- "type": "string"
- },
- "operationType": {
- "enumDescriptions": [
- "Unspecified operation type.",
- "An operation to create a new version.",
- "An operation to delete an existing version.",
- "An operation to delete an existing model."
- ],
- "enum": [
- "OPERATION_TYPE_UNSPECIFIED",
- "CREATE_VERSION",
- "DELETE_VERSION",
- "DELETE_MODEL"
- ],
- "description": "The operation type.",
- "type": "string"
- },
- "startTime": {
- "format": "google-datetime",
- "description": "The time operation processing started.",
- "type": "string"
- },
- "isCancellationRequested": {
- "description": "Indicates whether a request to cancel this operation has been made.",
- "type": "boolean"
- },
- "createTime": {
- "format": "google-datetime",
- "description": "The time the operation was submitted.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1__OperationMetadata",
- "description": "Represents the metadata of the long-running operation."
- },
- "GoogleCloudMlV1beta1__OperationMetadata": {
- "id": "GoogleCloudMlV1beta1__OperationMetadata",
- "description": "Represents the metadata of the long-running operation.",
- "type": "object",
- "properties": {
- "isCancellationRequested": {
- "description": "Indicates whether a request to cancel this operation has been made.",
- "type": "boolean"
- },
- "createTime": {
- "format": "google-datetime",
- "description": "The time the operation was submitted.",
- "type": "string"
- },
- "modelName": {
- "type": "string",
- "description": "Contains the name of the model associated with the operation."
- },
- "version": {
- "$ref": "GoogleCloudMlV1beta1__Version",
- "description": "Contains the version associated with the operation."
- },
- "endTime": {
- "format": "google-datetime",
- "description": "The time operation processing completed.",
- "type": "string"
- },
- "operationType": {
- "description": "The operation type.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified operation type.",
- "An operation to create a new version.",
- "An operation to delete an existing version.",
- "An operation to delete an existing model."
- ],
- "enum": [
- "OPERATION_TYPE_UNSPECIFIED",
- "CREATE_VERSION",
- "DELETE_VERSION",
- "DELETE_MODEL"
- ]
- },
- "startTime": {
- "format": "google-datetime",
- "description": "The time operation processing started.",
- "type": "string"
- }
- }
- },
- "GoogleCloudMlV1beta1__ListModelsResponse": {
- "description": "Response message for the ListModels method.",
- "type": "object",
- "properties": {
- "models": {
- "description": "The list of models.",
- "items": {
- "$ref": "GoogleCloudMlV1beta1__Model"
- },
- "type": "array"
- },
- "nextPageToken": {
- "type": "string",
- "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call."
- }
- },
- "id": "GoogleCloudMlV1beta1__ListModelsResponse"
- },
- "GoogleLongrunning__Operation": {
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
- "type": "object",
- "properties": {
- "done": {
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
- "type": "boolean"
- },
- "response": {
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
- "type": "string"
- },
- "error": {
- "$ref": "GoogleRpc__Status",
- "description": "The error result of the operation in case of failure or cancellation."
- },
- "metadata": {
- "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- }
- },
- "id": "GoogleLongrunning__Operation"
- },
- "GoogleIamV1__AuditConfig": {
- "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.",
- "type": "object",
- "properties": {
- "auditLogConfigs": {
- "description": "The configuration for logging of each type of permission.\nNext ID: 4",
- "items": {
- "$ref": "GoogleIamV1__AuditLogConfig"
- },
- "type": "array"
- },
- "exemptedMembers": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "service": {
- "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.",
- "type": "string"
- }
- },
- "id": "GoogleIamV1__AuditConfig"
- },
- "GoogleCloudMlV1beta1__HyperparameterOutput": {
- "properties": {
- "allMetrics": {
- "description": "All recorded object metrics for this trial.",
- "items": {
- "$ref": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric"
- },
- "type": "array"
- },
- "finalMetric": {
- "description": "The final objective metric seen for this trial.",
- "$ref": "GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric"
- },
- "hyperparameters": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "The hyperparameters given to this trial."
- },
- "trialId": {
- "description": "The trial id for these results.",
- "type": "string"
- }
- },
- "id": "GoogleCloudMlV1beta1__HyperparameterOutput",
- "description": "Represents the result of a single hyperparameter tuning trial from a\ntraining job. The TrainingOutput object that is returned on successful\ncompletion of a training job with hyperparameter tuning includes a list\nof HyperparameterOutput objects, one for each successful trial.",
- "type": "object"
- },
- "GoogleProtobuf__Empty": {
- "properties": {},
- "id": "GoogleProtobuf__Empty",
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object"
- },
- "GoogleIamV1__TestIamPermissionsRequest": {
- "description": "Request message for `TestIamPermissions` method.",
- "type": "object",
- "properties": {
- "permissions": {
- "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "GoogleIamV1__TestIamPermissionsRequest"
- },
- "GoogleCloudMlV1beta1__ManualScaling": {
- "type": "object",
- "properties": {
- "nodes": {
- "format": "int32",
- "description": "The number of nodes to allocate for this model. These nodes are always up,\nstarting from the time the model is deployed, so the cost of operating\nthis model will be proportional to `nodes` * number of hours since\nlast billing cycle.",
- "type": "integer"
- }
- },
- "id": "GoogleCloudMlV1beta1__ManualScaling",
- "description": "Options for manually scaling a model."
- }
- },
- "icons": {
- "x16": "http://www.google.com/images/icons/product/search-16.gif",
- "x32": "http://www.google.com/images/icons/product/search-32.gif"
- },
- "protocol": "rest",
- "canonicalName": "Cloud Machine Learning Engine",
- "auth": {
- "oauth2": {
- "scopes": {
- "https://www.googleapis.com/auth/cloud-platform": {
- "description": "View and manage your data across Google Cloud Platform services"
- }
- }
- }
- },
- "rootUrl": "https://ml.googleapis.com/",
- "ownerDomain": "google.com",
- "name": "ml",
- "batchPath": "batch",
- "title": "Google Cloud Machine Learning Engine",
- "ownerName": "Google",
- "resources": {
- "projects": {
- "methods": {
- "predict": {
- "response": {
- "$ref": "GoogleApi__HttpBody"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.",
- "type": "string",
- "required": true,
- "pattern": "^projects/.+$"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}:predict",
- "id": "ml.projects.predict",
- "path": "v1beta1/{+name}:predict",
- "request": {
- "$ref": "GoogleCloudMlV1beta1__PredictRequest"
- },
- "description": "Performs prediction on the data in the request.\n\n**** REMOVE FROM GENERATED DOCUMENTATION"
- },
- "getConfig": {
- "response": {
- "$ref": "GoogleCloudMlV1beta1__GetConfigResponse"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "parameters": {
- "name": {
- "location": "path",
- "description": "Required. The project name.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}:getConfig",
- "id": "ml.projects.getConfig",
- "path": "v1beta1/{+name}:getConfig",
- "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account persmissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning."
- }
- },
- "resources": {
- "models": {
- "methods": {
- "list": {
- "id": "ml.projects.models.list",
- "path": "v1beta1/{+parent}/models",
- "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.",
- "response": {
- "$ref": "GoogleCloudMlV1beta1__ListModelsResponse"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "GET",
- "parameters": {
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "Optional. The number of models to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
- "type": "integer"
- },
- "parent": {
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "Required. The name of the project whose models are to be listed.",
- "type": "string",
- "required": true
- },
- "pageToken": {
- "location": "query",
- "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models"
- },
- "setIamPolicy": {
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "GoogleIamV1__Policy"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "resource": {
- "pattern": "^projects/[^/]+/models/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:setIamPolicy",
- "path": "v1beta1/{+resource}:setIamPolicy",
- "id": "ml.projects.models.setIamPolicy",
- "request": {
- "$ref": "GoogleIamV1__SetIamPolicyRequest"
- },
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy."
- },
- "create": {
- "description": "Creates a model which will later contain one or more versions.\n\nYou must add at least one version before you can request predictions from\nthe model. Add versions by calling\n[projects.models.versions.create](/ml-engine/reference/rest/v1beta1/projects.models.versions/create).",
- "request": {
- "$ref": "GoogleCloudMlV1beta1__Model"
- },
- "response": {
- "$ref": "GoogleCloudMlV1beta1__Model"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "POST",
- "parameters": {
- "parent": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "Required. The project name."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models",
- "id": "ml.projects.models.create",
- "path": "v1beta1/{+parent}/models"
- },
- "getIamPolicy": {
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "response": {
- "$ref": "GoogleIamV1__Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "GET",
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/models/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:getIamPolicy",
- "id": "ml.projects.models.getIamPolicy",
- "path": "v1beta1/{+resource}:getIamPolicy"
- },
- "get": {
- "description": "Gets information about a model, including its name, the description (if\nset), and the default version (if at least one version of the model has\nbeen deployed).",
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "GoogleCloudMlV1beta1__Model"
- },
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/models/[^/]+$",
- "location": "path",
- "description": "Required. The name of the model.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}",
- "path": "v1beta1/{+name}",
- "id": "ml.projects.models.get"
- },
- "testIamPermissions": {
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "request": {
- "$ref": "GoogleIamV1__TestIamPermissionsRequest"
- },
- "response": {
- "$ref": "GoogleIamV1__TestIamPermissionsResponse"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/models/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:testIamPermissions",
- "id": "ml.projects.models.testIamPermissions",
- "path": "v1beta1/{+resource}:testIamPermissions"
- },
- "delete": {
- "response": {
- "$ref": "GoogleLongrunning__Operation"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/models/[^/]+$",
- "location": "path",
- "description": "Required. The name of the model.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}",
- "id": "ml.projects.models.delete",
- "path": "v1beta1/{+name}",
- "description": "Deletes a model.\n\nYou can only delete a model if there are no versions in it. You can delete\nversions by calling\n[projects.models.versions.delete](/ml-engine/reference/rest/v1beta1/projects.models.versions/delete)."
- }
- },
- "resources": {
- "versions": {
- "methods": {
- "setDefault": {
- "description": "Designates a version to be the default for the model.\n\nThe default version is used for prediction requests made against the model\nthat don't specify a version.\n\nThe first version to be created for a model is automatically set as the\ndefault. You must make any subsequent changes to the default version\nsetting manually using this method.",
- "request": {
- "$ref": "GoogleCloudMlV1beta1__SetDefaultVersionRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "GoogleCloudMlV1beta1__Version"
- },
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
- "location": "path",
- "description": "Required. The name of the version to make the default for the model. You\ncan get the names of all the versions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.models.versions/list).\n\nAuthorization: `ml.models.update` permission is required on the parent model.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault",
- "path": "v1beta1/{+name}:setDefault",
- "id": "ml.projects.models.versions.setDefault"
- },
- "delete": {
- "description": "Deletes a model version.\n\nEach model can have multiple versions deployed and in use at any given\ntime. Use this method to remove a single version.\n\nNote: You cannot delete the version that is set as the default version\nof the model unless it is the only remaining version.",
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "response": {
- "$ref": "GoogleLongrunning__Operation"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "Required. The name of the version. You can get the names of all the\nversions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.models.versions/list).",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}",
- "id": "ml.projects.models.versions.delete",
- "path": "v1beta1/{+name}"
- },
- "get": {
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}",
- "id": "ml.projects.models.versions.get",
- "path": "v1beta1/{+name}",
- "description": "Gets information about a model version.\n\nModels can have multiple versions. You can call\n[projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.models.versions/list)\nto get the same information that this method returns for all of the\nversions of a model.",
- "response": {
- "$ref": "GoogleCloudMlV1beta1__Version"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "Required. The name of the version.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$"
- }
- }
- },
- "list": {
- "response": {
- "$ref": "GoogleCloudMlV1beta1__ListVersionsResponse"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "pageToken": {
- "location": "query",
- "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
- "type": "string"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "Optional. The number of versions to retrieve per \"page\" of results. If\nthere are more remaining results than this number, the response message\nwill contain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
- "type": "integer"
- },
- "parent": {
- "description": "Required. The name of the model for which to list the version.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/models/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions",
- "id": "ml.projects.models.versions.list",
- "path": "v1beta1/{+parent}/versions",
- "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has a lot of versions, or if you need to handle\nonly a limited number of results at a time, you can request that the list\nbe retrieved in batches (called pages):"
- },
- "create": {
- "response": {
- "$ref": "GoogleLongrunning__Operation"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "POST",
- "parameters": {
- "parent": {
- "description": "Required. The name of the model.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/models/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions",
- "id": "ml.projects.models.versions.create",
- "path": "v1beta1/{+parent}/versions",
- "description": "Creates a new version of a model from a trained TensorFlow model.\n\nIf the version created in the cloud by this call is the first deployed\nversion of the specified model, it will be made the default version of the\nmodel. When you add a version to a model that already has one or more\nversions, the default version does not automatically change. If you want a\nnew version to be the default, you must call\n[projects.models.versions.setDefault](/ml-engine/reference/rest/v1beta1/projects.models.versions/setDefault).",
- "request": {
- "$ref": "GoogleCloudMlV1beta1__Version"
- }
- }
- }
- }
- }
- },
- "operations": {
- "methods": {
- "cancel": {
- "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
- "response": {
- "$ref": "GoogleProtobuf__Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "POST",
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/operations/[^/]+$",
- "location": "path",
- "description": "The name of the operation resource to be cancelled.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}:cancel",
- "id": "ml.projects.operations.cancel",
- "path": "v1beta1/{+name}:cancel"
- },
- "delete": {
- "response": {
- "$ref": "GoogleProtobuf__Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "description": "The name of the operation resource to be deleted.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/operations/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}",
- "id": "ml.projects.operations.delete",
- "path": "v1beta1/{+name}",
- "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`."
- },
- "get": {
- "httpMethod": "GET",
- "response": {
- "$ref": "GoogleLongrunning__Operation"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "The name of the operation resource.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/operations/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}",
- "path": "v1beta1/{+name}",
- "id": "ml.projects.operations.get",
- "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice."
- },
- "list": {
- "response": {
- "$ref": "GoogleLongrunning__ListOperationsResponse"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "filter": {
- "location": "query",
- "description": "The standard list filter.",
- "type": "string"
- },
- "pageToken": {
- "description": "The standard list page token.",
- "type": "string",
- "location": "query"
- },
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "The name of the operation's parent resource."
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "The standard list page size.",
- "type": "integer"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/operations",
- "id": "ml.projects.operations.list",
- "path": "v1beta1/{+name}/operations",
- "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id."
- }
- }
- },
- "jobs": {
- "methods": {
- "create": {
- "httpMethod": "POST",
- "parameterOrder": [
- "parent"
- ],
- "response": {
- "$ref": "GoogleCloudMlV1beta1__Job"
- },
- "parameters": {
- "parent": {
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "Required. The project name.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/jobs",
- "path": "v1beta1/{+parent}/jobs",
- "id": "ml.projects.jobs.create",
- "description": "Creates a training or a batch prediction job.",
- "request": {
- "$ref": "GoogleCloudMlV1beta1__Job"
- }
- },
- "cancel": {
- "path": "v1beta1/{+name}:cancel",
- "id": "ml.projects.jobs.cancel",
- "request": {
- "$ref": "GoogleCloudMlV1beta1__CancelJobRequest"
- },
- "description": "Cancels a running job.",
- "httpMethod": "POST",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "GoogleProtobuf__Empty"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/jobs/[^/]+$",
- "location": "path",
- "description": "Required. The name of the job to cancel."
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}:cancel"
- },
- "get": {
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "GoogleCloudMlV1beta1__Job"
- },
- "parameters": {
- "name": {
- "location": "path",
- "description": "Required. The name of the job to get the description of.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/jobs/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}",
- "path": "v1beta1/{+name}",
- "id": "ml.projects.jobs.get",
- "description": "Describes a job."
- },
- "list": {
- "httpMethod": "GET",
- "parameterOrder": [
- "parent"
- ],
- "response": {
- "$ref": "GoogleCloudMlV1beta1__ListJobsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "pageToken": {
- "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "format": "int32",
- "description": "Optional. The number of jobs to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
- "type": "integer",
- "location": "query"
- },
- "parent": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "Required. The name of the project for which to list jobs."
- },
- "filter": {
- "location": "query",
- "description": "Optional. Specifies the subset of jobs to retrieve.",
- "type": "string"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/jobs",
- "path": "v1beta1/{+parent}/jobs",
- "id": "ml.projects.jobs.list",
- "description": "Lists the jobs in the project."
- }
- }
- }
- }
- }
- },
- "parameters": {
- "pp": {
- "location": "query",
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "oauth_token": {
- "type": "string",
- "location": "query",
- "description": "OAuth 2.0 token for the current user."
- },
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "prettyPrint": {
- "location": "query",
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "$.xgafv": {
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format."
- },
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
- },
- "alt": {
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "access_token": {
- "description": "OAuth access token.",
- "type": "string",
- "location": "query"
- },
- "quotaUser": {
- "type": "string",
- "location": "query",
- "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."
- }
- },
- "version": "v1beta1",
- "baseUrl": "https://ml.googleapis.com/",
- "kind": "discovery#restDescription",
- "description": "An API to enable creating and using machine learning models.",
- "servicePath": "",
- "basePath": "",
- "documentationLink": "https://cloud.google.com/ml/",
- "revision": "20170627",
- "id": "ml:v1beta1",
- "discoveryVersion": "v1"
+ "error": {
+ "code": 404,
+ "message": "Discovery document not found for API service: ml.googleapis.com format: rest version: v1beta1",
+ "status": "NOT_FOUND"
+ }
}
diff --git a/vendor/google.golang.org/api/ml/v1beta1/ml-gen.go b/vendor/google.golang.org/api/ml/v1beta1/ml-gen.go
index 4fead61..aac3ad9 100644
--- a/vendor/google.golang.org/api/ml/v1beta1/ml-gen.go
+++ b/vendor/google.golang.org/api/ml/v1beta1/ml-gen.go
@@ -1,6 +1,4 @@
-// Package ml provides access to the Google Cloud Machine Learning Engine.
-//
-// See https://cloud.google.com/ml/
+// Package ml provides access to the .
//
// Usage example:
//
@@ -40,23 +38,16 @@ var _ = strings.Replace
var _ = context.Canceled
var _ = ctxhttp.Do
-const apiId = "ml:v1beta1"
-const apiName = "ml"
-const apiVersion = "v1beta1"
-const basePath = "https://ml.googleapis.com/"
-
-// OAuth2 scopes used by this API.
-const (
- // View and manage your data across Google Cloud Platform services
- CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
-)
+const apiId = ""
+const apiName = ""
+const apiVersion = ""
+const basePath = "https://www.googleapis.com/discovery/v1/apis"
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
- s.Projects = NewProjectsService(s)
return s, nil
}
@@ -64,8 +55,6 @@ type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
-
- Projects *ProjectsService
}
func (s *Service) userAgent() string {
@@ -74,6351 +63,3 @@ func (s *Service) userAgent() string {
}
return googleapi.UserAgent + " " + s.UserAgent
}
-
-func NewProjectsService(s *Service) *ProjectsService {
- rs := &ProjectsService{s: s}
- rs.Jobs = NewProjectsJobsService(s)
- rs.Models = NewProjectsModelsService(s)
- rs.Operations = NewProjectsOperationsService(s)
- return rs
-}
-
-type ProjectsService struct {
- s *Service
-
- Jobs *ProjectsJobsService
-
- Models *ProjectsModelsService
-
- Operations *ProjectsOperationsService
-}
-
-func NewProjectsJobsService(s *Service) *ProjectsJobsService {
- rs := &ProjectsJobsService{s: s}
- return rs
-}
-
-type ProjectsJobsService struct {
- s *Service
-}
-
-func NewProjectsModelsService(s *Service) *ProjectsModelsService {
- rs := &ProjectsModelsService{s: s}
- rs.Versions = NewProjectsModelsVersionsService(s)
- return rs
-}
-
-type ProjectsModelsService struct {
- s *Service
-
- Versions *ProjectsModelsVersionsService
-}
-
-func NewProjectsModelsVersionsService(s *Service) *ProjectsModelsVersionsService {
- rs := &ProjectsModelsVersionsService{s: s}
- return rs
-}
-
-type ProjectsModelsVersionsService struct {
- s *Service
-}
-
-func NewProjectsOperationsService(s *Service) *ProjectsOperationsService {
- rs := &ProjectsOperationsService{s: s}
- return rs
-}
-
-type ProjectsOperationsService struct {
- s *Service
-}
-
-// GoogleApi__HttpBody: Message that represents an arbitrary HTTP body.
-// It should only be used for
-// payload formats that can't be represented as JSON, such as raw binary
-// or
-// an HTML page.
-//
-//
-// This message can be used both in streaming and non-streaming API
-// methods in
-// the request as well as the response.
-//
-// It can be used as a top-level request field, which is convenient if
-// one
-// wants to extract parameters from either the URL or HTTP template into
-// the
-// request fields and also want access to the raw HTTP body.
-//
-// Example:
-//
-// message GetResourceRequest {
-// // A unique request id.
-// string request_id = 1;
-//
-// // The raw HTTP body is bound to this field.
-// google.api.HttpBody http_body = 2;
-// }
-//
-// service ResourceService {
-// rpc GetResource(GetResourceRequest) returns
-// (google.api.HttpBody);
-// rpc UpdateResource(google.api.HttpBody) returns
-// (google.protobuf.Empty);
-// }
-//
-// Example with streaming methods:
-//
-// service CaldavService {
-// rpc GetCalendar(stream google.api.HttpBody)
-// returns (stream google.api.HttpBody);
-// rpc UpdateCalendar(stream google.api.HttpBody)
-// returns (stream google.api.HttpBody);
-// }
-//
-// Use of this type only changes how the request and response bodies
-// are
-// handled, all other features will continue to work unchanged.
-type GoogleApi__HttpBody struct {
- // ContentType: The HTTP Content-Type string representing the content
- // type of the body.
- ContentType string `json:"contentType,omitempty"`
-
- // Data: HTTP body binary data.
- Data string `json:"data,omitempty"`
-
- // Extensions: Application specific response metadata. Must be set in
- // the first response
- // for streaming APIs.
- Extensions []googleapi.RawMessage `json:"extensions,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "ContentType") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "ContentType") to include
- // in API requests with the JSON null value. By default, fields with
- // empty values are omitted from API requests. However, any field with
- // an empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleApi__HttpBody) MarshalJSON() ([]byte, error) {
- type noMethod GoogleApi__HttpBody
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1__AutomaticScaling: Options for automatically scaling
-// a model.
-type GoogleCloudMlV1__AutomaticScaling struct {
- // MinNodes: Optional. The minimum number of nodes to allocate for this
- // model. These
- // nodes are always up, starting from the time the model is deployed, so
- // the
- // cost of operating this model will be at least
- // `rate` * `min_nodes` * number of hours since last billing
- // cycle,
- // where `rate` is the cost per node-hour as documented
- // in
- // [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pri
- // cing),
- // even if no predictions are performed. There is additional cost for
- // each
- // prediction performed.
- //
- // Unlike manual scaling, if the load gets too heavy for the nodes
- // that are up, the service will automatically add nodes to handle
- // the
- // increased load as well as scale back as traffic drops, always
- // maintaining
- // at least `min_nodes`. You will be charged for the time in which
- // additional
- // nodes are used.
- //
- // If not specified, `min_nodes` defaults to 0, in which case, when
- // traffic
- // to a model stops (and after a cool-down period), nodes will be shut
- // down
- // and no charges will be incurred until traffic to the model resumes.
- MinNodes int64 `json:"minNodes,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "MinNodes") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "MinNodes") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1__AutomaticScaling) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1__AutomaticScaling
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1__ManualScaling: Options for manually scaling a model.
-type GoogleCloudMlV1__ManualScaling struct {
- // Nodes: The number of nodes to allocate for this model. These nodes
- // are always up,
- // starting from the time the model is deployed, so the cost of
- // operating
- // this model will be proportional to `nodes` * number of hours
- // since
- // last billing cycle plus the cost for each prediction performed.
- Nodes int64 `json:"nodes,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Nodes") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Nodes") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1__ManualScaling) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1__ManualScaling
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1__OperationMetadata: Represents the metadata of the
-// long-running operation.
-type GoogleCloudMlV1__OperationMetadata struct {
- // CreateTime: The time the operation was submitted.
- CreateTime string `json:"createTime,omitempty"`
-
- // EndTime: The time operation processing completed.
- EndTime string `json:"endTime,omitempty"`
-
- // IsCancellationRequested: Indicates whether a request to cancel this
- // operation has been made.
- IsCancellationRequested bool `json:"isCancellationRequested,omitempty"`
-
- // ModelName: Contains the name of the model associated with the
- // operation.
- ModelName string `json:"modelName,omitempty"`
-
- // OperationType: The operation type.
- //
- // Possible values:
- // "OPERATION_TYPE_UNSPECIFIED" - Unspecified operation type.
- // "CREATE_VERSION" - An operation to create a new version.
- // "DELETE_VERSION" - An operation to delete an existing version.
- // "DELETE_MODEL" - An operation to delete an existing model.
- OperationType string `json:"operationType,omitempty"`
-
- // StartTime: The time operation processing started.
- StartTime string `json:"startTime,omitempty"`
-
- // Version: Contains the version associated with the operation.
- Version *GoogleCloudMlV1__Version `json:"version,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "CreateTime") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "CreateTime") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1__OperationMetadata) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1__OperationMetadata
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1__Version: Represents a version of the model.
-//
-// Each version is a trained model deployed in the cloud, ready to
-// handle
-// prediction requests. A model can have multiple versions. You can
-// get
-// information about all of the versions of a given model by
-// calling
-// [projects.models.versions.list](/ml-engine/reference/rest/v1/p
-// rojects.models.versions/list).
-type GoogleCloudMlV1__Version struct {
- // AutomaticScaling: Automatically scale the number of nodes used to
- // serve the model in
- // response to increases and decreases in traffic. Care should be
- // taken to ramp up traffic according to the model's ability to scale
- // or you will start seeing increases in latency and 429 response codes.
- AutomaticScaling *GoogleCloudMlV1__AutomaticScaling `json:"automaticScaling,omitempty"`
-
- // CreateTime: Output only. The time the version was created.
- CreateTime string `json:"createTime,omitempty"`
-
- // DeploymentUri: Required. The Google Cloud Storage location of the
- // trained model used to
- // create the version. See the
- // [overview of
- // model
- // deployment](/ml-engine/docs/concepts/deployment-overview) for
- // more
- // informaiton.
- //
- // When passing Version
- // to
- // [projects.models.versions.create](/ml-engine/reference/rest/v1/proj
- // ects.models.versions/create)
- // the model service uses the specified location as the source of the
- // model.
- // Once deployed, the model version is hosted by the prediction service,
- // so
- // this location is useful only as a historical record.
- // The total number of model files can't exceed 1000.
- DeploymentUri string `json:"deploymentUri,omitempty"`
-
- // Description: Optional. The description specified for the version when
- // it was created.
- Description string `json:"description,omitempty"`
-
- // ErrorMessage: Output only. The details of a failure or a
- // cancellation.
- ErrorMessage string `json:"errorMessage,omitempty"`
-
- // IsDefault: Output only. If true, this version will be used to handle
- // prediction
- // requests that do not specify a version.
- //
- // You can change the default version by
- // calling
- // [projects.methods.versions.setDefault](/ml-engine/reference/re
- // st/v1/projects.models.versions/setDefault).
- IsDefault bool `json:"isDefault,omitempty"`
-
- // LastUseTime: Output only. The time the version was last used for
- // prediction.
- LastUseTime string `json:"lastUseTime,omitempty"`
-
- // ManualScaling: Manually select the number of nodes to use for serving
- // the
- // model. You should generally use `automatic_scaling` with an
- // appropriate
- // `min_nodes` instead, but this option is available if you want
- // more
- // predictable billing. Beware that latency and error rates will
- // increase
- // if the traffic exceeds that capability of the system to serve it
- // based
- // on the selected number of nodes.
- ManualScaling *GoogleCloudMlV1__ManualScaling `json:"manualScaling,omitempty"`
-
- // Name: Required.The name specified for the version when it was
- // created.
- //
- // The version name must be unique within the model it is created in.
- Name string `json:"name,omitempty"`
-
- // RuntimeVersion: Optional. The Google Cloud ML runtime version to use
- // for this deployment.
- // If not set, Google Cloud ML will choose a version.
- RuntimeVersion string `json:"runtimeVersion,omitempty"`
-
- // State: Output only. The state of a version.
- //
- // Possible values:
- // "UNKNOWN" - The version state is unspecified.
- // "READY" - The version is ready for prediction.
- // "CREATING" - The version is still in the process of creation.
- // "FAILED" - The version failed to be created, possibly
- // cancelled.
- // `error_message` should contain the details of the failure.
- State string `json:"state,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "AutomaticScaling") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "AutomaticScaling") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1__Version) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1__Version
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric: An
-// observed value of a metric.
-type GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric struct {
- // ObjectiveValue: The objective value at this training step.
- ObjectiveValue float64 `json:"objectiveValue,omitempty"`
-
- // TrainingStep: The global training step for this metric.
- TrainingStep int64 `json:"trainingStep,omitempty,string"`
-
- // ForceSendFields is a list of field names (e.g. "ObjectiveValue") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "ObjectiveValue") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-func (s *GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric) UnmarshalJSON(data []byte) error {
- type noMethod GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric
- var s1 struct {
- ObjectiveValue gensupport.JSONFloat64 `json:"objectiveValue"`
- *noMethod
- }
- s1.noMethod = (*noMethod)(s)
- if err := json.Unmarshal(data, &s1); err != nil {
- return err
- }
- s.ObjectiveValue = float64(s1.ObjectiveValue)
- return nil
-}
-
-// GoogleCloudMlV1beta1__AutomaticScaling: Options for automatically
-// scaling a model.
-type GoogleCloudMlV1beta1__AutomaticScaling struct {
- // MinNodes: Optional. The minimum number of nodes to allocate for this
- // model. These
- // nodes are always up, starting from the time the model is deployed, so
- // the
- // cost of operating this model will be at least
- // `rate` * `min_nodes` * number of hours since last billing
- // cycle,
- // where `rate` is the cost per node-hour as documented
- // in
- // [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pri
- // cing),
- // even if no predictions are performed. There is additional cost for
- // each
- // prediction performed.
- //
- // Unlike manual scaling, if the load gets too heavy for the nodes
- // that are up, the service will automatically add nodes to handle
- // the
- // increased load as well as scale back as traffic drops, always
- // maintaining
- // at least `min_nodes`. You will be charged for the time in which
- // additional
- // nodes are used.
- //
- // If not specified, `min_nodes` defaults to 0, in which case, when
- // traffic
- // to a model stops (and after a cool-down period), nodes will be shut
- // down
- // and no charges will be incurred until traffic to the model resumes.
- MinNodes int64 `json:"minNodes,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "MinNodes") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "MinNodes") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__AutomaticScaling) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__AutomaticScaling
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__CancelJobRequest: Request message for the
-// CancelJob method.
-type GoogleCloudMlV1beta1__CancelJobRequest struct {
-}
-
-// GoogleCloudMlV1beta1__GetConfigResponse: Returns service account
-// information associated with a project.
-type GoogleCloudMlV1beta1__GetConfigResponse struct {
- // ServiceAccount: The service account Cloud ML uses to access resources
- // in the project.
- ServiceAccount string `json:"serviceAccount,omitempty"`
-
- // ServiceAccountProject: The project number for `service_account`.
- ServiceAccountProject int64 `json:"serviceAccountProject,omitempty,string"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "ServiceAccount") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "ServiceAccount") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__GetConfigResponse) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__GetConfigResponse
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__HyperparameterOutput: Represents the result of
-// a single hyperparameter tuning trial from a
-// training job. The TrainingOutput object that is returned on
-// successful
-// completion of a training job with hyperparameter tuning includes a
-// list
-// of HyperparameterOutput objects, one for each successful trial.
-type GoogleCloudMlV1beta1__HyperparameterOutput struct {
- // AllMetrics: All recorded object metrics for this trial.
- AllMetrics []*GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric `json:"allMetrics,omitempty"`
-
- // FinalMetric: The final objective metric seen for this trial.
- FinalMetric *GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric `json:"finalMetric,omitempty"`
-
- // Hyperparameters: The hyperparameters given to this trial.
- Hyperparameters map[string]string `json:"hyperparameters,omitempty"`
-
- // TrialId: The trial id for these results.
- TrialId string `json:"trialId,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "AllMetrics") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "AllMetrics") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__HyperparameterOutput) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__HyperparameterOutput
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__HyperparameterSpec: Represents a set of
-// hyperparameters to optimize.
-type GoogleCloudMlV1beta1__HyperparameterSpec struct {
- // Goal: Required. The type of goal to use for tuning. Available types
- // are
- // `MAXIMIZE` and `MINIMIZE`.
- //
- // Defaults to `MAXIMIZE`.
- //
- // Possible values:
- // "GOAL_TYPE_UNSPECIFIED" - Goal Type will default to maximize.
- // "MAXIMIZE" - Maximize the goal metric.
- // "MINIMIZE" - Minimize the goal metric.
- Goal string `json:"goal,omitempty"`
-
- // HyperparameterMetricTag: Optional. The Tensorflow summary tag name to
- // use for optimizing trials. For
- // current versions of Tensorflow, this tag name should exactly match
- // what is
- // shown in Tensorboard, including all scopes. For versions of
- // Tensorflow
- // prior to 0.12, this should be only the tag passed to tf.Summary.
- // By default, "training/hptuning/metric" will be used.
- HyperparameterMetricTag string `json:"hyperparameterMetricTag,omitempty"`
-
- // MaxParallelTrials: Optional. The number of training trials to run
- // concurrently.
- // You can reduce the time it takes to perform hyperparameter tuning by
- // adding
- // trials in parallel. However, each trail only benefits from the
- // information
- // gained in completed trials. That means that a trial does not get
- // access to
- // the results of trials running at the same time, which could reduce
- // the
- // quality of the overall optimization.
- //
- // Each trial will use the same scale tier and machine types.
- //
- // Defaults to one.
- MaxParallelTrials int64 `json:"maxParallelTrials,omitempty"`
-
- // MaxTrials: Optional. How many training trials should be attempted to
- // optimize
- // the specified hyperparameters.
- //
- // Defaults to one.
- MaxTrials int64 `json:"maxTrials,omitempty"`
-
- // Params: Required. The set of parameters to tune.
- Params []*GoogleCloudMlV1beta1__ParameterSpec `json:"params,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Goal") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Goal") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__HyperparameterSpec) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__HyperparameterSpec
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__Job: Represents a training or prediction job.
-type GoogleCloudMlV1beta1__Job struct {
- // CreateTime: Output only. When the job was created.
- CreateTime string `json:"createTime,omitempty"`
-
- // EndTime: Output only. When the job processing was completed.
- EndTime string `json:"endTime,omitempty"`
-
- // ErrorMessage: Output only. The details of a failure or a
- // cancellation.
- ErrorMessage string `json:"errorMessage,omitempty"`
-
- // JobId: Required. The user-specified id of the job.
- JobId string `json:"jobId,omitempty"`
-
- // PredictionInput: Input parameters to create a prediction job.
- PredictionInput *GoogleCloudMlV1beta1__PredictionInput `json:"predictionInput,omitempty"`
-
- // PredictionOutput: The current prediction job result.
- PredictionOutput *GoogleCloudMlV1beta1__PredictionOutput `json:"predictionOutput,omitempty"`
-
- // StartTime: Output only. When the job processing was started.
- StartTime string `json:"startTime,omitempty"`
-
- // State: Output only. The detailed state of a job.
- //
- // Possible values:
- // "STATE_UNSPECIFIED" - The job state is unspecified.
- // "QUEUED" - The job has been just created and processing has not yet
- // begun.
- // "PREPARING" - The service is preparing to run the job.
- // "RUNNING" - The job is in progress.
- // "SUCCEEDED" - The job completed successfully.
- // "FAILED" - The job failed.
- // `error_message` should contain the details of the failure.
- // "CANCELLING" - The job is being cancelled.
- // `error_message` should describe the reason for the cancellation.
- // "CANCELLED" - The job has been cancelled.
- // `error_message` should describe the reason for the cancellation.
- State string `json:"state,omitempty"`
-
- // TrainingInput: Input parameters to create a training job.
- TrainingInput *GoogleCloudMlV1beta1__TrainingInput `json:"trainingInput,omitempty"`
-
- // TrainingOutput: The current training job result.
- TrainingOutput *GoogleCloudMlV1beta1__TrainingOutput `json:"trainingOutput,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "CreateTime") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "CreateTime") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__Job) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__Job
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__ListJobsResponse: Response message for the
-// ListJobs method.
-type GoogleCloudMlV1beta1__ListJobsResponse struct {
- // Jobs: The list of jobs.
- Jobs []*GoogleCloudMlV1beta1__Job `json:"jobs,omitempty"`
-
- // NextPageToken: Optional. Pass this token as the `page_token` field of
- // the request for a
- // subsequent call.
- NextPageToken string `json:"nextPageToken,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "Jobs") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Jobs") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__ListJobsResponse) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__ListJobsResponse
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__ListModelsResponse: Response message for the
-// ListModels method.
-type GoogleCloudMlV1beta1__ListModelsResponse struct {
- // Models: The list of models.
- Models []*GoogleCloudMlV1beta1__Model `json:"models,omitempty"`
-
- // NextPageToken: Optional. Pass this token as the `page_token` field of
- // the request for a
- // subsequent call.
- NextPageToken string `json:"nextPageToken,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "Models") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Models") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__ListModelsResponse) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__ListModelsResponse
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__ListVersionsResponse: Response message for the
-// ListVersions method.
-type GoogleCloudMlV1beta1__ListVersionsResponse struct {
- // NextPageToken: Optional. Pass this token as the `page_token` field of
- // the request for a
- // subsequent call.
- NextPageToken string `json:"nextPageToken,omitempty"`
-
- // Versions: The list of versions.
- Versions []*GoogleCloudMlV1beta1__Version `json:"versions,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "NextPageToken") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "NextPageToken") to include
- // in API requests with the JSON null value. By default, fields with
- // empty values are omitted from API requests. However, any field with
- // an empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__ListVersionsResponse) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__ListVersionsResponse
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__ManualScaling: Options for manually scaling a
-// model.
-type GoogleCloudMlV1beta1__ManualScaling struct {
- // Nodes: The number of nodes to allocate for this model. These nodes
- // are always up,
- // starting from the time the model is deployed, so the cost of
- // operating
- // this model will be proportional to `nodes` * number of hours
- // since
- // last billing cycle.
- Nodes int64 `json:"nodes,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Nodes") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Nodes") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__ManualScaling) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__ManualScaling
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__Model: Represents a machine learning
-// solution.
-//
-// A model can have multiple versions, each of which is a deployed,
-// trained
-// model ready to receive prediction requests. The model itself is just
-// a
-// container.
-type GoogleCloudMlV1beta1__Model struct {
- // DefaultVersion: Output only. The default version of the model. This
- // version will be used to
- // handle prediction requests that do not specify a version.
- //
- // You can change the default version by
- // calling
- // [projects.methods.versions.setDefault](/ml-engine/reference/re
- // st/v1beta1/projects.models.versions/setDefault).
- DefaultVersion *GoogleCloudMlV1beta1__Version `json:"defaultVersion,omitempty"`
-
- // Description: Optional. The description specified for the model when
- // it was created.
- Description string `json:"description,omitempty"`
-
- // Name: Required. The name specified for the model when it was
- // created.
- //
- // The model name must be unique within the project it is created in.
- Name string `json:"name,omitempty"`
-
- // OnlinePredictionLogging: Optional. If true, enables StackDriver
- // Logging for online prediction.
- // Default is false.
- OnlinePredictionLogging bool `json:"onlinePredictionLogging,omitempty"`
-
- // Regions: Optional. The list of regions where the model is going to be
- // deployed.
- // Currently only one region per model is supported.
- // Defaults to 'us-central1' if nothing is set.
- // Note:
- // * No matter where a model is deployed, it can always be accessed
- // by
- // users from anywhere, both for online and batch prediction.
- // * The region for a batch prediction job is set by the region field
- // when
- // submitting the batch prediction job and does not take its value
- // from
- // this field.
- Regions []string `json:"regions,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "DefaultVersion") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "DefaultVersion") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__Model) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__Model
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__OperationMetadata: Represents the metadata of
-// the long-running operation.
-type GoogleCloudMlV1beta1__OperationMetadata struct {
- // CreateTime: The time the operation was submitted.
- CreateTime string `json:"createTime,omitempty"`
-
- // EndTime: The time operation processing completed.
- EndTime string `json:"endTime,omitempty"`
-
- // IsCancellationRequested: Indicates whether a request to cancel this
- // operation has been made.
- IsCancellationRequested bool `json:"isCancellationRequested,omitempty"`
-
- // ModelName: Contains the name of the model associated with the
- // operation.
- ModelName string `json:"modelName,omitempty"`
-
- // OperationType: The operation type.
- //
- // Possible values:
- // "OPERATION_TYPE_UNSPECIFIED" - Unspecified operation type.
- // "CREATE_VERSION" - An operation to create a new version.
- // "DELETE_VERSION" - An operation to delete an existing version.
- // "DELETE_MODEL" - An operation to delete an existing model.
- OperationType string `json:"operationType,omitempty"`
-
- // StartTime: The time operation processing started.
- StartTime string `json:"startTime,omitempty"`
-
- // Version: Contains the version associated with the operation.
- Version *GoogleCloudMlV1beta1__Version `json:"version,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "CreateTime") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "CreateTime") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__OperationMetadata) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__OperationMetadata
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__ParameterSpec: Represents a single
-// hyperparameter to optimize.
-type GoogleCloudMlV1beta1__ParameterSpec struct {
- // CategoricalValues: Required if type is `CATEGORICAL`. The list of
- // possible categories.
- CategoricalValues []string `json:"categoricalValues,omitempty"`
-
- // DiscreteValues: Required if type is `DISCRETE`.
- // A list of feasible points.
- // The list should be in strictly increasing order. For instance,
- // this
- // parameter might have possible settings of 1.5, 2.5, and 4.0. This
- // list
- // should not contain more than 1,000 values.
- DiscreteValues []float64 `json:"discreteValues,omitempty"`
-
- // MaxValue: Required if typeis `DOUBLE` or `INTEGER`. This field
- // should be unset if type is `CATEGORICAL`. This value should be
- // integers if
- // type is `INTEGER`.
- MaxValue float64 `json:"maxValue,omitempty"`
-
- // MinValue: Required if type is `DOUBLE` or `INTEGER`. This
- // field
- // should be unset if type is `CATEGORICAL`. This value should be
- // integers if
- // type is INTEGER.
- MinValue float64 `json:"minValue,omitempty"`
-
- // ParameterName: Required. The parameter name must be unique amongst
- // all ParameterConfigs in
- // a HyperparameterSpec message. E.g., "learning_rate".
- ParameterName string `json:"parameterName,omitempty"`
-
- // ScaleType: Optional. How the parameter should be scaled to the
- // hypercube.
- // Leave unset for categorical parameters.
- // Some kind of scaling is strongly recommended for real or
- // integral
- // parameters (e.g., `UNIT_LINEAR_SCALE`).
- //
- // Possible values:
- // "NONE" - By default, no scaling is applied.
- // "UNIT_LINEAR_SCALE" - Scales the feasible space to (0, 1) linearly.
- // "UNIT_LOG_SCALE" - Scales the feasible space logarithmically to (0,
- // 1). The entire feasible
- // space must be strictly positive.
- // "UNIT_REVERSE_LOG_SCALE" - Scales the feasible space "reverse"
- // logarithmically to (0, 1). The result
- // is that values close to the top of the feasible space are spread out
- // more
- // than points near the bottom. The entire feasible space must be
- // strictly
- // positive.
- ScaleType string `json:"scaleType,omitempty"`
-
- // Type: Required. The type of the parameter.
- //
- // Possible values:
- // "PARAMETER_TYPE_UNSPECIFIED" - You must specify a valid type. Using
- // this unspecified type will result in
- // an error.
- // "DOUBLE" - Type for real-valued parameters.
- // "INTEGER" - Type for integral parameters.
- // "CATEGORICAL" - The parameter is categorical, with a value chosen
- // from the categories
- // field.
- // "DISCRETE" - The parameter is real valued, with a fixed set of
- // feasible points. If
- // `type==DISCRETE`, feasible_points must be provided, and
- // {`min_value`, `max_value`} will be ignored.
- Type string `json:"type,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "CategoricalValues")
- // to unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "CategoricalValues") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__ParameterSpec) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__ParameterSpec
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-func (s *GoogleCloudMlV1beta1__ParameterSpec) UnmarshalJSON(data []byte) error {
- type noMethod GoogleCloudMlV1beta1__ParameterSpec
- var s1 struct {
- MaxValue gensupport.JSONFloat64 `json:"maxValue"`
- MinValue gensupport.JSONFloat64 `json:"minValue"`
- *noMethod
- }
- s1.noMethod = (*noMethod)(s)
- if err := json.Unmarshal(data, &s1); err != nil {
- return err
- }
- s.MaxValue = float64(s1.MaxValue)
- s.MinValue = float64(s1.MinValue)
- return nil
-}
-
-// GoogleCloudMlV1beta1__PredictRequest: Request for predictions to be
-// issued against a trained model.
-//
-// The body of the request is a single JSON object with a single
-// top-level
-// field:
-//
-//
-// - instances
-// - A JSON array containing values representing the instances to
-// use for
-// prediction.
-//
-//
-// The structure of each element of the instances list is determined by
-// your
-// model's input definition. Instances can include named inputs or can
-// contain
-// only unlabeled values.
-//
-// Not all data includes named inputs. Some instances will be
-// simple
-// JSON values (boolean, number, or string). However, instances are
-// often lists
-// of simple values, or complex nested lists. Here are some examples of
-// request
-// bodies:
-//
-// CSV data with each row encoded as a string value:
-//
-// {"instances": ["1.0,true,\\"x\\"",
-// "-2.0,false,\\"y\\""]}
-//
-// Plain text:
-//
-// {"instances": ["the quick brown fox", "la bruja le
-// dio"]}
-//
-// Sentences encoded as lists of words (vectors of strings):
-//
-// {
-// "instances": [
-// ["the","quick","brown"],
-// ["la","bruja","le"],
-// ...
-// ]
-// }
-//
-// Floating point scalar values:
-//
-// {"instances": [0.0, 1.1, 2.2]}
-//
-// Vectors of integers:
-//
-// {
-// "instances": [
-// [0, 1, 2],
-// [3, 4, 5],
-// ...
-// ]
-// }
-//
-// Tensors (in this case, two-dimensional tensors):
-//
-// {
-// "instances": [
-// [
-// [0, 1, 2],
-// [3, 4, 5]
-// ],
-// ...
-// ]
-// }
-//
-// Images can be represented different ways. In this encoding scheme the
-// first
-// two dimensions represent the rows and columns of the image, and the
-// third
-// contains lists (vectors) of the R, G, and B values for each
-// pixel.
-//
-// {
-// "instances": [
-// [
-// [
-// [138, 30, 66],
-// [130, 20, 56],
-// ...
-// ],
-// [
-// [126, 38, 61],
-// [122, 24, 57],
-// ...
-// ],
-// ...
-// ],
-// ...
-// ]
-// }
-//
-// JSON strings must be encoded as UTF-8. To send binary data, you
-// must
-// base64-encode the data and mark it as binary. To mark a JSON
-// string
-// as binary, replace it with a JSON object with a single attribute
-// named `b64`:
-// {"b64": "..."}
-// For example:
-//
-// Two Serialized tf.Examples (fake data, for illustrative purposes
-// only):
-//
-// {"instances": [{"b64": "X5ad6u"}, {"b64": "IA9j4nx"}]}
-//
-// Two JPEG image byte strings (fake data, for illustrative purposes
-// only):
-//
-// {"instances": [{"b64": "ASa8asdf"}, {"b64": "JLK7ljk3"}]}
-//
-// If your data includes named references, format each instance as a
-// JSON object
-// with the named references as the keys:
-//
-// JSON input data to be preprocessed:
-//
-// {
-// "instances": [
-// {
-// "a": 1.0,
-// "b": true,
-// "c": "x"
-// },
-// {
-// "a": -2.0,
-// "b": false,
-// "c": "y"
-// }
-// ]
-// }
-//
-// Some models have an underlying TensorFlow graph that accepts multiple
-// input
-// tensors. In this case, you should use the names of JSON name/value
-// pairs to
-// identify the input tensors, as shown in the following exmaples:
-//
-// For a graph with input tensor aliases "tag" (string) and
-// "image"
-// (base64-encoded string):
-//
-// {
-// "instances": [
-// {
-// "tag": "beach",
-// "image": {"b64": "ASa8asdf"}
-// },
-// {
-// "tag": "car",
-// "image": {"b64": "JLK7ljk3"}
-// }
-// ]
-// }
-//
-// For a graph with input tensor aliases "tag" (string) and
-// "image"
-// (3-dimensional array of 8-bit ints):
-//
-// {
-// "instances": [
-// {
-// "tag": "beach",
-// "image": [
-// [
-// [138, 30, 66],
-// [130, 20, 56],
-// ...
-// ],
-// [
-// [126, 38, 61],
-// [122, 24, 57],
-// ...
-// ],
-// ...
-// ]
-// },
-// {
-// "tag": "car",
-// "image": [
-// [
-// [255, 0, 102],
-// [255, 0, 97],
-// ...
-// ],
-// [
-// [254, 1, 101],
-// [254, 2, 93],
-// ...
-// ],
-// ...
-// ]
-// },
-// ...
-// ]
-// }
-//
-// If the call is successful, the response body will contain one
-// prediction
-// entry per instance in the request body. If prediction fails for
-// any
-// instance, the response body will contain no predictions and will
-// contian
-// a single error entry instead.
-type GoogleCloudMlV1beta1__PredictRequest struct {
- // HttpBody:
- // Required. The prediction request body.
- HttpBody *GoogleApi__HttpBody `json:"httpBody,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "HttpBody") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "HttpBody") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__PredictRequest) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__PredictRequest
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__PredictionInput: Represents input parameters
-// for a prediction job.
-type GoogleCloudMlV1beta1__PredictionInput struct {
- // DataFormat: Required. The format of the input data files.
- //
- // Possible values:
- // "DATA_FORMAT_UNSPECIFIED" - Unspecified format.
- // "TEXT" - The source file is a text file with instances separated by
- // the
- // new-line character.
- // "TF_RECORD" - The source file is a TFRecord file.
- // "TF_RECORD_GZIP" - The source file is a GZIP-compressed TFRecord
- // file.
- DataFormat string `json:"dataFormat,omitempty"`
-
- // InputPaths: Required. The Google Cloud Storage location of the input
- // data files.
- // May contain wildcards.
- InputPaths []string `json:"inputPaths,omitempty"`
-
- // MaxWorkerCount: Optional. The maximum number of workers to be used
- // for parallel processing.
- // Defaults to 10 if not specified.
- MaxWorkerCount int64 `json:"maxWorkerCount,omitempty,string"`
-
- // ModelName: Use this field if you want to use the default version for
- // the specified
- // model. The string must use the following
- // format:
- //
- // "projects/[YOUR_PROJECT]/models/[YOUR_MODEL]
- // "
- ModelName string `json:"modelName,omitempty"`
-
- // OutputPath: Required. The output Google Cloud Storage location.
- OutputPath string `json:"outputPath,omitempty"`
-
- // Region: Required. The Google Compute Engine region to run the
- // prediction job in.
- Region string `json:"region,omitempty"`
-
- // RuntimeVersion: Optional. The Google Cloud ML runtime version to use
- // for this batch
- // prediction. If not set, Google Cloud ML will pick the runtime version
- // used
- // during the CreateVersion request for this model version, or choose
- // the
- // latest stable version when model version information is not
- // available
- // such as when the model is specified by uri.
- RuntimeVersion string `json:"runtimeVersion,omitempty"`
-
- // Uri: Use this field if you want to specify a Google Cloud Storage
- // path for
- // the model to use.
- Uri string `json:"uri,omitempty"`
-
- // VersionName: Use this field if you want to specify a version of the
- // model to use. The
- // string is formatted the same way as `model_version`, with the
- // addition
- // of the version
- // information:
- //
- // "projects/[YOUR_PROJECT]/models/YOUR_MO
- // DEL/versions/[YOUR_VERSION]"
- VersionName string `json:"versionName,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "DataFormat") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "DataFormat") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__PredictionInput) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__PredictionInput
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__PredictionOutput: Represents results of a
-// prediction job.
-type GoogleCloudMlV1beta1__PredictionOutput struct {
- // ErrorCount: The number of data instances which resulted in errors.
- ErrorCount int64 `json:"errorCount,omitempty,string"`
-
- // NodeHours: Node hours used by the batch prediction job.
- NodeHours float64 `json:"nodeHours,omitempty"`
-
- // OutputPath: The output Google Cloud Storage location provided at the
- // job creation time.
- OutputPath string `json:"outputPath,omitempty"`
-
- // PredictionCount: The number of generated predictions.
- PredictionCount int64 `json:"predictionCount,omitempty,string"`
-
- // ForceSendFields is a list of field names (e.g. "ErrorCount") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "ErrorCount") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__PredictionOutput) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__PredictionOutput
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-func (s *GoogleCloudMlV1beta1__PredictionOutput) UnmarshalJSON(data []byte) error {
- type noMethod GoogleCloudMlV1beta1__PredictionOutput
- var s1 struct {
- NodeHours gensupport.JSONFloat64 `json:"nodeHours"`
- *noMethod
- }
- s1.noMethod = (*noMethod)(s)
- if err := json.Unmarshal(data, &s1); err != nil {
- return err
- }
- s.NodeHours = float64(s1.NodeHours)
- return nil
-}
-
-// GoogleCloudMlV1beta1__SetDefaultVersionRequest: Request message for
-// the SetDefaultVersion request.
-type GoogleCloudMlV1beta1__SetDefaultVersionRequest struct {
-}
-
-// GoogleCloudMlV1beta1__TrainingInput: Represents input parameters for
-// a training job.
-type GoogleCloudMlV1beta1__TrainingInput struct {
- // Args: Optional. Command line arguments to pass to the program.
- Args []string `json:"args,omitempty"`
-
- // Hyperparameters: Optional. The set of Hyperparameters to tune.
- Hyperparameters *GoogleCloudMlV1beta1__HyperparameterSpec `json:"hyperparameters,omitempty"`
-
- // JobDir: Optional. A Google Cloud Storage path in which to store
- // training outputs
- // and other data needed for training. This path is passed to your
- // TensorFlow
- // program as the 'job_dir' command-line argument. The benefit of
- // specifying
- // this field is that Cloud ML validates the path for use in training.
- JobDir string `json:"jobDir,omitempty"`
-
- // MasterType: Optional. Specifies the type of virtual machine to use
- // for your training
- // job's master worker.
- //
- // The following types are supported:
- //
- //
- // - standard
- // -
- // A basic machine configuration suitable for training simple models
- // with
- // small to moderate datasets.
- //
- // - large_model
- // -
- // A machine with a lot of memory, specially suited for parameter
- // servers
- // when your model is large (having many hidden layers or layers with
- // very
- // large numbers of nodes).
- //
- // - complex_model_s
- // -
- // A machine suitable for the master and workers of the cluster when
- // your
- // model requires more computation than the standard machine can
- // handle
- // satisfactorily.
- //
- // - complex_model_m
- // -
- // A machine with roughly twice the number of cores and roughly double
- // the
- // memory of
complex_model_s
.
- //
- // - complex_model_l
- // -
- // A machine with roughly twice the number of cores and roughly double
- // the
- // memory of
complex_model_m
.
- //
- // - standard_gpu
- // -
- // A machine equivalent to
standard
that
- // also includes a
- //
- // GPU that you can use in your trainer.
- //
- // - complex_model_m_gpu
- // -
- // A machine equivalent to
- //
complex_model_m
that also
- // includes
- // four GPUs.
- //
- //
- //
- // You must set this value when `scaleTier` is set to `CUSTOM`.
- MasterType string `json:"masterType,omitempty"`
-
- // PackageUris: Required. The Google Cloud Storage location of the
- // packages with
- // the training program and any additional dependencies.
- // The maximum number of package URIs is 100.
- PackageUris []string `json:"packageUris,omitempty"`
-
- // ParameterServerCount: Optional. The number of parameter server
- // replicas to use for the training
- // job. Each replica in the cluster will be of the type specified
- // in
- // `parameter_server_type`.
- //
- // This value can only be used when `scale_tier` is set to `CUSTOM`.If
- // you
- // set this value, you must also set `parameter_server_type`.
- ParameterServerCount int64 `json:"parameterServerCount,omitempty,string"`
-
- // ParameterServerType: Optional. Specifies the type of virtual machine
- // to use for your training
- // job's parameter server.
- //
- // The supported values are the same as those described in the entry
- // for
- // `master_type`.
- //
- // This value must be present when `scaleTier` is set to `CUSTOM`
- // and
- // `parameter_server_count` is greater than zero.
- ParameterServerType string `json:"parameterServerType,omitempty"`
-
- // PythonModule: Required. The Python module name to run after
- // installing the packages.
- PythonModule string `json:"pythonModule,omitempty"`
-
- // Region: Required. The Google Compute Engine region to run the
- // training job in.
- Region string `json:"region,omitempty"`
-
- // RuntimeVersion: Optional. The Google Cloud ML runtime version to use
- // for training. If not
- // set, Google Cloud ML will choose the latest stable version.
- RuntimeVersion string `json:"runtimeVersion,omitempty"`
-
- // ScaleTier: Required. Specifies the machine types, the number of
- // replicas for workers
- // and parameter servers.
- //
- // Possible values:
- // "BASIC" - A single worker instance. This tier is suitable for
- // learning how to use
- // Cloud ML, and for experimenting with new models using small datasets.
- // "STANDARD_1" - Many workers and a few parameter servers.
- // "PREMIUM_1" - A large number of workers with many parameter
- // servers.
- // "BASIC_GPU" - A single worker instance [with a
- // GPU](/ml-engine/docs/how-tos/using-gpus).
- // "CUSTOM" - The CUSTOM tier is not a set tier, but rather enables
- // you to use your
- // own cluster specification. When you use this tier, set values
- // to
- // configure your processing cluster according to these guidelines:
- //
- // * You _must_ set `TrainingInput.masterType` to specify the type
- // of machine to use for your master node. This is the only
- // required
- // setting.
- //
- // * You _may_ set `TrainingInput.workerCount` to specify the number
- // of
- // workers to use. If you specify one or more workers, you _must_
- // also
- // set `TrainingInput.workerType` to specify the type of machine to
- // use
- // for your worker nodes.
- //
- // * You _may_ set `TrainingInput.parameterServerCount` to specify
- // the
- // number of parameter servers to use. If you specify one or more
- // parameter servers, you _must_ also set
- // `TrainingInput.parameterServerType` to specify the type of
- // machine to
- // use for your parameter servers.
- //
- // Note that all of your workers must use the same machine type, which
- // can
- // be different from your parameter server type and master type.
- // Your
- // parameter servers must likewise use the same machine type, which can
- // be
- // different from your worker type and master type.
- ScaleTier string `json:"scaleTier,omitempty"`
-
- // WorkerCount: Optional. The number of worker replicas to use for the
- // training job. Each
- // replica in the cluster will be of the type specified in
- // `worker_type`.
- //
- // This value can only be used when `scale_tier` is set to `CUSTOM`. If
- // you
- // set this value, you must also set `worker_type`.
- WorkerCount int64 `json:"workerCount,omitempty,string"`
-
- // WorkerType: Optional. Specifies the type of virtual machine to use
- // for your training
- // job's worker nodes.
- //
- // The supported values are the same as those described in the entry
- // for
- // `masterType`.
- //
- // This value must be present when `scaleTier` is set to `CUSTOM`
- // and
- // `workerCount` is greater than zero.
- WorkerType string `json:"workerType,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Args") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Args") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__TrainingInput) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__TrainingInput
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleCloudMlV1beta1__TrainingOutput: Represents results of a
-// training job. Output only.
-type GoogleCloudMlV1beta1__TrainingOutput struct {
- // CompletedTrialCount: The number of hyperparameter tuning trials that
- // completed successfully.
- // Only set for hyperparameter tuning jobs.
- CompletedTrialCount int64 `json:"completedTrialCount,omitempty,string"`
-
- // ConsumedMLUnits: The amount of ML units consumed by the job.
- ConsumedMLUnits float64 `json:"consumedMLUnits,omitempty"`
-
- // IsHyperparameterTuningJob: Whether this job is a hyperparameter
- // tuning job.
- IsHyperparameterTuningJob bool `json:"isHyperparameterTuningJob,omitempty"`
-
- // Trials: Results for individual Hyperparameter trials.
- // Only set for hyperparameter tuning jobs.
- Trials []*GoogleCloudMlV1beta1__HyperparameterOutput `json:"trials,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "CompletedTrialCount")
- // to unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "CompletedTrialCount") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__TrainingOutput) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__TrainingOutput
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-func (s *GoogleCloudMlV1beta1__TrainingOutput) UnmarshalJSON(data []byte) error {
- type noMethod GoogleCloudMlV1beta1__TrainingOutput
- var s1 struct {
- ConsumedMLUnits gensupport.JSONFloat64 `json:"consumedMLUnits"`
- *noMethod
- }
- s1.noMethod = (*noMethod)(s)
- if err := json.Unmarshal(data, &s1); err != nil {
- return err
- }
- s.ConsumedMLUnits = float64(s1.ConsumedMLUnits)
- return nil
-}
-
-// GoogleCloudMlV1beta1__Version: Represents a version of the
-// model.
-//
-// Each version is a trained model deployed in the cloud, ready to
-// handle
-// prediction requests. A model can have multiple versions. You can
-// get
-// information about all of the versions of a given model by
-// calling
-// [projects.models.versions.list](/ml-engine/reference/rest/v1be
-// ta1/projects.models.versions/list).
-type GoogleCloudMlV1beta1__Version struct {
- // AutomaticScaling: Automatically scale the number of nodes used to
- // serve the model in
- // response to increases and decreases in traffic. Care should be
- // taken to ramp up traffic according to the model's ability to scale
- // or you will start seeing increases in latency and 429 response codes.
- AutomaticScaling *GoogleCloudMlV1beta1__AutomaticScaling `json:"automaticScaling,omitempty"`
-
- // CreateTime: Output only. The time the version was created.
- CreateTime string `json:"createTime,omitempty"`
-
- // DeploymentUri: Required. The Google Cloud Storage location of the
- // trained model used to
- // create the version. See the
- // [overview of
- // model
- // deployment](/ml-engine/docs/concepts/deployment-overview) for
- // more
- // informaiton.
- //
- // When passing Version
- // to
- // [projects.models.versions.create](/ml-engine/reference/rest/v1beta1
- // /projects.models.versions/create)
- // the model service uses the specified location as the source of the
- // model.
- // Once deployed, the model version is hosted by the prediction service,
- // so
- // this location is useful only as a historical record.
- // The total number of model files can't exceed 1000.
- DeploymentUri string `json:"deploymentUri,omitempty"`
-
- // Description: Optional. The description specified for the version when
- // it was created.
- Description string `json:"description,omitempty"`
-
- // ErrorMessage: Output only. The details of a failure or a
- // cancellation.
- ErrorMessage string `json:"errorMessage,omitempty"`
-
- // IsDefault: Output only. If true, this version will be used to handle
- // prediction
- // requests that do not specify a version.
- //
- // You can change the default version by
- // calling
- // [projects.methods.versions.setDefault](/ml-engine/reference/re
- // st/v1beta1/projects.models.versions/setDefault).
- IsDefault bool `json:"isDefault,omitempty"`
-
- // LastUseTime: Output only. The time the version was last used for
- // prediction.
- LastUseTime string `json:"lastUseTime,omitempty"`
-
- // ManualScaling: Manually select the number of nodes to use for serving
- // the
- // model. You should generally use `automatic_scaling` with an
- // appropriate
- // `min_nodes` instead, but this option is available if you want
- // predictable
- // billing. Beware that latency and error rates will increase if
- // the
- // traffic exceeds that capability of the system to serve it based
- // on
- // the selected number of nodes.
- ManualScaling *GoogleCloudMlV1beta1__ManualScaling `json:"manualScaling,omitempty"`
-
- // Name: Required.The name specified for the version when it was
- // created.
- //
- // The version name must be unique within the model it is created in.
- Name string `json:"name,omitempty"`
-
- // RuntimeVersion: Optional. The Google Cloud ML runtime version to use
- // for this deployment.
- // If not set, Google Cloud ML will choose a version.
- RuntimeVersion string `json:"runtimeVersion,omitempty"`
-
- // State: Output only. The state of a version.
- //
- // Possible values:
- // "UNKNOWN" - / The version state is unspecified.
- // "READY" - The version is ready for prediction.
- // "CREATING" - The version is still in the process of creation.
- // "FAILED" - The version failed to be created, possibly
- // cancelled.
- // `error_message` should contain the details of the failure.
- State string `json:"state,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "AutomaticScaling") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "AutomaticScaling") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleCloudMlV1beta1__Version) MarshalJSON() ([]byte, error) {
- type noMethod GoogleCloudMlV1beta1__Version
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1LogConfigCloudAuditOptions: Write a Cloud Audit log
-type GoogleIamV1LogConfigCloudAuditOptions struct {
- // LogName: The log_name to populate in the Cloud Audit Record.
- //
- // Possible values:
- // "UNSPECIFIED_LOG_NAME" - Default. Should not be used.
- // "ADMIN_ACTIVITY" - Corresponds to
- // "cloudaudit.googleapis.com/activity"
- // "DATA_ACCESS" - Corresponds to
- // "cloudaudit.googleapis.com/data_access"
- LogName string `json:"logName,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "LogName") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "LogName") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1LogConfigCloudAuditOptions) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1LogConfigCloudAuditOptions
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1LogConfigCounterOptions: Options for counters
-type GoogleIamV1LogConfigCounterOptions struct {
- // Field: The field value to attribute.
- Field string `json:"field,omitempty"`
-
- // Metric: The metric to update.
- Metric string `json:"metric,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Field") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Field") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1LogConfigCounterOptions) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1LogConfigCounterOptions
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1LogConfigDataAccessOptions: Write a Data Access (Gin) log
-type GoogleIamV1LogConfigDataAccessOptions struct {
-}
-
-// GoogleIamV1__AuditConfig: Specifies the audit configuration for a
-// service.
-// The configuration determines which permission types are logged, and
-// what
-// identities, if any, are exempted from logging.
-// An AuditConfig must have one or more AuditLogConfigs.
-//
-// If there are AuditConfigs for both `allServices` and a specific
-// service,
-// the union of the two AuditConfigs is used for that service: the
-// log_types
-// specified in each AuditConfig are enabled, and the exempted_members
-// in each
-// AuditConfig are exempted.
-//
-// Example Policy with multiple AuditConfigs:
-//
-// {
-// "audit_configs": [
-// {
-// "service": "allServices"
-// "audit_log_configs": [
-// {
-// "log_type": "DATA_READ",
-// "exempted_members": [
-// "user:foo@gmail.com"
-// ]
-// },
-// {
-// "log_type": "DATA_WRITE",
-// },
-// {
-// "log_type": "ADMIN_READ",
-// }
-// ]
-// },
-// {
-// "service": "fooservice.googleapis.com"
-// "audit_log_configs": [
-// {
-// "log_type": "DATA_READ",
-// },
-// {
-// "log_type": "DATA_WRITE",
-// "exempted_members": [
-// "user:bar@gmail.com"
-// ]
-// }
-// ]
-// }
-// ]
-// }
-//
-// For fooservice, this policy enables DATA_READ, DATA_WRITE and
-// ADMIN_READ
-// logging. It also exempts foo@gmail.com from DATA_READ logging,
-// and
-// bar@gmail.com from DATA_WRITE logging.
-type GoogleIamV1__AuditConfig struct {
- // AuditLogConfigs: The configuration for logging of each type of
- // permission.
- // Next ID: 4
- AuditLogConfigs []*GoogleIamV1__AuditLogConfig `json:"auditLogConfigs,omitempty"`
-
- ExemptedMembers []string `json:"exemptedMembers,omitempty"`
-
- // Service: Specifies a service that will be enabled for audit
- // logging.
- // For example, `storage.googleapis.com`,
- // `cloudsql.googleapis.com`.
- // `allServices` is a special value that covers all services.
- Service string `json:"service,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "AuditLogConfigs") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__AuditConfig) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__AuditConfig
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__AuditLogConfig: Provides the configuration for logging a
-// type of permissions.
-// Example:
-//
-// {
-// "audit_log_configs": [
-// {
-// "log_type": "DATA_READ",
-// "exempted_members": [
-// "user:foo@gmail.com"
-// ]
-// },
-// {
-// "log_type": "DATA_WRITE",
-// }
-// ]
-// }
-//
-// This enables 'DATA_READ' and 'DATA_WRITE' logging, while
-// exempting
-// foo@gmail.com from DATA_READ logging.
-type GoogleIamV1__AuditLogConfig struct {
- // ExemptedMembers: Specifies the identities that do not cause logging
- // for this type of
- // permission.
- // Follows the same format of Binding.members.
- ExemptedMembers []string `json:"exemptedMembers,omitempty"`
-
- // LogType: The log type that this config enables.
- //
- // Possible values:
- // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
- // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
- // "DATA_WRITE" - Data writes. Example: CloudSQL Users create
- // "DATA_READ" - Data reads. Example: CloudSQL Users list
- LogType string `json:"logType,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "ExemptedMembers") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__AuditLogConfig) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__AuditLogConfig
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__Binding: Associates `members` with a `role`.
-type GoogleIamV1__Binding struct {
- // Condition: The condition that is associated with this binding.
- // NOTE: an unsatisfied condition will not allow user access via
- // current
- // binding. Different bindings, including their conditions, are
- // examined
- // independently.
- // This field is GOOGLE_INTERNAL.
- Condition *GoogleType__Expr `json:"condition,omitempty"`
-
- // Members: Specifies the identities requesting access for a Cloud
- // Platform resource.
- // `members` can have the following values:
- //
- // * `allUsers`: A special identifier that represents anyone who is
- // on the internet; with or without a Google account.
- //
- // * `allAuthenticatedUsers`: A special identifier that represents
- // anyone
- // who is authenticated with a Google account or a service
- // account.
- //
- // * `user:{emailid}`: An email address that represents a specific
- // Google
- // account. For example, `alice@gmail.com` or `joe@example.com`.
- //
- //
- // * `serviceAccount:{emailid}`: An email address that represents a
- // service
- // account. For example,
- // `my-other-app@appspot.gserviceaccount.com`.
- //
- // * `group:{emailid}`: An email address that represents a Google
- // group.
- // For example, `admins@example.com`.
- //
- //
- // * `domain:{domain}`: A Google Apps domain name that represents all
- // the
- // users of that domain. For example, `google.com` or
- // `example.com`.
- //
- //
- Members []string `json:"members,omitempty"`
-
- // Role: Role that is assigned to `members`.
- // For example, `roles/viewer`, `roles/editor`, or
- // `roles/owner`.
- // Required
- Role string `json:"role,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Condition") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Condition") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__Binding) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__Binding
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__Condition: A condition to be met.
-type GoogleIamV1__Condition struct {
- // Iam: Trusted attributes supplied by the IAM system.
- //
- // Possible values:
- // "NO_ATTR" - Default non-attribute.
- // "AUTHORITY" - Either principal or (if present) authority selector.
- // "ATTRIBUTION" - The principal (even if an authority selector is
- // present), which
- // must only be used for attribution, not authorization.
- // "APPROVER" - An approver (distinct from the requester) that has
- // authorized this
- // request.
- // When used with IN, the condition indicates that one of the
- // approvers
- // associated with the request matches the specified principal, or is
- // a
- // member of the specified group. Approvers can only grant
- // additional
- // access, and are thus only used in a strictly positive context
- // (e.g. ALLOW/IN or DENY/NOT_IN).
- // "JUSTIFICATION_TYPE" - What types of justifications have been
- // supplied with this request.
- // String values should match enum names from
- // tech.iam.JustificationType,
- // e.g. "MANUAL_STRING". It is not permitted to grant access based
- // on
- // the *absence* of a justification, so justification conditions can
- // only
- // be used in a "positive" context (e.g., ALLOW/IN or
- // DENY/NOT_IN).
- //
- // Multiple justifications, e.g., a Buganizer ID and a
- // manually-entered
- // reason, are normal and supported.
- Iam string `json:"iam,omitempty"`
-
- // Op: An operator to apply the subject with.
- //
- // Possible values:
- // "NO_OP" - Default no-op.
- // "EQUALS" - DEPRECATED. Use IN instead.
- // "NOT_EQUALS" - DEPRECATED. Use NOT_IN instead.
- // "IN" - The condition is true if the subject (or any element of it
- // if it is
- // a set) matches any of the supplied values.
- // "NOT_IN" - The condition is true if the subject (or every element
- // of it if it is
- // a set) matches none of the supplied values.
- // "DISCHARGED" - Subject is discharged
- Op string `json:"op,omitempty"`
-
- // Svc: Trusted attributes discharged by the service.
- Svc string `json:"svc,omitempty"`
-
- // Sys: Trusted attributes supplied by any service that owns resources
- // and uses
- // the IAM system for access control.
- //
- // Possible values:
- // "NO_ATTR" - Default non-attribute type
- // "REGION" - Region of the resource
- // "SERVICE" - Service name
- // "NAME" - Resource name
- // "IP" - IP address of the caller
- Sys string `json:"sys,omitempty"`
-
- // Value: DEPRECATED. Use 'values' instead.
- Value string `json:"value,omitempty"`
-
- // Values: The objects of the condition. This is mutually exclusive with
- // 'value'.
- Values []string `json:"values,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Iam") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Iam") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__Condition) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__Condition
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__LogConfig: Specifies what kind of log the caller must
-// write
-// Increment a streamz counter with the specified metric and field
-// names.
-//
-// Metric names should start with a '/', generally be
-// lowercase-only,
-// and end in "_count". Field names should not contain an initial
-// slash.
-// The actual exported metric names will have "/iam/policy"
-// prepended.
-//
-// Field names correspond to IAM request parameters and field values
-// are
-// their respective values.
-//
-// At present the only supported field names are
-// - "iam_principal", corresponding to IAMContext.principal;
-// - "" (empty string), resulting in one aggretated counter with no
-// field.
-//
-// Examples:
-// counter { metric: "/debug_access_count" field: "iam_principal" }
-// ==> increment counter /iam/policy/backend_debug_access_count
-// {iam_principal=[value of
-// IAMContext.principal]}
-//
-// At this time we do not support:
-// * multiple field names (though this may be supported in the future)
-// * decrementing the counter
-// * incrementing it by anything other than 1
-type GoogleIamV1__LogConfig struct {
- // CloudAudit: Cloud audit options.
- CloudAudit *GoogleIamV1LogConfigCloudAuditOptions `json:"cloudAudit,omitempty"`
-
- // Counter: Counter options.
- Counter *GoogleIamV1LogConfigCounterOptions `json:"counter,omitempty"`
-
- // DataAccess: Data access options.
- DataAccess *GoogleIamV1LogConfigDataAccessOptions `json:"dataAccess,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "CloudAudit") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "CloudAudit") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__LogConfig) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__LogConfig
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__Policy: Defines an Identity and Access Management (IAM)
-// policy. It is used to
-// specify access control policies for Cloud Platform resources.
-//
-//
-// A `Policy` consists of a list of `bindings`. A `Binding` binds a list
-// of
-// `members` to a `role`, where the members can be user accounts, Google
-// groups,
-// Google domains, and service accounts. A `role` is a named list of
-// permissions
-// defined by IAM.
-//
-// **Example**
-//
-// {
-// "bindings": [
-// {
-// "role": "roles/owner",
-// "members": [
-// "user:mike@example.com",
-// "group:admins@example.com",
-// "domain:google.com",
-//
-// "serviceAccount:my-other-app@appspot.gserviceaccount.com",
-// ]
-// },
-// {
-// "role": "roles/viewer",
-// "members": ["user:sean@example.com"]
-// }
-// ]
-// }
-//
-// For a description of IAM and its features, see the
-// [IAM developer's guide](https://cloud.google.com/iam).
-type GoogleIamV1__Policy struct {
- // AuditConfigs: Specifies cloud audit logging configuration for this
- // policy.
- AuditConfigs []*GoogleIamV1__AuditConfig `json:"auditConfigs,omitempty"`
-
- // Bindings: Associates a list of `members` to a `role`.
- // `bindings` with no members will result in an error.
- Bindings []*GoogleIamV1__Binding `json:"bindings,omitempty"`
-
- // Etag: `etag` is used for optimistic concurrency control as a way to
- // help
- // prevent simultaneous updates of a policy from overwriting each
- // other.
- // It is strongly suggested that systems make use of the `etag` in
- // the
- // read-modify-write cycle to perform policy updates in order to avoid
- // race
- // conditions: An `etag` is returned in the response to `getIamPolicy`,
- // and
- // systems are expected to put that etag in the request to
- // `setIamPolicy` to
- // ensure that their change will be applied to the same version of the
- // policy.
- //
- // If no `etag` is provided in the call to `setIamPolicy`, then the
- // existing
- // policy is overwritten blindly.
- Etag string `json:"etag,omitempty"`
-
- IamOwned bool `json:"iamOwned,omitempty"`
-
- // Rules: If more than one rule is specified, the rules are applied in
- // the following
- // manner:
- // - All matching LOG rules are always applied.
- // - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
- // Logging will be applied if one or more matching rule requires
- // logging.
- // - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
- // granted.
- // Logging will be applied if one or more matching rule requires
- // logging.
- // - Otherwise, if no rule applies, permission is denied.
- Rules []*GoogleIamV1__Rule `json:"rules,omitempty"`
-
- // Version: Version of the `Policy`. The default version is 0.
- Version int64 `json:"version,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "AuditConfigs") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "AuditConfigs") to include
- // in API requests with the JSON null value. By default, fields with
- // empty values are omitted from API requests. However, any field with
- // an empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__Policy) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__Policy
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__Rule: A rule to be applied in a Policy.
-type GoogleIamV1__Rule struct {
- // Action: Required
- //
- // Possible values:
- // "NO_ACTION" - Default no action.
- // "ALLOW" - Matching 'Entries' grant access.
- // "ALLOW_WITH_LOG" - Matching 'Entries' grant access and the caller
- // promises to log
- // the request per the returned log_configs.
- // "DENY" - Matching 'Entries' deny access.
- // "DENY_WITH_LOG" - Matching 'Entries' deny access and the caller
- // promises to log
- // the request per the returned log_configs.
- // "LOG" - Matching 'Entries' tell IAM.Check callers to generate logs.
- Action string `json:"action,omitempty"`
-
- // Conditions: Additional restrictions that must be met
- Conditions []*GoogleIamV1__Condition `json:"conditions,omitempty"`
-
- // Description: Human-readable description of the rule.
- Description string `json:"description,omitempty"`
-
- // In: If one or more 'in' clauses are specified, the rule matches
- // if
- // the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
- In []string `json:"in,omitempty"`
-
- // LogConfig: The config returned to callers of tech.iam.IAM.CheckPolicy
- // for any entries
- // that match the LOG action.
- LogConfig []*GoogleIamV1__LogConfig `json:"logConfig,omitempty"`
-
- // NotIn: If one or more 'not_in' clauses are specified, the rule
- // matches
- // if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
- // The format for in and not_in entries is the same as for members in
- // a
- // Binding (see google/iam/v1/policy.proto).
- NotIn []string `json:"notIn,omitempty"`
-
- // Permissions: A permission is a string of form '..'
- // (e.g., 'storage.buckets.list'). A value of '*' matches all
- // permissions,
- // and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
- Permissions []string `json:"permissions,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Action") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Action") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__Rule) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__Rule
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__SetIamPolicyRequest: Request message for `SetIamPolicy`
-// method.
-type GoogleIamV1__SetIamPolicyRequest struct {
- // Policy: REQUIRED: The complete policy to be applied to the
- // `resource`. The size of
- // the policy is limited to a few 10s of KB. An empty policy is a
- // valid policy but certain Cloud Platform services (such as
- // Projects)
- // might reject them.
- Policy *GoogleIamV1__Policy `json:"policy,omitempty"`
-
- // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the
- // policy to modify. Only
- // the fields in the mask will be modified. If no mask is provided,
- // the
- // following default mask is used:
- // paths: "bindings, etag"
- // This field is only used by Cloud IAM.
- UpdateMask string `json:"updateMask,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Policy") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Policy") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__SetIamPolicyRequest
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__TestIamPermissionsRequest: Request message for
-// `TestIamPermissions` method.
-type GoogleIamV1__TestIamPermissionsRequest struct {
- // Permissions: The set of permissions to check for the `resource`.
- // Permissions with
- // wildcards (such as '*' or 'storage.*') are not allowed. For
- // more
- // information see
- // [IAM
- // Overview](https://cloud.google.com/iam/docs/overview#permissions).
- Permissions []string `json:"permissions,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Permissions") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Permissions") to include
- // in API requests with the JSON null value. By default, fields with
- // empty values are omitted from API requests. However, any field with
- // an empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__TestIamPermissionsRequest
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleIamV1__TestIamPermissionsResponse: Response message for
-// `TestIamPermissions` method.
-type GoogleIamV1__TestIamPermissionsResponse struct {
- // Permissions: A subset of `TestPermissionsRequest.permissions` that
- // the caller is
- // allowed.
- Permissions []string `json:"permissions,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "Permissions") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Permissions") to include
- // in API requests with the JSON null value. By default, fields with
- // empty values are omitted from API requests. However, any field with
- // an empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleIamV1__TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
- type noMethod GoogleIamV1__TestIamPermissionsResponse
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleLongrunning__ListOperationsResponse: The response message for
-// Operations.ListOperations.
-type GoogleLongrunning__ListOperationsResponse struct {
- // NextPageToken: The standard List next-page token.
- NextPageToken string `json:"nextPageToken,omitempty"`
-
- // Operations: A list of operations that matches the specified filter in
- // the request.
- Operations []*GoogleLongrunning__Operation `json:"operations,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "NextPageToken") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "NextPageToken") to include
- // in API requests with the JSON null value. By default, fields with
- // empty values are omitted from API requests. However, any field with
- // an empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleLongrunning__ListOperationsResponse) MarshalJSON() ([]byte, error) {
- type noMethod GoogleLongrunning__ListOperationsResponse
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleLongrunning__Operation: This resource represents a long-running
-// operation that is the result of a
-// network API call.
-type GoogleLongrunning__Operation struct {
- // Done: If the value is `false`, it means the operation is still in
- // progress.
- // If true, the operation is completed, and either `error` or `response`
- // is
- // available.
- Done bool `json:"done,omitempty"`
-
- // Error: The error result of the operation in case of failure or
- // cancellation.
- Error *GoogleRpc__Status `json:"error,omitempty"`
-
- // Metadata: Service-specific metadata associated with the operation.
- // It typically
- // contains progress information and common metadata such as create
- // time.
- // Some services might not provide such metadata. Any method that
- // returns a
- // long-running operation should document the metadata type, if any.
- Metadata googleapi.RawMessage `json:"metadata,omitempty"`
-
- // Name: The server-assigned name, which is only unique within the same
- // service that
- // originally returns it. If you use the default HTTP mapping,
- // the
- // `name` should have the format of `operations/some/unique/name`.
- Name string `json:"name,omitempty"`
-
- // Response: The normal response of the operation in case of success.
- // If the original
- // method returns no data on success, such as `Delete`, the response
- // is
- // `google.protobuf.Empty`. If the original method is
- // standard
- // `Get`/`Create`/`Update`, the response should be the resource. For
- // other
- // methods, the response should have the type `XxxResponse`, where
- // `Xxx`
- // is the original method name. For example, if the original method
- // name
- // is `TakeSnapshot()`, the inferred response type
- // is
- // `TakeSnapshotResponse`.
- Response googleapi.RawMessage `json:"response,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "Done") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Done") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleLongrunning__Operation) MarshalJSON() ([]byte, error) {
- type noMethod GoogleLongrunning__Operation
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleProtobuf__Empty: A generic empty message that you can re-use to
-// avoid defining duplicated
-// empty messages in your APIs. A typical example is to use it as the
-// request
-// or the response type of an API method. For instance:
-//
-// service Foo {
-// rpc Bar(google.protobuf.Empty) returns
-// (google.protobuf.Empty);
-// }
-//
-// The JSON representation for `Empty` is empty JSON object `{}`.
-type GoogleProtobuf__Empty struct {
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-}
-
-// GoogleRpc__Status: The `Status` type defines a logical error model
-// that is suitable for different
-// programming environments, including REST APIs and RPC APIs. It is
-// used by
-// [gRPC](https://github.com/grpc). The error model is designed to
-// be:
-//
-// - Simple to use and understand for most users
-// - Flexible enough to meet unexpected needs
-//
-// # Overview
-//
-// The `Status` message contains three pieces of data: error code, error
-// message,
-// and error details. The error code should be an enum value
-// of
-// google.rpc.Code, but it may accept additional error codes if needed.
-// The
-// error message should be a developer-facing English message that
-// helps
-// developers *understand* and *resolve* the error. If a localized
-// user-facing
-// error message is needed, put the localized message in the error
-// details or
-// localize it in the client. The optional error details may contain
-// arbitrary
-// information about the error. There is a predefined set of error
-// detail types
-// in the package `google.rpc` that can be used for common error
-// conditions.
-//
-// # Language mapping
-//
-// The `Status` message is the logical representation of the error
-// model, but it
-// is not necessarily the actual wire format. When the `Status` message
-// is
-// exposed in different client libraries and different wire protocols,
-// it can be
-// mapped differently. For example, it will likely be mapped to some
-// exceptions
-// in Java, but more likely mapped to some error codes in C.
-//
-// # Other uses
-//
-// The error model and the `Status` message can be used in a variety
-// of
-// environments, either with or without APIs, to provide a
-// consistent developer experience across different
-// environments.
-//
-// Example uses of this error model include:
-//
-// - Partial errors. If a service needs to return partial errors to the
-// client,
-// it may embed the `Status` in the normal response to indicate the
-// partial
-// errors.
-//
-// - Workflow errors. A typical workflow has multiple steps. Each step
-// may
-// have a `Status` message for error reporting.
-//
-// - Batch operations. If a client uses batch request and batch
-// response, the
-// `Status` message should be used directly inside batch response,
-// one for
-// each error sub-response.
-//
-// - Asynchronous operations. If an API call embeds asynchronous
-// operation
-// results in its response, the status of those operations should
-// be
-// represented directly using the `Status` message.
-//
-// - Logging. If some API errors are stored in logs, the message
-// `Status` could
-// be used directly after any stripping needed for security/privacy
-// reasons.
-type GoogleRpc__Status struct {
- // Code: The status code, which should be an enum value of
- // google.rpc.Code.
- Code int64 `json:"code,omitempty"`
-
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
- Details []googleapi.RawMessage `json:"details,omitempty"`
-
- // Message: A developer-facing error message, which should be in
- // English. Any
- // user-facing error message should be localized and sent in
- // the
- // google.rpc.Status.details field, or localized by the client.
- Message string `json:"message,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Code") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Code") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleRpc__Status) MarshalJSON() ([]byte, error) {
- type noMethod GoogleRpc__Status
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// GoogleType__Expr: Represents an expression text. Example:
-//
-// title: "User account presence"
-// description: "Determines whether the request has a user account"
-// expression: "size(request.user) > 0"
-type GoogleType__Expr struct {
- // Description: An optional description of the expression. This is a
- // longer text which
- // describes the expression, e.g. when hovered over it in a UI.
- Description string `json:"description,omitempty"`
-
- // Expression: Textual representation of an expression in
- // Common Expression Language syntax.
- //
- // The application context of the containing message determines
- // which
- // well-known feature set of CEL is supported.
- Expression string `json:"expression,omitempty"`
-
- // Location: An optional string indicating the location of the
- // expression for error
- // reporting, e.g. a file name and a position in the file.
- Location string `json:"location,omitempty"`
-
- // Title: An optional title for the expression, i.e. a short string
- // describing
- // its purpose. This can be used e.g. in UIs which allow to enter
- // the
- // expression.
- Title string `json:"title,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Description") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Description") to include
- // in API requests with the JSON null value. By default, fields with
- // empty values are omitted from API requests. However, any field with
- // an empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *GoogleType__Expr) MarshalJSON() ([]byte, error) {
- type noMethod GoogleType__Expr
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// method id "ml.projects.getConfig":
-
-type ProjectsGetConfigCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// GetConfig: Get the service account information associated with your
-// project. You need
-// this information in order to grant the service account persmissions
-// for
-// the Google Cloud Storage location where you put your model training
-// code
-// for training the model with Google Cloud Machine Learning.
-func (r *ProjectsService) GetConfig(name string) *ProjectsGetConfigCall {
- c := &ProjectsGetConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsGetConfigCall) Fields(s ...googleapi.Field) *ProjectsGetConfigCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsGetConfigCall) IfNoneMatch(entityTag string) *ProjectsGetConfigCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsGetConfigCall) Context(ctx context.Context) *ProjectsGetConfigCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsGetConfigCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsGetConfigCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:getConfig")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.getConfig" call.
-// Exactly one of *GoogleCloudMlV1beta1__GetConfigResponse or error will
-// be non-nil. Any non-2xx status code is an error. Response headers are
-// in either
-// *GoogleCloudMlV1beta1__GetConfigResponse.ServerResponse.Header or (if
-// a response was returned at all) in error.(*googleapi.Error).Header.
-// Use googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsGetConfigCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__GetConfigResponse, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__GetConfigResponse{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account persmissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning.",
- // "flatPath": "v1beta1/projects/{projectsId}:getConfig",
- // "httpMethod": "GET",
- // "id": "ml.projects.getConfig",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The project name.",
- // "location": "path",
- // "pattern": "^projects/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}:getConfig",
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__GetConfigResponse"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.predict":
-
-type ProjectsPredictCall struct {
- s *Service
- name string
- googlecloudmlv1beta1__predictrequest *GoogleCloudMlV1beta1__PredictRequest
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Predict: Performs prediction on the data in the request.
-//
-// **** REMOVE FROM GENERATED DOCUMENTATION
-func (r *ProjectsService) Predict(name string, googlecloudmlv1beta1__predictrequest *GoogleCloudMlV1beta1__PredictRequest) *ProjectsPredictCall {
- c := &ProjectsPredictCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- c.googlecloudmlv1beta1__predictrequest = googlecloudmlv1beta1__predictrequest
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsPredictCall) Fields(s ...googleapi.Field) *ProjectsPredictCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsPredictCall) Context(ctx context.Context) *ProjectsPredictCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsPredictCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsPredictCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudmlv1beta1__predictrequest)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:predict")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.predict" call.
-// Exactly one of *GoogleApi__HttpBody or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *GoogleApi__HttpBody.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsPredictCall) Do(opts ...googleapi.CallOption) (*GoogleApi__HttpBody, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleApi__HttpBody{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Performs prediction on the data in the request.\n\n**** REMOVE FROM GENERATED DOCUMENTATION",
- // "flatPath": "v1beta1/projects/{projectsId}:predict",
- // "httpMethod": "POST",
- // "id": "ml.projects.predict",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.",
- // "location": "path",
- // "pattern": "^projects/.+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}:predict",
- // "request": {
- // "$ref": "GoogleCloudMlV1beta1__PredictRequest"
- // },
- // "response": {
- // "$ref": "GoogleApi__HttpBody"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.jobs.cancel":
-
-type ProjectsJobsCancelCall struct {
- s *Service
- name string
- googlecloudmlv1beta1__canceljobrequest *GoogleCloudMlV1beta1__CancelJobRequest
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Cancel: Cancels a running job.
-func (r *ProjectsJobsService) Cancel(name string, googlecloudmlv1beta1__canceljobrequest *GoogleCloudMlV1beta1__CancelJobRequest) *ProjectsJobsCancelCall {
- c := &ProjectsJobsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- c.googlecloudmlv1beta1__canceljobrequest = googlecloudmlv1beta1__canceljobrequest
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsJobsCancelCall) Fields(s ...googleapi.Field) *ProjectsJobsCancelCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsJobsCancelCall) Context(ctx context.Context) *ProjectsJobsCancelCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsJobsCancelCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsJobsCancelCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudmlv1beta1__canceljobrequest)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:cancel")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.jobs.cancel" call.
-// Exactly one of *GoogleProtobuf__Empty or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *GoogleProtobuf__Empty.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsJobsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobuf__Empty, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleProtobuf__Empty{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Cancels a running job.",
- // "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}:cancel",
- // "httpMethod": "POST",
- // "id": "ml.projects.jobs.cancel",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The name of the job to cancel.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/jobs/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}:cancel",
- // "request": {
- // "$ref": "GoogleCloudMlV1beta1__CancelJobRequest"
- // },
- // "response": {
- // "$ref": "GoogleProtobuf__Empty"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.jobs.create":
-
-type ProjectsJobsCreateCall struct {
- s *Service
- parent string
- googlecloudmlv1beta1__job *GoogleCloudMlV1beta1__Job
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Create: Creates a training or a batch prediction job.
-func (r *ProjectsJobsService) Create(parent string, googlecloudmlv1beta1__job *GoogleCloudMlV1beta1__Job) *ProjectsJobsCreateCall {
- c := &ProjectsJobsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.parent = parent
- c.googlecloudmlv1beta1__job = googlecloudmlv1beta1__job
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsJobsCreateCall) Fields(s ...googleapi.Field) *ProjectsJobsCreateCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsJobsCreateCall) Context(ctx context.Context) *ProjectsJobsCreateCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsJobsCreateCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsJobsCreateCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudmlv1beta1__job)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/jobs")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "parent": c.parent,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.jobs.create" call.
-// Exactly one of *GoogleCloudMlV1beta1__Job or error will be non-nil.
-// Any non-2xx status code is an error. Response headers are in either
-// *GoogleCloudMlV1beta1__Job.ServerResponse.Header or (if a response
-// was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsJobsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__Job, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__Job{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Creates a training or a batch prediction job.",
- // "flatPath": "v1beta1/projects/{projectsId}/jobs",
- // "httpMethod": "POST",
- // "id": "ml.projects.jobs.create",
- // "parameterOrder": [
- // "parent"
- // ],
- // "parameters": {
- // "parent": {
- // "description": "Required. The project name.",
- // "location": "path",
- // "pattern": "^projects/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+parent}/jobs",
- // "request": {
- // "$ref": "GoogleCloudMlV1beta1__Job"
- // },
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__Job"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.jobs.get":
-
-type ProjectsJobsGetCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// Get: Describes a job.
-func (r *ProjectsJobsService) Get(name string) *ProjectsJobsGetCall {
- c := &ProjectsJobsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsJobsGetCall) Fields(s ...googleapi.Field) *ProjectsJobsGetCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsJobsGetCall) IfNoneMatch(entityTag string) *ProjectsJobsGetCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsJobsGetCall) Context(ctx context.Context) *ProjectsJobsGetCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsJobsGetCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsJobsGetCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.jobs.get" call.
-// Exactly one of *GoogleCloudMlV1beta1__Job or error will be non-nil.
-// Any non-2xx status code is an error. Response headers are in either
-// *GoogleCloudMlV1beta1__Job.ServerResponse.Header or (if a response
-// was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsJobsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__Job, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__Job{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Describes a job.",
- // "flatPath": "v1beta1/projects/{projectsId}/jobs/{jobsId}",
- // "httpMethod": "GET",
- // "id": "ml.projects.jobs.get",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The name of the job to get the description of.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/jobs/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}",
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__Job"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.jobs.list":
-
-type ProjectsJobsListCall struct {
- s *Service
- parent string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// List: Lists the jobs in the project.
-func (r *ProjectsJobsService) List(parent string) *ProjectsJobsListCall {
- c := &ProjectsJobsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.parent = parent
- return c
-}
-
-// Filter sets the optional parameter "filter": Specifies the subset of
-// jobs to retrieve.
-func (c *ProjectsJobsListCall) Filter(filter string) *ProjectsJobsListCall {
- c.urlParams_.Set("filter", filter)
- return c
-}
-
-// PageSize sets the optional parameter "pageSize": The number of jobs
-// to retrieve per "page" of results. If there
-// are more remaining results than this number, the response message
-// will
-// contain a valid value in the `next_page_token` field.
-//
-// The default value is 20, and the maximum page size is 100.
-func (c *ProjectsJobsListCall) PageSize(pageSize int64) *ProjectsJobsListCall {
- c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
- return c
-}
-
-// PageToken sets the optional parameter "pageToken": A page token to
-// request the next page of results.
-//
-// You get the token from the `next_page_token` field of the response
-// from
-// the previous call.
-func (c *ProjectsJobsListCall) PageToken(pageToken string) *ProjectsJobsListCall {
- c.urlParams_.Set("pageToken", pageToken)
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsJobsListCall) Fields(s ...googleapi.Field) *ProjectsJobsListCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsJobsListCall) IfNoneMatch(entityTag string) *ProjectsJobsListCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsJobsListCall) Context(ctx context.Context) *ProjectsJobsListCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsJobsListCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsJobsListCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/jobs")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "parent": c.parent,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.jobs.list" call.
-// Exactly one of *GoogleCloudMlV1beta1__ListJobsResponse or error will
-// be non-nil. Any non-2xx status code is an error. Response headers are
-// in either
-// *GoogleCloudMlV1beta1__ListJobsResponse.ServerResponse.Header or (if
-// a response was returned at all) in error.(*googleapi.Error).Header.
-// Use googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsJobsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__ListJobsResponse, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__ListJobsResponse{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Lists the jobs in the project.",
- // "flatPath": "v1beta1/projects/{projectsId}/jobs",
- // "httpMethod": "GET",
- // "id": "ml.projects.jobs.list",
- // "parameterOrder": [
- // "parent"
- // ],
- // "parameters": {
- // "filter": {
- // "description": "Optional. Specifies the subset of jobs to retrieve.",
- // "location": "query",
- // "type": "string"
- // },
- // "pageSize": {
- // "description": "Optional. The number of jobs to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
- // "format": "int32",
- // "location": "query",
- // "type": "integer"
- // },
- // "pageToken": {
- // "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
- // "location": "query",
- // "type": "string"
- // },
- // "parent": {
- // "description": "Required. The name of the project for which to list jobs.",
- // "location": "path",
- // "pattern": "^projects/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+parent}/jobs",
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__ListJobsResponse"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsJobsListCall) Pages(ctx context.Context, f func(*GoogleCloudMlV1beta1__ListJobsResponse) error) error {
- c.ctx_ = ctx
- defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
- for {
- x, err := c.Do()
- if err != nil {
- return err
- }
- if err := f(x); err != nil {
- return err
- }
- if x.NextPageToken == "" {
- return nil
- }
- c.PageToken(x.NextPageToken)
- }
-}
-
-// method id "ml.projects.models.create":
-
-type ProjectsModelsCreateCall struct {
- s *Service
- parent string
- googlecloudmlv1beta1__model *GoogleCloudMlV1beta1__Model
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Create: Creates a model which will later contain one or more
-// versions.
-//
-// You must add at least one version before you can request predictions
-// from
-// the model. Add versions by
-// calling
-// [projects.models.versions.create](/ml-engine/reference/rest/v1
-// beta1/projects.models.versions/create).
-func (r *ProjectsModelsService) Create(parent string, googlecloudmlv1beta1__model *GoogleCloudMlV1beta1__Model) *ProjectsModelsCreateCall {
- c := &ProjectsModelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.parent = parent
- c.googlecloudmlv1beta1__model = googlecloudmlv1beta1__model
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsCreateCall) Fields(s ...googleapi.Field) *ProjectsModelsCreateCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsCreateCall) Context(ctx context.Context) *ProjectsModelsCreateCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsCreateCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsCreateCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudmlv1beta1__model)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/models")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "parent": c.parent,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.create" call.
-// Exactly one of *GoogleCloudMlV1beta1__Model or error will be non-nil.
-// Any non-2xx status code is an error. Response headers are in either
-// *GoogleCloudMlV1beta1__Model.ServerResponse.Header or (if a response
-// was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__Model, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__Model{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Creates a model which will later contain one or more versions.\n\nYou must add at least one version before you can request predictions from\nthe model. Add versions by calling\n[projects.models.versions.create](/ml-engine/reference/rest/v1beta1/projects.models.versions/create).",
- // "flatPath": "v1beta1/projects/{projectsId}/models",
- // "httpMethod": "POST",
- // "id": "ml.projects.models.create",
- // "parameterOrder": [
- // "parent"
- // ],
- // "parameters": {
- // "parent": {
- // "description": "Required. The project name.",
- // "location": "path",
- // "pattern": "^projects/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+parent}/models",
- // "request": {
- // "$ref": "GoogleCloudMlV1beta1__Model"
- // },
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__Model"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.delete":
-
-type ProjectsModelsDeleteCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Delete: Deletes a model.
-//
-// You can only delete a model if there are no versions in it. You can
-// delete
-// versions by
-// calling
-// [projects.models.versions.delete](/ml-engine/reference/rest/v1
-// beta1/projects.models.versions/delete).
-func (r *ProjectsModelsService) Delete(name string) *ProjectsModelsDeleteCall {
- c := &ProjectsModelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsDeleteCall) Fields(s ...googleapi.Field) *ProjectsModelsDeleteCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsDeleteCall) Context(ctx context.Context) *ProjectsModelsDeleteCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsDeleteCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsDeleteCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("DELETE", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.delete" call.
-// Exactly one of *GoogleLongrunning__Operation or error will be
-// non-nil. Any non-2xx status code is an error. Response headers are in
-// either *GoogleLongrunning__Operation.ServerResponse.Header or (if a
-// response was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunning__Operation, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleLongrunning__Operation{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Deletes a model.\n\nYou can only delete a model if there are no versions in it. You can delete\nversions by calling\n[projects.models.versions.delete](/ml-engine/reference/rest/v1beta1/projects.models.versions/delete).",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}",
- // "httpMethod": "DELETE",
- // "id": "ml.projects.models.delete",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The name of the model.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}",
- // "response": {
- // "$ref": "GoogleLongrunning__Operation"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.get":
-
-type ProjectsModelsGetCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// Get: Gets information about a model, including its name, the
-// description (if
-// set), and the default version (if at least one version of the model
-// has
-// been deployed).
-func (r *ProjectsModelsService) Get(name string) *ProjectsModelsGetCall {
- c := &ProjectsModelsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsGetCall) Fields(s ...googleapi.Field) *ProjectsModelsGetCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsModelsGetCall) IfNoneMatch(entityTag string) *ProjectsModelsGetCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsGetCall) Context(ctx context.Context) *ProjectsModelsGetCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsGetCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsGetCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.get" call.
-// Exactly one of *GoogleCloudMlV1beta1__Model or error will be non-nil.
-// Any non-2xx status code is an error. Response headers are in either
-// *GoogleCloudMlV1beta1__Model.ServerResponse.Header or (if a response
-// was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__Model, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__Model{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Gets information about a model, including its name, the description (if\nset), and the default version (if at least one version of the model has\nbeen deployed).",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}",
- // "httpMethod": "GET",
- // "id": "ml.projects.models.get",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The name of the model.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}",
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__Model"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.getIamPolicy":
-
-type ProjectsModelsGetIamPolicyCall struct {
- s *Service
- resource string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// GetIamPolicy: Gets the access control policy for a resource.
-// Returns an empty policy if the resource exists and does not have a
-// policy
-// set.
-func (r *ProjectsModelsService) GetIamPolicy(resource string) *ProjectsModelsGetIamPolicyCall {
- c := &ProjectsModelsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.resource = resource
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsModelsGetIamPolicyCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsModelsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsModelsGetIamPolicyCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsGetIamPolicyCall) Context(ctx context.Context) *ProjectsModelsGetIamPolicyCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsGetIamPolicyCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "resource": c.resource,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.getIamPolicy" call.
-// Exactly one of *GoogleIamV1__Policy or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *GoogleIamV1__Policy.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1__Policy, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleIamV1__Policy{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:getIamPolicy",
- // "httpMethod": "GET",
- // "id": "ml.projects.models.getIamPolicy",
- // "parameterOrder": [
- // "resource"
- // ],
- // "parameters": {
- // "resource": {
- // "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+resource}:getIamPolicy",
- // "response": {
- // "$ref": "GoogleIamV1__Policy"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.list":
-
-type ProjectsModelsListCall struct {
- s *Service
- parent string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// List: Lists the models in a project.
-//
-// Each project can contain multiple models, and each model can have
-// multiple
-// versions.
-func (r *ProjectsModelsService) List(parent string) *ProjectsModelsListCall {
- c := &ProjectsModelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.parent = parent
- return c
-}
-
-// PageSize sets the optional parameter "pageSize": The number of models
-// to retrieve per "page" of results. If there
-// are more remaining results than this number, the response message
-// will
-// contain a valid value in the `next_page_token` field.
-//
-// The default value is 20, and the maximum page size is 100.
-func (c *ProjectsModelsListCall) PageSize(pageSize int64) *ProjectsModelsListCall {
- c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
- return c
-}
-
-// PageToken sets the optional parameter "pageToken": A page token to
-// request the next page of results.
-//
-// You get the token from the `next_page_token` field of the response
-// from
-// the previous call.
-func (c *ProjectsModelsListCall) PageToken(pageToken string) *ProjectsModelsListCall {
- c.urlParams_.Set("pageToken", pageToken)
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsListCall) Fields(s ...googleapi.Field) *ProjectsModelsListCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsModelsListCall) IfNoneMatch(entityTag string) *ProjectsModelsListCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsListCall) Context(ctx context.Context) *ProjectsModelsListCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsListCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsListCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/models")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "parent": c.parent,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.list" call.
-// Exactly one of *GoogleCloudMlV1beta1__ListModelsResponse or error
-// will be non-nil. Any non-2xx status code is an error. Response
-// headers are in either
-// *GoogleCloudMlV1beta1__ListModelsResponse.ServerResponse.Header or
-// (if a response was returned at all) in
-// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
-// whether the returned error was because http.StatusNotModified was
-// returned.
-func (c *ProjectsModelsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__ListModelsResponse, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__ListModelsResponse{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.",
- // "flatPath": "v1beta1/projects/{projectsId}/models",
- // "httpMethod": "GET",
- // "id": "ml.projects.models.list",
- // "parameterOrder": [
- // "parent"
- // ],
- // "parameters": {
- // "pageSize": {
- // "description": "Optional. The number of models to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
- // "format": "int32",
- // "location": "query",
- // "type": "integer"
- // },
- // "pageToken": {
- // "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
- // "location": "query",
- // "type": "string"
- // },
- // "parent": {
- // "description": "Required. The name of the project whose models are to be listed.",
- // "location": "path",
- // "pattern": "^projects/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+parent}/models",
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__ListModelsResponse"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsModelsListCall) Pages(ctx context.Context, f func(*GoogleCloudMlV1beta1__ListModelsResponse) error) error {
- c.ctx_ = ctx
- defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
- for {
- x, err := c.Do()
- if err != nil {
- return err
- }
- if err := f(x); err != nil {
- return err
- }
- if x.NextPageToken == "" {
- return nil
- }
- c.PageToken(x.NextPageToken)
- }
-}
-
-// method id "ml.projects.models.setIamPolicy":
-
-type ProjectsModelsSetIamPolicyCall struct {
- s *Service
- resource string
- googleiamv1__setiampolicyrequest *GoogleIamV1__SetIamPolicyRequest
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// SetIamPolicy: Sets the access control policy on the specified
-// resource. Replaces any
-// existing policy.
-func (r *ProjectsModelsService) SetIamPolicy(resource string, googleiamv1__setiampolicyrequest *GoogleIamV1__SetIamPolicyRequest) *ProjectsModelsSetIamPolicyCall {
- c := &ProjectsModelsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.resource = resource
- c.googleiamv1__setiampolicyrequest = googleiamv1__setiampolicyrequest
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsModelsSetIamPolicyCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsSetIamPolicyCall) Context(ctx context.Context) *ProjectsModelsSetIamPolicyCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsSetIamPolicyCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1__setiampolicyrequest)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "resource": c.resource,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.setIamPolicy" call.
-// Exactly one of *GoogleIamV1__Policy or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *GoogleIamV1__Policy.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1__Policy, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleIamV1__Policy{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:setIamPolicy",
- // "httpMethod": "POST",
- // "id": "ml.projects.models.setIamPolicy",
- // "parameterOrder": [
- // "resource"
- // ],
- // "parameters": {
- // "resource": {
- // "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+resource}:setIamPolicy",
- // "request": {
- // "$ref": "GoogleIamV1__SetIamPolicyRequest"
- // },
- // "response": {
- // "$ref": "GoogleIamV1__Policy"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.testIamPermissions":
-
-type ProjectsModelsTestIamPermissionsCall struct {
- s *Service
- resource string
- googleiamv1__testiampermissionsrequest *GoogleIamV1__TestIamPermissionsRequest
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// TestIamPermissions: Returns permissions that a caller has on the
-// specified resource.
-// If the resource does not exist, this will return an empty set
-// of
-// permissions, not a NOT_FOUND error.
-//
-// Note: This operation is designed to be used for building
-// permission-aware
-// UIs and command-line tools, not for authorization checking. This
-// operation
-// may "fail open" without warning.
-func (r *ProjectsModelsService) TestIamPermissions(resource string, googleiamv1__testiampermissionsrequest *GoogleIamV1__TestIamPermissionsRequest) *ProjectsModelsTestIamPermissionsCall {
- c := &ProjectsModelsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.resource = resource
- c.googleiamv1__testiampermissionsrequest = googleiamv1__testiampermissionsrequest
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsModelsTestIamPermissionsCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsModelsTestIamPermissionsCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsTestIamPermissionsCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1__testiampermissionsrequest)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "resource": c.resource,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.testIamPermissions" call.
-// Exactly one of *GoogleIamV1__TestIamPermissionsResponse or error will
-// be non-nil. Any non-2xx status code is an error. Response headers are
-// in either
-// *GoogleIamV1__TestIamPermissionsResponse.ServerResponse.Header or (if
-// a response was returned at all) in error.(*googleapi.Error).Header.
-// Use googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1__TestIamPermissionsResponse, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleIamV1__TestIamPermissionsResponse{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}:testIamPermissions",
- // "httpMethod": "POST",
- // "id": "ml.projects.models.testIamPermissions",
- // "parameterOrder": [
- // "resource"
- // ],
- // "parameters": {
- // "resource": {
- // "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+resource}:testIamPermissions",
- // "request": {
- // "$ref": "GoogleIamV1__TestIamPermissionsRequest"
- // },
- // "response": {
- // "$ref": "GoogleIamV1__TestIamPermissionsResponse"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.versions.create":
-
-type ProjectsModelsVersionsCreateCall struct {
- s *Service
- parent string
- googlecloudmlv1beta1__version *GoogleCloudMlV1beta1__Version
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Create: Creates a new version of a model from a trained TensorFlow
-// model.
-//
-// If the version created in the cloud by this call is the first
-// deployed
-// version of the specified model, it will be made the default version
-// of the
-// model. When you add a version to a model that already has one or
-// more
-// versions, the default version does not automatically change. If you
-// want a
-// new version to be the default, you must
-// call
-// [projects.models.versions.setDefault](/ml-engine/reference/rest/v
-// 1beta1/projects.models.versions/setDefault).
-func (r *ProjectsModelsVersionsService) Create(parent string, googlecloudmlv1beta1__version *GoogleCloudMlV1beta1__Version) *ProjectsModelsVersionsCreateCall {
- c := &ProjectsModelsVersionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.parent = parent
- c.googlecloudmlv1beta1__version = googlecloudmlv1beta1__version
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsVersionsCreateCall) Fields(s ...googleapi.Field) *ProjectsModelsVersionsCreateCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsVersionsCreateCall) Context(ctx context.Context) *ProjectsModelsVersionsCreateCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsVersionsCreateCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsVersionsCreateCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudmlv1beta1__version)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/versions")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "parent": c.parent,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.versions.create" call.
-// Exactly one of *GoogleLongrunning__Operation or error will be
-// non-nil. Any non-2xx status code is an error. Response headers are in
-// either *GoogleLongrunning__Operation.ServerResponse.Header or (if a
-// response was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsVersionsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunning__Operation, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleLongrunning__Operation{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Creates a new version of a model from a trained TensorFlow model.\n\nIf the version created in the cloud by this call is the first deployed\nversion of the specified model, it will be made the default version of the\nmodel. When you add a version to a model that already has one or more\nversions, the default version does not automatically change. If you want a\nnew version to be the default, you must call\n[projects.models.versions.setDefault](/ml-engine/reference/rest/v1beta1/projects.models.versions/setDefault).",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions",
- // "httpMethod": "POST",
- // "id": "ml.projects.models.versions.create",
- // "parameterOrder": [
- // "parent"
- // ],
- // "parameters": {
- // "parent": {
- // "description": "Required. The name of the model.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+parent}/versions",
- // "request": {
- // "$ref": "GoogleCloudMlV1beta1__Version"
- // },
- // "response": {
- // "$ref": "GoogleLongrunning__Operation"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.versions.delete":
-
-type ProjectsModelsVersionsDeleteCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Delete: Deletes a model version.
-//
-// Each model can have multiple versions deployed and in use at any
-// given
-// time. Use this method to remove a single version.
-//
-// Note: You cannot delete the version that is set as the default
-// version
-// of the model unless it is the only remaining version.
-func (r *ProjectsModelsVersionsService) Delete(name string) *ProjectsModelsVersionsDeleteCall {
- c := &ProjectsModelsVersionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsVersionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsModelsVersionsDeleteCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsVersionsDeleteCall) Context(ctx context.Context) *ProjectsModelsVersionsDeleteCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsVersionsDeleteCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsVersionsDeleteCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("DELETE", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.versions.delete" call.
-// Exactly one of *GoogleLongrunning__Operation or error will be
-// non-nil. Any non-2xx status code is an error. Response headers are in
-// either *GoogleLongrunning__Operation.ServerResponse.Header or (if a
-// response was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsVersionsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunning__Operation, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleLongrunning__Operation{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Deletes a model version.\n\nEach model can have multiple versions deployed and in use at any given\ntime. Use this method to remove a single version.\n\nNote: You cannot delete the version that is set as the default version\nof the model unless it is the only remaining version.",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}",
- // "httpMethod": "DELETE",
- // "id": "ml.projects.models.versions.delete",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The name of the version. You can get the names of all the\nversions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.models.versions/list).",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}",
- // "response": {
- // "$ref": "GoogleLongrunning__Operation"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.versions.get":
-
-type ProjectsModelsVersionsGetCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// Get: Gets information about a model version.
-//
-// Models can have multiple versions. You can
-// call
-// [projects.models.versions.list](/ml-engine/reference/rest/v1beta1
-// /projects.models.versions/list)
-// to get the same information that this method returns for all of
-// the
-// versions of a model.
-func (r *ProjectsModelsVersionsService) Get(name string) *ProjectsModelsVersionsGetCall {
- c := &ProjectsModelsVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsVersionsGetCall) Fields(s ...googleapi.Field) *ProjectsModelsVersionsGetCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsModelsVersionsGetCall) IfNoneMatch(entityTag string) *ProjectsModelsVersionsGetCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsVersionsGetCall) Context(ctx context.Context) *ProjectsModelsVersionsGetCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsVersionsGetCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsVersionsGetCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.versions.get" call.
-// Exactly one of *GoogleCloudMlV1beta1__Version or error will be
-// non-nil. Any non-2xx status code is an error. Response headers are in
-// either *GoogleCloudMlV1beta1__Version.ServerResponse.Header or (if a
-// response was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsVersionsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__Version, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__Version{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Gets information about a model version.\n\nModels can have multiple versions. You can call\n[projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.models.versions/list)\nto get the same information that this method returns for all of the\nversions of a model.",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}",
- // "httpMethod": "GET",
- // "id": "ml.projects.models.versions.get",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The name of the version.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}",
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__Version"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.models.versions.list":
-
-type ProjectsModelsVersionsListCall struct {
- s *Service
- parent string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// List: Gets basic information about all the versions of a model.
-//
-// If you expect that a model has a lot of versions, or if you need to
-// handle
-// only a limited number of results at a time, you can request that the
-// list
-// be retrieved in batches (called pages):
-func (r *ProjectsModelsVersionsService) List(parent string) *ProjectsModelsVersionsListCall {
- c := &ProjectsModelsVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.parent = parent
- return c
-}
-
-// PageSize sets the optional parameter "pageSize": The number of
-// versions to retrieve per "page" of results. If
-// there are more remaining results than this number, the response
-// message
-// will contain a valid value in the `next_page_token` field.
-//
-// The default value is 20, and the maximum page size is 100.
-func (c *ProjectsModelsVersionsListCall) PageSize(pageSize int64) *ProjectsModelsVersionsListCall {
- c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
- return c
-}
-
-// PageToken sets the optional parameter "pageToken": A page token to
-// request the next page of results.
-//
-// You get the token from the `next_page_token` field of the response
-// from
-// the previous call.
-func (c *ProjectsModelsVersionsListCall) PageToken(pageToken string) *ProjectsModelsVersionsListCall {
- c.urlParams_.Set("pageToken", pageToken)
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsVersionsListCall) Fields(s ...googleapi.Field) *ProjectsModelsVersionsListCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsModelsVersionsListCall) IfNoneMatch(entityTag string) *ProjectsModelsVersionsListCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsVersionsListCall) Context(ctx context.Context) *ProjectsModelsVersionsListCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsVersionsListCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsVersionsListCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/versions")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "parent": c.parent,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.versions.list" call.
-// Exactly one of *GoogleCloudMlV1beta1__ListVersionsResponse or error
-// will be non-nil. Any non-2xx status code is an error. Response
-// headers are in either
-// *GoogleCloudMlV1beta1__ListVersionsResponse.ServerResponse.Header or
-// (if a response was returned at all) in
-// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
-// whether the returned error was because http.StatusNotModified was
-// returned.
-func (c *ProjectsModelsVersionsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__ListVersionsResponse, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__ListVersionsResponse{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has a lot of versions, or if you need to handle\nonly a limited number of results at a time, you can request that the list\nbe retrieved in batches (called pages):",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions",
- // "httpMethod": "GET",
- // "id": "ml.projects.models.versions.list",
- // "parameterOrder": [
- // "parent"
- // ],
- // "parameters": {
- // "pageSize": {
- // "description": "Optional. The number of versions to retrieve per \"page\" of results. If\nthere are more remaining results than this number, the response message\nwill contain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
- // "format": "int32",
- // "location": "query",
- // "type": "integer"
- // },
- // "pageToken": {
- // "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
- // "location": "query",
- // "type": "string"
- // },
- // "parent": {
- // "description": "Required. The name of the model for which to list the version.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+parent}/versions",
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__ListVersionsResponse"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsModelsVersionsListCall) Pages(ctx context.Context, f func(*GoogleCloudMlV1beta1__ListVersionsResponse) error) error {
- c.ctx_ = ctx
- defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
- for {
- x, err := c.Do()
- if err != nil {
- return err
- }
- if err := f(x); err != nil {
- return err
- }
- if x.NextPageToken == "" {
- return nil
- }
- c.PageToken(x.NextPageToken)
- }
-}
-
-// method id "ml.projects.models.versions.setDefault":
-
-type ProjectsModelsVersionsSetDefaultCall struct {
- s *Service
- name string
- googlecloudmlv1beta1__setdefaultversionrequest *GoogleCloudMlV1beta1__SetDefaultVersionRequest
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// SetDefault: Designates a version to be the default for the
-// model.
-//
-// The default version is used for prediction requests made against the
-// model
-// that don't specify a version.
-//
-// The first version to be created for a model is automatically set as
-// the
-// default. You must make any subsequent changes to the default
-// version
-// setting manually using this method.
-func (r *ProjectsModelsVersionsService) SetDefault(name string, googlecloudmlv1beta1__setdefaultversionrequest *GoogleCloudMlV1beta1__SetDefaultVersionRequest) *ProjectsModelsVersionsSetDefaultCall {
- c := &ProjectsModelsVersionsSetDefaultCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- c.googlecloudmlv1beta1__setdefaultversionrequest = googlecloudmlv1beta1__setdefaultversionrequest
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsModelsVersionsSetDefaultCall) Fields(s ...googleapi.Field) *ProjectsModelsVersionsSetDefaultCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsModelsVersionsSetDefaultCall) Context(ctx context.Context) *ProjectsModelsVersionsSetDefaultCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsModelsVersionsSetDefaultCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsModelsVersionsSetDefaultCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudmlv1beta1__setdefaultversionrequest)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:setDefault")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.models.versions.setDefault" call.
-// Exactly one of *GoogleCloudMlV1beta1__Version or error will be
-// non-nil. Any non-2xx status code is an error. Response headers are in
-// either *GoogleCloudMlV1beta1__Version.ServerResponse.Header or (if a
-// response was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsModelsVersionsSetDefaultCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1beta1__Version, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleCloudMlV1beta1__Version{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Designates a version to be the default for the model.\n\nThe default version is used for prediction requests made against the model\nthat don't specify a version.\n\nThe first version to be created for a model is automatically set as the\ndefault. You must make any subsequent changes to the default version\nsetting manually using this method.",
- // "flatPath": "v1beta1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault",
- // "httpMethod": "POST",
- // "id": "ml.projects.models.versions.setDefault",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "Required. The name of the version to make the default for the model. You\ncan get the names of all the versions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects.models.versions/list).\n\nAuthorization: `ml.models.update` permission is required on the parent model.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}:setDefault",
- // "request": {
- // "$ref": "GoogleCloudMlV1beta1__SetDefaultVersionRequest"
- // },
- // "response": {
- // "$ref": "GoogleCloudMlV1beta1__Version"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.operations.cancel":
-
-type ProjectsOperationsCancelCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Cancel: Starts asynchronous cancellation on a long-running operation.
-// The server
-// makes a best effort to cancel the operation, but success is
-// not
-// guaranteed. If the server doesn't support this method, it
-// returns
-// `google.rpc.Code.UNIMPLEMENTED`. Clients can
-// use
-// Operations.GetOperation or
-// other methods to check whether the cancellation succeeded or whether
-// the
-// operation completed despite cancellation. On successful
-// cancellation,
-// the operation is not deleted; instead, it becomes an operation
-// with
-// an Operation.error value with a google.rpc.Status.code of
-// 1,
-// corresponding to `Code.CANCELLED`.
-func (r *ProjectsOperationsService) Cancel(name string) *ProjectsOperationsCancelCall {
- c := &ProjectsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsOperationsCancelCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsOperationsCancelCall) Context(ctx context.Context) *ProjectsOperationsCancelCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsOperationsCancelCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:cancel")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.operations.cancel" call.
-// Exactly one of *GoogleProtobuf__Empty or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *GoogleProtobuf__Empty.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobuf__Empty, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleProtobuf__Empty{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
- // "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}:cancel",
- // "httpMethod": "POST",
- // "id": "ml.projects.operations.cancel",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "The name of the operation resource to be cancelled.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/operations/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}:cancel",
- // "response": {
- // "$ref": "GoogleProtobuf__Empty"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.operations.delete":
-
-type ProjectsOperationsDeleteCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
-}
-
-// Delete: Deletes a long-running operation. This method indicates that
-// the client is
-// no longer interested in the operation result. It does not cancel
-// the
-// operation. If the server doesn't support this method, it
-// returns
-// `google.rpc.Code.UNIMPLEMENTED`.
-func (r *ProjectsOperationsService) Delete(name string) *ProjectsOperationsDeleteCall {
- c := &ProjectsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsOperationsDeleteCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsOperationsDeleteCall) Context(ctx context.Context) *ProjectsOperationsDeleteCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsOperationsDeleteCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("DELETE", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.operations.delete" call.
-// Exactly one of *GoogleProtobuf__Empty or error will be non-nil. Any
-// non-2xx status code is an error. Response headers are in either
-// *GoogleProtobuf__Empty.ServerResponse.Header or (if a response was
-// returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobuf__Empty, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleProtobuf__Empty{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
- // "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}",
- // "httpMethod": "DELETE",
- // "id": "ml.projects.operations.delete",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "The name of the operation resource to be deleted.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/operations/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}",
- // "response": {
- // "$ref": "GoogleProtobuf__Empty"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.operations.get":
-
-type ProjectsOperationsGetCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// Get: Gets the latest state of a long-running operation. Clients can
-// use this
-// method to poll the operation result at intervals as recommended by
-// the API
-// service.
-func (r *ProjectsOperationsService) Get(name string) *ProjectsOperationsGetCall {
- c := &ProjectsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsOperationsGetCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsOperationsGetCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsOperationsGetCall) Context(ctx context.Context) *ProjectsOperationsGetCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsOperationsGetCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.operations.get" call.
-// Exactly one of *GoogleLongrunning__Operation or error will be
-// non-nil. Any non-2xx status code is an error. Response headers are in
-// either *GoogleLongrunning__Operation.ServerResponse.Header or (if a
-// response was returned at all) in error.(*googleapi.Error).Header. Use
-// googleapi.IsNotModified to check whether the returned error was
-// because http.StatusNotModified was returned.
-func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunning__Operation, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleLongrunning__Operation{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
- // "flatPath": "v1beta1/projects/{projectsId}/operations/{operationsId}",
- // "httpMethod": "GET",
- // "id": "ml.projects.operations.get",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "name": {
- // "description": "The name of the operation resource.",
- // "location": "path",
- // "pattern": "^projects/[^/]+/operations/[^/]+$",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}",
- // "response": {
- // "$ref": "GoogleLongrunning__Operation"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// method id "ml.projects.operations.list":
-
-type ProjectsOperationsListCall struct {
- s *Service
- name string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
-}
-
-// List: Lists operations that match the specified filter in the
-// request. If the
-// server doesn't support this method, it returns
-// `UNIMPLEMENTED`.
-//
-// NOTE: the `name` binding allows API services to override the
-// binding
-// to use different resource name schemes, such as `users/*/operations`.
-// To
-// override the binding, API services can add a binding such
-// as
-// "/v1/{name=users/*}/operations" to their service configuration.
-// For backwards compatibility, the default name includes the
-// operations
-// collection id, however overriding users must ensure the name
-// binding
-// is the parent resource, without the operations collection id.
-func (r *ProjectsOperationsService) List(name string) *ProjectsOperationsListCall {
- c := &ProjectsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.name = name
- return c
-}
-
-// Filter sets the optional parameter "filter": The standard list
-// filter.
-func (c *ProjectsOperationsListCall) Filter(filter string) *ProjectsOperationsListCall {
- c.urlParams_.Set("filter", filter)
- return c
-}
-
-// PageSize sets the optional parameter "pageSize": The standard list
-// page size.
-func (c *ProjectsOperationsListCall) PageSize(pageSize int64) *ProjectsOperationsListCall {
- c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
- return c
-}
-
-// PageToken sets the optional parameter "pageToken": The standard list
-// page token.
-func (c *ProjectsOperationsListCall) PageToken(pageToken string) *ProjectsOperationsListCall {
- c.urlParams_.Set("pageToken", pageToken)
- return c
-}
-
-// Fields allows partial responses to be retrieved. See
-// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
-// for more information.
-func (c *ProjectsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsOperationsListCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- return c
-}
-
-// IfNoneMatch sets the optional parameter which makes the operation
-// fail if the object's ETag matches the given value. This is useful for
-// getting updates only after the object has changed since the last
-// request. Use googleapi.IsNotModified to check whether the response
-// error from Do is the result of In-None-Match.
-func (c *ProjectsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsOperationsListCall {
- c.ifNoneMatch_ = entityTag
- return c
-}
-
-// Context sets the context to be used in this call's Do method. Any
-// pending HTTP request will be aborted if the provided context is
-// canceled.
-func (c *ProjectsOperationsListCall) Context(ctx context.Context) *ProjectsOperationsListCall {
- c.ctx_ = ctx
- return c
-}
-
-// Header returns an http.Header that can be modified by the caller to
-// add HTTP headers to the request.
-func (c *ProjectsOperationsListCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
-}
-
-func (c *ProjectsOperationsListCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- if c.ifNoneMatch_ != "" {
- reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
- }
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/operations")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "name": c.name,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
-}
-
-// Do executes the "ml.projects.operations.list" call.
-// Exactly one of *GoogleLongrunning__ListOperationsResponse or error
-// will be non-nil. Any non-2xx status code is an error. Response
-// headers are in either
-// *GoogleLongrunning__ListOperationsResponse.ServerResponse.Header or
-// (if a response was returned at all) in
-// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
-// whether the returned error was because http.StatusNotModified was
-// returned.
-func (c *ProjectsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunning__ListOperationsResponse, error) {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if res != nil && res.StatusCode == http.StatusNotModified {
- if res.Body != nil {
- res.Body.Close()
- }
- return nil, &googleapi.Error{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &GoogleLongrunning__ListOperationsResponse{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := json.NewDecoder(res.Body).Decode(target); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
- // "flatPath": "v1beta1/projects/{projectsId}/operations",
- // "httpMethod": "GET",
- // "id": "ml.projects.operations.list",
- // "parameterOrder": [
- // "name"
- // ],
- // "parameters": {
- // "filter": {
- // "description": "The standard list filter.",
- // "location": "query",
- // "type": "string"
- // },
- // "name": {
- // "description": "The name of the operation's parent resource.",
- // "location": "path",
- // "pattern": "^projects/[^/]+$",
- // "required": true,
- // "type": "string"
- // },
- // "pageSize": {
- // "description": "The standard list page size.",
- // "format": "int32",
- // "location": "query",
- // "type": "integer"
- // },
- // "pageToken": {
- // "description": "The standard list page token.",
- // "location": "query",
- // "type": "string"
- // }
- // },
- // "path": "v1beta1/{+name}/operations",
- // "response": {
- // "$ref": "GoogleLongrunning__ListOperationsResponse"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
- // ]
- // }
-
-}
-
-// Pages invokes f for each page of results.
-// A non-nil error returned from f will halt the iteration.
-// The provided context supersedes any context provided to the Context method.
-func (c *ProjectsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunning__ListOperationsResponse) error) error {
- c.ctx_ = ctx
- defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
- for {
- x, err := c.Do()
- if err != nil {
- return err
- }
- if err := f(x); err != nil {
- return err
- }
- if x.NextPageToken == "" {
- return nil
- }
- c.PageToken(x.NextPageToken)
- }
-}
diff --git a/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json b/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json
index c5bfe90..85d3af5 100644
--- a/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json
+++ b/vendor/google.golang.org/api/monitoring/v3/monitoring-api.json
@@ -1,16 +1,383 @@
{
+ "revision": "20170822",
"documentationLink": "https://cloud.google.com/monitoring/api/",
- "revision": "20170701",
"id": "monitoring:v3",
"discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
+ "Explicit": {
+ "type": "object",
+ "properties": {
+ "bounds": {
+ "description": "The values must be monotonically increasing.",
+ "items": {
+ "format": "double",
+ "type": "number"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Explicit",
+ "description": "Specifies a set of buckets with arbitrary widths.There are size(bounds) + 1 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): boundsi Lower bound (1 \u003c= i \u003c N); boundsi - 1The bounds field must contain at least one element. If bounds has only one element, then there are no finite buckets, and that single element is the common boundary of the overflow and underflow buckets."
+ },
+ "TimeInterval": {
+ "type": "object",
+ "properties": {
+ "endTime": {
+ "format": "google-datetime",
+ "description": "Required. The end of the time interval.",
+ "type": "string"
+ },
+ "startTime": {
+ "format": "google-datetime",
+ "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.",
+ "type": "string"
+ }
+ },
+ "id": "TimeInterval",
+ "description": "A time interval extending just after a start time through an end time. If the start time is the same as the end time, then the interval represents a single point in time."
+ },
+ "Exponential": {
+ "type": "object",
+ "properties": {
+ "growthFactor": {
+ "format": "double",
+ "description": "Must be greater than 1.",
+ "type": "number"
+ },
+ "scale": {
+ "format": "double",
+ "description": "Must be greater than 0.",
+ "type": "number"
+ },
+ "numFiniteBuckets": {
+ "format": "int32",
+ "description": "Must be greater than 0.",
+ "type": "integer"
+ }
+ },
+ "id": "Exponential",
+ "description": "Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): scale * (growth_factor ^ i). Lower bound (1 \u003c= i \u003c N): scale * (growth_factor ^ (i - 1))."
+ },
+ "Point": {
+ "id": "Point",
+ "description": "A single data point in a time series.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "$ref": "TypedValue",
+ "description": "The value of the data point."
+ },
+ "interval": {
+ "description": "The time interval to which the data point applies. For GAUGE metrics, only the end time of the interval is used. For DELTA metrics, the start and end time should specify a non-zero interval, with subsequent points specifying contiguous and non-overlapping intervals. For CUMULATIVE metrics, the start and end time should specify a non-zero interval, with subsequent points specifying the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points.",
+ "$ref": "TimeInterval"
+ }
+ }
+ },
+ "Metric": {
+ "description": "A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "An existing metric type, see google.api.MetricDescriptor. For example, custom.googleapis.com/invoice/paid/amount.",
+ "type": "string"
+ },
+ "labels": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The set of label values that uniquely identify this metric. All labels listed in the MetricDescriptor must be assigned values."
+ }
+ },
+ "id": "Metric"
+ },
+ "Field": {
+ "description": "A single field of a message type.",
+ "type": "object",
+ "properties": {
+ "number": {
+ "format": "int32",
+ "description": "The field number.",
+ "type": "integer"
+ },
+ "kind": {
+ "type": "string",
+ "enumDescriptions": [
+ "Field type unknown.",
+ "Field type double.",
+ "Field type float.",
+ "Field type int64.",
+ "Field type uint64.",
+ "Field type int32.",
+ "Field type fixed64.",
+ "Field type fixed32.",
+ "Field type bool.",
+ "Field type string.",
+ "Field type group. Proto2 syntax only, and deprecated.",
+ "Field type message.",
+ "Field type bytes.",
+ "Field type uint32.",
+ "Field type enum.",
+ "Field type sfixed32.",
+ "Field type sfixed64.",
+ "Field type sint32.",
+ "Field type sint64."
+ ],
+ "enum": [
+ "TYPE_UNKNOWN",
+ "TYPE_DOUBLE",
+ "TYPE_FLOAT",
+ "TYPE_INT64",
+ "TYPE_UINT64",
+ "TYPE_INT32",
+ "TYPE_FIXED64",
+ "TYPE_FIXED32",
+ "TYPE_BOOL",
+ "TYPE_STRING",
+ "TYPE_GROUP",
+ "TYPE_MESSAGE",
+ "TYPE_BYTES",
+ "TYPE_UINT32",
+ "TYPE_ENUM",
+ "TYPE_SFIXED32",
+ "TYPE_SFIXED64",
+ "TYPE_SINT32",
+ "TYPE_SINT64"
+ ],
+ "description": "The field type."
+ },
+ "jsonName": {
+ "description": "The field JSON name.",
+ "type": "string"
+ },
+ "options": {
+ "items": {
+ "$ref": "Option"
+ },
+ "type": "array",
+ "description": "The protocol buffer options."
+ },
+ "oneofIndex": {
+ "format": "int32",
+ "description": "The index of the field type in Type.oneofs, for message or enumeration types. The first type has index 1; zero means the type is not in the list.",
+ "type": "integer"
+ },
+ "packed": {
+ "type": "boolean",
+ "description": "Whether to use alternative packed wire representation."
+ },
+ "cardinality": {
+ "enumDescriptions": [
+ "For fields with unknown cardinality.",
+ "For optional fields.",
+ "For required fields. Proto2 syntax only.",
+ "For repeated fields."
+ ],
+ "enum": [
+ "CARDINALITY_UNKNOWN",
+ "CARDINALITY_OPTIONAL",
+ "CARDINALITY_REQUIRED",
+ "CARDINALITY_REPEATED"
+ ],
+ "description": "The field cardinality.",
+ "type": "string"
+ },
+ "defaultValue": {
+ "description": "The string value of the default value of this field. Proto2 syntax only.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The field name.",
+ "type": "string"
+ },
+ "typeUrl": {
+ "description": "The field type URL, without the scheme, for message or enumeration types. Example: \"type.googleapis.com/google.protobuf.Timestamp\".",
+ "type": "string"
+ }
+ },
+ "id": "Field"
+ },
+ "LabelDescriptor": {
+ "properties": {
+ "key": {
+ "description": "The label key.",
+ "type": "string"
+ },
+ "description": {
+ "description": "A human-readable description for the label.",
+ "type": "string"
+ },
+ "valueType": {
+ "description": "The type of data that can be assigned to the label.",
+ "type": "string",
+ "enumDescriptions": [
+ "A variable-length string. This is the default.",
+ "Boolean; true or false.",
+ "A 64-bit signed integer."
+ ],
+ "enum": [
+ "STRING",
+ "BOOL",
+ "INT64"
+ ]
+ }
+ },
+ "id": "LabelDescriptor",
+ "description": "A description of a label.",
+ "type": "object"
+ },
+ "ListTimeSeriesResponse": {
+ "properties": {
+ "timeSeries": {
+ "description": "One or more time series that match the filter included in the request.",
+ "items": {
+ "$ref": "TimeSeries"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "type": "string",
+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method."
+ }
+ },
+ "id": "ListTimeSeriesResponse",
+ "description": "The ListTimeSeries response.",
+ "type": "object"
+ },
+ "Group": {
+ "description": "The description of a dynamic collection of monitored resources. Each group has a filter that is matched against monitored resources and their associated metadata. If a group's filter matches an available monitored resource, then that resource is a member of that group. Groups can contain any number of monitored resources, and each monitored resource can be a member of any number of groups.Groups can be nested in parent-child hierarchies. The parentName field identifies an optional parent for each group. If a group has a parent, then the only monitored resources available to be matched by the group's filter are the resources contained in the parent group. In other words, a group contains the monitored resources that match its filter and the filters of all the group's ancestors. A group without a parent can contain any monitored resource.For example, consider an infrastructure running a set of instances with two user-defined tags: \"environment\" and \"role\". A parent group has a filter, environment=\"production\". A child of that parent group has a filter, role=\"transcoder\". The parent group contains all instances in the production environment, regardless of their roles. The child group contains instances that have the transcoder role and are in the production environment.The monitored resources contained in a group can change at any moment, depending on what resources exist and what filters are associated with the group and its ancestors.",
+ "type": "object",
+ "properties": {
+ "parentName": {
+ "description": "The name of the group's parent, if it has one. The format is \"projects/{project_id_or_number}/groups/{group_id}\". For groups with no parent, parentName is the empty string, \"\".",
+ "type": "string"
+ },
+ "name": {
+ "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "A user-assigned name for this group, used only for display purposes.",
+ "type": "string"
+ },
+ "isCluster": {
+ "description": "If true, the members of this group are considered to be a cluster. The system can perform additional analysis on groups that are clusters.",
+ "type": "boolean"
+ },
+ "filter": {
+ "type": "string",
+ "description": "The filter used to determine which monitored resources belong to this group."
+ }
+ },
+ "id": "Group"
+ },
+ "Type": {
+ "description": "A protocol buffer message type.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The fully qualified message name.",
+ "type": "string"
+ },
+ "oneofs": {
+ "description": "The list of types appearing in oneof definitions in this type.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "sourceContext": {
+ "$ref": "SourceContext",
+ "description": "The source context."
+ },
+ "syntax": {
+ "enumDescriptions": [
+ "Syntax proto2.",
+ "Syntax proto3."
+ ],
+ "enum": [
+ "SYNTAX_PROTO2",
+ "SYNTAX_PROTO3"
+ ],
+ "description": "The source syntax.",
+ "type": "string"
+ },
+ "options": {
+ "items": {
+ "$ref": "Option"
+ },
+ "type": "array",
+ "description": "The protocol buffer options."
+ },
+ "fields": {
+ "description": "The list of fields.",
+ "items": {
+ "$ref": "Field"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Type"
+ },
+ "BucketOptions": {
+ "id": "BucketOptions",
+ "description": "BucketOptions describes the bucket boundaries used to create a histogram for the distribution. The buckets can be in a linear sequence, an exponential sequence, or each bucket can be specified explicitly. BucketOptions does not include the number of values in each bucket.A bucket has an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket must be strictly greater than the lower bound. The sequence of N buckets for a distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i \u003e 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.",
+ "type": "object",
+ "properties": {
+ "exponentialBuckets": {
+ "description": "The exponential buckets.",
+ "$ref": "Exponential"
+ },
+ "explicitBuckets": {
+ "$ref": "Explicit",
+ "description": "The explicit buckets."
+ },
+ "linearBuckets": {
+ "description": "The linear bucket.",
+ "$ref": "Linear"
+ }
+ }
+ },
+ "CollectdValue": {
+ "description": "A single data point from a collectd-based plugin.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "$ref": "TypedValue",
+ "description": "The measurement value."
+ },
+ "dataSourceType": {
+ "enum": [
+ "UNSPECIFIED_DATA_SOURCE_TYPE",
+ "GAUGE",
+ "COUNTER",
+ "DERIVE",
+ "ABSOLUTE"
+ ],
+ "description": "The type of measurement.",
+ "type": "string",
+ "enumDescriptions": [
+ "An unspecified data source type. This corresponds to google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.",
+ "An instantaneous measurement of a varying quantity. This corresponds to google.api.MetricDescriptor.MetricKind.GAUGE.",
+ "A cumulative value over time. This corresponds to google.api.MetricDescriptor.MetricKind.CUMULATIVE.",
+ "A rate of change of the measurement.",
+ "An amount of change since the last measurement interval. This corresponds to google.api.MetricDescriptor.MetricKind.DELTA."
+ ]
+ },
+ "dataSourceName": {
+ "description": "The data source for the collectd value. For example there are two data sources for network measurements: \"rx\" and \"tx\".",
+ "type": "string"
+ }
+ },
+ "id": "CollectdValue"
+ },
"SourceContext": {
"type": "object",
"properties": {
"fileName": {
- "type": "string",
- "description": "The path-qualified name of the .proto file that contained the associated protobuf element. For example: \"google/protobuf/source_context.proto\"."
+ "description": "The path-qualified name of the .proto file that contained the associated protobuf element. For example: \"google/protobuf/source_context.proto\".",
+ "type": "string"
}
},
"id": "SourceContext",
@@ -28,14 +395,23 @@
"type": "array"
},
"name": {
- "description": "The resource name of the metric descriptor. Depending on the implementation, the name typically includes: (1) the parent resource name that defines the scope of the metric type or of its data; and (2) the metric's URL-encoded type, which also appears in the type field of this descriptor. For example, following is the resource name of a custom metric within the GCP project my-project-id:\n\"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount\"\n",
- "type": "string"
+ "type": "string",
+ "description": "The resource name of the metric descriptor. Depending on the implementation, the name typically includes: (1) the parent resource name that defines the scope of the metric type or of its data; and (2) the metric's URL-encoded type, which also appears in the type field of this descriptor. For example, following is the resource name of a custom metric within the GCP project my-project-id:\n\"projects/my-project-id/metricDescriptors/custom.googleapis.com%2Finvoice%2Fpaid%2Famount\"\n"
},
"type": {
- "description": "The metric type, including its DNS name prefix. The type is not URL-encoded. All user-defined custom metric types have the DNS name custom.googleapis.com. Metric types should use a natural hierarchical grouping. For example:\n\"custom.googleapis.com/invoice/paid/amount\"\n\"appengine.googleapis.com/http/server/response_latencies\"\n",
- "type": "string"
+ "type": "string",
+ "description": "The metric type, including its DNS name prefix. The type is not URL-encoded. All user-defined custom metric types have the DNS name custom.googleapis.com. Metric types should use a natural hierarchical grouping. For example:\n\"custom.googleapis.com/invoice/paid/amount\"\n\"appengine.googleapis.com/http/server/response_latencies\"\n"
},
"valueType": {
+ "enumDescriptions": [
+ "Do not use this default value.",
+ "The value is a boolean. This value type can be used only if the metric kind is GAUGE.",
+ "The value is a signed 64-bit integer.",
+ "The value is a double precision floating point number.",
+ "The value is a text string. This value type can be used only if the metric kind is GAUGE.",
+ "The value is a Distribution.",
+ "The value is money."
+ ],
"enum": [
"VALUE_TYPE_UNSPECIFIED",
"BOOL",
@@ -46,16 +422,7 @@
"MONEY"
],
"description": "Whether the measurement is an integer, a floating-point number, etc. Some combinations of metric_kind and value_type might not be supported.",
- "type": "string",
- "enumDescriptions": [
- "Do not use this default value.",
- "The value is a boolean. This value type can be used only if the metric kind is GAUGE.",
- "The value is a signed 64-bit integer.",
- "The value is a double precision floating point number.",
- "The value is a text string. This value type can be used only if the metric kind is GAUGE.",
- "The value is a Distribution.",
- "The value is money."
- ]
+ "type": "string"
},
"metricKind": {
"description": "Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metric_kind and value_type might not be supported.",
@@ -89,64 +456,65 @@
"id": "MetricDescriptor"
},
"Range": {
- "description": "The range of the population values.",
"type": "object",
"properties": {
- "max": {
- "format": "double",
- "description": "The maximum of the population values.",
- "type": "number"
- },
"min": {
"format": "double",
"description": "The minimum of the population values.",
"type": "number"
+ },
+ "max": {
+ "format": "double",
+ "description": "The maximum of the population values.",
+ "type": "number"
}
},
- "id": "Range"
+ "id": "Range",
+ "description": "The range of the population values."
},
"ListGroupsResponse": {
"description": "The ListGroups response.",
"type": "object",
"properties": {
+ "nextPageToken": {
+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
+ "type": "string"
+ },
"group": {
"description": "The groups that match the specified filters.",
"items": {
"$ref": "Group"
},
"type": "array"
- },
- "nextPageToken": {
- "type": "string",
- "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method."
}
},
"id": "ListGroupsResponse"
},
"ListGroupMembersResponse": {
- "id": "ListGroupMembersResponse",
- "description": "The ListGroupMembers response.",
"type": "object",
"properties": {
"members": {
+ "description": "A set of monitored resources in the group.",
"items": {
"$ref": "MonitoredResource"
},
- "type": "array",
- "description": "A set of monitored resources in the group."
+ "type": "array"
},
"nextPageToken": {
"description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
"type": "string"
},
"totalSize": {
+ "type": "integer",
"format": "int32",
- "description": "The total number of elements matching this request.",
- "type": "integer"
+ "description": "The total number of elements matching this request."
}
- }
+ },
+ "id": "ListGroupMembersResponse",
+ "description": "The ListGroupMembers response."
},
"CreateCollectdTimeSeriesRequest": {
+ "id": "CreateCollectdTimeSeriesRequest",
"description": "The CreateCollectdTimeSeries request.",
"type": "object",
"properties": {
@@ -158,80 +526,38 @@
"type": "array"
},
"resource": {
- "$ref": "MonitoredResource",
- "description": "The monitored resource associated with the time series."
+ "description": "The monitored resource associated with the time series.",
+ "$ref": "MonitoredResource"
},
"collectdVersion": {
"description": "The version of collectd that collected the data. Example: \"5.3.0-192.el6\".",
"type": "string"
}
- },
- "id": "CreateCollectdTimeSeriesRequest"
+ }
},
"ListMonitoredResourceDescriptorsResponse": {
+ "description": "The ListMonitoredResourceDescriptors response.",
+ "type": "object",
"properties": {
"resourceDescriptors": {
+ "description": "The monitored resource descriptors that are available to this project and that match filter, if present.",
"items": {
"$ref": "MonitoredResourceDescriptor"
},
- "type": "array",
- "description": "The monitored resource descriptors that are available to this project and that match filter, if present."
+ "type": "array"
},
"nextPageToken": {
- "type": "string",
- "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method."
+ "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
+ "type": "string"
}
},
- "id": "ListMonitoredResourceDescriptorsResponse",
- "description": "The ListMonitoredResourceDescriptors response.",
- "type": "object"
+ "id": "ListMonitoredResourceDescriptorsResponse"
},
"TimeSeries": {
- "id": "TimeSeries",
"description": "A collection of data points that describes the time-varying values of a metric. A time series is identified by a combination of a fully-specified monitored resource and a fully-specified metric. This type is used for both listing and creating time series.",
"type": "object",
"properties": {
- "resource": {
- "$ref": "MonitoredResource",
- "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data."
- },
- "metricKind": {
- "enumDescriptions": [
- "Do not use this default value.",
- "An instantaneous measurement of a value.",
- "The change in a value during a time interval.",
- "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points."
- ],
- "enum": [
- "METRIC_KIND_UNSPECIFIED",
- "GAUGE",
- "DELTA",
- "CUMULATIVE"
- ],
- "description": "The metric kind of the time series. When listing time series, this metric kind might be different from the metric kind of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the metric kind of the associated metric. If the associated metric's descriptor must be auto-created, then this field specifies the metric kind of the new descriptor and must be either GAUGE (the default) or CUMULATIVE.",
- "type": "string"
- },
- "points": {
- "description": "The data points of this time series. When listing time series, the order of the points is specified by the list method.When creating a time series, this field must contain exactly one point and the point's type must be the same as the value type of the associated metric. If the associated metric's descriptor must be auto-created, then the value type of the descriptor is determined by the point's type, which must be BOOL, INT64, DOUBLE, or DISTRIBUTION.",
- "items": {
- "$ref": "Point"
- },
- "type": "array"
- },
- "metric": {
- "description": "The associated metric. A fully-specified metric used to identify the time series.",
- "$ref": "Metric"
- },
"valueType": {
- "enumDescriptions": [
- "Do not use this default value.",
- "The value is a boolean. This value type can be used only if the metric kind is GAUGE.",
- "The value is a signed 64-bit integer.",
- "The value is a double precision floating point number.",
- "The value is a text string. This value type can be used only if the metric kind is GAUGE.",
- "The value is a Distribution.",
- "The value is money."
- ],
"enum": [
"VALUE_TYPE_UNSPECIFIED",
"BOOL",
@@ -242,20 +568,61 @@
"MONEY"
],
"description": "The value type of the time series. When listing time series, this value type might be different from the value type of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the type of the data in the points field.",
- "type": "string"
+ "type": "string",
+ "enumDescriptions": [
+ "Do not use this default value.",
+ "The value is a boolean. This value type can be used only if the metric kind is GAUGE.",
+ "The value is a signed 64-bit integer.",
+ "The value is a double precision floating point number.",
+ "The value is a text string. This value type can be used only if the metric kind is GAUGE.",
+ "The value is a Distribution.",
+ "The value is money."
+ ]
+ },
+ "resource": {
+ "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data.",
+ "$ref": "MonitoredResource"
+ },
+ "metricKind": {
+ "enum": [
+ "METRIC_KIND_UNSPECIFIED",
+ "GAUGE",
+ "DELTA",
+ "CUMULATIVE"
+ ],
+ "description": "The metric kind of the time series. When listing time series, this metric kind might be different from the metric kind of the associated metric if this time series is an alignment or reduction of other time series.When creating a time series, this field is optional. If present, it must be the same as the metric kind of the associated metric. If the associated metric's descriptor must be auto-created, then this field specifies the metric kind of the new descriptor and must be either GAUGE (the default) or CUMULATIVE.",
+ "type": "string",
+ "enumDescriptions": [
+ "Do not use this default value.",
+ "An instantaneous measurement of a value.",
+ "The change in a value during a time interval.",
+ "A value accumulated over a time interval. Cumulative measurements in a time series should have the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points."
+ ]
+ },
+ "points": {
+ "description": "The data points of this time series. When listing time series, the order of the points is specified by the list method.When creating a time series, this field must contain exactly one point and the point's type must be the same as the value type of the associated metric. If the associated metric's descriptor must be auto-created, then the value type of the descriptor is determined by the point's type, which must be BOOL, INT64, DOUBLE, or DISTRIBUTION.",
+ "items": {
+ "$ref": "Point"
+ },
+ "type": "array"
+ },
+ "metric": {
+ "$ref": "Metric",
+ "description": "The associated metric. A fully-specified metric used to identify the time series."
}
- }
+ },
+ "id": "TimeSeries"
},
"CreateTimeSeriesRequest": {
"description": "The CreateTimeSeries request.",
"type": "object",
"properties": {
"timeSeries": {
+ "description": "The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each TimeSeries value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.",
"items": {
"$ref": "TimeSeries"
},
- "type": "array",
- "description": "The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each TimeSeries value must fully specify a unique time series by supplying all label values for the metric and the monitored resource."
+ "type": "array"
}
},
"id": "CreateTimeSeriesRequest"
@@ -264,20 +631,6 @@
"description": "Distribution contains summary statistics for a population of values. It optionally contains a histogram representing the distribution of those values across a set of buckets.The summary statistics are the count, mean, sum of the squared deviation from the mean, the minimum, and the maximum of the set of population of values. The histogram is based on a sequence of buckets and gives a count of values that fall into each bucket. The boundaries of the buckets are given either explicitly or by formulas for buckets of fixed or exponentially increasing widths.Although it is not forbidden, it is generally a bad idea to include non-finite values (infinities or NaNs) in the population of values, as this will render the mean and sum_of_squared_deviation fields meaningless.",
"type": "object",
"properties": {
- "range": {
- "$ref": "Range",
- "description": "If specified, contains the range of the population values. The field must not be present if the count is zero. This field is presently ignored by the Stackdriver Monitoring API v3."
- },
- "count": {
- "format": "int64",
- "description": "The number of values in the population. Must be non-negative. This value must equal the sum of the values in bucket_counts if a histogram is provided.",
- "type": "string"
- },
- "mean": {
- "type": "number",
- "format": "double",
- "description": "The arithmetic mean of the values in the population. If count is zero then this field must be zero."
- },
"bucketCounts": {
"description": "Required in the Stackdriver Monitoring API v3. The values for each bucket specified in bucket_options. The sum of the values in bucketCounts must equal the value in the count field of the Distribution object. The order of the bucket counts follows the numbering schemes described for the three bucket types. The underflow bucket has number 0; the finite buckets, if any, have numbers 1 through N-2; and the overflow bucket has number N-1. The size of bucket_counts must not be greater than N. If the size is less than N, then the remaining buckets are assigned values of zero.",
"items": {
@@ -294,6 +647,20 @@
"format": "double",
"description": "The sum of squared deviations from the mean of the values in the population. For values x_i this is:\nSum[i=1..n]((x_i - mean)^2)\nKnuth, \"The Art of Computer Programming\", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass.If count is zero then this field must be zero.",
"type": "number"
+ },
+ "range": {
+ "description": "If specified, contains the range of the population values. The field must not be present if the count is zero. This field is presently ignored by the Stackdriver Monitoring API v3.",
+ "$ref": "Range"
+ },
+ "count": {
+ "format": "int64",
+ "description": "The number of values in the population. Must be non-negative. This value must equal the sum of the values in bucket_counts if a histogram is provided.",
+ "type": "string"
+ },
+ "mean": {
+ "format": "double",
+ "description": "The arithmetic mean of the values in the population. If count is zero then this field must be zero.",
+ "type": "number"
}
},
"id": "Distribution"
@@ -305,11 +672,11 @@
"type": "string"
},
"labels": {
- "type": "object",
"additionalProperties": {
"type": "string"
},
- "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\"."
+ "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".",
+ "type": "object"
}
},
"id": "MonitoredResource",
@@ -317,7 +684,6 @@
"type": "object"
},
"ListMetricDescriptorsResponse": {
- "id": "ListMetricDescriptorsResponse",
"description": "The ListMetricDescriptors response.",
"type": "object",
"properties": {
@@ -332,18 +698,24 @@
},
"type": "array"
}
- }
+ },
+ "id": "ListMetricDescriptorsResponse"
},
"MonitoredResourceDescriptor": {
+ "description": "An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of \"gce_instance\" and specifies the use of the labels \"instance_id\" and \"zone\" to identify particular VM instances.Different APIs can support different monitored resource types. APIs generally provide a list method that returns the monitored resource descriptors used by the API.",
"type": "object",
"properties": {
+ "name": {
+ "description": "Optional. The resource name of the monitored resource descriptor: \"projects/{project_id}/monitoredResourceDescriptors/{type}\" where {type} is the value of the type field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format \"monitoredResourceDescriptors/{type}\".",
+ "type": "string"
+ },
"description": {
"description": "Optional. A detailed description of the monitored resource type that might be used in documentation.",
"type": "string"
},
"displayName": {
- "description": "Optional. A concise name for the monitored resource type that might be displayed in user interfaces. It should be a Title Cased Noun Phrase, without any article or other determiners. For example, \"Google Cloud SQL Database\".",
- "type": "string"
+ "type": "string",
+ "description": "Optional. A concise name for the monitored resource type that might be displayed in user interfaces. It should be a Title Cased Noun Phrase, without any article or other determiners. For example, \"Google Cloud SQL Database\"."
},
"type": {
"description": "Required. The monitored resource type. For example, the type \"cloudsql_database\" represents databases in Google Cloud SQL. The maximum length of this value is 256 characters.",
@@ -355,19 +727,19 @@
"$ref": "LabelDescriptor"
},
"type": "array"
- },
- "name": {
- "description": "Optional. The resource name of the monitored resource descriptor: \"projects/{project_id}/monitoredResourceDescriptors/{type}\" where {type} is the value of the type field in this object and {project_id} is a project ID that provides API-specific context for accessing the type. APIs that do not use project information can use the resource name format \"monitoredResourceDescriptors/{type}\".",
- "type": "string"
}
},
- "id": "MonitoredResourceDescriptor",
- "description": "An object that describes the schema of a MonitoredResource object using a type name and a set of labels. For example, the monitored resource descriptor for Google Compute Engine VM instances has a type of \"gce_instance\" and specifies the use of the labels \"instance_id\" and \"zone\" to identify particular VM instances.Different APIs can support different monitored resource types. APIs generally provide a list method that returns the monitored resource descriptors used by the API."
+ "id": "MonitoredResourceDescriptor"
},
"TypedValue": {
"description": "A single strongly-typed value.",
"type": "object",
"properties": {
+ "doubleValue": {
+ "type": "number",
+ "format": "double",
+ "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately ±10\u003csup\u003e±300\u003c/sup\u003e and it has 16 significant digits of precision."
+ },
"int64Value": {
"format": "int64",
"description": "A 64-bit integer. Its range is approximately ±9.2x10\u003csup\u003e18\u003c/sup\u003e.",
@@ -382,28 +754,14 @@
"type": "string"
},
"boolValue": {
- "type": "boolean",
- "description": "A Boolean value: true or false."
- },
- "doubleValue": {
- "format": "double",
- "description": "A 64-bit double-precision floating-point number. Its magnitude is approximately ±10\u003csup\u003e±300\u003c/sup\u003e and it has 16 significant digits of precision.",
- "type": "number"
+ "description": "A Boolean value: true or false.",
+ "type": "boolean"
}
},
"id": "TypedValue"
},
"CollectdPayload": {
- "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.",
- "type": "object",
"properties": {
- "values": {
- "items": {
- "$ref": "CollectdValue"
- },
- "type": "array",
- "description": "The measured values during this time interval. Each value must have a different dataSourceName."
- },
"typeInstance": {
"type": "string",
"description": "The measurement type instance. Example: \"used\"."
@@ -413,11 +771,11 @@
"type": "string"
},
"metadata": {
- "description": "The measurement metadata. Example: \"process_id\" -\u003e 12345",
- "type": "object",
"additionalProperties": {
"$ref": "TypedValue"
- }
+ },
+ "description": "The measurement metadata. Example: \"process_id\" -\u003e 12345",
+ "type": "object"
},
"plugin": {
"description": "The name of the plugin. Example: \"disk\".",
@@ -436,14 +794,28 @@
"format": "google-datetime",
"description": "The start time of the interval.",
"type": "string"
+ },
+ "values": {
+ "description": "The measured values during this time interval. Each value must have a different dataSourceName.",
+ "items": {
+ "$ref": "CollectdValue"
+ },
+ "type": "array"
}
},
- "id": "CollectdPayload"
+ "id": "CollectdPayload",
+ "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.",
+ "type": "object"
},
"Linear": {
"description": "Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): offset + (width * i). Lower bound (1 \u003c= i \u003c N): offset + (width * (i - 1)).",
"type": "object",
"properties": {
+ "offset": {
+ "format": "double",
+ "description": "Lower bound of the first bucket.",
+ "type": "number"
+ },
"numFiniteBuckets": {
"format": "int32",
"description": "Must be greater than 0.",
@@ -453,11 +825,6 @@
"format": "double",
"description": "Must be greater than 0.",
"type": "number"
- },
- "offset": {
- "type": "number",
- "format": "double",
- "description": "Lower bound of the first bucket."
}
},
"id": "Linear"
@@ -486,387 +853,17 @@
"type": "object",
"properties": {},
"id": "Empty"
- },
- "Explicit": {
- "properties": {
- "bounds": {
- "items": {
- "type": "number",
- "format": "double"
- },
- "type": "array",
- "description": "The values must be monotonically increasing."
- }
- },
- "id": "Explicit",
- "description": "Specifies a set of buckets with arbitrary widths.There are size(bounds) + 1 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): boundsi Lower bound (1 \u003c= i \u003c N); boundsi - 1The bounds field must contain at least one element. If bounds has only one element, then there are no finite buckets, and that single element is the common boundary of the overflow and underflow buckets.",
- "type": "object"
- },
- "TimeInterval": {
- "description": "A time interval extending just after a start time through an end time. If the start time is the same as the end time, then the interval represents a single point in time.",
- "type": "object",
- "properties": {
- "endTime": {
- "format": "google-datetime",
- "description": "Required. The end of the time interval.",
- "type": "string"
- },
- "startTime": {
- "format": "google-datetime",
- "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.",
- "type": "string"
- }
- },
- "id": "TimeInterval"
- },
- "Exponential": {
- "description": "Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.There are num_finite_buckets + 2 (= N) buckets. Bucket i has the following boundaries:Upper bound (0 \u003c= i \u003c N-1): scale * (growth_factor ^ i). Lower bound (1 \u003c= i \u003c N): scale * (growth_factor ^ (i - 1)).",
- "type": "object",
- "properties": {
- "numFiniteBuckets": {
- "format": "int32",
- "description": "Must be greater than 0.",
- "type": "integer"
- },
- "growthFactor": {
- "format": "double",
- "description": "Must be greater than 1.",
- "type": "number"
- },
- "scale": {
- "format": "double",
- "description": "Must be greater than 0.",
- "type": "number"
- }
- },
- "id": "Exponential"
- },
- "Point": {
- "description": "A single data point in a time series.",
- "type": "object",
- "properties": {
- "value": {
- "$ref": "TypedValue",
- "description": "The value of the data point."
- },
- "interval": {
- "$ref": "TimeInterval",
- "description": "The time interval to which the data point applies. For GAUGE metrics, only the end time of the interval is used. For DELTA metrics, the start and end time should specify a non-zero interval, with subsequent points specifying contiguous and non-overlapping intervals. For CUMULATIVE metrics, the start and end time should specify a non-zero interval, with subsequent points specifying the same start time and increasing end times, until an event resets the cumulative value to zero and sets a new start time for the following points."
- }
- },
- "id": "Point"
- },
- "Field": {
- "id": "Field",
- "description": "A single field of a message type.",
- "type": "object",
- "properties": {
- "name": {
- "description": "The field name.",
- "type": "string"
- },
- "typeUrl": {
- "description": "The field type URL, without the scheme, for message or enumeration types. Example: \"type.googleapis.com/google.protobuf.Timestamp\".",
- "type": "string"
- },
- "number": {
- "format": "int32",
- "description": "The field number.",
- "type": "integer"
- },
- "kind": {
- "enum": [
- "TYPE_UNKNOWN",
- "TYPE_DOUBLE",
- "TYPE_FLOAT",
- "TYPE_INT64",
- "TYPE_UINT64",
- "TYPE_INT32",
- "TYPE_FIXED64",
- "TYPE_FIXED32",
- "TYPE_BOOL",
- "TYPE_STRING",
- "TYPE_GROUP",
- "TYPE_MESSAGE",
- "TYPE_BYTES",
- "TYPE_UINT32",
- "TYPE_ENUM",
- "TYPE_SFIXED32",
- "TYPE_SFIXED64",
- "TYPE_SINT32",
- "TYPE_SINT64"
- ],
- "description": "The field type.",
- "type": "string",
- "enumDescriptions": [
- "Field type unknown.",
- "Field type double.",
- "Field type float.",
- "Field type int64.",
- "Field type uint64.",
- "Field type int32.",
- "Field type fixed64.",
- "Field type fixed32.",
- "Field type bool.",
- "Field type string.",
- "Field type group. Proto2 syntax only, and deprecated.",
- "Field type message.",
- "Field type bytes.",
- "Field type uint32.",
- "Field type enum.",
- "Field type sfixed32.",
- "Field type sfixed64.",
- "Field type sint32.",
- "Field type sint64."
- ]
- },
- "jsonName": {
- "description": "The field JSON name.",
- "type": "string"
- },
- "options": {
- "description": "The protocol buffer options.",
- "items": {
- "$ref": "Option"
- },
- "type": "array"
- },
- "oneofIndex": {
- "format": "int32",
- "description": "The index of the field type in Type.oneofs, for message or enumeration types. The first type has index 1; zero means the type is not in the list.",
- "type": "integer"
- },
- "cardinality": {
- "enumDescriptions": [
- "For fields with unknown cardinality.",
- "For optional fields.",
- "For required fields. Proto2 syntax only.",
- "For repeated fields."
- ],
- "enum": [
- "CARDINALITY_UNKNOWN",
- "CARDINALITY_OPTIONAL",
- "CARDINALITY_REQUIRED",
- "CARDINALITY_REPEATED"
- ],
- "description": "The field cardinality.",
- "type": "string"
- },
- "packed": {
- "description": "Whether to use alternative packed wire representation.",
- "type": "boolean"
- },
- "defaultValue": {
- "description": "The string value of the default value of this field. Proto2 syntax only.",
- "type": "string"
- }
- }
- },
- "Metric": {
- "description": "A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.",
- "type": "object",
- "properties": {
- "type": {
- "description": "An existing metric type, see google.api.MetricDescriptor. For example, custom.googleapis.com/invoice/paid/amount.",
- "type": "string"
- },
- "labels": {
- "description": "The set of label values that uniquely identify this metric. All labels listed in the MetricDescriptor must be assigned values.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- }
- },
- "id": "Metric"
- },
- "ListTimeSeriesResponse": {
- "id": "ListTimeSeriesResponse",
- "description": "The ListTimeSeries response.",
- "type": "object",
- "properties": {
- "nextPageToken": {
- "description": "If there are more results than have been returned, then this field is set to a non-empty value. To see the additional results, use that value as pageToken in the next call to this method.",
- "type": "string"
- },
- "timeSeries": {
- "description": "One or more time series that match the filter included in the request.",
- "items": {
- "$ref": "TimeSeries"
- },
- "type": "array"
- }
- }
- },
- "LabelDescriptor": {
- "description": "A description of a label.",
- "type": "object",
- "properties": {
- "key": {
- "description": "The label key.",
- "type": "string"
- },
- "description": {
- "description": "A human-readable description for the label.",
- "type": "string"
- },
- "valueType": {
- "enumDescriptions": [
- "A variable-length string. This is the default.",
- "Boolean; true or false.",
- "A 64-bit signed integer."
- ],
- "enum": [
- "STRING",
- "BOOL",
- "INT64"
- ],
- "description": "The type of data that can be assigned to the label.",
- "type": "string"
- }
- },
- "id": "LabelDescriptor"
- },
- "Group": {
- "description": "The description of a dynamic collection of monitored resources. Each group has a filter that is matched against monitored resources and their associated metadata. If a group's filter matches an available monitored resource, then that resource is a member of that group. Groups can contain any number of monitored resources, and each monitored resource can be a member of any number of groups.Groups can be nested in parent-child hierarchies. The parentName field identifies an optional parent for each group. If a group has a parent, then the only monitored resources available to be matched by the group's filter are the resources contained in the parent group. In other words, a group contains the monitored resources that match its filter and the filters of all the group's ancestors. A group without a parent can contain any monitored resource.For example, consider an infrastructure running a set of instances with two user-defined tags: \"environment\" and \"role\". A parent group has a filter, environment=\"production\". A child of that parent group has a filter, role=\"transcoder\". The parent group contains all instances in the production environment, regardless of their roles. The child group contains instances that have the transcoder role and are in the production environment.The monitored resources contained in a group can change at any moment, depending on what resources exist and what filters are associated with the group and its ancestors.",
- "type": "object",
- "properties": {
- "parentName": {
- "description": "The name of the group's parent, if it has one. The format is \"projects/{project_id_or_number}/groups/{group_id}\". For groups with no parent, parentName is the empty string, \"\".",
- "type": "string"
- },
- "name": {
- "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.",
- "type": "string"
- },
- "displayName": {
- "description": "A user-assigned name for this group, used only for display purposes.",
- "type": "string"
- },
- "isCluster": {
- "description": "If true, the members of this group are considered to be a cluster. The system can perform additional analysis on groups that are clusters.",
- "type": "boolean"
- },
- "filter": {
- "description": "The filter used to determine which monitored resources belong to this group.",
- "type": "string"
- }
- },
- "id": "Group"
- },
- "Type": {
- "description": "A protocol buffer message type.",
- "type": "object",
- "properties": {
- "options": {
- "description": "The protocol buffer options.",
- "items": {
- "$ref": "Option"
- },
- "type": "array"
- },
- "fields": {
- "description": "The list of fields.",
- "items": {
- "$ref": "Field"
- },
- "type": "array"
- },
- "name": {
- "description": "The fully qualified message name.",
- "type": "string"
- },
- "oneofs": {
- "description": "The list of types appearing in oneof definitions in this type.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "syntax": {
- "type": "string",
- "enumDescriptions": [
- "Syntax proto2.",
- "Syntax proto3."
- ],
- "enum": [
- "SYNTAX_PROTO2",
- "SYNTAX_PROTO3"
- ],
- "description": "The source syntax."
- },
- "sourceContext": {
- "description": "The source context.",
- "$ref": "SourceContext"
- }
- },
- "id": "Type"
- },
- "BucketOptions": {
- "description": "BucketOptions describes the bucket boundaries used to create a histogram for the distribution. The buckets can be in a linear sequence, an exponential sequence, or each bucket can be specified explicitly. BucketOptions does not include the number of values in each bucket.A bucket has an inclusive lower bound and exclusive upper bound for the values that are counted for that bucket. The upper bound of a bucket must be strictly greater than the lower bound. The sequence of N buckets for a distribution consists of an underflow bucket (number 0), zero or more finite buckets (number 1 through N - 2) and an overflow bucket (number N - 1). The buckets are contiguous: the lower bound of bucket i (i \u003e 0) is the same as the upper bound of bucket i - 1. The buckets span the whole range of finite values: lower bound of the underflow bucket is -infinity and the upper bound of the overflow bucket is +infinity. The finite buckets are so-called because both bounds are finite.",
- "type": "object",
- "properties": {
- "explicitBuckets": {
- "$ref": "Explicit",
- "description": "The explicit buckets."
- },
- "linearBuckets": {
- "description": "The linear bucket.",
- "$ref": "Linear"
- },
- "exponentialBuckets": {
- "description": "The exponential buckets.",
- "$ref": "Exponential"
- }
- },
- "id": "BucketOptions"
- },
- "CollectdValue": {
- "id": "CollectdValue",
- "description": "A single data point from a collectd-based plugin.",
- "type": "object",
- "properties": {
- "dataSourceType": {
- "description": "The type of measurement.",
- "type": "string",
- "enumDescriptions": [
- "An unspecified data source type. This corresponds to google.api.MetricDescriptor.MetricKind.METRIC_KIND_UNSPECIFIED.",
- "An instantaneous measurement of a varying quantity. This corresponds to google.api.MetricDescriptor.MetricKind.GAUGE.",
- "A cumulative value over time. This corresponds to google.api.MetricDescriptor.MetricKind.CUMULATIVE.",
- "A rate of change of the measurement.",
- "An amount of change since the last measurement interval. This corresponds to google.api.MetricDescriptor.MetricKind.DELTA."
- ],
- "enum": [
- "UNSPECIFIED_DATA_SOURCE_TYPE",
- "GAUGE",
- "COUNTER",
- "DERIVE",
- "ABSOLUTE"
- ]
- },
- "dataSourceName": {
- "description": "The data source for the collectd value. For example there are two data sources for network measurements: \"rx\" and \"tx\".",
- "type": "string"
- },
- "value": {
- "description": "The measurement value.",
- "$ref": "TypedValue"
- }
- }
}
},
+ "protocol": "rest",
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
- "protocol": "rest",
"canonicalName": "Monitoring",
"auth": {
"oauth2": {
"scopes": {
- "https://www.googleapis.com/auth/monitoring": {
- "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects"
- },
"https://www.googleapis.com/auth/monitoring.write": {
"description": "Publish metric data to your Google Cloud projects"
},
@@ -875,6 +872,9 @@
},
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
+ },
+ "https://www.googleapis.com/auth/monitoring": {
+ "description": "View and write monitoring data for all of your Google and third-party Cloud and API projects"
}
}
}
@@ -883,458 +883,12 @@
"ownerDomain": "google.com",
"name": "monitoring",
"batchPath": "batch",
+ "fullyEncodeReservedExpansion": true,
"title": "Stackdriver Monitoring API",
"ownerName": "Google",
"resources": {
"projects": {
"resources": {
- "metricDescriptors": {
- "methods": {
- "get": {
- "id": "monitoring.projects.metricDescriptors.get",
- "path": "v3/{+name}",
- "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.",
- "response": {
- "$ref": "MetricDescriptor"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/metricDescriptors/.+$",
- "location": "path",
- "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example value of {metric_id} is \"compute.googleapis.com/instance/disk/read_bytes_count\".",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.read",
- "https://www.googleapis.com/auth/monitoring.write"
- ],
- "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}"
- },
- "list": {
- "response": {
- "$ref": "ListMetricDescriptorsResponse"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "parameters": {
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "A positive number that is the maximum number of results to return.",
- "type": "integer"
- },
- "filter": {
- "description": "If this field is empty, all custom and system-defined metric descriptors are returned. Otherwise, the filter specifies which metric descriptors are to be returned. For example, the following filter matches all custom metrics:\nmetric.type = starts_with(\"custom.googleapis.com/\")\n",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
- "type": "string",
- "location": "query"
- },
- "name": {
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.read",
- "https://www.googleapis.com/auth/monitoring.write"
- ],
- "flatPath": "v3/projects/{projectsId}/metricDescriptors",
- "id": "monitoring.projects.metricDescriptors.list",
- "path": "v3/{+name}/metricDescriptors",
- "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account."
- },
- "create": {
- "id": "monitoring.projects.metricDescriptors.create",
- "path": "v3/{+name}/metricDescriptors",
- "request": {
- "$ref": "MetricDescriptor"
- },
- "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics.",
- "response": {
- "$ref": "MetricDescriptor"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.write"
- ],
- "parameters": {
- "name": {
- "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v3/projects/{projectsId}/metricDescriptors"
- },
- "delete": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring"
- ],
- "parameters": {
- "name": {
- "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example of {metric_id} is: \"custom.googleapis.com/my_test_metric\".",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/metricDescriptors/.+$",
- "location": "path"
- }
- },
- "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}",
- "id": "monitoring.projects.metricDescriptors.delete",
- "path": "v3/{+name}",
- "description": "Deletes a metric descriptor. Only user-created custom metrics can be deleted."
- }
- }
- },
- "monitoredResourceDescriptors": {
- "methods": {
- "get": {
- "httpMethod": "GET",
- "response": {
- "$ref": "MonitoredResourceDescriptor"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "The monitored resource descriptor to get. The format is \"projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}\". The {resource_type} is a predefined type, such as cloudsql_database.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.read",
- "https://www.googleapis.com/auth/monitoring.write"
- ],
- "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors/{monitoredResourceDescriptorsId}",
- "path": "v3/{+name}",
- "id": "monitoring.projects.monitoredResourceDescriptors.get",
- "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account."
- },
- "list": {
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "ListMonitoredResourceDescriptorsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.read",
- "https://www.googleapis.com/auth/monitoring.write"
- ],
- "parameters": {
- "filter": {
- "location": "query",
- "description": "An optional filter describing the descriptors to be returned. The filter can reference the descriptor's type and labels. For example, the following filter returns only Google Compute Engine descriptors that have an id label:\nresource.type = starts_with(\"gce_\") AND resource.label:id\n",
- "type": "string"
- },
- "pageToken": {
- "type": "string",
- "location": "query",
- "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call."
- },
- "name": {
- "location": "path",
- "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$"
- },
- "pageSize": {
- "format": "int32",
- "description": "A positive number that is the maximum number of results to return.",
- "type": "integer",
- "location": "query"
- }
- },
- "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors",
- "path": "v3/{+name}/monitoredResourceDescriptors",
- "id": "monitoring.projects.monitoredResourceDescriptors.list",
- "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account."
- }
- }
- },
- "groups": {
- "methods": {
- "get": {
- "description": "Gets a single group.",
- "httpMethod": "GET",
- "response": {
- "$ref": "Group"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/groups/[^/]+$",
- "location": "path",
- "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.read"
- ],
- "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
- "path": "v3/{+name}",
- "id": "monitoring.projects.groups.get"
- },
- "list": {
- "flatPath": "v3/projects/{projectsId}/groups",
- "path": "v3/{+name}/groups",
- "id": "monitoring.projects.groups.list",
- "description": "Lists the existing groups.",
- "httpMethod": "GET",
- "response": {
- "$ref": "ListGroupsResponse"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "pageToken": {
- "type": "string",
- "location": "query",
- "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call."
- },
- "pageSize": {
- "format": "int32",
- "description": "A positive number that is the maximum number of results to return.",
- "type": "integer",
- "location": "query"
- },
- "ancestorsOfGroup": {
- "location": "query",
- "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups that are ancestors of the specified group. The groups are returned in order, starting with the immediate parent and ending with the most distant ancestor. If the specified group has no immediate parent, the results are empty.",
- "type": "string"
- },
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\"."
- },
- "childrenOfGroup": {
- "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups whose parentName field contains the group name. If no groups have this parent, the results are empty.",
- "type": "string",
- "location": "query"
- },
- "descendantsOfGroup": {
- "type": "string",
- "location": "query",
- "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns the descendants of the specified group. This is a superset of the results returned by the childrenOfGroup filter, and includes children-of-children, and so forth."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.read"
- ]
- },
- "update": {
- "httpMethod": "PUT",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Group"
- },
- "parameters": {
- "validateOnly": {
- "location": "query",
- "description": "If true, validate this request but do not update the existing group.",
- "type": "boolean"
- },
- "name": {
- "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/groups/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring"
- ],
- "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
- "path": "v3/{+name}",
- "id": "monitoring.projects.groups.update",
- "description": "Updates an existing group. You can change any group attributes except name.",
- "request": {
- "$ref": "Group"
- }
- },
- "create": {
- "request": {
- "$ref": "Group"
- },
- "description": "Creates a new group.",
- "httpMethod": "POST",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Group"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring"
- ],
- "parameters": {
- "validateOnly": {
- "location": "query",
- "description": "If true, validate this request but do not create the group.",
- "type": "boolean"
- },
- "name": {
- "description": "The project in which to create the group. The format is \"projects/{project_id_or_number}\".",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v3/projects/{projectsId}/groups",
- "path": "v3/{+name}/groups",
- "id": "monitoring.projects.groups.create"
- },
- "delete": {
- "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
- "id": "monitoring.projects.groups.delete",
- "path": "v3/{+name}",
- "description": "Deletes an existing group.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring"
- ],
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/groups/[^/]+$",
- "location": "path",
- "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".",
- "type": "string",
- "required": true
- }
- }
- }
- },
- "resources": {
- "members": {
- "methods": {
- "list": {
- "description": "Lists the monitored resources that are members of a group.",
- "httpMethod": "GET",
- "response": {
- "$ref": "ListGroupMembersResponse"
- },
- "parameterOrder": [
- "name"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/monitoring",
- "https://www.googleapis.com/auth/monitoring.read"
- ],
- "parameters": {
- "filter": {
- "location": "query",
- "description": "An optional list filter describing the members to be returned. The filter may reference the type, labels, and metadata of monitored resources that comprise the group. For example, to return only resources representing Compute Engine VM instances, use this filter:\nresource.type = \"gce_instance\"\n",
- "type": "string"
- },
- "pageToken": {
- "location": "query",
- "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
- "type": "string"
- },
- "interval.startTime": {
- "format": "google-datetime",
- "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "A positive number that is the maximum number of results to return.",
- "type": "integer"
- },
- "name": {
- "pattern": "^projects/[^/]+/groups/[^/]+$",
- "location": "path",
- "description": "The group whose members are listed. The format is \"projects/{project_id_or_number}/groups/{group_id}\".",
- "type": "string",
- "required": true
- },
- "interval.endTime": {
- "format": "google-datetime",
- "description": "Required. The end of the time interval.",
- "type": "string",
- "location": "query"
- }
- },
- "flatPath": "v3/projects/{projectsId}/groups/{groupsId}/members",
- "path": "v3/{+name}/members",
- "id": "monitoring.projects.groups.members.list"
- }
- }
- }
- }
- },
"collectdTimeSeries": {
"methods": {
"create": {
@@ -1345,104 +899,73 @@
"response": {
"$ref": "Empty"
},
+ "parameters": {
+ "name": {
+ "description": "The project in which to create the time series. The format is \"projects/PROJECT_ID_OR_NUMBER\".",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ }
+ },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/monitoring",
"https://www.googleapis.com/auth/monitoring.write"
],
- "parameters": {
- "name": {
- "location": "path",
- "description": "The project in which to create the time series. The format is \"projects/PROJECT_ID_OR_NUMBER\".",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$"
- }
- },
"flatPath": "v3/projects/{projectsId}/collectdTimeSeries",
"path": "v3/{+name}/collectdTimeSeries",
"id": "monitoring.projects.collectdTimeSeries.create",
+ "description": "Stackdriver Monitoring Agent only: Creates a new time series.\u003caside class=\"caution\"\u003eThis method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.\u003c/aside\u003e",
"request": {
"$ref": "CreateCollectdTimeSeriesRequest"
- },
- "description": "Stackdriver Monitoring Agent only: Creates a new time series.\u003caside class=\"caution\"\u003eThis method is only for use by the Stackdriver Monitoring Agent. Use projects.timeSeries.create instead.\u003c/aside\u003e"
+ }
}
}
},
"timeSeries": {
"methods": {
+ "create": {
+ "description": "Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.",
+ "request": {
+ "$ref": "CreateTimeSeriesRequest"
+ },
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameters": {
+ "name": {
+ "pattern": "^projects/[^/]+$",
+ "location": "path",
+ "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.write"
+ ],
+ "flatPath": "v3/projects/{projectsId}/timeSeries",
+ "path": "v3/{+name}/timeSeries",
+ "id": "monitoring.projects.timeSeries.create"
+ },
"list": {
- "description": "Lists time series that match a filter. This method does not require a Stackdriver account.",
- "httpMethod": "GET",
"response": {
"$ref": "ListTimeSeriesResponse"
},
"parameterOrder": [
"name"
],
+ "httpMethod": "GET",
"parameters": {
- "name": {
- "location": "path",
- "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$"
- },
- "aggregation.groupByFields": {
- "type": "string",
- "repeated": true,
- "location": "query",
- "description": "The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored."
- },
- "interval.endTime": {
- "format": "google-datetime",
- "description": "Required. The end of the time interval.",
- "type": "string",
- "location": "query"
- },
- "aggregation.alignmentPeriod": {
- "location": "query",
- "format": "google-duration",
- "description": "The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.",
- "type": "string"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "A positive number that is the maximum number of results to return. When view field sets to FULL, it limits the number of Points server will return; if view field is HEADERS, it limits the number of TimeSeries server will return.",
- "type": "integer"
- },
- "orderBy": {
- "location": "query",
- "description": "Specifies the order in which the points of the time series should be returned. By default, results are not ordered. Currently, this field must be left blank.",
- "type": "string"
- },
- "aggregation.crossSeriesReducer": {
- "description": "The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.",
- "type": "string",
- "location": "query",
- "enum": [
- "REDUCE_NONE",
- "REDUCE_MEAN",
- "REDUCE_MIN",
- "REDUCE_MAX",
- "REDUCE_SUM",
- "REDUCE_STDDEV",
- "REDUCE_COUNT",
- "REDUCE_COUNT_TRUE",
- "REDUCE_FRACTION_TRUE",
- "REDUCE_PERCENTILE_99",
- "REDUCE_PERCENTILE_95",
- "REDUCE_PERCENTILE_50",
- "REDUCE_PERCENTILE_05"
- ]
- },
- "filter": {
- "type": "string",
- "location": "query",
- "description": "A monitoring filter that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:\nmetric.type = \"compute.googleapis.com/instance/cpu/usage_time\" AND\n metric.label.instance_name = \"my-instance-name\"\n"
- },
"aggregation.perSeriesAligner": {
+ "type": "string",
"location": "query",
"enum": [
"ALIGN_NONE",
@@ -1463,28 +986,88 @@
"ALIGN_PERCENTILE_50",
"ALIGN_PERCENTILE_05"
],
- "description": "The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.",
- "type": "string"
+ "description": "The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned."
},
"pageToken": {
- "type": "string",
- "location": "query",
- "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call."
- },
- "interval.startTime": {
- "format": "google-datetime",
- "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time.",
+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
"type": "string",
"location": "query"
},
- "view": {
- "description": "Specifies which information is returned about the time series.",
+ "interval.startTime": {
"type": "string",
"location": "query",
+ "format": "google-datetime",
+ "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time."
+ },
+ "view": {
"enum": [
"FULL",
"HEADERS"
- ]
+ ],
+ "description": "Specifies which information is returned about the time series.",
+ "type": "string",
+ "location": "query"
+ },
+ "aggregation.groupByFields": {
+ "description": "The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "name": {
+ "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ },
+ "interval.endTime": {
+ "format": "google-datetime",
+ "description": "Required. The end of the time interval.",
+ "type": "string",
+ "location": "query"
+ },
+ "aggregation.alignmentPeriod": {
+ "location": "query",
+ "format": "google-duration",
+ "description": "The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.",
+ "type": "string"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "A positive number that is the maximum number of results to return. When view field sets to FULL, it limits the number of Points server will return; if view field is HEADERS, it limits the number of TimeSeries server will return.",
+ "type": "integer"
+ },
+ "orderBy": {
+ "description": "Specifies the order in which the points of the time series should be returned. By default, results are not ordered. Currently, this field must be left blank.",
+ "type": "string",
+ "location": "query"
+ },
+ "aggregation.crossSeriesReducer": {
+ "enum": [
+ "REDUCE_NONE",
+ "REDUCE_MEAN",
+ "REDUCE_MIN",
+ "REDUCE_MAX",
+ "REDUCE_SUM",
+ "REDUCE_STDDEV",
+ "REDUCE_COUNT",
+ "REDUCE_COUNT_TRUE",
+ "REDUCE_FRACTION_TRUE",
+ "REDUCE_PERCENTILE_99",
+ "REDUCE_PERCENTILE_95",
+ "REDUCE_PERCENTILE_50",
+ "REDUCE_PERCENTILE_05"
+ ],
+ "description": "The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross-time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.",
+ "type": "string",
+ "location": "query"
+ },
+ "filter": {
+ "location": "query",
+ "description": "A monitoring filter that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:\nmetric.type = \"compute.googleapis.com/instance/cpu/usage_time\" AND\n metric.label.instance_name = \"my-instance-name\"\n",
+ "type": "string"
}
},
"scopes": [
@@ -1493,18 +1076,17 @@
"https://www.googleapis.com/auth/monitoring.read"
],
"flatPath": "v3/projects/{projectsId}/timeSeries",
+ "id": "monitoring.projects.timeSeries.list",
"path": "v3/{+name}/timeSeries",
- "id": "monitoring.projects.timeSeries.list"
- },
+ "description": "Lists time series that match a filter. This method does not require a Stackdriver account."
+ }
+ }
+ },
+ "metricDescriptors": {
+ "methods": {
"create": {
- "id": "monitoring.projects.timeSeries.create",
- "path": "v3/{+name}/timeSeries",
- "request": {
- "$ref": "CreateTimeSeriesRequest"
- },
- "description": "Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.",
"response": {
- "$ref": "Empty"
+ "$ref": "MetricDescriptor"
},
"parameterOrder": [
"name"
@@ -1516,15 +1098,434 @@
"https://www.googleapis.com/auth/monitoring.write"
],
"parameters": {
+ "name": {
+ "location": "path",
+ "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$"
+ }
+ },
+ "flatPath": "v3/projects/{projectsId}/metricDescriptors",
+ "id": "monitoring.projects.metricDescriptors.create",
+ "path": "v3/{+name}/metricDescriptors",
+ "request": {
+ "$ref": "MetricDescriptor"
+ },
+ "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics."
+ },
+ "delete": {
+ "description": "Deletes a metric descriptor. Only user-created custom metrics can be deleted.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example of {metric_id} is: \"custom.googleapis.com/my_test_metric\".",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/metricDescriptors/.+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring"
+ ],
+ "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}",
+ "id": "monitoring.projects.metricDescriptors.delete",
+ "path": "v3/{+name}"
+ },
+ "get": {
+ "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.",
+ "response": {
+ "$ref": "MetricDescriptor"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.read",
+ "https://www.googleapis.com/auth/monitoring.write"
+ ],
+ "parameters": {
+ "name": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/metricDescriptors/.+$",
+ "location": "path",
+ "description": "The metric descriptor on which to execute the request. The format is \"projects/{project_id_or_number}/metricDescriptors/{metric_id}\". An example value of {metric_id} is \"compute.googleapis.com/instance/disk/read_bytes_count\"."
+ }
+ },
+ "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}",
+ "id": "monitoring.projects.metricDescriptors.get",
+ "path": "v3/{+name}"
+ },
+ "list": {
+ "response": {
+ "$ref": "ListMetricDescriptorsResponse"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "filter": {
+ "location": "query",
+ "description": "If this field is empty, all custom and system-defined metric descriptors are returned. Otherwise, the filter specifies which metric descriptors are to be returned. For example, the following filter matches all custom metrics:\nmetric.type = starts_with(\"custom.googleapis.com/\")\n",
+ "type": "string"
+ },
+ "pageToken": {
+ "type": "string",
+ "location": "query",
+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call."
+ },
"name": {
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
"type": "string",
"required": true
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "A positive number that is the maximum number of results to return.",
+ "type": "integer",
+ "location": "query"
}
},
- "flatPath": "v3/projects/{projectsId}/timeSeries"
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.read",
+ "https://www.googleapis.com/auth/monitoring.write"
+ ],
+ "flatPath": "v3/projects/{projectsId}/metricDescriptors",
+ "id": "monitoring.projects.metricDescriptors.list",
+ "path": "v3/{+name}/metricDescriptors",
+ "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account."
+ }
+ }
+ },
+ "monitoredResourceDescriptors": {
+ "methods": {
+ "get": {
+ "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.",
+ "response": {
+ "$ref": "MonitoredResourceDescriptor"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.read",
+ "https://www.googleapis.com/auth/monitoring.write"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The monitored resource descriptor to get. The format is \"projects/{project_id_or_number}/monitoredResourceDescriptors/{resource_type}\". The {resource_type} is a predefined type, such as cloudsql_database.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$"
+ }
+ },
+ "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors/{monitoredResourceDescriptorsId}",
+ "id": "monitoring.projects.monitoredResourceDescriptors.get",
+ "path": "v3/{+name}"
+ },
+ "list": {
+ "response": {
+ "$ref": "ListMonitoredResourceDescriptorsResponse"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "pageToken": {
+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
+ "type": "string",
+ "location": "query"
+ },
+ "name": {
+ "location": "path",
+ "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "A positive number that is the maximum number of results to return.",
+ "type": "integer"
+ },
+ "filter": {
+ "location": "query",
+ "description": "An optional filter describing the descriptors to be returned. The filter can reference the descriptor's type and labels. For example, the following filter returns only Google Compute Engine descriptors that have an id label:\nresource.type = starts_with(\"gce_\") AND resource.label:id\n",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.read",
+ "https://www.googleapis.com/auth/monitoring.write"
+ ],
+ "flatPath": "v3/projects/{projectsId}/monitoredResourceDescriptors",
+ "id": "monitoring.projects.monitoredResourceDescriptors.list",
+ "path": "v3/{+name}/monitoredResourceDescriptors",
+ "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account."
+ }
+ }
+ },
+ "groups": {
+ "resources": {
+ "members": {
+ "methods": {
+ "list": {
+ "path": "v3/{+name}/members",
+ "id": "monitoring.projects.groups.members.list",
+ "description": "Lists the monitored resources that are members of a group.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "ListGroupMembersResponse"
+ },
+ "parameters": {
+ "interval.endTime": {
+ "format": "google-datetime",
+ "description": "Required. The end of the time interval.",
+ "type": "string",
+ "location": "query"
+ },
+ "filter": {
+ "location": "query",
+ "description": "An optional list filter describing the members to be returned. The filter may reference the type, labels, and metadata of monitored resources that comprise the group. For example, to return only resources representing Compute Engine VM instances, use this filter:\nresource.type = \"gce_instance\"\n",
+ "type": "string"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
+ "type": "string"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "A positive number that is the maximum number of results to return.",
+ "type": "integer",
+ "location": "query"
+ },
+ "interval.startTime": {
+ "type": "string",
+ "location": "query",
+ "format": "google-datetime",
+ "description": "Optional. The beginning of the time interval. The default value for the start time is the end time. The start time must not be later than the end time."
+ },
+ "name": {
+ "description": "The group whose members are listed. The format is \"projects/{project_id_or_number}/groups/{group_id}\".",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/groups/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.read"
+ ],
+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}/members"
+ }
+ }
+ }
+ },
+ "methods": {
+ "delete": {
+ "description": "Deletes an existing group.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/groups/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring"
+ ],
+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
+ "id": "monitoring.projects.groups.delete",
+ "path": "v3/{+name}"
+ },
+ "get": {
+ "description": "Gets a single group.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Group"
+ },
+ "parameters": {
+ "name": {
+ "pattern": "^projects/[^/]+/groups/[^/]+$",
+ "location": "path",
+ "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.read"
+ ],
+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
+ "path": "v3/{+name}",
+ "id": "monitoring.projects.groups.get"
+ },
+ "list": {
+ "path": "v3/{+name}/groups",
+ "id": "monitoring.projects.groups.list",
+ "description": "Lists the existing groups.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "ListGroupsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring",
+ "https://www.googleapis.com/auth/monitoring.read"
+ ],
+ "parameters": {
+ "pageToken": {
+ "description": "If this field is not empty then it must contain the nextPageToken value returned by a previous call to this method. Using this field causes the method to return additional results from the previous method call.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "A positive number that is the maximum number of results to return.",
+ "type": "integer"
+ },
+ "ancestorsOfGroup": {
+ "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups that are ancestors of the specified group. The groups are returned in order, starting with the immediate parent and ending with the most distant ancestor. If the specified group has no immediate parent, the results are empty.",
+ "type": "string",
+ "location": "query"
+ },
+ "name": {
+ "pattern": "^projects/[^/]+$",
+ "location": "path",
+ "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\".",
+ "type": "string",
+ "required": true
+ },
+ "childrenOfGroup": {
+ "type": "string",
+ "location": "query",
+ "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns groups whose parentName field contains the group name. If no groups have this parent, the results are empty."
+ },
+ "descendantsOfGroup": {
+ "location": "query",
+ "description": "A group name: \"projects/{project_id_or_number}/groups/{group_id}\". Returns the descendants of the specified group. This is a superset of the results returned by the childrenOfGroup filter, and includes children-of-children, and so forth.",
+ "type": "string"
+ }
+ },
+ "flatPath": "v3/projects/{projectsId}/groups"
+ },
+ "update": {
+ "response": {
+ "$ref": "Group"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "PUT",
+ "parameters": {
+ "validateOnly": {
+ "description": "If true, validate this request but do not update the existing group.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "name": {
+ "location": "path",
+ "description": "Output only. The name of this group. The format is \"projects/{project_id_or_number}/groups/{group_id}\". When creating a group, this field is ignored and a new name is created consisting of the project specified in the call to CreateGroup and a unique {group_id} that is generated automatically.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/groups/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring"
+ ],
+ "flatPath": "v3/projects/{projectsId}/groups/{groupsId}",
+ "id": "monitoring.projects.groups.update",
+ "path": "v3/{+name}",
+ "description": "Updates an existing group. You can change any group attributes except name.",
+ "request": {
+ "$ref": "Group"
+ }
+ },
+ "create": {
+ "flatPath": "v3/projects/{projectsId}/groups",
+ "id": "monitoring.projects.groups.create",
+ "path": "v3/{+name}/groups",
+ "description": "Creates a new group.",
+ "request": {
+ "$ref": "Group"
+ },
+ "response": {
+ "$ref": "Group"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "validateOnly": {
+ "description": "If true, validate this request but do not create the group.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "name": {
+ "pattern": "^projects/[^/]+$",
+ "location": "path",
+ "description": "The project in which to create the group. The format is \"projects/{project_id_or_number}\".",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/monitoring"
+ ]
}
}
}
@@ -1532,15 +1533,31 @@
}
},
"parameters": {
- "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.",
+ "alt": {
"type": "string",
- "location": "query"
+ "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",
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ]
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
},
"access_token": {
+ "location": "query",
"description": "OAuth access token.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"quotaUser": {
"location": "query",
@@ -1548,35 +1565,30 @@
"type": "string"
},
"pp": {
- "location": "query",
"description": "Pretty-print response.",
"default": "true",
- "type": "boolean"
- },
- "bearer_token": {
- "type": "string",
- "location": "query",
- "description": "OAuth bearer token."
+ "type": "boolean",
+ "location": "query"
},
"oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
+ "type": "string",
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user."
+ },
+ "bearer_token": {
+ "description": "OAuth bearer token.",
"type": "string",
"location": "query"
},
"upload_protocol": {
- "location": "query",
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"prettyPrint": {
- "location": "query",
"description": "Returns response with indentations and line breaks.",
"default": "true",
- "type": "boolean"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
+ "type": "boolean",
"location": "query"
},
"fields": {
@@ -1584,6 +1596,16 @@
"description": "Selector specifying which fields to include in a partial response.",
"type": "string"
},
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
+ "type": "string"
+ },
"$.xgafv": {
"type": "string",
"enumDescriptions": [
@@ -1596,27 +1618,6 @@
"2"
],
"description": "V1 error format."
- },
- "callback": {
- "type": "string",
- "location": "query",
- "description": "JSONP"
- },
- "alt": {
- "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",
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string"
}
},
"version": "v3",
diff --git a/vendor/google.golang.org/api/option/option.go b/vendor/google.golang.org/api/option/option.go
index 4b14a2e..e3080e3 100644
--- a/vendor/google.golang.org/api/option/option.go
+++ b/vendor/google.golang.org/api/option/option.go
@@ -40,19 +40,25 @@ func (w withTokenSource) Apply(o *internal.DialSettings) {
o.TokenSource = w.ts
}
-// WithServiceAccountFile returns a ClientOption that uses a Google service
-// account credentials file to authenticate.
-// Use WithTokenSource with a token source created from
-// golang.org/x/oauth2/google.JWTConfigFromJSON
-// if reading the file from disk is not an option.
-func WithServiceAccountFile(filename string) ClientOption {
- return withServiceAccountFile(filename)
+type withCredFile string
+
+func (w withCredFile) Apply(o *internal.DialSettings) {
+ o.CredentialsFile = string(w)
}
-type withServiceAccountFile string
+// WithCredentialsFile returns a ClientOption that authenticates
+// API calls with the given service account or refresh token JSON
+// credentials file.
+func WithCredentialsFile(filename string) ClientOption {
+ return withCredFile(filename)
+}
-func (w withServiceAccountFile) Apply(o *internal.DialSettings) {
- o.ServiceAccountJSONFilename = string(w)
+// WithServiceAccountFile returns a ClientOption that uses a Google service
+// account credentials file to authenticate.
+//
+// Deprecated: Use WithCredentialsFile instead.
+func WithServiceAccountFile(filename string) ClientOption {
+ return WithCredentialsFile(filename)
}
// WithEndpoint returns a ClientOption that overrides the default endpoint
diff --git a/vendor/google.golang.org/api/option/option_test.go b/vendor/google.golang.org/api/option/option_test.go
index 49a1b26..68a6d34 100644
--- a/vendor/google.golang.org/api/option/option_test.go
+++ b/vendor/google.golang.org/api/option/option_test.go
@@ -45,7 +45,7 @@ func TestApply(t *testing.T) {
WithScopes("https://example.com/auth/helloworld", "https://example.com/auth/otherthing"),
WithGRPCConn(conn),
WithUserAgent("ua"),
- WithServiceAccountFile("service-account.json"),
+ WithCredentialsFile("service-account.json"),
WithAPIKey("api-key"),
}
var got internal.DialSettings
@@ -53,12 +53,12 @@ func TestApply(t *testing.T) {
opt.Apply(&got)
}
want := internal.DialSettings{
- Scopes: []string{"https://example.com/auth/helloworld", "https://example.com/auth/otherthing"},
- UserAgent: "ua",
- Endpoint: "https://example.com:443",
- GRPCConn: conn,
- ServiceAccountJSONFilename: "service-account.json",
- APIKey: "api-key",
+ Scopes: []string{"https://example.com/auth/helloworld", "https://example.com/auth/otherthing"},
+ UserAgent: "ua",
+ Endpoint: "https://example.com:443",
+ GRPCConn: conn,
+ CredentialsFile: "service-account.json",
+ APIKey: "api-key",
}
if !reflect.DeepEqual(got, want) {
t.Errorf("\ngot %#v\nwant %#v", got, want)
diff --git a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json
index ad952ca..7d5a895 100644
--- a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json
+++ b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-api.json
@@ -1,281 +1,85 @@
{
- "ownerDomain": "google.com",
- "name": "oslogin",
- "batchPath": "batch",
- "title": "Google Cloud OS Login API",
- "ownerName": "Google",
- "resources": {
- "users": {
- "resources": {
- "sshPublicKeys": {
- "methods": {
- "delete": {
- "path": "v1alpha/{+name}",
- "id": "oslogin.users.sshPublicKeys.delete",
- "description": "Deletes an SSH public key.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
- "location": "path",
- "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.",
- "required": true,
- "type": "string"
- }
- },
- "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}"
- },
- "get": {
- "id": "oslogin.users.sshPublicKeys.get",
- "path": "v1alpha/{+name}",
- "description": "Retrieves an SSH public key.",
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "SshPublicKey"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
- "location": "path",
- "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`.",
- "required": true,
- "type": "string"
- }
- },
- "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}"
- },
- "patch": {
- "response": {
- "$ref": "SshPublicKey"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "PATCH",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.",
- "required": true,
- "type": "string",
- "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
- "location": "path"
- },
- "updateMask": {
- "description": "Mask to control which fields get updated. Updates all if not present.",
- "format": "google-fieldmask",
- "type": "string",
- "location": "query"
- }
- },
- "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}",
- "path": "v1alpha/{+name}",
- "id": "oslogin.users.sshPublicKeys.patch",
- "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.",
- "request": {
- "$ref": "SshPublicKey"
- }
- }
- }
- }
- },
- "methods": {
- "importSshPublicKey": {
- "request": {
- "$ref": "SshPublicKey"
- },
- "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile.",
- "httpMethod": "POST",
- "parameterOrder": [
- "parent"
- ],
- "response": {
- "$ref": "ImportSshPublicKeyResponse"
- },
- "parameters": {
- "parent": {
- "description": "The unique ID for the user in format `users/{user}`.",
- "required": true,
- "type": "string",
- "pattern": "^users/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1alpha/users/{usersId}:importSshPublicKey",
- "id": "oslogin.users.importSshPublicKey",
- "path": "v1alpha/{+parent}:importSshPublicKey"
- },
- "getLoginProfile": {
- "path": "v1alpha/{+name}/loginProfile",
- "id": "oslogin.users.getLoginProfile",
- "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.",
- "response": {
- "$ref": "LoginProfile"
- },
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "description": "The unique ID for the user in format `users/{user}`.",
- "required": true,
- "type": "string",
- "pattern": "^users/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only"
- ],
- "flatPath": "v1alpha/users/{usersId}/loginProfile"
- }
- }
- }
- },
- "parameters": {
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "type": "boolean",
- "default": "true",
- "location": "query"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "fields": {
- "location": "query",
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string"
- },
- "$.xgafv": {
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string"
- },
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "alt": {
- "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",
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "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.",
- "type": "string",
- "location": "query"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "pp": {
- "description": "Pretty-print response.",
- "type": "boolean",
- "default": "true",
- "location": "query"
- },
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
- }
- },
- "version": "v1alpha",
- "baseUrl": "https://oslogin.googleapis.com/",
- "description": "A Google Cloud API for managing OS login configuration for Directory API users.",
- "kind": "discovery#restDescription",
- "servicePath": "",
"basePath": "",
- "revision": "20170619",
- "documentationLink": "https://developers.google.com/apis-explorer/#p/oslogin/v1alpha/",
+ "revision": "20170811",
+ "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/",
"id": "oslogin:v1alpha",
"discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
+ "ImportSshPublicKeyResponse": {
+ "description": "A response message for importing an SSH public key.",
+ "type": "object",
+ "properties": {
+ "loginProfile": {
+ "$ref": "LoginProfile",
+ "description": "The login profile information for the user."
+ }
+ },
+ "id": "ImportSshPublicKeyResponse"
+ },
+ "PosixAccount": {
+ "description": "The POSIX account information associated with a Directory API User.",
+ "type": "object",
+ "properties": {
+ "homeDirectory": {
+ "description": "The path to the home directory for this account.",
+ "type": "string"
+ },
+ "systemId": {
+ "type": "string",
+ "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used."
+ },
+ "gecos": {
+ "description": "The GECOS (user information) entry for this account.",
+ "type": "string"
+ },
+ "primary": {
+ "description": "Only one POSIX account can be marked as primary.",
+ "type": "boolean"
+ },
+ "gid": {
+ "format": "uint32",
+ "description": "The default group ID.",
+ "type": "integer"
+ },
+ "uid": {
+ "format": "uint32",
+ "description": "The user ID.",
+ "type": "integer"
+ },
+ "username": {
+ "description": "The username of the POSIX account.",
+ "type": "string"
+ },
+ "shell": {
+ "type": "string",
+ "description": "The path to the logic shell for this account."
+ }
+ },
+ "id": "PosixAccount"
+ },
"LoginProfile": {
"description": "The Directory API profile information used for logging in to a virtual\nmachine on Google Compute Engine.",
"type": "object",
"properties": {
"sshPublicKeys": {
+ "type": "object",
"additionalProperties": {
"$ref": "SshPublicKey"
},
- "description": "A map from SSH public key fingerprint to the associated key object.",
- "type": "object"
+ "description": "A map from SSH public key fingerprint to the associated key object."
+ },
+ "posixAccounts": {
+ "description": "The list of POSIX accounts associated with the Directory API user.",
+ "items": {
+ "$ref": "PosixAccount"
+ },
+ "type": "array"
},
"name": {
"description": "A unique user ID for identifying the user.",
"type": "string"
},
- "posixAccounts": {
- "description": "The list of POSIX accounts associated with the Directory API user.",
- "type": "array",
- "items": {
- "$ref": "PosixAccount"
- }
- },
"suspended": {
"description": "Indicates if the user is suspended.",
"type": "boolean"
@@ -283,19 +87,13 @@
},
"id": "LoginProfile"
},
- "Empty": {
- "properties": {},
- "id": "Empty",
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object"
- },
"SshPublicKey": {
"description": "The SSH public key information associated with a Directory API User.",
"type": "object",
"properties": {
"expirationTimeUsec": {
- "description": "An expiration time in microseconds since epoch.",
"format": "int64",
+ "description": "An expiration time in microseconds since epoch.",
"type": "string"
},
"fingerprint": {
@@ -309,62 +107,16 @@
},
"id": "SshPublicKey"
},
- "ImportSshPublicKeyResponse": {
- "properties": {
- "loginProfile": {
- "$ref": "LoginProfile",
- "description": "The login profile information for the user."
- }
- },
- "id": "ImportSshPublicKeyResponse",
- "description": "A response message for importing an SSH public key.",
- "type": "object"
- },
- "PosixAccount": {
- "properties": {
- "primary": {
- "description": "Only one POSIX account can be marked as primary.",
- "type": "boolean"
- },
- "gid": {
- "description": "The default group ID.",
- "format": "int32",
- "type": "integer"
- },
- "uid": {
- "description": "The user ID.",
- "format": "int32",
- "type": "integer"
- },
- "username": {
- "description": "The username of the POSIX account.",
- "type": "string"
- },
- "shell": {
- "description": "The path to the logic shell for this account.",
- "type": "string"
- },
- "homeDirectory": {
- "description": "The path to the home directory for this account.",
- "type": "string"
- },
- "gecos": {
- "description": "The GECOS (user information) entry for this account.",
- "type": "string"
- },
- "systemId": {
- "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used.",
- "type": "string"
- }
- },
- "id": "PosixAccount",
- "description": "The POSIX account information associated with a Directory API User.",
- "type": "object"
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
}
},
"icons": {
- "x32": "http://www.google.com/images/icons/product/search-32.gif",
- "x16": "http://www.google.com/images/icons/product/search-16.gif"
+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
},
"protocol": "rest",
"canonicalName": "Cloud OS Login",
@@ -380,5 +132,253 @@
}
}
},
- "rootUrl": "https://oslogin.googleapis.com/"
+ "rootUrl": "https://oslogin.googleapis.com/",
+ "ownerDomain": "google.com",
+ "name": "oslogin",
+ "batchPath": "batch",
+ "title": "Google Cloud OS Login API",
+ "ownerName": "Google",
+ "resources": {
+ "users": {
+ "methods": {
+ "importSshPublicKey": {
+ "response": {
+ "$ref": "ImportSshPublicKeyResponse"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "parent": {
+ "location": "path",
+ "description": "The unique ID for the user in format `users/{user}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^users/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "flatPath": "v1alpha/users/{usersId}:importSshPublicKey",
+ "id": "oslogin.users.importSshPublicKey",
+ "path": "v1alpha/{+parent}:importSshPublicKey",
+ "description": "Adds an SSH public key and returns the profile information. Default POSIX\naccount information is set when no username and UID exist as part of the\nlogin profile.",
+ "request": {
+ "$ref": "SshPublicKey"
+ }
+ },
+ "getLoginProfile": {
+ "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.",
+ "response": {
+ "$ref": "LoginProfile"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The unique ID for the user in format `users/{user}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^users/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only"
+ ],
+ "flatPath": "v1alpha/users/{usersId}/loginProfile",
+ "id": "oslogin.users.getLoginProfile",
+ "path": "v1alpha/{+name}/loginProfile"
+ }
+ },
+ "resources": {
+ "sshPublicKeys": {
+ "methods": {
+ "patch": {
+ "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}",
+ "id": "oslogin.users.sshPublicKeys.patch",
+ "path": "v1alpha/{+name}",
+ "request": {
+ "$ref": "SshPublicKey"
+ },
+ "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.",
+ "response": {
+ "$ref": "SshPublicKey"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "PATCH",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
+ "location": "path"
+ },
+ "updateMask": {
+ "format": "google-fieldmask",
+ "description": "Mask to control which fields get updated. Updates all if not present.",
+ "type": "string",
+ "location": "query"
+ }
+ }
+ },
+ "get": {
+ "response": {
+ "$ref": "SshPublicKey"
+ },
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {
+ "name": {
+ "type": "string",
+ "required": true,
+ "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
+ "location": "path",
+ "description": "The fingerprint of the public key to retrieve. Public keys are identified\nby their SHA-256 fingerprint. The fingerprint of the public key is in\nformat `users/{user}/sshPublicKeys/{fingerprint}`."
+ }
+ },
+ "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}",
+ "id": "oslogin.users.sshPublicKeys.get",
+ "path": "v1alpha/{+name}",
+ "description": "Retrieves an SSH public key."
+ },
+ "delete": {
+ "description": "Deletes an SSH public key.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The fingerprint of the public key to update. Public keys are identified by\ntheir SHA-256 fingerprint. The fingerprint of the public key is in format\n`users/{user}/sshPublicKeys/{fingerprint}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$"
+ }
+ },
+ "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}",
+ "id": "oslogin.users.sshPublicKeys.delete",
+ "path": "v1alpha/{+name}"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "upload_protocol": {
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string"
+ },
+ "prettyPrint": {
+ "location": "query",
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
+ "type": "string"
+ },
+ "$.xgafv": {
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string"
+ },
+ "alt": {
+ "type": "string",
+ "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",
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ]
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "pp": {
+ "default": "true",
+ "type": "boolean",
+ "location": "query",
+ "description": "Pretty-print response."
+ },
+ "oauth_token": {
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string",
+ "location": "query"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ }
+ },
+ "version": "v1alpha",
+ "baseUrl": "https://oslogin.googleapis.com/",
+ "servicePath": "",
+ "description": "Manages OS login configuration for Directory API users.",
+ "kind": "discovery#restDescription"
}
diff --git a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go
index 6499aae..2d3c78b 100644
--- a/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go
+++ b/vendor/google.golang.org/api/oslogin/v1alpha/oslogin-gen.go
@@ -1,6 +1,6 @@
// Package oslogin provides access to the Google Cloud OS Login API.
//
-// See https://developers.google.com/apis-explorer/#p/oslogin/v1alpha/
+// See https://cloud.google.com/compute/docs/oslogin/rest/
//
// Usage example:
//
diff --git a/vendor/google.golang.org/api/partners/v2/partners-api.json b/vendor/google.golang.org/api/partners/v2/partners-api.json
index 0a92c94..6fa28ae 100644
--- a/vendor/google.golang.org/api/partners/v2/partners-api.json
+++ b/vendor/google.golang.org/api/partners/v2/partners-api.json
@@ -1,34 +1,400 @@
{
- "baseUrl": "https://partners.googleapis.com/",
- "canonicalName": "Partners",
- "servicePath": "",
- "description": "Searches certified companies and creates contact leads with them, and also audits the usage of clients.",
- "kind": "discovery#restDescription",
- "rootUrl": "https://partners.googleapis.com/",
- "basePath": "",
- "ownerDomain": "google.com",
- "name": "partners",
"batchPath": "batch",
- "revision": "20170615",
- "documentationLink": "https://developers.google.com/partners/",
"id": "partners:v2",
+ "documentationLink": "https://developers.google.com/partners/",
+ "revision": "20170822",
"title": "Google Partners API",
- "ownerName": "Google",
"discoveryVersion": "v1",
- "version_module": "True",
+ "ownerName": "Google",
+ "version_module": true,
"resources": {
- "exams": {
+ "leads": {
"methods": {
- "getToken": {
- "description": "Gets an Exam Token for a Partner's user to take an exam in the Exams System",
- "httpMethod": "GET",
- "parameterOrder": [
- "examType"
- ],
+ "list": {
+ "description": "Lists advertiser leads for a user's associated company.\nShould only be called within the context of an authorized logged in user.",
+ "parameterOrder": [],
"response": {
- "$ref": "ExamToken"
+ "$ref": "ListLeadsResponse"
+ },
+ "httpMethod": "GET",
+ "parameters": {
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "location": "query",
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "orderBy": {
+ "location": "query",
+ "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "location": "query",
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string"
+ },
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListLeadsResponse.next_page_token`\nreturned from the previous call to\nListLeads.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.",
+ "type": "integer"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "location": "query",
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "requestMetadata.locale": {
+ "description": "Locale to use for the current request.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v2/leads",
+ "id": "partners.leads.list",
+ "path": "v2/leads"
+ }
+ }
+ },
+ "offers": {
+ "methods": {
+ "list": {
+ "response": {
+ "$ref": "ListOffersResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "parameters": {
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.locale": {
+ "location": "query",
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.experimentIds": {
+ "type": "string",
+ "repeated": true,
+ "location": "query",
+ "description": "Experiment IDs the current request belongs to."
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v2/offers",
+ "id": "partners.offers.list",
+ "path": "v2/offers",
+ "description": "Lists the Offers available for the current user"
+ }
+ },
+ "resources": {
+ "history": {
+ "methods": {
+ "list": {
+ "response": {
+ "$ref": "ListOffersHistoryResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "parameters": {
+ "pageSize": {
+ "format": "int32",
+ "description": "Maximum number of rows to return per page.",
+ "type": "integer",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "type": "string",
+ "location": "query",
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us."
+ },
+ "requestMetadata.locale": {
+ "location": "query",
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "entireCompany": {
+ "location": "query",
+ "description": "if true, show history for the entire company. Requires user to be admin.",
+ "type": "boolean"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "location": "query",
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "orderBy": {
+ "location": "query",
+ "description": "Comma-separated list of fields to order by, e.g.: \"foo,bar,baz\".\nUse \"foo desc\" to sort descending.\nList of valid field names is: name, offer_code, expiration_time, status,\n last_modified_time, sender_name, creation_time, country_code,\n offer_type.",
+ "type": "string"
+ },
+ "requestMetadata.partnersSessionId": {
+ "type": "string",
+ "location": "query",
+ "description": "Google Partners session ID."
+ },
+ "requestMetadata.userOverrides.userId": {
+ "location": "query",
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "Token to retrieve a specific page.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v2/offers/history",
+ "id": "partners.offers.history.list",
+ "path": "v2/offers/history",
+ "description": "Lists the Historical Offers for the current user (or user's entire company)"
+ }
+ }
+ }
+ }
+ },
+ "analytics": {
+ "methods": {
+ "list": {
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "ListAnalyticsResponse"
+ },
+ "parameterOrder": [],
+ "parameters": {
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListAnalyticsResponse.next_page_token`\nreturned from the previous call to\nListAnalytics.\nWill be a date string in `YYYY-MM-DD` format representing the end date\nof the date range of results to return.\nIf unspecified or set to \"\", default value is the current date.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Requested page size. Server may return fewer analytics than requested.\nIf unspecified or set to 0, default value is 30.\nSpecifies the number of days in the date range when querying analytics.\nThe `page_token` represents the end date of the date range\nand the start date is calculated using the `page_size` as the number\nof days BEFORE the end date.\nMust be a non-negative integer.",
+ "type": "integer"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.locale": {
+ "location": "query",
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v2/analytics",
+ "path": "v2/analytics",
+ "id": "partners.analytics.list",
+ "description": "Lists analytics data for a user's associated company.\nShould only be called within the context of an authorized logged in user."
+ }
+ }
+ },
+ "userStates": {
+ "methods": {
+ "list": {
+ "description": "Lists states for current user.",
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "ListUserStatesResponse"
},
"parameters": {
+ "requestMetadata.partnersSessionId": {
+ "description": "Google Partners session ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "location": "query",
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.locale": {
+ "type": "string",
+ "location": "query",
+ "description": "Locale to use for the current request."
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "location": "query",
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ }
+ },
+ "flatPath": "v2/userStates",
+ "id": "partners.userStates.list",
+ "path": "v2/userStates"
+ }
+ }
+ },
+ "v2": {
+ "methods": {
+ "getPartnersstatus": {
+ "response": {
+ "$ref": "GetPartnersStatusResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "parameters": {
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.locale": {
+ "type": "string",
+ "location": "query",
+ "description": "Locale to use for the current request."
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ }
+ },
+ "flatPath": "v2/partnersstatus",
+ "id": "partners.getPartnersstatus",
+ "path": "v2/partnersstatus",
+ "description": "Gets Partners Status of the logged in user's agency.\nShould only be called if the logged in user is the admin of the agency."
+ },
+ "updateLeads": {
+ "description": "Updates the specified lead.",
+ "request": {
+ "$ref": "Lead"
+ },
+ "response": {
+ "$ref": "Lead"
+ },
+ "parameterOrder": [],
+ "httpMethod": "PATCH",
+ "parameters": {
+ "requestMetadata.partnersSessionId": {
+ "description": "Google Partners session ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "location": "query",
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string"
+ },
"requestMetadata.trafficSource.trafficSourceId": {
"location": "query",
"description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
@@ -44,12 +410,697 @@
"description": "IP address to use instead of the user's geo-located IP address.",
"type": "string"
},
+ "updateMask": {
+ "format": "google-fieldmask",
+ "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.\nOnly `state` and `adwords_customer_id` are currently supported.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.experimentIds": {
+ "repeated": true,
+ "location": "query",
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v2/leads",
+ "id": "partners.updateLeads",
+ "path": "v2/leads"
+ },
+ "updateCompanies": {
+ "request": {
+ "$ref": "Company"
+ },
+ "description": "Update company.\nShould only be called within the context of an authorized logged in user.",
+ "response": {
+ "$ref": "Company"
+ },
+ "parameterOrder": [],
+ "httpMethod": "PATCH",
+ "parameters": {
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "location": "query",
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "requestMetadata.locale": {
+ "description": "Locale to use for the current request.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "type": "string",
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address."
+ },
+ "updateMask": {
+ "type": "string",
+ "location": "query",
+ "format": "google-fieldmask",
+ "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths."
+ },
+ "requestMetadata.experimentIds": {
+ "type": "string",
+ "repeated": true,
+ "location": "query",
+ "description": "Experiment IDs the current request belongs to."
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "location": "query",
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "requestMetadata.partnersSessionId": {
+ "description": "Google Partners session ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "location": "query",
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string"
+ }
+ },
+ "flatPath": "v2/companies",
+ "id": "partners.updateCompanies",
+ "path": "v2/companies"
+ }
+ }
+ },
+ "users": {
+ "methods": {
+ "deleteCompanyRelation": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "userId"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "userId": {
+ "location": "path",
+ "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.",
+ "type": "string",
+ "required": true
+ },
+ "requestMetadata.partnersSessionId": {
+ "description": "Google Partners session ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.locale": {
+ "location": "query",
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ }
+ },
+ "flatPath": "v2/users/{userId}/companyRelation",
+ "id": "partners.users.deleteCompanyRelation",
+ "path": "v2/users/{userId}/companyRelation",
+ "description": "Deletes a user's company relation. Unaffiliaites the user from a company."
+ },
+ "createCompanyRelation": {
+ "description": "Creates a user's company relation. Affiliates the user to a company.",
+ "request": {
+ "$ref": "CompanyRelation"
+ },
+ "httpMethod": "PUT",
+ "parameterOrder": [
+ "userId"
+ ],
+ "response": {
+ "$ref": "CompanyRelation"
+ },
+ "parameters": {
+ "requestMetadata.userOverrides.userId": {
+ "location": "query",
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string"
+ },
+ "requestMetadata.partnersSessionId": {
+ "description": "Google Partners session ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.locale": {
+ "location": "query",
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "requestMetadata.experimentIds": {
+ "repeated": true,
+ "location": "query",
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "location": "query",
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "userId": {
+ "location": "path",
+ "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v2/users/{userId}/companyRelation",
+ "path": "v2/users/{userId}/companyRelation",
+ "id": "partners.users.createCompanyRelation"
+ },
+ "get": {
+ "description": "Gets a user.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "userId"
+ ],
+ "response": {
+ "$ref": "User"
+ },
+ "parameters": {
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "userView": {
+ "location": "query",
+ "enum": [
+ "BASIC",
+ "PROFILE",
+ "PUBLIC_PROFILE"
+ ],
+ "description": "Specifies what parts of the user information to return.",
+ "type": "string"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.locale": {
+ "description": "Locale to use for the current request.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
"requestMetadata.experimentIds": {
"location": "query",
"description": "Experiment IDs the current request belongs to.",
"type": "string",
"repeated": true
},
+ "userId": {
+ "location": "path",
+ "description": "Identifier of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean the currently\nauthenticated user.",
+ "type": "string",
+ "required": true
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v2/users/{userId}",
+ "path": "v2/users/{userId}",
+ "id": "partners.users.get"
+ },
+ "updateProfile": {
+ "response": {
+ "$ref": "UserProfile"
+ },
+ "parameterOrder": [],
+ "httpMethod": "PATCH",
+ "parameters": {
+ "requestMetadata.userOverrides.ipAddress": {
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.experimentIds": {
+ "repeated": true,
+ "location": "query",
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "location": "query",
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "requestMetadata.locale": {
+ "location": "query",
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ }
+ },
+ "flatPath": "v2/users/profile",
+ "id": "partners.users.updateProfile",
+ "path": "v2/users/profile",
+ "description": "Updates a user's profile. A user can only update their own profile and\nshould only be called within the context of a logged in user.",
+ "request": {
+ "$ref": "UserProfile"
+ }
+ }
+ }
+ },
+ "companies": {
+ "methods": {
+ "list": {
+ "description": "Lists companies.",
+ "response": {
+ "$ref": "ListCompaniesResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "parameters": {
+ "requestMetadata.trafficSource.trafficSubId": {
+ "location": "query",
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "minMonthlyBudget.nanos": {
+ "location": "query",
+ "format": "int32",
+ "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.",
+ "type": "integer"
+ },
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "companyName": {
+ "description": "Company name to search for.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListCompaniesResponse.next_page_token`\nreturned from the previous call to\nListCompanies.",
+ "type": "string",
+ "location": "query"
+ },
+ "industries": {
+ "enum": [
+ "INDUSTRY_UNSPECIFIED",
+ "I_AUTOMOTIVE",
+ "I_BUSINESS_TO_BUSINESS",
+ "I_CONSUMER_PACKAGED_GOODS",
+ "I_EDUCATION",
+ "I_FINANCE",
+ "I_HEALTHCARE",
+ "I_MEDIA_AND_ENTERTAINMENT",
+ "I_RETAIL",
+ "I_TECHNOLOGY",
+ "I_TRAVEL"
+ ],
+ "description": "List of industries the company can help with.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "websiteUrl": {
+ "description": "Website URL that will help to find a better matched company.\n.",
+ "type": "string",
+ "location": "query"
+ },
+ "gpsMotivations": {
+ "description": "List of reasons for using Google Partner Search to get companies.",
+ "type": "string",
+ "repeated": true,
+ "location": "query",
+ "enum": [
+ "GPS_MOTIVATION_UNSPECIFIED",
+ "GPSM_HELP_WITH_ADVERTISING",
+ "GPSM_HELP_WITH_WEBSITE",
+ "GPSM_NO_WEBSITE"
+ ]
+ },
+ "languageCodes": {
+ "location": "query",
+ "description": "List of language codes that company can support. Only primary language\nsubtags are accepted as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").",
+ "type": "string",
+ "repeated": true
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Requested page size. Server may return fewer companies than requested.\nIf unspecified, server picks an appropriate default.",
+ "type": "integer"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "orderBy": {
+ "location": "query",
+ "description": "How to order addresses within the returned companies. Currently, only\n`address` and `address desc` is supported which will sorted by closest to\nfarthest in distance from given address and farthest to closest distance\nfrom given address respectively.",
+ "type": "string"
+ },
+ "specializations": {
+ "description": "List of specializations that the returned agencies should provide. If this\nis not empty, any returned agency must have at least one of these\nspecializations, or one of the services in the \"services\" field.",
+ "type": "string",
+ "repeated": true,
+ "location": "query",
+ "enum": [
+ "BADGE_SPECIALIZATION_UNKNOWN",
+ "BADGE_SPECIALIZATION_ADWORDS_SEARCH",
+ "BADGE_SPECIALIZATION_ADWORDS_DISPLAY",
+ "BADGE_SPECIALIZATION_ADWORDS_MOBILE",
+ "BADGE_SPECIALIZATION_ADWORDS_VIDEO",
+ "BADGE_SPECIALIZATION_ADWORDS_SHOPPING"
+ ]
+ },
+ "maxMonthlyBudget.currencyCode": {
+ "type": "string",
+ "location": "query",
+ "description": "The 3-letter currency code defined in ISO 4217."
+ },
+ "minMonthlyBudget.currencyCode": {
+ "location": "query",
+ "description": "The 3-letter currency code defined in ISO 4217.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "view": {
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "COMPANY_VIEW_UNSPECIFIED",
+ "CV_GOOGLE_PARTNER_SEARCH"
+ ],
+ "description": "The view of the `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`."
+ },
+ "requestMetadata.locale": {
+ "description": "Locale to use for the current request.",
+ "type": "string",
+ "location": "query"
+ },
+ "address": {
+ "location": "query",
+ "description": "The address to use when searching for companies.\nIf not given, the geo-located address of the request is used.",
+ "type": "string"
+ },
+ "minMonthlyBudget.units": {
+ "location": "query",
+ "format": "int64",
+ "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
+ "type": "string"
+ },
+ "maxMonthlyBudget.nanos": {
+ "type": "integer",
+ "location": "query",
+ "format": "int32",
+ "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."
+ },
+ "services": {
+ "enum": [
+ "SERVICE_UNSPECIFIED",
+ "S_ADVANCED_ADWORDS_SUPPORT",
+ "S_ADVERTISING_ON_GOOGLE",
+ "S_AN_ENHANCED_WEBSITE",
+ "S_AN_ONLINE_MARKETING_PLAN",
+ "S_MOBILE_AND_VIDEO_ADS",
+ "S_MOBILE_WEBSITE_SERVICES"
+ ],
+ "description": "List of services that the returned agencies should provide. If this is\nnot empty, any returned agency must have at least one of these services,\nor one of the specializations in the \"specializations\" field.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "location": "query",
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "maxMonthlyBudget.units": {
+ "type": "string",
+ "location": "query",
+ "format": "int64",
+ "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar."
+ }
+ },
+ "flatPath": "v2/companies",
+ "id": "partners.companies.list",
+ "path": "v2/companies"
+ },
+ "get": {
+ "flatPath": "v2/companies/{companyId}",
+ "id": "partners.companies.get",
+ "path": "v2/companies/{companyId}",
+ "description": "Gets a company.",
+ "response": {
+ "$ref": "GetCompanyResponse"
+ },
+ "parameterOrder": [
+ "companyId"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "location": "query",
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "location": "query",
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "companyId": {
+ "type": "string",
+ "required": true,
+ "location": "path",
+ "description": "The ID of the company to retrieve."
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "currencyCode": {
+ "description": "If the company's budget is in a different currency code than this one, then\nthe converted budget is converted to this currency code.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string",
+ "location": "query"
+ },
+ "orderBy": {
+ "type": "string",
+ "location": "query",
+ "description": "How to order addresses within the returned company. Currently, only\n`address` and `address desc` is supported which will sorted by closest to\nfarthest in distance from given address and farthest to closest distance\nfrom given address respectively."
+ },
+ "requestMetadata.partnersSessionId": {
+ "location": "query",
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
+ "type": "string",
+ "location": "query"
+ },
+ "view": {
+ "location": "query",
+ "enum": [
+ "COMPANY_VIEW_UNSPECIFIED",
+ "CV_GOOGLE_PARTNER_SEARCH"
+ ],
+ "description": "The view of `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`.",
+ "type": "string"
+ },
+ "requestMetadata.locale": {
+ "type": "string",
+ "location": "query",
+ "description": "Locale to use for the current request."
+ },
+ "address": {
+ "description": "The address to use for sorting the company's addresses by proximity.\nIf not given, the geo-located address of the request is used.\nUsed when order_by is set.",
+ "type": "string",
+ "location": "query"
+ }
+ }
+ }
+ },
+ "resources": {
+ "leads": {
+ "methods": {
+ "create": {
+ "request": {
+ "$ref": "CreateLeadRequest"
+ },
+ "description": "Creates an advertiser lead for the given company ID.",
+ "response": {
+ "$ref": "CreateLeadResponse"
+ },
+ "parameterOrder": [
+ "companyId"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "companyId": {
+ "type": "string",
+ "required": true,
+ "location": "path",
+ "description": "The ID of the company to contact."
+ }
+ },
+ "flatPath": "v2/companies/{companyId}/leads",
+ "id": "partners.companies.leads.create",
+ "path": "v2/companies/{companyId}/leads"
+ }
+ }
+ }
+ }
+ },
+ "userEvents": {
+ "methods": {
+ "log": {
+ "id": "partners.userEvents.log",
+ "path": "v2/userEvents:log",
+ "description": "Logs a user event.",
+ "request": {
+ "$ref": "LogUserEventRequest"
+ },
+ "response": {
+ "$ref": "LogUserEventResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {},
+ "flatPath": "v2/userEvents:log"
+ }
+ }
+ },
+ "clientMessages": {
+ "methods": {
+ "log": {
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "LogMessageResponse"
+ },
+ "parameters": {},
+ "flatPath": "v2/clientMessages:log",
+ "path": "v2/clientMessages:log",
+ "id": "partners.clientMessages.log",
+ "description": "Logs a generic message from the client, such as\n`Failed to render component`, `Profile page is running slow`,\n`More than 500 users have accessed this result.`, etc.",
+ "request": {
+ "$ref": "LogMessageRequest"
+ }
+ }
+ }
+ },
+ "exams": {
+ "methods": {
+ "getToken": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "examType"
+ ],
+ "response": {
+ "$ref": "ExamToken"
+ },
+ "parameters": {
+ "requestMetadata.locale": {
+ "location": "query",
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ },
+ "requestMetadata.userOverrides.ipAddress": {
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
"requestMetadata.trafficSource.trafficSubId": {
"location": "query",
"description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
@@ -71,1104 +1122,34 @@
"CET_MOBILE_SITES"
],
"description": "The exam type we are requesting a token for.",
- "required": true,
- "type": "string"
+ "type": "string",
+ "required": true
},
"requestMetadata.partnersSessionId": {
- "location": "query",
"description": "Google Partners session ID.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"requestMetadata.userOverrides.userId": {
- "location": "query",
"description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string"
+ "type": "string",
+ "location": "query"
+ },
+ "requestMetadata.trafficSource.trafficSourceId": {
+ "type": "string",
+ "location": "query",
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us."
}
},
"flatPath": "v2/exams/{examType}/token",
+ "path": "v2/exams/{examType}/token",
"id": "partners.exams.getToken",
- "path": "v2/exams/{examType}/token"
- }
- }
- },
- "leads": {
- "methods": {
- "list": {
- "flatPath": "v2/leads",
- "path": "v2/leads",
- "id": "partners.leads.list",
- "description": "Lists advertiser leads for a user's associated company.\nShould only be called within the context of an authorized logged in user.",
- "response": {
- "$ref": "ListLeadsResponse"
- },
- "parameterOrder": [],
- "httpMethod": "GET",
- "parameters": {
- "pageSize": {
- "location": "query",
- "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.",
- "format": "int32",
- "type": "integer"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "location": "query",
- "description": "Locale to use for the current request.",
- "type": "string"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.experimentIds": {
- "location": "query",
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true
- },
- "orderBy": {
- "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "location": "query",
- "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListLeadsResponse.next_page_token`\nreturned from the previous call to\nListLeads.",
- "type": "string"
- }
- }
- }
- }
- },
- "offers": {
- "methods": {
- "list": {
- "response": {
- "$ref": "ListOffersResponse"
- },
- "parameterOrder": [],
- "httpMethod": "GET",
- "parameters": {
- "requestMetadata.trafficSource.trafficSourceId": {
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "location": "query",
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.partnersSessionId": {
- "location": "query",
- "description": "Google Partners session ID.",
- "type": "string"
- }
- },
- "flatPath": "v2/offers",
- "path": "v2/offers",
- "id": "partners.offers.list",
- "description": "Lists the Offers available for the current user"
- }
- },
- "resources": {
- "history": {
- "methods": {
- "list": {
- "flatPath": "v2/offers/history",
- "id": "partners.offers.history.list",
- "path": "v2/offers/history",
- "description": "Lists the Historical Offers for the current user (or user's entire company)",
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "ListOffersHistoryResponse"
- },
- "parameters": {
- "pageSize": {
- "location": "query",
- "description": "Maximum number of rows to return per page.",
- "format": "int32",
- "type": "integer"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "location": "query",
- "description": "Locale to use for the current request.",
- "type": "string"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string",
- "location": "query"
- },
- "entireCompany": {
- "description": "if true, show history for the entire company. Requires user to be admin.",
- "type": "boolean",
- "location": "query"
- },
- "requestMetadata.experimentIds": {
- "location": "query",
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true
- },
- "orderBy": {
- "location": "query",
- "description": "Comma-separated list of fields to order by, e.g.: \"foo,bar,baz\".\nUse \"foo desc\" to sort descending.\nList of valid field names is: name, offer_code, expiration_time, status,\n last_modified_time, sender_name, creation_time, country_code,\n offer_type.",
- "type": "string"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "description": "Token to retrieve a specific page.",
- "type": "string",
- "location": "query"
- }
- }
- }
- }
- }
- }
- },
- "userStates": {
- "methods": {
- "list": {
- "response": {
- "$ref": "ListUserStatesResponse"
- },
- "parameterOrder": [],
- "httpMethod": "GET",
- "parameters": {
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.partnersSessionId": {
- "location": "query",
- "description": "Google Partners session ID.",
- "type": "string"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "location": "query",
- "description": "Locale to use for the current request.",
- "type": "string"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- }
- },
- "flatPath": "v2/userStates",
- "path": "v2/userStates",
- "id": "partners.userStates.list",
- "description": "Lists states for current user."
- }
- }
- },
- "analytics": {
- "methods": {
- "list": {
- "description": "Lists analytics data for a user's associated company.\nShould only be called within the context of an authorized logged in user.",
- "response": {
- "$ref": "ListAnalyticsResponse"
- },
- "parameterOrder": [],
- "httpMethod": "GET",
- "parameters": {
- "pageSize": {
- "location": "query",
- "description": "Requested page size. Server may return fewer analytics than requested.\nIf unspecified or set to 0, default value is 30.\nSpecifies the number of days in the date range when querying analytics.\nThe `page_token` represents the end date of the date range\nand the start date is calculated using the `page_size` as the number\nof days BEFORE the end date.\nMust be a non-negative integer.",
- "format": "int32",
- "type": "integer"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.locale": {
- "location": "query",
- "description": "Locale to use for the current request.",
- "type": "string"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "location": "query",
- "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListAnalyticsResponse.next_page_token`\nreturned from the previous call to\nListAnalytics.\nWill be a date string in `YYYY-MM-DD` format representing the end date\nof the date range of results to return.\nIf unspecified or set to \"\", default value is the current date.",
- "type": "string"
- }
- },
- "flatPath": "v2/analytics",
- "path": "v2/analytics",
- "id": "partners.analytics.list"
- }
- }
- },
- "v2": {
- "methods": {
- "getPartnersstatus": {
- "flatPath": "v2/partnersstatus",
- "path": "v2/partnersstatus",
- "id": "partners.getPartnersstatus",
- "description": "Gets Partners Status of the logged in user's agency.\nShould only be called if the logged in user is the admin of the agency.",
- "response": {
- "$ref": "GetPartnersStatusResponse"
- },
- "parameterOrder": [],
- "httpMethod": "GET",
- "parameters": {
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "requestMetadata.experimentIds": {
- "location": "query",
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- }
- }
- },
- "updateLeads": {
- "description": "Updates the specified lead.",
- "request": {
- "$ref": "Lead"
- },
- "response": {
- "$ref": "Lead"
- },
- "parameterOrder": [],
- "httpMethod": "PATCH",
- "parameters": {
- "requestMetadata.userOverrides.userId": {
- "location": "query",
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string",
- "location": "query"
- },
- "updateMask": {
- "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.\nOnly `state` and `adwords_customer_id` are currently supported.",
- "format": "google-fieldmask",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.experimentIds": {
- "location": "query",
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- }
- },
- "flatPath": "v2/leads",
- "path": "v2/leads",
- "id": "partners.updateLeads"
- },
- "updateCompanies": {
- "description": "Update company.\nShould only be called within the context of an authorized logged in user.",
- "request": {
- "$ref": "Company"
- },
- "httpMethod": "PATCH",
- "parameterOrder": [],
- "response": {
- "$ref": "Company"
- },
- "parameters": {
- "requestMetadata.userOverrides.userId": {
- "location": "query",
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "updateMask": {
- "description": "Standard field mask for the set of fields to be updated.\nRequired with at least 1 value in FieldMask's paths.",
- "format": "google-fieldmask",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- }
- },
- "flatPath": "v2/companies",
- "id": "partners.updateCompanies",
- "path": "v2/companies"
- }
- }
- },
- "companies": {
- "methods": {
- "get": {
- "flatPath": "v2/companies/{companyId}",
- "id": "partners.companies.get",
- "path": "v2/companies/{companyId}",
- "description": "Gets a company.",
- "httpMethod": "GET",
- "parameterOrder": [
- "companyId"
- ],
- "response": {
- "$ref": "GetCompanyResponse"
- },
- "parameters": {
- "requestMetadata.userOverrides.userId": {
- "location": "query",
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "view": {
- "description": "The view of `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`.",
- "type": "string",
- "location": "query",
- "enum": [
- "COMPANY_VIEW_UNSPECIFIED",
- "CV_GOOGLE_PARTNER_SEARCH"
- ]
- },
- "address": {
- "location": "query",
- "description": "The address to use for sorting the company's addresses by proximity.\nIf not given, the geo-located address of the request is used.\nUsed when order_by is set.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "location": "query",
- "description": "Locale to use for the current request.",
- "type": "string"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string",
- "location": "query"
- },
- "companyId": {
- "description": "The ID of the company to retrieve.",
- "required": true,
- "type": "string",
- "location": "path"
- },
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "currencyCode": {
- "description": "If the company's budget is in a different currency code than this one, then\nthe converted budget is converted to this currency code.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "location": "query",
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "orderBy": {
- "description": "How to order addresses within the returned company. Currently, only\n`address` and `address desc` is supported which will sorted by closest to\nfarthest in distance from given address and farthest to closest distance\nfrom given address respectively.",
- "type": "string",
- "location": "query"
- }
- }
- },
- "list": {
- "description": "Lists companies.",
- "response": {
- "$ref": "ListCompaniesResponse"
- },
- "parameterOrder": [],
- "httpMethod": "GET",
- "parameters": {
- "maxMonthlyBudget.nanos": {
- "location": "query",
- "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"
- },
- "services": {
- "description": "List of services that the returned agencies should provide. If this is\nnot empty, any returned agency must have at least one of these services,\nor one of the specializations in the \"specializations\" field.",
- "type": "string",
- "repeated": true,
- "location": "query",
- "enum": [
- "SERVICE_UNSPECIFIED",
- "S_ADVANCED_ADWORDS_SUPPORT",
- "S_ADVERTISING_ON_GOOGLE",
- "S_AN_ENHANCED_WEBSITE",
- "S_AN_ONLINE_MARKETING_PLAN",
- "S_MOBILE_AND_VIDEO_ADS",
- "S_MOBILE_WEBSITE_SERVICES"
- ]
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "maxMonthlyBudget.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",
- "location": "query"
- },
- "minMonthlyBudget.nanos": {
- "location": "query",
- "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"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "location": "query",
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "description": "A token identifying a page of results that the server returns.\nTypically, this is the value of `ListCompaniesResponse.next_page_token`\nreturned from the previous call to\nListCompanies.",
- "type": "string",
- "location": "query"
- },
- "companyName": {
- "location": "query",
- "description": "Company name to search for.",
- "type": "string"
- },
- "industries": {
- "description": "List of industries the company can help with.",
- "type": "string",
- "repeated": true,
- "location": "query",
- "enum": [
- "INDUSTRY_UNSPECIFIED",
- "I_AUTOMOTIVE",
- "I_BUSINESS_TO_BUSINESS",
- "I_CONSUMER_PACKAGED_GOODS",
- "I_EDUCATION",
- "I_FINANCE",
- "I_HEALTHCARE",
- "I_MEDIA_AND_ENTERTAINMENT",
- "I_RETAIL",
- "I_TECHNOLOGY",
- "I_TRAVEL"
- ]
- },
- "websiteUrl": {
- "description": "Website URL that will help to find a better matched company.\n.",
- "type": "string",
- "location": "query"
- },
- "gpsMotivations": {
- "description": "List of reasons for using Google Partner Search to get companies.",
- "type": "string",
- "repeated": true,
- "location": "query",
- "enum": [
- "GPS_MOTIVATION_UNSPECIFIED",
- "GPSM_HELP_WITH_ADVERTISING",
- "GPSM_HELP_WITH_WEBSITE",
- "GPSM_NO_WEBSITE"
- ]
- },
- "languageCodes": {
- "description": "List of language codes that company can support. Only primary language\nsubtags are accepted as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "pageSize": {
- "location": "query",
- "description": "Requested page size. Server may return fewer companies than requested.\nIf unspecified, server picks an appropriate default.",
- "format": "int32",
- "type": "integer"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "requestMetadata.experimentIds": {
- "location": "query",
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true
- },
- "orderBy": {
- "location": "query",
- "description": "How to order addresses within the returned companies. Currently, only\n`address` and `address desc` is supported which will sorted by closest to\nfarthest in distance from given address and farthest to closest distance\nfrom given address respectively.",
- "type": "string"
- },
- "specializations": {
- "description": "List of specializations that the returned agencies should provide. If this\nis not empty, any returned agency must have at least one of these\nspecializations, or one of the services in the \"services\" field.",
- "type": "string",
- "repeated": true,
- "location": "query",
- "enum": [
- "BADGE_SPECIALIZATION_UNKNOWN",
- "BADGE_SPECIALIZATION_ADWORDS_SEARCH",
- "BADGE_SPECIALIZATION_ADWORDS_DISPLAY",
- "BADGE_SPECIALIZATION_ADWORDS_MOBILE",
- "BADGE_SPECIALIZATION_ADWORDS_VIDEO",
- "BADGE_SPECIALIZATION_ADWORDS_SHOPPING"
- ]
- },
- "maxMonthlyBudget.currencyCode": {
- "description": "The 3-letter currency code defined in ISO 4217.",
- "type": "string",
- "location": "query"
- },
- "minMonthlyBudget.currencyCode": {
- "location": "query",
- "description": "The 3-letter currency code defined in ISO 4217.",
- "type": "string"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "view": {
- "location": "query",
- "enum": [
- "COMPANY_VIEW_UNSPECIFIED",
- "CV_GOOGLE_PARTNER_SEARCH"
- ],
- "description": "The view of the `Company` resource to be returned. This must not be\n`COMPANY_VIEW_UNSPECIFIED`.",
- "type": "string"
- },
- "address": {
- "description": "The address to use when searching for companies.\nIf not given, the geo-located address of the request is used.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "minMonthlyBudget.units": {
- "location": "query",
- "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
- "format": "int64",
- "type": "string"
- }
- },
- "flatPath": "v2/companies",
- "path": "v2/companies",
- "id": "partners.companies.list"
- }
- },
- "resources": {
- "leads": {
- "methods": {
- "create": {
- "flatPath": "v2/companies/{companyId}/leads",
- "path": "v2/companies/{companyId}/leads",
- "id": "partners.companies.leads.create",
- "request": {
- "$ref": "CreateLeadRequest"
- },
- "description": "Creates an advertiser lead for the given company ID.",
- "response": {
- "$ref": "CreateLeadResponse"
- },
- "parameterOrder": [
- "companyId"
- ],
- "httpMethod": "POST",
- "parameters": {
- "companyId": {
- "description": "The ID of the company to contact.",
- "required": true,
- "type": "string",
- "location": "path"
- }
- }
- }
- }
- }
- }
- },
- "users": {
- "methods": {
- "get": {
- "description": "Gets a user.",
- "parameterOrder": [
- "userId"
- ],
- "response": {
- "$ref": "User"
- },
- "httpMethod": "GET",
- "parameters": {
- "requestMetadata.userOverrides.userId": {
- "location": "query",
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string"
- },
- "requestMetadata.partnersSessionId": {
- "location": "query",
- "description": "Google Partners session ID.",
- "type": "string"
- },
- "userView": {
- "description": "Specifies what parts of the user information to return.",
- "type": "string",
- "location": "query",
- "enum": [
- "BASIC",
- "PROFILE",
- "PUBLIC_PROFILE"
- ]
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "userId": {
- "description": "Identifier of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean the currently\nauthenticated user.",
- "required": true,
- "type": "string",
- "location": "path"
- }
- },
- "flatPath": "v2/users/{userId}",
- "path": "v2/users/{userId}",
- "id": "partners.users.get"
- },
- "updateProfile": {
- "request": {
- "$ref": "UserProfile"
- },
- "description": "Updates a user's profile. A user can only update their own profile and\nshould only be called within the context of a logged in user.",
- "response": {
- "$ref": "UserProfile"
- },
- "parameterOrder": [],
- "httpMethod": "PATCH",
- "parameters": {
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "requestMetadata.experimentIds": {
- "location": "query",
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "location": "query",
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.userId": {
- "location": "query",
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string"
- }
- },
- "flatPath": "v2/users/profile",
- "path": "v2/users/profile",
- "id": "partners.users.updateProfile"
- },
- "createCompanyRelation": {
- "request": {
- "$ref": "CompanyRelation"
- },
- "description": "Creates a user's company relation. Affiliates the user to a company.",
- "httpMethod": "PUT",
- "parameterOrder": [
- "userId"
- ],
- "response": {
- "$ref": "CompanyRelation"
- },
- "parameters": {
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "location": "query",
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string",
- "location": "query"
- },
- "userId": {
- "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.",
- "required": true,
- "type": "string",
- "location": "path"
- }
- },
- "flatPath": "v2/users/{userId}/companyRelation",
- "id": "partners.users.createCompanyRelation",
- "path": "v2/users/{userId}/companyRelation"
- },
- "deleteCompanyRelation": {
- "description": "Deletes a user's company relation. Unaffiliaites the user from a company.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "userId"
- ],
- "httpMethod": "DELETE",
- "parameters": {
- "requestMetadata.experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSubId": {
- "location": "query",
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "userId": {
- "description": "The ID of the user. Can be set to \u003ccode\u003eme\u003c/code\u003e to mean\nthe currently authenticated user.",
- "required": true,
- "type": "string",
- "location": "path"
- },
- "requestMetadata.partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.trafficSource.trafficSourceId": {
- "location": "query",
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "requestMetadata.locale": {
- "description": "Locale to use for the current request.",
- "type": "string",
- "location": "query"
- },
- "requestMetadata.userOverrides.ipAddress": {
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string",
- "location": "query"
- }
- },
- "flatPath": "v2/users/{userId}/companyRelation",
- "path": "v2/users/{userId}/companyRelation",
- "id": "partners.users.deleteCompanyRelation"
- }
- }
- },
- "userEvents": {
- "methods": {
- "log": {
- "description": "Logs a user event.",
- "request": {
- "$ref": "LogUserEventRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "LogUserEventResponse"
- },
- "parameters": {},
- "flatPath": "v2/userEvents:log",
- "id": "partners.userEvents.log",
- "path": "v2/userEvents:log"
- }
- }
- },
- "clientMessages": {
- "methods": {
- "log": {
- "flatPath": "v2/clientMessages:log",
- "id": "partners.clientMessages.log",
- "path": "v2/clientMessages:log",
- "description": "Logs a generic message from the client, such as\n`Failed to render component`, `Profile page is running slow`,\n`More than 500 users have accessed this result.`, etc.",
- "request": {
- "$ref": "LogMessageRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "LogMessageResponse"
- },
- "parameters": {}
+ "description": "Gets an Exam Token for a Partner's user to take an exam in the Exams System"
}
}
}
},
"parameters": {
- "fields": {
- "location": "query",
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
"callback": {
"description": "JSONP",
"type": "string",
@@ -1188,6 +1169,12 @@
]
},
"alt": {
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
@@ -1195,181 +1182,410 @@
],
"location": "query",
"description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
+ "default": "json"
},
"key": {
- "location": "query",
"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.",
- "type": "string"
+ "type": "string",
+ "location": "query"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
},
"quotaUser": {
- "location": "query",
"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.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"pp": {
"description": "Pretty-print response.",
- "type": "boolean",
"default": "true",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
+ "type": "boolean",
"location": "query"
},
"oauth_token": {
+ "location": "query",
"description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ },
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string",
"location": "query"
},
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
"prettyPrint": {
"description": "Returns response with indentations and line breaks.",
- "type": "boolean",
"default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
+ },
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string",
"location": "query"
}
},
"schemas": {
- "Rank": {
- "description": "Information related to ranking of results.",
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
+ },
+ "TrafficSource": {
"type": "object",
"properties": {
- "type": {
- "description": "The type of rank.",
+ "trafficSourceId": {
+ "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ },
+ "trafficSubId": {
+ "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
+ "type": "string"
+ }
+ },
+ "id": "TrafficSource",
+ "description": "Source of traffic for the current request."
+ },
+ "RequestMetadata": {
+ "description": "Common data that is in each API request.",
+ "type": "object",
+ "properties": {
+ "trafficSource": {
+ "description": "Source of traffic for the current request.",
+ "$ref": "TrafficSource"
+ },
+ "experimentIds": {
+ "description": "Experiment IDs the current request belongs to.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "locale": {
+ "description": "Locale to use for the current request.",
+ "type": "string"
+ },
+ "partnersSessionId": {
+ "description": "Google Partners session ID.",
+ "type": "string"
+ },
+ "userOverrides": {
+ "$ref": "UserOverrides",
+ "description": "Values to use instead of the user's respective defaults for the current\nrequest. These are only honored by whitelisted products."
+ }
+ },
+ "id": "RequestMetadata"
+ },
+ "CreateLeadRequest": {
+ "description": "Request message for CreateLead.",
+ "type": "object",
+ "properties": {
+ "requestMetadata": {
+ "$ref": "RequestMetadata",
+ "description": "Current request metadata."
+ },
+ "recaptchaChallenge": {
+ "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.",
+ "$ref": "RecaptchaChallenge"
+ },
+ "lead": {
+ "description": "The lead resource. The `LeadType` must not be `LEAD_TYPE_UNSPECIFIED`\nand either `email` or `phone_number` must be provided.",
+ "$ref": "Lead"
+ }
+ },
+ "id": "CreateLeadRequest"
+ },
+ "EventData": {
+ "id": "EventData",
+ "description": "Key value data pair for an event.",
+ "type": "object",
+ "properties": {
+ "key": {
+ "enumDescriptions": [
+ "Unchosen.",
+ "Action data.",
+ "Agency ID data.",
+ "Agency name data.",
+ "Agency phone number data.",
+ "Agency website data.",
+ "Budget data.",
+ "Center-point data.",
+ "Certification data.",
+ "Comment data.",
+ "Country data.",
+ "Currency data.",
+ "Currently viewed agency ID data.",
+ "Distance data.",
+ "Distance type data.",
+ "Exam data.",
+ "History token data.",
+ "Identifier data.",
+ "Industry data.",
+ "Insight tag data.",
+ "Language data.",
+ "Location data.",
+ "Marketing opt-in data.",
+ "Query data.",
+ "Search start index data.",
+ "Service data.",
+ "Show vow data.",
+ "Solution data.",
+ "Traffic source ID data.",
+ "Traffic sub ID data.",
+ "Viewport data.",
+ "Website data.",
+ "Details data.",
+ "Experiment ID data.",
+ "Google Partner Search motivation data.",
+ "URL data.",
+ "Element we wanted user to focus on.",
+ "Progress when viewing an item \\[0-100\\]."
+ ],
+ "enum": [
+ "EVENT_DATA_TYPE_UNSPECIFIED",
+ "ACTION",
+ "AGENCY_ID",
+ "AGENCY_NAME",
+ "AGENCY_PHONE_NUMBER",
+ "AGENCY_WEBSITE",
+ "BUDGET",
+ "CENTER_POINT",
+ "CERTIFICATION",
+ "COMMENT",
+ "COUNTRY",
+ "CURRENCY",
+ "CURRENTLY_VIEWED_AGENCY_ID",
+ "DISTANCE",
+ "DISTANCE_TYPE",
+ "EXAM",
+ "HISTORY_TOKEN",
+ "ID",
+ "INDUSTRY",
+ "INSIGHT_TAG",
+ "LANGUAGE",
+ "LOCATION",
+ "MARKETING_OPT_IN",
+ "QUERY",
+ "SEARCH_START_INDEX",
+ "SERVICE",
+ "SHOW_VOW",
+ "SOLUTION",
+ "TRAFFIC_SOURCE_ID",
+ "TRAFFIC_SUB_ID",
+ "VIEW_PORT",
+ "WEBSITE",
+ "DETAILS",
+ "EXPERIMENT_ID",
+ "GPS_MOTIVATION",
+ "URL",
+ "ELEMENT_FOCUS",
+ "PROGRESS"
+ ],
+ "description": "Data type.",
+ "type": "string"
+ },
+ "values": {
+ "description": "Data values.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ }
+ },
+ "ExamStatus": {
+ "type": "object",
+ "properties": {
+ "lastPassed": {
+ "format": "google-datetime",
+ "description": "The date the user last passed this exam.",
+ "type": "string"
+ },
+ "examType": {
+ "enum": [
+ "CERTIFICATION_EXAM_TYPE_UNSPECIFIED",
+ "CET_ADWORDS_FUNDAMENTALS",
+ "CET_ADWORDS_ADVANCED_SEARCH",
+ "CET_ADWORDS_ADVANCED_DISPLAY",
+ "CET_VIDEO_ADS",
+ "CET_DOUBLECLICK",
+ "CET_ANALYTICS",
+ "CET_SHOPPING",
+ "CET_MOBILE",
+ "CET_DIGITAL_SALES",
+ "CET_MOBILE_SITES"
+ ],
+ "description": "The type of the exam.",
"type": "string",
"enumDescriptions": [
"Unchosen.",
- "Total final score."
- ],
- "enum": [
- "RANK_TYPE_UNSPECIFIED",
- "RT_FINAL_SCORE"
+ "Adwords Fundamentals exam.",
+ "AdWords advanced search exam.",
+ "AdWords advanced display exam.",
+ "VideoAds exam.",
+ "DoubleClick exam.",
+ "Analytics exam.",
+ "Shopping exam.",
+ "Mobile exam.",
+ "Digital Sales exam.",
+ "Mobile Sites exam."
]
},
- "value": {
- "description": "The numerical value of the rank.",
- "format": "double",
- "type": "number"
- }
- },
- "id": "Rank"
- },
- "UserProfile": {
- "description": "The profile information of a Partners user.",
- "type": "object",
- "properties": {
- "emailOptIns": {
- "$ref": "OptIns",
- "description": "The list of opt-ins for the user, related to communication preferences."
- },
- "familyName": {
- "description": "The user's family name.",
- "type": "string"
- },
- "languages": {
- "description": "The list of languages this user understands.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "markets": {
- "description": "A list of ids representing which markets the user was interested in.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "phoneNumber": {
- "description": "The user's phone number.",
- "type": "string"
- },
- "adwordsManagerAccount": {
- "description": "If the user has edit access to multiple accounts, the user can choose the\npreferred account and it is used when a personal account is needed. Can\nbe empty.",
- "format": "int64",
- "type": "string"
- },
- "primaryCountryCode": {
- "description": "The user's primary country, an ISO 2-character code.",
- "type": "string"
- },
- "emailAddress": {
- "description": "The email address the user has selected on the Partners site as primary.",
- "type": "string"
- },
- "channels": {
- "description": "A list of ids representing which channels the user selected they were in.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "profilePublic": {
- "description": "Whether the user's public profile is visible to anyone with the URL.",
+ "passed": {
+ "description": "Whether this exam has been passed and not expired.",
"type": "boolean"
},
- "jobFunctions": {
- "description": "A list of ids represnting which job categories the user selected.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "givenName": {
- "description": "The user's given name.",
+ "taken": {
+ "format": "google-datetime",
+ "description": "The date the user last taken this exam.",
"type": "string"
},
- "address": {
- "description": "The user's mailing address, contains multiple fields.",
- "$ref": "Location"
+ "warning": {
+ "type": "boolean",
+ "description": "Whether this exam is in the state of warning."
},
- "industries": {
- "description": "A list of ids representing which industries the user selected.",
- "type": "array",
- "items": {
- "type": "string"
- }
+ "expiration": {
+ "format": "google-datetime",
+ "description": "Date this exam is due to expire.",
+ "type": "string"
}
},
- "id": "UserProfile"
+ "id": "ExamStatus",
+ "description": "A user's information on a specific exam."
},
- "GetPartnersStatusResponse": {
- "description": "Response message for\nGetPartnersStatus.",
- "type": "object",
+ "ListOffersResponse": {
"properties": {
+ "availableOffers": {
+ "description": "Available Offers to be distributed.",
+ "items": {
+ "$ref": "AvailableOffer"
+ },
+ "type": "array"
+ },
"responseMetadata": {
"$ref": "ResponseMetadata",
"description": "Current response metadata."
+ },
+ "noOfferReason": {
+ "type": "string",
+ "enumDescriptions": [
+ "Unset.",
+ "Not an MCC.",
+ "Offer limit has been reached.",
+ "Ineligible for offers."
+ ],
+ "enum": [
+ "NO_OFFER_REASON_UNSPECIFIED",
+ "NO_OFFER_REASON_NO_MCC",
+ "NO_OFFER_REASON_LIMIT_REACHED",
+ "NO_OFFER_REASON_INELIGIBLE"
+ ],
+ "description": "Reason why no Offers are available."
}
},
- "id": "GetPartnersStatusResponse"
+ "id": "ListOffersResponse",
+ "description": "Response for ListOffer.",
+ "type": "object"
},
- "HistoricalOffer": {
- "description": "Historical information about a Google Partners Offer.",
+ "CountryOfferInfo": {
"type": "object",
"properties": {
- "adwordsUrl": {
- "description": "Client's AdWords page URL.",
+ "spendXAmount": {
+ "description": "(localized) Spend X amount for that country's offer.",
+ "type": "string"
+ },
+ "offerCountryCode": {
+ "description": "Country code for which offer codes may be requested.",
"type": "string"
},
"offerType": {
+ "enum": [
+ "OFFER_TYPE_UNSPECIFIED",
+ "OFFER_TYPE_SPEND_X_GET_Y",
+ "OFFER_TYPE_VIDEO",
+ "OFFER_TYPE_SPEND_MATCH"
+ ],
+ "description": "Type of offer country is eligible for.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unset.",
+ "AdWords spend X get Y.",
+ "Youtube video.",
+ "Spend Match up to Y."
+ ]
+ },
+ "getYAmount": {
+ "type": "string",
+ "description": "(localized) Get Y amount for that country's offer."
+ }
+ },
+ "id": "CountryOfferInfo",
+ "description": "Offer info by country."
+ },
+ "ListCompaniesResponse": {
+ "properties": {
+ "nextPageToken": {
+ "type": "string",
+ "description": "A token to retrieve next page of results.\nPass this value in the `ListCompaniesRequest.page_token` field in the\nsubsequent call to\nListCompanies to retrieve the\nnext page of results."
+ },
+ "responseMetadata": {
+ "description": "Current response metadata.",
+ "$ref": "ResponseMetadata"
+ },
+ "companies": {
+ "description": "The list of companies.",
+ "items": {
+ "$ref": "Company"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListCompaniesResponse",
+ "description": "Response message for\nListCompanies.",
+ "type": "object"
+ },
+ "OfferCustomer": {
+ "description": "Customers qualified for an offer.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the customer.",
+ "type": "string"
+ },
+ "spendXAmount": {
+ "description": "Formatted Spend X amount with currency code.",
+ "type": "string"
+ },
+ "adwordsUrl": {
+ "description": "URL to the customer's AdWords page.",
+ "type": "string"
+ },
+ "creationTime": {
+ "format": "google-datetime",
+ "description": "Time the customer was created.",
+ "type": "string"
+ },
+ "eligibilityDaysLeft": {
+ "format": "int32",
+ "description": "Days the customer is still eligible.",
+ "type": "integer"
+ },
+ "offerType": {
+ "description": "Type of the offer",
+ "type": "string",
"enumDescriptions": [
"Unset.",
"AdWords spend X get Y.",
@@ -1381,21 +1597,929 @@
"OFFER_TYPE_SPEND_X_GET_Y",
"OFFER_TYPE_VIDEO",
"OFFER_TYPE_SPEND_MATCH"
+ ]
+ },
+ "externalCid": {
+ "format": "int64",
+ "description": "External CID for the customer.",
+ "type": "string"
+ },
+ "countryCode": {
+ "description": "Country code of the customer.",
+ "type": "string"
+ },
+ "getYAmount": {
+ "description": "Formatted Get Y amount with currency code.",
+ "type": "string"
+ }
+ },
+ "id": "OfferCustomer"
+ },
+ "CertificationStatus": {
+ "description": "Google Partners certification status.",
+ "type": "object",
+ "properties": {
+ "examStatuses": {
+ "description": "List of certification exam statuses.",
+ "items": {
+ "$ref": "CertificationExamStatus"
+ },
+ "type": "array"
+ },
+ "type": {
+ "description": "The type of the certification.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unchosen.",
+ "AdWords certified.",
+ "YouTube certified.",
+ "VideoAds certified.",
+ "Analytics certified.",
+ "DoubleClick certified.",
+ "Shopping certified.",
+ "Mobile certified.",
+ "Digital sales certified.",
+ "AdWords Search certified.",
+ "AdWords Display certified.",
+ "Mobile Sites certified."
],
- "description": "Type of offer.",
+ "enum": [
+ "CERTIFICATION_TYPE_UNSPECIFIED",
+ "CT_ADWORDS",
+ "CT_YOUTUBE",
+ "CT_VIDEOADS",
+ "CT_ANALYTICS",
+ "CT_DOUBLECLICK",
+ "CT_SHOPPING",
+ "CT_MOBILE",
+ "CT_DIGITAL_SALES",
+ "CT_ADWORDS_SEARCH",
+ "CT_ADWORDS_DISPLAY",
+ "CT_MOBILE_SITES"
+ ]
+ },
+ "userCount": {
+ "format": "int32",
+ "description": "Number of people who are certified,",
+ "type": "integer"
+ },
+ "isCertified": {
+ "description": "Whether certification is passing.",
+ "type": "boolean"
+ }
+ },
+ "id": "CertificationStatus"
+ },
+ "LocalizedCompanyInfo": {
+ "description": "The localized company information.",
+ "type": "object",
+ "properties": {
+ "displayName": {
+ "description": "Localized display name.",
"type": "string"
},
- "senderName": {
- "description": "Name (First + Last) of the partners user to whom the incentive is allocated.",
+ "languageCode": {
+ "description": "Language code of the localized company info, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").",
"type": "string"
},
+ "countryCodes": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "description": "List of country codes for the localized company info."
+ },
+ "overview": {
+ "description": "Localized brief description that the company uses to advertise themselves.",
+ "type": "string"
+ }
+ },
+ "id": "LocalizedCompanyInfo"
+ },
+ "LogUserEventResponse": {
+ "properties": {
+ "responseMetadata": {
+ "description": "Current response metadata.",
+ "$ref": "ResponseMetadata"
+ }
+ },
+ "id": "LogUserEventResponse",
+ "description": "Response message for\nLogUserEvent.",
+ "type": "object"
+ },
+ "ListOffersHistoryResponse": {
+ "description": "Response for ListOfferHistory.",
+ "type": "object",
+ "properties": {
+ "canShowEntireCompany": {
+ "description": "True if the user has the option to show entire company history.",
+ "type": "boolean"
+ },
+ "totalResults": {
+ "format": "int32",
+ "description": "Number of results across all pages.",
+ "type": "integer"
+ },
+ "showingEntireCompany": {
+ "description": "True if this response is showing entire company history.",
+ "type": "boolean"
+ },
+ "offers": {
+ "description": "Historical offers meeting request.",
+ "items": {
+ "$ref": "HistoricalOffer"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.",
+ "type": "string"
+ },
+ "responseMetadata": {
+ "$ref": "ResponseMetadata",
+ "description": "Current response metadata."
+ }
+ },
+ "id": "ListOffersHistoryResponse"
+ },
+ "LogMessageResponse": {
+ "id": "LogMessageResponse",
+ "description": "Response message for\nLogClientMessage.",
+ "type": "object",
+ "properties": {
+ "responseMetadata": {
+ "description": "Current response metadata.",
+ "$ref": "ResponseMetadata"
+ }
+ }
+ },
+ "SpecializationStatus": {
+ "description": "Agency specialization status",
+ "type": "object",
+ "properties": {
+ "badgeSpecialization": {
+ "enum": [
+ "BADGE_SPECIALIZATION_UNKNOWN",
+ "BADGE_SPECIALIZATION_ADWORDS_SEARCH",
+ "BADGE_SPECIALIZATION_ADWORDS_DISPLAY",
+ "BADGE_SPECIALIZATION_ADWORDS_MOBILE",
+ "BADGE_SPECIALIZATION_ADWORDS_VIDEO",
+ "BADGE_SPECIALIZATION_ADWORDS_SHOPPING"
+ ],
+ "description": "The specialization this status is for.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown specialization",
+ "AdWords Search specialization",
+ "AdWords Display specialization",
+ "AdWords Mobile specialization",
+ "AdWords Video specialization",
+ "AdWords Shopping specialization"
+ ]
+ },
+ "badgeSpecializationState": {
+ "description": "State of agency specialization.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown state",
+ "Specialization passed",
+ "Specialization not passed",
+ "Specialization in grace"
+ ],
+ "enum": [
+ "BADGE_SPECIALIZATION_STATE_UNKNOWN",
+ "BADGE_SPECIALIZATION_STATE_PASSED",
+ "BADGE_SPECIALIZATION_STATE_NOT_PASSED",
+ "BADGE_SPECIALIZATION_STATE_IN_GRACE"
+ ]
+ }
+ },
+ "id": "SpecializationStatus"
+ },
+ "Certification": {
+ "description": "A user's information on a specific certification.",
+ "type": "object",
+ "properties": {
+ "certificationType": {
+ "enum": [
+ "CERTIFICATION_TYPE_UNSPECIFIED",
+ "CT_ADWORDS",
+ "CT_YOUTUBE",
+ "CT_VIDEOADS",
+ "CT_ANALYTICS",
+ "CT_DOUBLECLICK",
+ "CT_SHOPPING",
+ "CT_MOBILE",
+ "CT_DIGITAL_SALES",
+ "CT_ADWORDS_SEARCH",
+ "CT_ADWORDS_DISPLAY",
+ "CT_MOBILE_SITES"
+ ],
+ "description": "The type of certification, the area of expertise.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unchosen.",
+ "AdWords certified.",
+ "YouTube certified.",
+ "VideoAds certified.",
+ "Analytics certified.",
+ "DoubleClick certified.",
+ "Shopping certified.",
+ "Mobile certified.",
+ "Digital sales certified.",
+ "AdWords Search certified.",
+ "AdWords Display certified.",
+ "Mobile Sites certified."
+ ]
+ },
+ "lastAchieved": {
+ "format": "google-datetime",
+ "description": "The date the user last achieved certification.",
+ "type": "string"
+ },
+ "warning": {
+ "description": "Whether this certification is in the state of warning.",
+ "type": "boolean"
+ },
+ "expiration": {
+ "format": "google-datetime",
+ "description": "Date this certification is due to expire.",
+ "type": "string"
+ },
+ "achieved": {
+ "description": "Whether this certification has been achieved.",
+ "type": "boolean"
+ }
+ },
+ "id": "Certification"
+ },
+ "User": {
+ "description": "A resource representing a user of the Partners platform.",
+ "type": "object",
+ "properties": {
+ "examStatus": {
+ "description": "The list of exams the user ever taken. For each type of exam, only one\nentry is listed.",
+ "items": {
+ "$ref": "ExamStatus"
+ },
+ "type": "array"
+ },
+ "id": {
+ "type": "string",
+ "description": "The ID of the user."
+ },
+ "publicProfile": {
+ "$ref": "PublicProfile",
+ "description": "Information about a user's external public profile outside Google Partners."
+ },
+ "companyVerificationEmail": {
+ "description": "The email address used by the user used for company verification.\n@OutputOnly",
+ "type": "string"
+ },
+ "certificationStatus": {
+ "items": {
+ "$ref": "Certification"
+ },
+ "type": "array",
+ "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly"
+ },
+ "profile": {
+ "description": "The profile information of a Partners user, contains all the directly\neditable user information.",
+ "$ref": "UserProfile"
+ },
+ "company": {
+ "$ref": "CompanyRelation",
+ "description": "The company that the user is associated with.\nIf not present, the user is not associated with any company."
+ },
+ "lastAccessTime": {
+ "type": "string",
+ "format": "google-datetime",
+ "description": "The most recent time the user interacted with the Partners site.\n@OutputOnly"
+ },
+ "primaryEmails": {
+ "description": "The list of emails the user has access to/can select as primary.\n@OutputOnly",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "availableAdwordsManagerAccounts": {
+ "description": "This is the list of AdWords Manager Accounts the user has edit access to.\nIf the user has edit access to multiple accounts, the user can choose the\npreferred account and we use this when a personal account is needed. Can\nbe empty meaning the user has access to no accounts.\n@OutputOnly",
+ "items": {
+ "$ref": "AdWordsManagerAccountInfo"
+ },
+ "type": "array"
+ },
+ "internalId": {
+ "description": "The internal user ID.\nOnly available for a whitelisted set of api clients.",
+ "type": "string"
+ }
+ },
+ "id": "User"
+ },
+ "ListAnalyticsResponse": {
+ "description": "Response message for\nListAnalytics.",
+ "type": "object",
+ "properties": {
+ "analytics": {
+ "description": "The list of analytics.\nSorted in ascending order of\nAnalytics.event_date.",
+ "items": {
+ "$ref": "Analytics"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve next page of results.\nPass this value in the `ListAnalyticsRequest.page_token` field in the\nsubsequent call to\nListAnalytics to retrieve the\nnext page of results.",
+ "type": "string"
+ },
+ "analyticsSummary": {
+ "description": "Aggregated information across the response's\nanalytics.",
+ "$ref": "AnalyticsSummary"
+ },
+ "responseMetadata": {
+ "$ref": "ResponseMetadata",
+ "description": "Current response metadata."
+ }
+ },
+ "id": "ListAnalyticsResponse"
+ },
+ "ListLeadsResponse": {
+ "description": "Response message for ListLeads.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "A token to retrieve next page of results.\nPass this value in the `ListLeadsRequest.page_token` field in the\nsubsequent call to\nListLeads to retrieve the\nnext page of results.",
+ "type": "string"
+ },
+ "totalSize": {
+ "format": "int32",
+ "description": "The total count of leads for the given company.",
+ "type": "integer"
+ },
+ "responseMetadata": {
+ "$ref": "ResponseMetadata",
+ "description": "Current response metadata."
+ },
+ "leads": {
+ "description": "The list of leads.",
+ "items": {
+ "$ref": "Lead"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListLeadsResponse"
+ },
+ "Company": {
+ "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers.",
+ "type": "object",
+ "properties": {
+ "industries": {
+ "description": "Industries the company can help with.",
+ "items": {
+ "enum": [
+ "INDUSTRY_UNSPECIFIED",
+ "I_AUTOMOTIVE",
+ "I_BUSINESS_TO_BUSINESS",
+ "I_CONSUMER_PACKAGED_GOODS",
+ "I_EDUCATION",
+ "I_FINANCE",
+ "I_HEALTHCARE",
+ "I_MEDIA_AND_ENTERTAINMENT",
+ "I_RETAIL",
+ "I_TECHNOLOGY",
+ "I_TRAVEL"
+ ],
+ "type": "string"
+ },
+ "type": "array",
+ "enumDescriptions": [
+ "Unchosen.",
+ "The automotive industry.",
+ "The business-to-business industry.",
+ "The consumer packaged goods industry.",
+ "The education industry.",
+ "The finance industry.",
+ "The healthcare industry.",
+ "The media and entertainment industry.",
+ "The retail industry.",
+ "The technology industry.",
+ "The travel industry."
+ ]
+ },
+ "additionalWebsites": {
+ "description": "URL of the company's additional websites used to verify the dynamic badges.\nThese are stored as full URLs as entered by the user, but only the TLD will\nbe used for the actual verification.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "websiteUrl": {
+ "description": "URL of the company's website.",
+ "type": "string"
+ },
+ "primaryAdwordsManagerAccountId": {
+ "format": "int64",
+ "description": "The Primary AdWords Manager Account id.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the company.",
+ "type": "string"
+ },
+ "localizedInfos": {
+ "description": "The list of localized info for the company.",
+ "items": {
+ "$ref": "LocalizedCompanyInfo"
+ },
+ "type": "array"
+ },
+ "certificationStatuses": {
+ "description": "The list of Google Partners certification statuses for the company.",
+ "items": {
+ "$ref": "CertificationStatus"
+ },
+ "type": "array"
+ },
+ "id": {
+ "type": "string",
+ "description": "The ID of the company."
+ },
+ "publicProfile": {
+ "description": "Basic information from the company's public profile.",
+ "$ref": "PublicProfile"
+ },
+ "originalMinMonthlyBudget": {
+ "$ref": "Money",
+ "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness."
+ },
+ "primaryLocation": {
+ "$ref": "Location",
+ "description": "The primary location of the company."
+ },
+ "services": {
+ "description": "Services the company can help with.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "SERVICE_UNSPECIFIED",
+ "S_ADVANCED_ADWORDS_SUPPORT",
+ "S_ADVERTISING_ON_GOOGLE",
+ "S_AN_ENHANCED_WEBSITE",
+ "S_AN_ONLINE_MARKETING_PLAN",
+ "S_MOBILE_AND_VIDEO_ADS",
+ "S_MOBILE_WEBSITE_SERVICES"
+ ]
+ },
+ "type": "array",
+ "enumDescriptions": [
+ "Unchosen.",
+ "Help with advanced AdWords support.",
+ "Help with advertising on Google.",
+ "Help with an enhanced website.",
+ "Help with an online marketing plan.",
+ "Help with mobile and video ads.",
+ "Help with mobile websites."
+ ]
+ },
+ "ranks": {
+ "description": "Information related to the ranking of the company within the list of\ncompanies.",
+ "items": {
+ "$ref": "Rank"
+ },
+ "type": "array"
+ },
+ "badgeTier": {
+ "type": "string",
+ "enumDescriptions": [
+ "Tier badge is not set.",
+ "Agency has regular partner badge.",
+ "Agency has premier badge."
+ ],
+ "enum": [
+ "BADGE_TIER_NONE",
+ "BADGE_TIER_REGULAR",
+ "BADGE_TIER_PREMIER"
+ ],
+ "description": "Partner badge tier"
+ },
+ "specializationStatus": {
+ "description": "The list of Google Partners specialization statuses for the company.",
+ "items": {
+ "$ref": "SpecializationStatus"
+ },
+ "type": "array"
+ },
+ "autoApprovalEmailDomains": {
+ "description": "Email domains that allow users with a matching email address to get\nauto-approved for associating with this company.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "companyTypes": {
+ "enumDescriptions": [
+ "Unchosen.",
+ "Handles all aspects of the advertising process.",
+ "Focuses solely on an advertiser's media placement.",
+ "Plans/executes advertising campaigns.",
+ "Like a\nFULL_SERVICE_AGENCY,\nbut specializing in digital.",
+ "Increases visibility in search engine result pages.",
+ "Drives promotional efforts for immediate impact.",
+ "Focuses on bid management, conversion, reporting.",
+ "Establishes favorable relationship with public through low/no-cost\ncommunications.",
+ "Does not manage other company's accounts, manages own marketing programs.",
+ "Full-service AdWords account management for local businesses."
+ ],
+ "description": "Company type labels listed on the company's profile.",
+ "items": {
+ "enum": [
+ "COMPANY_TYPE_UNSPECIFIED",
+ "FULL_SERVICE_AGENCY",
+ "MEDIA_AGENCY",
+ "CREATIVE_AGENCY",
+ "CDIGITAL_AGENCY",
+ "SEM_SEO",
+ "PERFORMANCE_MARKETING",
+ "ADVERTISING_TOOL_DEVELOPMENT",
+ "PR",
+ "SELF_MANAGED",
+ "RESELLER"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "profileStatus": {
+ "description": "The public viewability status of the company's profile.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unchosen.",
+ "Company profile does not show up publicly.",
+ "Company profile can only be viewed by the profile's URL\nand not by Google Partner Search.",
+ "Company profile can be viewed by the profile's URL\nand by Google Partner Search."
+ ],
+ "enum": [
+ "COMPANY_PROFILE_STATUS_UNSPECIFIED",
+ "HIDDEN",
+ "PUBLISHED",
+ "SEARCHABLE"
+ ]
+ },
+ "primaryLanguageCode": {
+ "description": "The primary language code of the company, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").",
+ "type": "string"
+ },
+ "locations": {
+ "items": {
+ "$ref": "Location"
+ },
+ "type": "array",
+ "description": "The list of all company locations.\nIf set, must include the\nprimary_location\nin the list."
+ },
+ "convertedMinMonthlyBudget": {
+ "$ref": "Money",
+ "description": "The minimum monthly budget that the company accepts for partner business,\nconverted to the requested currency code."
+ }
+ },
+ "id": "Company"
+ },
+ "CreateLeadResponse": {
+ "type": "object",
+ "properties": {
+ "recaptchaStatus": {
+ "enumDescriptions": [
+ "Unchosen.",
+ "No reCaptcha validation needed.",
+ "reCaptcha challenge passed.",
+ "reCaptcha challenge failed."
+ ],
+ "enum": [
+ "RECAPTCHA_STATUS_UNSPECIFIED",
+ "RS_NOT_NEEDED",
+ "RS_PASSED",
+ "RS_FAILED"
+ ],
+ "description": "The outcome of \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e\nvalidation.",
+ "type": "string"
+ },
+ "lead": {
+ "$ref": "Lead",
+ "description": "Lead that was created depending on the outcome of\n\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e validation."
+ },
+ "responseMetadata": {
+ "$ref": "ResponseMetadata",
+ "description": "Current response metadata."
+ }
+ },
+ "id": "CreateLeadResponse",
+ "description": "Response message for CreateLead."
+ },
+ "GetCompanyResponse": {
+ "description": "Response message for GetCompany.",
+ "type": "object",
+ "properties": {
+ "company": {
+ "description": "The company.",
+ "$ref": "Company"
+ },
+ "responseMetadata": {
+ "$ref": "ResponseMetadata",
+ "description": "Current response metadata."
+ }
+ },
+ "id": "GetCompanyResponse"
+ },
+ "Location": {
+ "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.",
+ "type": "object",
+ "properties": {
+ "address": {
+ "description": "The single string version of the address.",
+ "type": "string"
+ },
+ "regionCode": {
+ "description": "CLDR (Common Locale Data Repository) region code .",
+ "type": "string"
+ },
+ "dependentLocality": {
+ "description": "Dependent locality or sublocality. Used for UK dependent localities, or\nneighborhoods or boroughs in other locations.",
+ "type": "string"
+ },
+ "postalCode": {
+ "type": "string",
+ "description": "Values are frequently alphanumeric."
+ },
+ "languageCode": {
+ "description": "Language code of the address. Should be in BCP 47 format.",
+ "type": "string"
+ },
+ "sortingCode": {
+ "description": "Use of this code is very country-specific, but will refer to a secondary\nclassification code for sorting mail.",
+ "type": "string"
+ },
+ "addressLine": {
+ "description": "The following address lines represent the most specific part of any\naddress.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "administrativeArea": {
+ "description": "Top-level administrative subdivision of this country.",
+ "type": "string"
+ },
+ "locality": {
+ "description": "Generally refers to the city/town portion of an address.",
+ "type": "string"
+ },
+ "latLng": {
+ "$ref": "LatLng",
+ "description": "The latitude and longitude of the location, in degrees."
+ }
+ },
+ "id": "Location"
+ },
+ "ExamToken": {
+ "description": "A token that allows a user to take an exam.",
+ "type": "object",
+ "properties": {
+ "token": {
+ "type": "string",
+ "description": "The token, only present if the user has access to the exam."
+ },
+ "examType": {
+ "enumDescriptions": [
+ "Unchosen.",
+ "Adwords Fundamentals exam.",
+ "AdWords advanced search exam.",
+ "AdWords advanced display exam.",
+ "VideoAds exam.",
+ "DoubleClick exam.",
+ "Analytics exam.",
+ "Shopping exam.",
+ "Mobile exam.",
+ "Digital Sales exam.",
+ "Mobile Sites exam."
+ ],
+ "enum": [
+ "CERTIFICATION_EXAM_TYPE_UNSPECIFIED",
+ "CET_ADWORDS_FUNDAMENTALS",
+ "CET_ADWORDS_ADVANCED_SEARCH",
+ "CET_ADWORDS_ADVANCED_DISPLAY",
+ "CET_VIDEO_ADS",
+ "CET_DOUBLECLICK",
+ "CET_ANALYTICS",
+ "CET_SHOPPING",
+ "CET_MOBILE",
+ "CET_DIGITAL_SALES",
+ "CET_MOBILE_SITES"
+ ],
+ "description": "The type of the exam the token belongs to.",
+ "type": "string"
+ },
+ "examId": {
+ "type": "string",
+ "format": "int64",
+ "description": "The id of the exam the token is for."
+ }
+ },
+ "id": "ExamToken"
+ },
+ "CertificationExamStatus": {
+ "description": "Status for a Google Partners certification exam.",
+ "type": "object",
+ "properties": {
+ "numberUsersPass": {
+ "format": "int32",
+ "description": "The number of people who have passed the certification exam.",
+ "type": "integer"
+ },
+ "type": {
+ "type": "string",
+ "enumDescriptions": [
+ "Unchosen.",
+ "Adwords Fundamentals exam.",
+ "AdWords advanced search exam.",
+ "AdWords advanced display exam.",
+ "VideoAds exam.",
+ "DoubleClick exam.",
+ "Analytics exam.",
+ "Shopping exam.",
+ "Mobile exam.",
+ "Digital Sales exam.",
+ "Mobile Sites exam."
+ ],
+ "enum": [
+ "CERTIFICATION_EXAM_TYPE_UNSPECIFIED",
+ "CET_ADWORDS_FUNDAMENTALS",
+ "CET_ADWORDS_ADVANCED_SEARCH",
+ "CET_ADWORDS_ADVANCED_DISPLAY",
+ "CET_VIDEO_ADS",
+ "CET_DOUBLECLICK",
+ "CET_ANALYTICS",
+ "CET_SHOPPING",
+ "CET_MOBILE",
+ "CET_DIGITAL_SALES",
+ "CET_MOBILE_SITES"
+ ],
+ "description": "The type of certification exam."
+ }
+ },
+ "id": "CertificationExamStatus"
+ },
+ "OptIns": {
+ "description": "A set of opt-ins for a user.",
+ "type": "object",
+ "properties": {
+ "specialOffers": {
+ "description": "An opt-in about receiving email regarding new features and products.",
+ "type": "boolean"
+ },
+ "performanceSuggestions": {
+ "description": "An opt-in about receiving email with customized AdWords campaign management\ntips.",
+ "type": "boolean"
+ },
+ "phoneContact": {
+ "description": "An opt-in to allow recieivng phone calls about their Partners account.",
+ "type": "boolean"
+ },
+ "physicalMail": {
+ "description": "An opt-in to receive special promotional gifts and material in the mail.",
+ "type": "boolean"
+ },
+ "marketComm": {
+ "description": "An opt-in about receiving email from Partners marketing teams. Includes\nmember-only events and special promotional offers for Google products.",
+ "type": "boolean"
+ }
+ },
+ "id": "OptIns"
+ },
+ "Rank": {
+ "description": "Information related to ranking of results.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "enumDescriptions": [
+ "Unchosen.",
+ "Total final score."
+ ],
+ "enum": [
+ "RANK_TYPE_UNSPECIFIED",
+ "RT_FINAL_SCORE"
+ ],
+ "description": "The type of rank.",
+ "type": "string"
+ },
+ "value": {
+ "format": "double",
+ "description": "The numerical value of the rank.",
+ "type": "number"
+ }
+ },
+ "id": "Rank"
+ },
+ "UserProfile": {
+ "description": "The profile information of a Partners user.",
+ "type": "object",
+ "properties": {
+ "markets": {
+ "description": "A list of ids representing which markets the user was interested in.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "adwordsManagerAccount": {
+ "format": "int64",
+ "description": "If the user has edit access to multiple accounts, the user can choose the\npreferred account and it is used when a personal account is needed. Can\nbe empty.",
+ "type": "string"
+ },
+ "phoneNumber": {
+ "description": "The user's phone number.",
+ "type": "string"
+ },
+ "primaryCountryCode": {
+ "description": "The user's primary country, an ISO 2-character code.",
+ "type": "string"
+ },
+ "emailAddress": {
+ "description": "The email address the user has selected on the Partners site as primary.",
+ "type": "string"
+ },
+ "profilePublic": {
+ "description": "Whether the user's public profile is visible to anyone with the URL.",
+ "type": "boolean"
+ },
+ "channels": {
+ "description": "A list of ids representing which channels the user selected they were in.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "jobFunctions": {
+ "description": "A list of ids represnting which job categories the user selected.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "givenName": {
+ "description": "The user's given name.",
+ "type": "string"
+ },
+ "address": {
+ "$ref": "Location",
+ "description": "The user's mailing address, contains multiple fields."
+ },
+ "industries": {
+ "description": "A list of ids representing which industries the user selected.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "emailOptIns": {
+ "$ref": "OptIns",
+ "description": "The list of opt-ins for the user, related to communication preferences."
+ },
+ "languages": {
+ "description": "The list of languages this user understands.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "familyName": {
+ "description": "The user's family name.",
+ "type": "string"
+ }
+ },
+ "id": "UserProfile"
+ },
+ "GetPartnersStatusResponse": {
+ "description": "Response message for\nGetPartnersStatus.",
+ "type": "object",
+ "properties": {
+ "responseMetadata": {
+ "description": "Current response metadata.",
+ "$ref": "ResponseMetadata"
+ }
+ },
+ "id": "GetPartnersStatusResponse"
+ },
+ "HistoricalOffer": {
+ "description": "Historical information about a Google Partners Offer.",
+ "type": "object",
+ "properties": {
"offerCountryCode": {
"description": "Country Code for the offer country.",
"type": "string"
},
"expirationTime": {
- "description": "Time this offer expires.",
"format": "google-datetime",
+ "description": "Time this offer expires.",
"type": "string"
},
"offerCode": {
@@ -1403,8 +2527,8 @@
"type": "string"
},
"creationTime": {
- "description": "Time offer was first created.",
"format": "google-datetime",
+ "description": "Time offer was first created.",
"type": "string"
},
"clientEmail": {
@@ -1412,7 +2536,6 @@
"type": "string"
},
"status": {
- "description": "Status of the offer.",
"type": "string",
"enumDescriptions": [
"Unset.",
@@ -1427,11 +2550,12 @@
"OFFER_STATUS_REDEEMED",
"OFFER_STATUS_AWARDED",
"OFFER_STATUS_EXPIRED"
- ]
+ ],
+ "description": "Status of the offer."
},
"clientId": {
- "description": "ID of client.",
"format": "int64",
+ "description": "ID of client.",
"type": "string"
},
"clientName": {
@@ -1439,65 +2563,41 @@
"type": "string"
},
"lastModifiedTime": {
- "description": "Time last action was taken.",
"format": "google-datetime",
+ "description": "Time last action was taken.",
+ "type": "string"
+ },
+ "adwordsUrl": {
+ "description": "Client's AdWords page URL.",
+ "type": "string"
+ },
+ "offerType": {
+ "description": "Type of offer.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unset.",
+ "AdWords spend X get Y.",
+ "Youtube video.",
+ "Spend Match up to Y."
+ ],
+ "enum": [
+ "OFFER_TYPE_UNSPECIFIED",
+ "OFFER_TYPE_SPEND_X_GET_Y",
+ "OFFER_TYPE_VIDEO",
+ "OFFER_TYPE_SPEND_MATCH"
+ ]
+ },
+ "senderName": {
+ "description": "Name (First + Last) of the partners user to whom the incentive is allocated.",
"type": "string"
}
},
"id": "HistoricalOffer"
},
- "UserOverrides": {
- "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products.",
- "type": "object",
- "properties": {
- "ipAddress": {
- "description": "IP address to use instead of the user's geo-located IP address.",
- "type": "string"
- },
- "userId": {
- "description": "Logged-in user ID to impersonate instead of the user's ID.",
- "type": "string"
- }
- },
- "id": "UserOverrides"
- },
"LogUserEventRequest": {
- "description": "Request message for\nLogUserEvent.",
"type": "object",
"properties": {
- "requestMetadata": {
- "$ref": "RequestMetadata",
- "description": "Current request metadata."
- },
- "url": {
- "description": "The URL where the event occurred.",
- "type": "string"
- },
- "eventScope": {
- "enumDescriptions": [
- "Unchosen.",
- "Based on visitor.",
- "Based on session.",
- "Based on page visit."
- ],
- "enum": [
- "EVENT_SCOPE_UNSPECIFIED",
- "VISITOR",
- "SESSION",
- "PAGE"
- ],
- "description": "The scope of the event.",
- "type": "string"
- },
- "eventDatas": {
- "description": "List of event data for the event.",
- "type": "array",
- "items": {
- "$ref": "EventData"
- }
- },
"eventCategory": {
- "description": "The category the action belongs to.",
"type": "string",
"enumDescriptions": [
"Unchosen.",
@@ -1534,13 +2634,15 @@
"GOOGLE_PARTNER_PORTAL_COMPANY_PROFILE",
"EXTERNAL_LINKS",
"GOOGLE_PARTNER_LANDING"
- ]
+ ],
+ "description": "The category the action belongs to."
},
"lead": {
"$ref": "Lead",
"description": "Advertiser lead information."
},
"eventAction": {
+ "type": "string",
"enumDescriptions": [
"Unchosen.",
"Advertiser clicked `Find a partner` bottom button.",
@@ -1669,6 +2771,7 @@
"Advertiser viewed VideoAds certificate.",
"Advertiser clicked Shopping certificate help icon.",
"Advertiser clicked VideoAds certificate help icon.",
+ "Advertiser viewed Digital Sales certificate.",
"Clicked `help` at bottom.",
"Clicked `help` at top.",
"Client error occurred.",
@@ -1827,6 +2930,7 @@
"SMB_VIEWED_VIDEO_ADS_CERTIFICATE",
"SMB_VIEWED_SHOPPING_CERTIFICATE",
"SMB_CLICKED_VIDEO_ADS_CERTIFICATE_HELP_ICON",
+ "SMB_VIEWED_DIGITAL_SALES_CERTIFICATE",
"CLICKED_HELP_AT_BOTTOM",
"CLICKED_HELP_AT_TOP",
"CLIENT_ERROR",
@@ -1857,66 +2961,112 @@
"AGENCY_CLICKED_CANCEL_ACCEPT_TOS_BUTTON",
"SMB_ENTERED_WEBSITE_IN_CONTACT_PARTNER_FORM"
],
- "description": "The action that occurred.",
+ "description": "The action that occurred."
+ },
+ "url": {
+ "type": "string",
+ "description": "The URL where the event occurred."
+ },
+ "requestMetadata": {
+ "$ref": "RequestMetadata",
+ "description": "Current request metadata."
+ },
+ "eventDatas": {
+ "description": "List of event data for the event.",
+ "items": {
+ "$ref": "EventData"
+ },
+ "type": "array"
+ },
+ "eventScope": {
+ "enum": [
+ "EVENT_SCOPE_UNSPECIFIED",
+ "VISITOR",
+ "SESSION",
+ "PAGE"
+ ],
+ "description": "The scope of the event.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unchosen.",
+ "Based on visitor.",
+ "Based on session.",
+ "Based on page visit."
+ ]
+ }
+ },
+ "id": "LogUserEventRequest",
+ "description": "Request message for\nLogUserEvent."
+ },
+ "UserOverrides": {
+ "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products.",
+ "type": "object",
+ "properties": {
+ "ipAddress": {
+ "description": "IP address to use instead of the user's geo-located IP address.",
+ "type": "string"
+ },
+ "userId": {
+ "description": "Logged-in user ID to impersonate instead of the user's ID.",
"type": "string"
}
},
- "id": "LogUserEventRequest"
+ "id": "UserOverrides"
},
"AnalyticsDataPoint": {
"description": "Details of the analytics events for a `Company` within a single day.",
"type": "object",
"properties": {
- "eventCount": {
- "description": "Number of times the type of event occurred.\nMeaning depends on context (e.g. profile views, contacts, etc.).",
- "format": "int32",
- "type": "integer"
- },
"eventLocations": {
- "description": "Location information of where these events occurred.",
- "type": "array",
"items": {
"$ref": "LatLng"
- }
+ },
+ "type": "array",
+ "description": "Location information of where these events occurred."
+ },
+ "eventCount": {
+ "format": "int32",
+ "description": "Number of times the type of event occurred.\nMeaning depends on context (e.g. profile views, contacts, etc.).",
+ "type": "integer"
}
},
"id": "AnalyticsDataPoint"
},
"Analytics": {
- "description": "Analytics data for a `Company` within a single day.",
- "type": "object",
"properties": {
- "eventDate": {
- "$ref": "Date",
- "description": "Date on which these events occurred."
+ "searchViews": {
+ "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date.",
+ "$ref": "AnalyticsDataPoint"
},
"profileViews": {
"description": "Instances of users viewing the `Company` profile\non the specified date.",
"$ref": "AnalyticsDataPoint"
},
- "searchViews": {
- "$ref": "AnalyticsDataPoint",
- "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date."
+ "eventDate": {
+ "description": "Date on which these events occurred.",
+ "$ref": "Date"
},
"contacts": {
- "$ref": "AnalyticsDataPoint",
- "description": "Instances of users contacting the `Company`\non the specified date."
+ "description": "Instances of users contacting the `Company`\non the specified date.",
+ "$ref": "AnalyticsDataPoint"
}
},
- "id": "Analytics"
+ "id": "Analytics",
+ "description": "Analytics data for a `Company` within a single day.",
+ "type": "object"
},
"AdWordsManagerAccountInfo": {
"description": "Information about a particular AdWords Manager Account.\nRead more at https://support.google.com/adwords/answer/6139186",
"type": "object",
"properties": {
- "id": {
- "description": "The AdWords Manager Account id.",
- "format": "int64",
- "type": "string"
- },
"customerName": {
"description": "Name of the customer this account represents.",
"type": "string"
+ },
+ "id": {
+ "format": "int64",
+ "description": "The AdWords Manager Account id.",
+ "type": "string"
}
},
"id": "AdWordsManagerAccountInfo"
@@ -1925,65 +3075,106 @@
"description": "Basic information from a public profile.",
"type": "object",
"properties": {
- "displayName": {
- "description": "The display name of the public profile.",
+ "profileImage": {
+ "description": "The URL to the main profile image of the public profile.",
"type": "string"
},
"displayImageUrl": {
"description": "The URL to the main display image of the public profile. Being deprecated.",
"type": "string"
},
- "id": {
- "description": "The ID which can be used to retrieve more details about the public profile.",
+ "displayName": {
+ "description": "The display name of the public profile.",
"type": "string"
},
"url": {
- "description": "The URL of the public profile.",
- "type": "string"
+ "type": "string",
+ "description": "The URL of the public profile."
},
- "profileImage": {
- "description": "The URL to the main profile image of the public profile.",
+ "id": {
+ "description": "The ID which can be used to retrieve more details about the public profile.",
"type": "string"
}
},
"id": "PublicProfile"
},
"ResponseMetadata": {
- "description": "Common data that is in each API response.",
- "type": "object",
"properties": {
"debugInfo": {
- "description": "Debug information about this request.",
- "$ref": "DebugInfo"
+ "$ref": "DebugInfo",
+ "description": "Debug information about this request."
}
},
- "id": "ResponseMetadata"
+ "id": "ResponseMetadata",
+ "description": "Common data that is in each API response.",
+ "type": "object"
},
"RecaptchaChallenge": {
+ "id": "RecaptchaChallenge",
"description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.",
"type": "object",
"properties": {
- "response": {
- "description": "The response to the reCaptcha challenge.",
- "type": "string"
- },
"id": {
"description": "The ID of the reCaptcha challenge.",
"type": "string"
+ },
+ "response": {
+ "type": "string",
+ "description": "The response to the reCaptcha challenge."
}
- },
- "id": "RecaptchaChallenge"
+ }
},
"AvailableOffer": {
"description": "Available Offers to be distributed.",
"type": "object",
"properties": {
+ "description": {
+ "description": "Description of the offer.",
+ "type": "string"
+ },
+ "offerLevel": {
+ "enum": [
+ "OFFER_LEVEL_UNSPECIFIED",
+ "OFFER_LEVEL_DENY_PROBLEM",
+ "OFFER_LEVEL_DENY_CONTRACT",
+ "OFFER_LEVEL_MANUAL",
+ "OFFER_LEVEL_LIMIT_0",
+ "OFFER_LEVEL_LIMIT_5",
+ "OFFER_LEVEL_LIMIT_15",
+ "OFFER_LEVEL_LIMIT_50"
+ ],
+ "description": "Level of this offer.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unset.",
+ "Users/Agencies that have no offers because of a problem.",
+ "Users/Agencies that have no offers due to contractural agreements.",
+ "Users/Agencies that have a manually-configured limit.",
+ "Some Agencies don't get any offers.",
+ "Basic level gets 5 per month.",
+ "Agencies with adequate AHI and spend get 15/month.",
+ "Badged partners (even in grace) get 50 per month."
+ ]
+ },
+ "name": {
+ "description": "Name of the offer.",
+ "type": "string"
+ },
+ "id": {
+ "format": "int64",
+ "description": "ID of this offer.",
+ "type": "string"
+ },
+ "qualifiedCustomersComplete": {
+ "description": "Whether or not the list of qualified customers is definitely complete.",
+ "type": "boolean"
+ },
"countryOfferInfos": {
"description": "Offer info by country.",
- "type": "array",
"items": {
"$ref": "CountryOfferInfo"
- }
+ },
+ "type": "array"
},
"offerType": {
"description": "Type of offer.",
@@ -2002,16 +3193,16 @@
]
},
"maxAccountAge": {
- "description": "The maximum age of an account [in days] to be eligible.",
"format": "int32",
+ "description": "The maximum age of an account [in days] to be eligible.",
"type": "integer"
},
"qualifiedCustomer": {
"description": "Customers who qualify for this offer.",
- "type": "array",
"items": {
"$ref": "OfferCustomer"
- }
+ },
+ "type": "array"
},
"terms": {
"description": "Terms of the offer.",
@@ -2022,50 +3213,9 @@
"type": "boolean"
},
"available": {
- "description": "The number of codes for this offer that are available for distribution.",
"format": "int32",
+ "description": "The number of codes for this offer that are available for distribution.",
"type": "integer"
- },
- "description": {
- "description": "Description of the offer.",
- "type": "string"
- },
- "offerLevel": {
- "enumDescriptions": [
- "Unset.",
- "Users/Agencies that have no offers because of a problem.",
- "Users/Agencies that have no offers due to contractural agreements.",
- "Users/Agencies that have a manually-configured limit.",
- "Some Agencies don't get any offers.",
- "Basic level gets 5 per month.",
- "Agencies with adequate AHI and spend get 15/month.",
- "Badged partners (even in grace) get 50 per month."
- ],
- "enum": [
- "OFFER_LEVEL_UNSPECIFIED",
- "OFFER_LEVEL_DENY_PROBLEM",
- "OFFER_LEVEL_DENY_CONTRACT",
- "OFFER_LEVEL_MANUAL",
- "OFFER_LEVEL_LIMIT_0",
- "OFFER_LEVEL_LIMIT_5",
- "OFFER_LEVEL_LIMIT_15",
- "OFFER_LEVEL_LIMIT_50"
- ],
- "description": "Level of this offer.",
- "type": "string"
- },
- "name": {
- "description": "Name of the offer.",
- "type": "string"
- },
- "qualifiedCustomersComplete": {
- "description": "Whether or not the list of qualified customers is definitely complete.",
- "type": "boolean"
- },
- "id": {
- "description": "ID of this offer.",
- "format": "int64",
- "type": "string"
}
},
"id": "AvailableOffer"
@@ -2075,77 +3225,83 @@
"type": "object",
"properties": {
"latitude": {
- "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].",
"format": "double",
+ "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].",
"type": "number"
},
"longitude": {
- "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].",
"format": "double",
+ "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].",
"type": "number"
}
},
"id": "LatLng"
},
"Money": {
+ "id": "Money",
"description": "Represents an amount of money with its currency type.",
"type": "object",
"properties": {
+ "units": {
+ "format": "int64",
+ "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
+ "type": "string"
+ },
"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",
+ "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.",
"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"
}
- },
- "id": "Money"
+ }
},
"AnalyticsSummary": {
- "description": "Analytics aggregated data for a `Company` for a given date range.",
- "type": "object",
"properties": {
- "contactsCount": {
- "description": "Aggregated number of times users contacted the `Company`\nfor given date range.",
- "format": "int32",
- "type": "integer"
- },
"profileViewsCount": {
- "description": "Aggregated number of profile views for the `Company` for given date range.",
"format": "int32",
+ "description": "Aggregated number of profile views for the `Company` for given date range.",
"type": "integer"
},
"searchViewsCount": {
- "description": "Aggregated number of times users saw the `Company`\nin Google Partners Search results for given date range.",
"format": "int32",
+ "description": "Aggregated number of times users saw the `Company`\nin Google Partners Search results for given date range.",
+ "type": "integer"
+ },
+ "contactsCount": {
+ "format": "int32",
+ "description": "Aggregated number of times users contacted the `Company`\nfor given date range.",
"type": "integer"
}
},
- "id": "AnalyticsSummary"
+ "id": "AnalyticsSummary",
+ "description": "Analytics aggregated data for a `Company` for a given date range.",
+ "type": "object"
},
"LogMessageRequest": {
"description": "Request message for\nLogClientMessage.",
"type": "object",
"properties": {
+ "details": {
+ "description": "Details about the client message.",
+ "type": "string"
+ },
"clientInfo": {
+ "description": "Map of client info, such as URL, browser navigator, browser platform, etc.",
+ "type": "object",
"additionalProperties": {
"type": "string"
- },
- "description": "Map of client info, such as URL, browser navigator, browser platform, etc.",
- "type": "object"
+ }
},
"requestMetadata": {
"$ref": "RequestMetadata",
"description": "Current request metadata."
},
"level": {
+ "description": "Message level of client message.",
+ "type": "string",
"enumDescriptions": [
"Unchosen.",
"Message level for tracing information.",
@@ -2159,54 +3315,34 @@
"ML_INFO",
"ML_WARNING",
"ML_SEVERE"
- ],
- "description": "Message level of client message.",
- "type": "string"
- },
- "details": {
- "description": "Details about the client message.",
- "type": "string"
+ ]
}
},
"id": "LogMessageRequest"
},
"DebugInfo": {
+ "id": "DebugInfo",
"description": "Debug information about this request.",
"type": "object",
"properties": {
- "serviceUrl": {
- "description": "URL of the service that handled this request.",
+ "serverTraceInfo": {
+ "description": "Server-side debug stack trace.",
"type": "string"
},
"serverInfo": {
"description": "Info about the server that serviced this request.",
"type": "string"
},
- "serverTraceInfo": {
- "description": "Server-side debug stack trace.",
+ "serviceUrl": {
+ "description": "URL of the service that handled this request.",
"type": "string"
}
- },
- "id": "DebugInfo"
+ }
},
"Lead": {
"description": "A lead resource that represents an advertiser contact for a `Company`. These\nare usually generated via Google Partner Search (the advertiser portal).",
"type": "object",
"properties": {
- "adwordsCustomerId": {
- "description": "The AdWords Customer ID of the lead.",
- "format": "int64",
- "type": "string"
- },
- "phoneNumber": {
- "description": "Phone number of lead source.",
- "type": "string"
- },
- "createTime": {
- "description": "Timestamp of when this lead was created.",
- "format": "google-datetime",
- "type": "string"
- },
"marketingOptIn": {
"description": "Whether or not the lead signed up for marketing emails",
"type": "boolean"
@@ -2231,35 +3367,34 @@
"description": "First name of lead source.",
"type": "string"
},
- "websiteUrl": {
- "description": "Website URL of lead source.",
- "type": "string"
- },
"languageCode": {
"description": "Language code of the lead's language preference, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").",
"type": "string"
},
+ "websiteUrl": {
+ "type": "string",
+ "description": "Website URL of lead source."
+ },
"gpsMotivations": {
+ "items": {
+ "enum": [
+ "GPS_MOTIVATION_UNSPECIFIED",
+ "GPSM_HELP_WITH_ADVERTISING",
+ "GPSM_HELP_WITH_WEBSITE",
+ "GPSM_NO_WEBSITE"
+ ],
+ "type": "string"
+ },
+ "type": "array",
"enumDescriptions": [
"Unchosen.",
"Advertiser needs help with their advertising.",
"Advertiser needs help with their website.",
"Advertiser does not have a website."
],
- "description": "List of reasons for using Google Partner Search and creating a lead.",
- "type": "array",
- "items": {
- "type": "string",
- "enum": [
- "GPS_MOTIVATION_UNSPECIFIED",
- "GPSM_HELP_WITH_ADVERTISING",
- "GPSM_HELP_WITH_WEBSITE",
- "GPSM_NO_WEBSITE"
- ]
- }
+ "description": "List of reasons for using Google Partner Search and creating a lead."
},
"state": {
- "description": "The lead's state in relation to the company.",
"type": "string",
"enumDescriptions": [
"Unchosen.",
@@ -2274,7 +3409,8 @@
"CONTACTED",
"CLIENT",
"OTHER"
- ]
+ ],
+ "description": "The lead's state in relation to the company."
},
"email": {
"description": "Email address of lead source.",
@@ -2284,28 +3420,34 @@
"description": "Last name of lead source.",
"type": "string"
},
+ "comments": {
+ "description": "Comments lead source gave.",
+ "type": "string"
+ },
"id": {
"description": "ID of the lead.",
"type": "string"
},
- "comments": {
- "description": "Comments lead source gave.",
+ "adwordsCustomerId": {
+ "type": "string",
+ "format": "int64",
+ "description": "The AdWords Customer ID of the lead."
+ },
+ "phoneNumber": {
+ "description": "Phone number of lead source.",
+ "type": "string"
+ },
+ "createTime": {
+ "format": "google-datetime",
+ "description": "Timestamp of when this lead was created.",
"type": "string"
}
},
"id": "Lead"
},
"ListUserStatesResponse": {
- "description": "Response message for\nListUserStates.",
- "type": "object",
"properties": {
- "responseMetadata": {
- "description": "Current response metadata.",
- "$ref": "ResponseMetadata"
- },
"userStates": {
- "description": "User's states.",
- "type": "array",
"items": {
"enum": [
"USER_STATE_UNSPECIFIED",
@@ -2313,13 +3455,21 @@
],
"type": "string"
},
+ "type": "array",
"enumDescriptions": [
"Unchosen.",
"User must pass \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e to\ncontact a Partner via Google Partner Search."
- ]
+ ],
+ "description": "User's states."
+ },
+ "responseMetadata": {
+ "$ref": "ResponseMetadata",
+ "description": "Current response metadata."
}
},
- "id": "ListUserStatesResponse"
+ "id": "ListUserStatesResponse",
+ "description": "Response message for\nListUserStates.",
+ "type": "object"
},
"CompanyRelation": {
"description": "A CompanyRelation resource representing information about a user's\naffiliation and standing with a company in Partners.",
@@ -2329,35 +3479,35 @@
"description": "The internal company ID.\nOnly available for a whitelisted set of api clients.",
"type": "string"
},
+ "specializationStatus": {
+ "description": "The list of Google Partners specialization statuses for the company.",
+ "items": {
+ "$ref": "SpecializationStatus"
+ },
+ "type": "array"
+ },
"badgeTier": {
+ "enum": [
+ "BADGE_TIER_NONE",
+ "BADGE_TIER_REGULAR",
+ "BADGE_TIER_PREMIER"
+ ],
"description": "Whether the company is a Partner.",
"type": "string",
"enumDescriptions": [
"Tier badge is not set.",
"Agency has regular partner badge.",
"Agency has premier badge."
- ],
- "enum": [
- "BADGE_TIER_NONE",
- "BADGE_TIER_REGULAR",
- "BADGE_TIER_PREMIER"
]
},
- "specializationStatus": {
- "description": "The list of Google Partners specialization statuses for the company.",
- "type": "array",
- "items": {
- "$ref": "SpecializationStatus"
- }
- },
- "phoneNumber": {
- "description": "The phone number for the company's primary address.",
- "type": "string"
- },
"website": {
"description": "The website URL for this company.",
"type": "string"
},
+ "phoneNumber": {
+ "description": "The phone number for the company's primary address.",
+ "type": "string"
+ },
"primaryCountryCode": {
"description": "The primary country code of the company.",
"type": "string"
@@ -2375,8 +3525,8 @@
"type": "string"
},
"resolvedTimestamp": {
- "description": "The timestamp when the user was approved.\n@OutputOnly",
"format": "google-datetime",
+ "description": "The timestamp when the user was approved.\n@OutputOnly",
"type": "string"
},
"companyAdmin": {
@@ -2392,11 +3542,16 @@
"type": "string"
},
"creationTime": {
- "description": "The timestamp of when affiliation was requested.\n@OutputOnly",
"format": "google-datetime",
+ "description": "The timestamp of when affiliation was requested.\n@OutputOnly",
"type": "string"
},
+ "primaryAddress": {
+ "description": "The primary location of the company.",
+ "$ref": "Location"
+ },
"state": {
+ "type": "string",
"enumDescriptions": [
"Default unspecified value.",
"User has filled in a request to be associated with an company.\nNow waiting email confirmation.",
@@ -2409,25 +3564,19 @@
"USER_COMPANY_RELATION_STATE_AWAIT_ADMIN",
"USER_COMPANY_RELATION_STATE_APPROVED"
],
- "description": "The state of relationship, in terms of approvals.",
- "type": "string"
- },
- "primaryAddress": {
- "description": "The primary location of the company.",
- "$ref": "Location"
+ "description": "The state of relationship, in terms of approvals."
},
"name": {
"description": "The name (in the company's primary language) for the company.",
"type": "string"
},
"managerAccount": {
- "description": "The AdWords manager account # associated this company.",
"format": "int64",
+ "description": "The AdWords manager account # associated this company.",
"type": "string"
},
"segment": {
"description": "The segment the company is classified as.",
- "type": "array",
"items": {
"type": "string",
"enum": [
@@ -2437,6 +3586,7 @@
"COMPANY_SEGMENT_PPSP"
]
},
+ "type": "array",
"enumDescriptions": [
"Default segment indicates an unknown.",
"Segment representing a selected group of Partners",
@@ -2451,1186 +3601,38 @@
"description": "Represents a whole calendar date, e.g. date of birth. The time of day and\ntime zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. The day may be 0 to\nrepresent a year and month where the day is not significant, e.g. credit card\nexpiration date. The year may be 0 to represent a month and day independent\nof year, e.g. anniversary date. Related types are google.type.TimeOfDay\nand `google.protobuf.Timestamp`.",
"type": "object",
"properties": {
- "year": {
- "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
- "format": "int32",
- "type": "integer"
- },
"day": {
- "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant.",
+ "type": "integer",
"format": "int32",
+ "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant."
+ },
+ "year": {
+ "format": "int32",
+ "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
"type": "integer"
},
"month": {
- "description": "Month of year. Must be from 1 to 12.",
"format": "int32",
+ "description": "Month of year. Must be from 1 to 12.",
"type": "integer"
}
},
"id": "Date"
- },
- "Empty": {
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object",
- "properties": {},
- "id": "Empty"
- },
- "TrafficSource": {
- "description": "Source of traffic for the current request.",
- "type": "object",
- "properties": {
- "trafficSourceId": {
- "description": "Identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- },
- "trafficSubId": {
- "description": "Second level identifier to indicate where the traffic comes from.\nAn identifier has multiple letters created by a team which redirected the\ntraffic to us.",
- "type": "string"
- }
- },
- "id": "TrafficSource"
- },
- "RequestMetadata": {
- "description": "Common data that is in each API request.",
- "type": "object",
- "properties": {
- "userOverrides": {
- "$ref": "UserOverrides",
- "description": "Values to use instead of the user's respective defaults for the current\nrequest. These are only honored by whitelisted products."
- },
- "partnersSessionId": {
- "description": "Google Partners session ID.",
- "type": "string"
- },
- "experimentIds": {
- "description": "Experiment IDs the current request belongs to.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "trafficSource": {
- "$ref": "TrafficSource",
- "description": "Source of traffic for the current request."
- },
- "locale": {
- "description": "Locale to use for the current request.",
- "type": "string"
- }
- },
- "id": "RequestMetadata"
- },
- "CreateLeadRequest": {
- "description": "Request message for CreateLead.",
- "type": "object",
- "properties": {
- "lead": {
- "description": "The lead resource. The `LeadType` must not be `LEAD_TYPE_UNSPECIFIED`\nand either `email` or `phone_number` must be provided.",
- "$ref": "Lead"
- },
- "recaptchaChallenge": {
- "$ref": "RecaptchaChallenge",
- "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info."
- },
- "requestMetadata": {
- "description": "Current request metadata.",
- "$ref": "RequestMetadata"
- }
- },
- "id": "CreateLeadRequest"
- },
- "EventData": {
- "description": "Key value data pair for an event.",
- "type": "object",
- "properties": {
- "key": {
- "enumDescriptions": [
- "Unchosen.",
- "Action data.",
- "Agency ID data.",
- "Agency name data.",
- "Agency phone number data.",
- "Agency website data.",
- "Budget data.",
- "Center-point data.",
- "Certification data.",
- "Comment data.",
- "Country data.",
- "Currency data.",
- "Currently viewed agency ID data.",
- "Distance data.",
- "Distance type data.",
- "Exam data.",
- "History token data.",
- "Identifier data.",
- "Industry data.",
- "Insight tag data.",
- "Language data.",
- "Location data.",
- "Marketing opt-in data.",
- "Query data.",
- "Search start index data.",
- "Service data.",
- "Show vow data.",
- "Solution data.",
- "Traffic source ID data.",
- "Traffic sub ID data.",
- "Viewport data.",
- "Website data.",
- "Details data.",
- "Experiment ID data.",
- "Google Partner Search motivation data.",
- "URL data.",
- "Element we wanted user to focus on.",
- "Progress when viewing an item \\[0-100\\]."
- ],
- "enum": [
- "EVENT_DATA_TYPE_UNSPECIFIED",
- "ACTION",
- "AGENCY_ID",
- "AGENCY_NAME",
- "AGENCY_PHONE_NUMBER",
- "AGENCY_WEBSITE",
- "BUDGET",
- "CENTER_POINT",
- "CERTIFICATION",
- "COMMENT",
- "COUNTRY",
- "CURRENCY",
- "CURRENTLY_VIEWED_AGENCY_ID",
- "DISTANCE",
- "DISTANCE_TYPE",
- "EXAM",
- "HISTORY_TOKEN",
- "ID",
- "INDUSTRY",
- "INSIGHT_TAG",
- "LANGUAGE",
- "LOCATION",
- "MARKETING_OPT_IN",
- "QUERY",
- "SEARCH_START_INDEX",
- "SERVICE",
- "SHOW_VOW",
- "SOLUTION",
- "TRAFFIC_SOURCE_ID",
- "TRAFFIC_SUB_ID",
- "VIEW_PORT",
- "WEBSITE",
- "DETAILS",
- "EXPERIMENT_ID",
- "GPS_MOTIVATION",
- "URL",
- "ELEMENT_FOCUS",
- "PROGRESS"
- ],
- "description": "Data type.",
- "type": "string"
- },
- "values": {
- "description": "Data values.",
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "id": "EventData"
- },
- "ExamStatus": {
- "description": "A user's information on a specific exam.",
- "type": "object",
- "properties": {
- "examType": {
- "description": "The type of the exam.",
- "type": "string",
- "enumDescriptions": [
- "Unchosen.",
- "Adwords Fundamentals exam.",
- "AdWords advanced search exam.",
- "AdWords advanced display exam.",
- "VideoAds exam.",
- "DoubleClick exam.",
- "Analytics exam.",
- "Shopping exam.",
- "Mobile exam.",
- "Digital Sales exam.",
- "Mobile Sites exam."
- ],
- "enum": [
- "CERTIFICATION_EXAM_TYPE_UNSPECIFIED",
- "CET_ADWORDS_FUNDAMENTALS",
- "CET_ADWORDS_ADVANCED_SEARCH",
- "CET_ADWORDS_ADVANCED_DISPLAY",
- "CET_VIDEO_ADS",
- "CET_DOUBLECLICK",
- "CET_ANALYTICS",
- "CET_SHOPPING",
- "CET_MOBILE",
- "CET_DIGITAL_SALES",
- "CET_MOBILE_SITES"
- ]
- },
- "taken": {
- "description": "The date the user last taken this exam.",
- "format": "google-datetime",
- "type": "string"
- },
- "passed": {
- "description": "Whether this exam has been passed and not expired.",
- "type": "boolean"
- },
- "warning": {
- "description": "Whether this exam is in the state of warning.",
- "type": "boolean"
- },
- "expiration": {
- "description": "Date this exam is due to expire.",
- "format": "google-datetime",
- "type": "string"
- },
- "lastPassed": {
- "description": "The date the user last passed this exam.",
- "format": "google-datetime",
- "type": "string"
- }
- },
- "id": "ExamStatus"
- },
- "ListOffersResponse": {
- "description": "Response for ListOffer.",
- "type": "object",
- "properties": {
- "noOfferReason": {
- "enumDescriptions": [
- "Unset.",
- "Not an MCC.",
- "Offer limit has been reached.",
- "Ineligible for offers."
- ],
- "enum": [
- "NO_OFFER_REASON_UNSPECIFIED",
- "NO_OFFER_REASON_NO_MCC",
- "NO_OFFER_REASON_LIMIT_REACHED",
- "NO_OFFER_REASON_INELIGIBLE"
- ],
- "description": "Reason why no Offers are available.",
- "type": "string"
- },
- "availableOffers": {
- "description": "Available Offers to be distributed.",
- "type": "array",
- "items": {
- "$ref": "AvailableOffer"
- }
- },
- "responseMetadata": {
- "$ref": "ResponseMetadata",
- "description": "Current response metadata."
- }
- },
- "id": "ListOffersResponse"
- },
- "CountryOfferInfo": {
- "description": "Offer info by country.",
- "type": "object",
- "properties": {
- "getYAmount": {
- "description": "(localized) Get Y amount for that country's offer.",
- "type": "string"
- },
- "offerCountryCode": {
- "description": "Country code for which offer codes may be requested.",
- "type": "string"
- },
- "spendXAmount": {
- "description": "(localized) Spend X amount for that country's offer.",
- "type": "string"
- },
- "offerType": {
- "enumDescriptions": [
- "Unset.",
- "AdWords spend X get Y.",
- "Youtube video.",
- "Spend Match up to Y."
- ],
- "enum": [
- "OFFER_TYPE_UNSPECIFIED",
- "OFFER_TYPE_SPEND_X_GET_Y",
- "OFFER_TYPE_VIDEO",
- "OFFER_TYPE_SPEND_MATCH"
- ],
- "description": "Type of offer country is eligible for.",
- "type": "string"
- }
- },
- "id": "CountryOfferInfo"
- },
- "ListCompaniesResponse": {
- "description": "Response message for\nListCompanies.",
- "type": "object",
- "properties": {
- "companies": {
- "description": "The list of companies.",
- "type": "array",
- "items": {
- "$ref": "Company"
- }
- },
- "nextPageToken": {
- "description": "A token to retrieve next page of results.\nPass this value in the `ListCompaniesRequest.page_token` field in the\nsubsequent call to\nListCompanies to retrieve the\nnext page of results.",
- "type": "string"
- },
- "responseMetadata": {
- "$ref": "ResponseMetadata",
- "description": "Current response metadata."
- }
- },
- "id": "ListCompaniesResponse"
- },
- "OfferCustomer": {
- "description": "Customers qualified for an offer.",
- "type": "object",
- "properties": {
- "spendXAmount": {
- "description": "Formatted Spend X amount with currency code.",
- "type": "string"
- },
- "adwordsUrl": {
- "description": "URL to the customer's AdWords page.",
- "type": "string"
- },
- "creationTime": {
- "description": "Time the customer was created.",
- "format": "google-datetime",
- "type": "string"
- },
- "eligibilityDaysLeft": {
- "description": "Days the customer is still eligible.",
- "format": "int32",
- "type": "integer"
- },
- "offerType": {
- "description": "Type of the offer",
- "type": "string",
- "enumDescriptions": [
- "Unset.",
- "AdWords spend X get Y.",
- "Youtube video.",
- "Spend Match up to Y."
- ],
- "enum": [
- "OFFER_TYPE_UNSPECIFIED",
- "OFFER_TYPE_SPEND_X_GET_Y",
- "OFFER_TYPE_VIDEO",
- "OFFER_TYPE_SPEND_MATCH"
- ]
- },
- "externalCid": {
- "description": "External CID for the customer.",
- "format": "int64",
- "type": "string"
- },
- "countryCode": {
- "description": "Country code of the customer.",
- "type": "string"
- },
- "getYAmount": {
- "description": "Formatted Get Y amount with currency code.",
- "type": "string"
- },
- "name": {
- "description": "Name of the customer.",
- "type": "string"
- }
- },
- "id": "OfferCustomer"
- },
- "CertificationStatus": {
- "description": "Google Partners certification status.",
- "type": "object",
- "properties": {
- "type": {
- "enumDescriptions": [
- "Unchosen.",
- "AdWords certified.",
- "YouTube certified.",
- "VideoAds certified.",
- "Analytics certified.",
- "DoubleClick certified.",
- "Shopping certified.",
- "Mobile certified.",
- "Digital sales certified.",
- "AdWords Search certified.",
- "AdWords Display certified.",
- "Mobile Sites certified."
- ],
- "enum": [
- "CERTIFICATION_TYPE_UNSPECIFIED",
- "CT_ADWORDS",
- "CT_YOUTUBE",
- "CT_VIDEOADS",
- "CT_ANALYTICS",
- "CT_DOUBLECLICK",
- "CT_SHOPPING",
- "CT_MOBILE",
- "CT_DIGITAL_SALES",
- "CT_ADWORDS_SEARCH",
- "CT_ADWORDS_DISPLAY",
- "CT_MOBILE_SITES"
- ],
- "description": "The type of the certification.",
- "type": "string"
- },
- "userCount": {
- "description": "Number of people who are certified,",
- "format": "int32",
- "type": "integer"
- },
- "isCertified": {
- "description": "Whether certification is passing.",
- "type": "boolean"
- },
- "examStatuses": {
- "description": "List of certification exam statuses.",
- "type": "array",
- "items": {
- "$ref": "CertificationExamStatus"
- }
- }
- },
- "id": "CertificationStatus"
- },
- "LocalizedCompanyInfo": {
- "description": "The localized company information.",
- "type": "object",
- "properties": {
- "languageCode": {
- "description": "Language code of the localized company info, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").",
- "type": "string"
- },
- "countryCodes": {
- "description": "List of country codes for the localized company info.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "overview": {
- "description": "Localized brief description that the company uses to advertise themselves.",
- "type": "string"
- },
- "displayName": {
- "description": "Localized display name.",
- "type": "string"
- }
- },
- "id": "LocalizedCompanyInfo"
- },
- "LogUserEventResponse": {
- "description": "Response message for\nLogUserEvent.",
- "type": "object",
- "properties": {
- "responseMetadata": {
- "$ref": "ResponseMetadata",
- "description": "Current response metadata."
- }
- },
- "id": "LogUserEventResponse"
- },
- "ListOffersHistoryResponse": {
- "description": "Response for ListOfferHistory.",
- "type": "object",
- "properties": {
- "canShowEntireCompany": {
- "description": "True if the user has the option to show entire company history.",
- "type": "boolean"
- },
- "totalResults": {
- "description": "Number of results across all pages.",
- "format": "int32",
- "type": "integer"
- },
- "showingEntireCompany": {
- "description": "True if this response is showing entire company history.",
- "type": "boolean"
- },
- "offers": {
- "description": "Historical offers meeting request.",
- "type": "array",
- "items": {
- "$ref": "HistoricalOffer"
- }
- },
- "nextPageToken": {
- "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.",
- "type": "string"
- },
- "responseMetadata": {
- "description": "Current response metadata.",
- "$ref": "ResponseMetadata"
- }
- },
- "id": "ListOffersHistoryResponse"
- },
- "LogMessageResponse": {
- "description": "Response message for\nLogClientMessage.",
- "type": "object",
- "properties": {
- "responseMetadata": {
- "description": "Current response metadata.",
- "$ref": "ResponseMetadata"
- }
- },
- "id": "LogMessageResponse"
- },
- "SpecializationStatus": {
- "description": "Agency specialization status",
- "type": "object",
- "properties": {
- "badgeSpecialization": {
- "enumDescriptions": [
- "Unknown specialization",
- "AdWords Search specialization",
- "AdWords Display specialization",
- "AdWords Mobile specialization",
- "AdWords Video specialization",
- "AdWords Shopping specialization"
- ],
- "enum": [
- "BADGE_SPECIALIZATION_UNKNOWN",
- "BADGE_SPECIALIZATION_ADWORDS_SEARCH",
- "BADGE_SPECIALIZATION_ADWORDS_DISPLAY",
- "BADGE_SPECIALIZATION_ADWORDS_MOBILE",
- "BADGE_SPECIALIZATION_ADWORDS_VIDEO",
- "BADGE_SPECIALIZATION_ADWORDS_SHOPPING"
- ],
- "description": "The specialization this status is for.",
- "type": "string"
- },
- "badgeSpecializationState": {
- "description": "State of agency specialization.",
- "type": "string",
- "enumDescriptions": [
- "Unknown state",
- "Specialization passed",
- "Specialization not passed",
- "Specialization in grace"
- ],
- "enum": [
- "BADGE_SPECIALIZATION_STATE_UNKNOWN",
- "BADGE_SPECIALIZATION_STATE_PASSED",
- "BADGE_SPECIALIZATION_STATE_NOT_PASSED",
- "BADGE_SPECIALIZATION_STATE_IN_GRACE"
- ]
- }
- },
- "id": "SpecializationStatus"
- },
- "Certification": {
- "description": "A user's information on a specific certification.",
- "type": "object",
- "properties": {
- "lastAchieved": {
- "description": "The date the user last achieved certification.",
- "format": "google-datetime",
- "type": "string"
- },
- "achieved": {
- "description": "Whether this certification has been achieved.",
- "type": "boolean"
- },
- "expiration": {
- "description": "Date this certification is due to expire.",
- "format": "google-datetime",
- "type": "string"
- },
- "warning": {
- "description": "Whether this certification is in the state of warning.",
- "type": "boolean"
- },
- "certificationType": {
- "enumDescriptions": [
- "Unchosen.",
- "AdWords certified.",
- "YouTube certified.",
- "VideoAds certified.",
- "Analytics certified.",
- "DoubleClick certified.",
- "Shopping certified.",
- "Mobile certified.",
- "Digital sales certified.",
- "AdWords Search certified.",
- "AdWords Display certified.",
- "Mobile Sites certified."
- ],
- "enum": [
- "CERTIFICATION_TYPE_UNSPECIFIED",
- "CT_ADWORDS",
- "CT_YOUTUBE",
- "CT_VIDEOADS",
- "CT_ANALYTICS",
- "CT_DOUBLECLICK",
- "CT_SHOPPING",
- "CT_MOBILE",
- "CT_DIGITAL_SALES",
- "CT_ADWORDS_SEARCH",
- "CT_ADWORDS_DISPLAY",
- "CT_MOBILE_SITES"
- ],
- "description": "The type of certification, the area of expertise.",
- "type": "string"
- }
- },
- "id": "Certification"
- },
- "User": {
- "description": "A resource representing a user of the Partners platform.",
- "type": "object",
- "properties": {
- "publicProfile": {
- "$ref": "PublicProfile",
- "description": "Information about a user's external public profile outside Google Partners."
- },
- "certificationStatus": {
- "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly",
- "type": "array",
- "items": {
- "$ref": "Certification"
- }
- },
- "companyVerificationEmail": {
- "description": "The email address used by the user used for company verification.\n@OutputOnly",
- "type": "string"
- },
- "profile": {
- "$ref": "UserProfile",
- "description": "The profile information of a Partners user, contains all the directly\neditable user information."
- },
- "company": {
- "$ref": "CompanyRelation",
- "description": "The company that the user is associated with.\nIf not present, the user is not associated with any company."
- },
- "lastAccessTime": {
- "description": "The most recent time the user interacted with the Partners site.\n@OutputOnly",
- "format": "google-datetime",
- "type": "string"
- },
- "primaryEmails": {
- "description": "The list of emails the user has access to/can select as primary.\n@OutputOnly",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "availableAdwordsManagerAccounts": {
- "description": "This is the list of AdWords Manager Accounts the user has edit access to.\nIf the user has edit access to multiple accounts, the user can choose the\npreferred account and we use this when a personal account is needed. Can\nbe empty meaning the user has access to no accounts.\n@OutputOnly",
- "type": "array",
- "items": {
- "$ref": "AdWordsManagerAccountInfo"
- }
- },
- "internalId": {
- "description": "The internal user ID.\nOnly available for a whitelisted set of api clients.",
- "type": "string"
- },
- "examStatus": {
- "description": "The list of exams the user ever taken. For each type of exam, only one\nentry is listed.",
- "type": "array",
- "items": {
- "$ref": "ExamStatus"
- }
- },
- "id": {
- "description": "The ID of the user.",
- "type": "string"
- }
- },
- "id": "User"
- },
- "ListAnalyticsResponse": {
- "description": "Response message for\nListAnalytics.",
- "type": "object",
- "properties": {
- "analytics": {
- "description": "The list of analytics.\nSorted in ascending order of\nAnalytics.event_date.",
- "type": "array",
- "items": {
- "$ref": "Analytics"
- }
- },
- "nextPageToken": {
- "description": "A token to retrieve next page of results.\nPass this value in the `ListAnalyticsRequest.page_token` field in the\nsubsequent call to\nListAnalytics to retrieve the\nnext page of results.",
- "type": "string"
- },
- "responseMetadata": {
- "$ref": "ResponseMetadata",
- "description": "Current response metadata."
- },
- "analyticsSummary": {
- "$ref": "AnalyticsSummary",
- "description": "Aggregated information across the response's\nanalytics."
- }
- },
- "id": "ListAnalyticsResponse"
- },
- "ListLeadsResponse": {
- "description": "Response message for ListLeads.",
- "type": "object",
- "properties": {
- "nextPageToken": {
- "description": "A token to retrieve next page of results.\nPass this value in the `ListLeadsRequest.page_token` field in the\nsubsequent call to\nListLeads to retrieve the\nnext page of results.",
- "type": "string"
- },
- "responseMetadata": {
- "description": "Current response metadata.",
- "$ref": "ResponseMetadata"
- },
- "totalSize": {
- "description": "The total count of leads for the given company.",
- "format": "int32",
- "type": "integer"
- },
- "leads": {
- "description": "The list of leads.",
- "type": "array",
- "items": {
- "$ref": "Lead"
- }
- }
- },
- "id": "ListLeadsResponse"
- },
- "Company": {
- "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers.",
- "type": "object",
- "properties": {
- "originalMinMonthlyBudget": {
- "$ref": "Money",
- "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness."
- },
- "publicProfile": {
- "$ref": "PublicProfile",
- "description": "Basic information from the company's public profile."
- },
- "services": {
- "description": "Services the company can help with.",
- "type": "array",
- "items": {
- "enum": [
- "SERVICE_UNSPECIFIED",
- "S_ADVANCED_ADWORDS_SUPPORT",
- "S_ADVERTISING_ON_GOOGLE",
- "S_AN_ENHANCED_WEBSITE",
- "S_AN_ONLINE_MARKETING_PLAN",
- "S_MOBILE_AND_VIDEO_ADS",
- "S_MOBILE_WEBSITE_SERVICES"
- ],
- "type": "string"
- },
- "enumDescriptions": [
- "Unchosen.",
- "Help with advanced AdWords support.",
- "Help with advertising on Google.",
- "Help with an enhanced website.",
- "Help with an online marketing plan.",
- "Help with mobile and video ads.",
- "Help with mobile websites."
- ]
- },
- "primaryLocation": {
- "$ref": "Location",
- "description": "The primary location of the company."
- },
- "ranks": {
- "description": "Information related to the ranking of the company within the list of\ncompanies.",
- "type": "array",
- "items": {
- "$ref": "Rank"
- }
- },
- "badgeTier": {
- "enumDescriptions": [
- "Tier badge is not set.",
- "Agency has regular partner badge.",
- "Agency has premier badge."
- ],
- "enum": [
- "BADGE_TIER_NONE",
- "BADGE_TIER_REGULAR",
- "BADGE_TIER_PREMIER"
- ],
- "description": "Partner badge tier",
- "type": "string"
- },
- "specializationStatus": {
- "description": "The list of Google Partners specialization statuses for the company.",
- "type": "array",
- "items": {
- "$ref": "SpecializationStatus"
- }
- },
- "autoApprovalEmailDomains": {
- "description": "Email domains that allow users with a matching email address to get\nauto-approved for associating with this company.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "companyTypes": {
- "description": "Company type labels listed on the company's profile.",
- "type": "array",
- "items": {
- "enum": [
- "COMPANY_TYPE_UNSPECIFIED",
- "FULL_SERVICE_AGENCY",
- "MEDIA_AGENCY",
- "CREATIVE_AGENCY",
- "CDIGITAL_AGENCY",
- "SEM_SEO",
- "PERFORMANCE_MARKETING",
- "ADVERTISING_TOOL_DEVELOPMENT",
- "PR",
- "SELF_MANAGED",
- "RESELLER"
- ],
- "type": "string"
- },
- "enumDescriptions": [
- "Unchosen.",
- "Handles all aspects of the advertising process.",
- "Focuses solely on an advertiser's media placement.",
- "Plans/executes advertising campaigns.",
- "Like a\nFULL_SERVICE_AGENCY,\nbut specializing in digital.",
- "Increases visibility in search engine result pages.",
- "Drives promotional efforts for immediate impact.",
- "Focuses on bid management, conversion, reporting.",
- "Establishes favorable relationship with public through low/no-cost\ncommunications.",
- "Does not manage other company's accounts, manages own marketing programs.",
- "Full-service AdWords account management for local businesses."
- ]
- },
- "profileStatus": {
- "enumDescriptions": [
- "Unchosen.",
- "Company profile does not show up publicly.",
- "Company profile can only be viewed by the profile's URL\nand not by Google Partner Search.",
- "Company profile can be viewed by the profile's URL\nand by Google Partner Search."
- ],
- "enum": [
- "COMPANY_PROFILE_STATUS_UNSPECIFIED",
- "HIDDEN",
- "PUBLISHED",
- "SEARCHABLE"
- ],
- "description": "The public viewability status of the company's profile.",
- "type": "string"
- },
- "primaryLanguageCode": {
- "description": "The primary language code of the company, as defined by\n\u003ca href=\"https://tools.ietf.org/html/bcp47\"\u003eBCP 47\u003c/a\u003e\n(IETF BCP 47, \"Tags for Identifying Languages\").",
- "type": "string"
- },
- "locations": {
- "description": "The list of all company locations.\nIf set, must include the\nprimary_location\nin the list.",
- "type": "array",
- "items": {
- "$ref": "Location"
- }
- },
- "convertedMinMonthlyBudget": {
- "description": "The minimum monthly budget that the company accepts for partner business,\nconverted to the requested currency code.",
- "$ref": "Money"
- },
- "industries": {
- "enumDescriptions": [
- "Unchosen.",
- "The automotive industry.",
- "The business-to-business industry.",
- "The consumer packaged goods industry.",
- "The education industry.",
- "The finance industry.",
- "The healthcare industry.",
- "The media and entertainment industry.",
- "The retail industry.",
- "The technology industry.",
- "The travel industry."
- ],
- "description": "Industries the company can help with.",
- "type": "array",
- "items": {
- "type": "string",
- "enum": [
- "INDUSTRY_UNSPECIFIED",
- "I_AUTOMOTIVE",
- "I_BUSINESS_TO_BUSINESS",
- "I_CONSUMER_PACKAGED_GOODS",
- "I_EDUCATION",
- "I_FINANCE",
- "I_HEALTHCARE",
- "I_MEDIA_AND_ENTERTAINMENT",
- "I_RETAIL",
- "I_TECHNOLOGY",
- "I_TRAVEL"
- ]
- }
- },
- "websiteUrl": {
- "description": "URL of the company's website.",
- "type": "string"
- },
- "additionalWebsites": {
- "description": "URL of the company's additional websites used to verify the dynamic badges.\nThese are stored as full URLs as entered by the user, but only the TLD will\nbe used for the actual verification.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "primaryAdwordsManagerAccountId": {
- "description": "The Primary AdWords Manager Account id.",
- "format": "int64",
- "type": "string"
- },
- "name": {
- "description": "The name of the company.",
- "type": "string"
- },
- "localizedInfos": {
- "description": "The list of localized info for the company.",
- "type": "array",
- "items": {
- "$ref": "LocalizedCompanyInfo"
- }
- },
- "id": {
- "description": "The ID of the company.",
- "type": "string"
- },
- "certificationStatuses": {
- "description": "The list of Google Partners certification statuses for the company.",
- "type": "array",
- "items": {
- "$ref": "CertificationStatus"
- }
- }
- },
- "id": "Company"
- },
- "CreateLeadResponse": {
- "description": "Response message for CreateLead.",
- "type": "object",
- "properties": {
- "lead": {
- "$ref": "Lead",
- "description": "Lead that was created depending on the outcome of\n\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e validation."
- },
- "recaptchaStatus": {
- "enumDescriptions": [
- "Unchosen.",
- "No reCaptcha validation needed.",
- "reCaptcha challenge passed.",
- "reCaptcha challenge failed."
- ],
- "enum": [
- "RECAPTCHA_STATUS_UNSPECIFIED",
- "RS_NOT_NEEDED",
- "RS_PASSED",
- "RS_FAILED"
- ],
- "description": "The outcome of \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e\nvalidation.",
- "type": "string"
- },
- "responseMetadata": {
- "$ref": "ResponseMetadata",
- "description": "Current response metadata."
- }
- },
- "id": "CreateLeadResponse"
- },
- "GetCompanyResponse": {
- "description": "Response message for GetCompany.",
- "type": "object",
- "properties": {
- "company": {
- "$ref": "Company",
- "description": "The company."
- },
- "responseMetadata": {
- "description": "Current response metadata.",
- "$ref": "ResponseMetadata"
- }
- },
- "id": "GetCompanyResponse"
- },
- "Location": {
- "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.",
- "type": "object",
- "properties": {
- "latLng": {
- "description": "The latitude and longitude of the location, in degrees.",
- "$ref": "LatLng"
- },
- "address": {
- "description": "The single string version of the address.",
- "type": "string"
- },
- "regionCode": {
- "description": "CLDR (Common Locale Data Repository) region code .",
- "type": "string"
- },
- "dependentLocality": {
- "description": "Dependent locality or sublocality. Used for UK dependent localities, or\nneighborhoods or boroughs in other locations.",
- "type": "string"
- },
- "postalCode": {
- "description": "Values are frequently alphanumeric.",
- "type": "string"
- },
- "sortingCode": {
- "description": "Use of this code is very country-specific, but will refer to a secondary\nclassification code for sorting mail.",
- "type": "string"
- },
- "languageCode": {
- "description": "Language code of the address. Should be in BCP 47 format.",
- "type": "string"
- },
- "addressLine": {
- "description": "The following address lines represent the most specific part of any\naddress.",
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "locality": {
- "description": "Generally refers to the city/town portion of an address.",
- "type": "string"
- },
- "administrativeArea": {
- "description": "Top-level administrative subdivision of this country.",
- "type": "string"
- }
- },
- "id": "Location"
- },
- "CertificationExamStatus": {
- "description": "Status for a Google Partners certification exam.",
- "type": "object",
- "properties": {
- "numberUsersPass": {
- "description": "The number of people who have passed the certification exam.",
- "format": "int32",
- "type": "integer"
- },
- "type": {
- "description": "The type of certification exam.",
- "type": "string",
- "enumDescriptions": [
- "Unchosen.",
- "Adwords Fundamentals exam.",
- "AdWords advanced search exam.",
- "AdWords advanced display exam.",
- "VideoAds exam.",
- "DoubleClick exam.",
- "Analytics exam.",
- "Shopping exam.",
- "Mobile exam.",
- "Digital Sales exam.",
- "Mobile Sites exam."
- ],
- "enum": [
- "CERTIFICATION_EXAM_TYPE_UNSPECIFIED",
- "CET_ADWORDS_FUNDAMENTALS",
- "CET_ADWORDS_ADVANCED_SEARCH",
- "CET_ADWORDS_ADVANCED_DISPLAY",
- "CET_VIDEO_ADS",
- "CET_DOUBLECLICK",
- "CET_ANALYTICS",
- "CET_SHOPPING",
- "CET_MOBILE",
- "CET_DIGITAL_SALES",
- "CET_MOBILE_SITES"
- ]
- }
- },
- "id": "CertificationExamStatus"
- },
- "ExamToken": {
- "description": "A token that allows a user to take an exam.",
- "type": "object",
- "properties": {
- "examId": {
- "description": "The id of the exam the token is for.",
- "format": "int64",
- "type": "string"
- },
- "token": {
- "description": "The token, only present if the user has access to the exam.",
- "type": "string"
- },
- "examType": {
- "enumDescriptions": [
- "Unchosen.",
- "Adwords Fundamentals exam.",
- "AdWords advanced search exam.",
- "AdWords advanced display exam.",
- "VideoAds exam.",
- "DoubleClick exam.",
- "Analytics exam.",
- "Shopping exam.",
- "Mobile exam.",
- "Digital Sales exam.",
- "Mobile Sites exam."
- ],
- "enum": [
- "CERTIFICATION_EXAM_TYPE_UNSPECIFIED",
- "CET_ADWORDS_FUNDAMENTALS",
- "CET_ADWORDS_ADVANCED_SEARCH",
- "CET_ADWORDS_ADVANCED_DISPLAY",
- "CET_VIDEO_ADS",
- "CET_DOUBLECLICK",
- "CET_ANALYTICS",
- "CET_SHOPPING",
- "CET_MOBILE",
- "CET_DIGITAL_SALES",
- "CET_MOBILE_SITES"
- ],
- "description": "The type of the exam the token belongs to.",
- "type": "string"
- }
- },
- "id": "ExamToken"
- },
- "OptIns": {
- "description": "A set of opt-ins for a user.",
- "type": "object",
- "properties": {
- "marketComm": {
- "description": "An opt-in about receiving email from Partners marketing teams. Includes\nmember-only events and special promotional offers for Google products.",
- "type": "boolean"
- },
- "specialOffers": {
- "description": "An opt-in about receiving email regarding new features and products.",
- "type": "boolean"
- },
- "performanceSuggestions": {
- "description": "An opt-in about receiving email with customized AdWords campaign management\ntips.",
- "type": "boolean"
- },
- "physicalMail": {
- "description": "An opt-in to receive special promotional gifts and material in the mail.",
- "type": "boolean"
- },
- "phoneContact": {
- "description": "An opt-in to allow recieivng phone calls about their Partners account.",
- "type": "boolean"
- }
- },
- "id": "OptIns"
}
},
- "icons": {
- "x32": "http://www.google.com/images/icons/product/search-32.gif",
- "x16": "http://www.google.com/images/icons/product/search-16.gif"
- },
"protocol": "rest",
- "version": "v2"
+ "icons": {
+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ },
+ "version": "v2",
+ "baseUrl": "https://partners.googleapis.com/",
+ "canonicalName": "Partners",
+ "servicePath": "",
+ "description": "Searches certified companies and creates contact leads with them, and also audits the usage of clients.",
+ "kind": "discovery#restDescription",
+ "rootUrl": "https://partners.googleapis.com/",
+ "basePath": "",
+ "ownerDomain": "google.com",
+ "name": "partners"
}
diff --git a/vendor/google.golang.org/api/partners/v2/partners-gen.go b/vendor/google.golang.org/api/partners/v2/partners-gen.go
index fc06f7d..9069841 100644
--- a/vendor/google.golang.org/api/partners/v2/partners-gen.go
+++ b/vendor/google.golang.org/api/partners/v2/partners-gen.go
@@ -2366,6 +2366,8 @@ type LogUserEventRequest struct {
// certificate help icon.
// "SMB_CLICKED_VIDEO_ADS_CERTIFICATE_HELP_ICON" - Advertiser clicked
// VideoAds certificate help icon.
+ // "SMB_VIEWED_DIGITAL_SALES_CERTIFICATE" - Advertiser viewed Digital
+ // Sales certificate.
// "CLICKED_HELP_AT_BOTTOM" - Clicked `help` at bottom.
// "CLICKED_HELP_AT_TOP" - Clicked `help` at top.
// "CLIENT_ERROR" - Client error occurred.
diff --git a/vendor/google.golang.org/api/people/v1/people-api.json b/vendor/google.golang.org/api/people/v1/people-api.json
index 770f4b3..b3a399e 100644
--- a/vendor/google.golang.org/api/people/v1/people-api.json
+++ b/vendor/google.golang.org/api/people/v1/people-api.json
@@ -1,156 +1,603 @@
{
- "revision": "20170704",
- "documentationLink": "https://developers.google.com/people/",
- "id": "people:v1",
- "discoveryVersion": "v1",
- "version_module": "True",
- "schemas": {
- "CoverPhoto": {
- "description": "A person's read-only cover photo. A large image shown on the person's\nprofile page that represents who they are or what they care about.",
- "type": "object",
- "properties": {
- "default": {
- "description": "True if the cover photo is the default cover photo;\nfalse if the cover photo is a user-provided cover photo.",
- "type": "boolean"
+ "canonicalName": "People Service",
+ "auth": {
+ "oauth2": {
+ "scopes": {
+ "https://www.googleapis.com/auth/user.birthday.read": {
+ "description": "View your complete date of birth"
},
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the cover photo."
+ "https://www.googleapis.com/auth/contacts.readonly": {
+ "description": "View your contacts"
},
- "url": {
- "description": "The URL of the cover photo.",
- "type": "string"
+ "https://www.googleapis.com/auth/plus.login": {
+ "description": "Know the list of people in your circles, your age range, and language"
+ },
+ "https://www.googleapis.com/auth/userinfo.profile": {
+ "description": "View your basic profile info"
+ },
+ "https://www.googleapis.com/auth/user.emails.read": {
+ "description": "View your email addresses"
+ },
+ "https://www.googleapis.com/auth/contacts": {
+ "description": "Manage your contacts"
+ },
+ "https://www.googleapis.com/auth/user.addresses.read": {
+ "description": "View your street addresses"
+ },
+ "https://www.googleapis.com/auth/user.phonenumbers.read": {
+ "description": "View your phone numbers"
+ },
+ "https://www.googleapis.com/auth/userinfo.email": {
+ "description": "View your email address"
+ }
+ }
+ }
+ },
+ "rootUrl": "https://people.googleapis.com/",
+ "ownerDomain": "google.com",
+ "name": "people",
+ "batchPath": "batch",
+ "title": "Google People API",
+ "ownerName": "Google",
+ "resources": {
+ "people": {
+ "methods": {
+ "getBatchGet": {
+ "flatPath": "v1/people:batchGet",
+ "id": "people.people.getBatchGet",
+ "path": "v1/people:batchGet",
+ "description": "Provides information about a list of specific people by specifying a list\nof requested resource names. Use `people/me` to indicate the authenticated\nuser.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.",
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "GetPeopleResponse"
+ },
+ "parameterOrder": [],
+ "parameters": {
+ "personFields": {
+ "location": "query",
+ "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls",
+ "format": "google-fieldmask",
+ "type": "string"
+ },
+ "requestMask.includeField": {
+ "location": "query",
+ "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.",
+ "format": "google-fieldmask",
+ "type": "string"
+ },
+ "resourceNames": {
+ "description": "The resource names of the people to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).\n\nYou can include up to 50 resource names in one request.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts",
+ "https://www.googleapis.com/auth/contacts.readonly",
+ "https://www.googleapis.com/auth/plus.login",
+ "https://www.googleapis.com/auth/user.addresses.read",
+ "https://www.googleapis.com/auth/user.birthday.read",
+ "https://www.googleapis.com/auth/user.emails.read",
+ "https://www.googleapis.com/auth/user.phonenumbers.read",
+ "https://www.googleapis.com/auth/userinfo.email",
+ "https://www.googleapis.com/auth/userinfo.profile"
+ ]
+ },
+ "get": {
+ "description": "Provides information about a person by specifying a resource name. Use\n`people/me` to indicate the authenticated user.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.",
+ "response": {
+ "$ref": "Person"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "resourceName": {
+ "location": "path",
+ "description": "The resource name of the person to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).",
+ "required": true,
+ "type": "string",
+ "pattern": "^people/[^/]+$"
+ },
+ "personFields": {
+ "location": "query",
+ "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls",
+ "format": "google-fieldmask",
+ "type": "string"
+ },
+ "requestMask.includeField": {
+ "location": "query",
+ "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.",
+ "format": "google-fieldmask",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts",
+ "https://www.googleapis.com/auth/contacts.readonly",
+ "https://www.googleapis.com/auth/plus.login",
+ "https://www.googleapis.com/auth/user.addresses.read",
+ "https://www.googleapis.com/auth/user.birthday.read",
+ "https://www.googleapis.com/auth/user.emails.read",
+ "https://www.googleapis.com/auth/user.phonenumbers.read",
+ "https://www.googleapis.com/auth/userinfo.email",
+ "https://www.googleapis.com/auth/userinfo.profile"
+ ],
+ "flatPath": "v1/people/{peopleId}",
+ "path": "v1/{+resourceName}",
+ "id": "people.people.get"
+ },
+ "updateContact": {
+ "request": {
+ "$ref": "Person"
+ },
+ "description": "Update contact data for an existing contact person. Any non-contact data\nwill not be modified.\n\nThe request throws a 400 error if `updatePersonFields` is not specified.\n\u003cbr\u003e\nThe request throws a 400 error if `person.metadata.sources` is not\nspecified for the contact to be updated.\n\u003cbr\u003e\nThe request throws a 412 error if `person.metadata.sources.etag` is\ndifferent than the contact's etag, which indicates the contact has changed\nsince its data was read. Clients should get the latest person and re-apply\ntheir updates to the latest person.",
+ "httpMethod": "PATCH",
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "response": {
+ "$ref": "Person"
+ },
+ "parameters": {
+ "updatePersonFields": {
+ "location": "query",
+ "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* braggingRights\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* skills\n* urls",
+ "format": "google-fieldmask",
+ "type": "string"
+ },
+ "resourceName": {
+ "pattern": "^people/[^/]+$",
+ "location": "path",
+ "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts"
+ ],
+ "flatPath": "v1/people/{peopleId}:updateContact",
+ "id": "people.people.updateContact",
+ "path": "v1/{+resourceName}:updateContact"
+ },
+ "createContact": {
+ "description": "Create a new contact and return the person resource for that contact.",
+ "request": {
+ "$ref": "Person"
+ },
+ "response": {
+ "$ref": "Person"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts"
+ ],
+ "parameters": {
+ "parent": {
+ "description": "The resource name of the owning person resource.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v1/people:createContact",
+ "path": "v1/people:createContact",
+ "id": "people.people.createContact"
+ },
+ "deleteContact": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts"
+ ],
+ "parameters": {
+ "resourceName": {
+ "location": "path",
+ "description": "The resource name of the contact to delete.",
+ "required": true,
+ "type": "string",
+ "pattern": "^people/[^/]+$"
+ }
+ },
+ "flatPath": "v1/people/{peopleId}:deleteContact",
+ "path": "v1/{+resourceName}:deleteContact",
+ "id": "people.people.deleteContact",
+ "description": "Delete a contact person. Any non-contact data will not be deleted."
}
},
- "id": "CoverPhoto"
- },
- "Interest": {
- "description": "One of the person's interests.",
- "type": "object",
- "properties": {
- "metadata": {
- "description": "Metadata about the interest.",
- "$ref": "FieldMetadata"
- },
- "value": {
- "description": "The interest; for example, `stargazing`.",
- "type": "string"
- }
- },
- "id": "Interest"
- },
- "Nickname": {
- "id": "Nickname",
- "description": "A person's nickname.",
- "type": "object",
- "properties": {
- "type": {
- "type": "string",
- "enumDescriptions": [
- "Generic nickname.",
- "Maiden name or birth family name. Used when the person's family name has\nchanged as a result of marriage.",
- "Initials.",
- "Google+ profile nickname.",
- "A professional affiliation or other name; for example, `Dr. Smith.`"
- ],
- "enum": [
- "DEFAULT",
- "MAIDEN_NAME",
- "INITIALS",
- "GPLUS",
- "OTHER_NAME"
- ],
- "description": "The type of the nickname."
- },
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the nickname."
- },
- "value": {
- "description": "The nickname.",
- "type": "string"
+ "resources": {
+ "connections": {
+ "methods": {
+ "list": {
+ "flatPath": "v1/people/{peopleId}/connections",
+ "path": "v1/{+resourceName}/connections",
+ "id": "people.people.connections.list",
+ "description": "Provides a list of the authenticated user's contacts merged with any\nconnected profiles.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.",
+ "response": {
+ "$ref": "ListConnectionsResponse"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts",
+ "https://www.googleapis.com/auth/contacts.readonly"
+ ],
+ "parameters": {
+ "requestSyncToken": {
+ "description": "Whether the response should include a sync token, which can be used to get\nall changes since the last request.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "pageToken": {
+ "description": "The token of the page to be returned.",
+ "type": "string",
+ "location": "query"
+ },
+ "resourceName": {
+ "description": "The resource name to return connections for. Only `people/me` is valid.",
+ "required": true,
+ "type": "string",
+ "pattern": "^people/[^/]+$",
+ "location": "path"
+ },
+ "pageSize": {
+ "location": "query",
+ "description": "The number of connections to include in the response. Valid values are\nbetween 1 and 2000, inclusive. Defaults to 100.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "requestMask.includeField": {
+ "location": "query",
+ "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.",
+ "format": "google-fieldmask",
+ "type": "string"
+ },
+ "syncToken": {
+ "description": "A sync token, returned by a previous call to `people.connections.list`.\nOnly resources changed since the sync token was created will be returned.",
+ "type": "string",
+ "location": "query"
+ },
+ "personFields": {
+ "location": "query",
+ "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls",
+ "format": "google-fieldmask",
+ "type": "string"
+ },
+ "sortOrder": {
+ "location": "query",
+ "enum": [
+ "LAST_MODIFIED_ASCENDING",
+ "FIRST_NAME_ASCENDING",
+ "LAST_NAME_ASCENDING"
+ ],
+ "description": "The order in which the connections should be sorted. Defaults to\n`LAST_MODIFIED_ASCENDING`.",
+ "type": "string"
+ }
+ }
+ }
+ }
}
}
},
- "EmailAddress": {
- "type": "object",
- "properties": {
- "formattedType": {
- "description": "The read-only type of the email address translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.",
- "type": "string"
+ "contactGroups": {
+ "methods": {
+ "update": {
+ "flatPath": "v1/contactGroups/{contactGroupsId}",
+ "path": "v1/{+resourceName}",
+ "id": "people.contactGroups.update",
+ "request": {
+ "$ref": "UpdateContactGroupRequest"
+ },
+ "description": "Update the name of an existing contact group owned by the authenticated\nuser.",
+ "response": {
+ "$ref": "ContactGroup"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "PUT",
+ "parameters": {
+ "resourceName": {
+ "location": "path",
+ "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/`\u003cvar\u003econtact_group_id\u003c/var\u003e.",
+ "required": true,
+ "type": "string",
+ "pattern": "^contactGroups/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts"
+ ]
},
- "displayName": {
- "description": "The display name of the email.",
- "type": "string"
+ "delete": {
+ "description": "Delete an existing contact group owned by the authenticated user by\nspecifying a contact group resource name.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "deleteContacts": {
+ "location": "query",
+ "description": "Set to true to also delete the contacts in the specified group.",
+ "type": "boolean"
+ },
+ "resourceName": {
+ "description": "The resource name of the contact group to delete.",
+ "required": true,
+ "type": "string",
+ "pattern": "^contactGroups/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts"
+ ],
+ "flatPath": "v1/contactGroups/{contactGroupsId}",
+ "path": "v1/{+resourceName}",
+ "id": "people.contactGroups.delete"
},
- "type": {
- "type": "string",
- "description": "The type of the email address. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `other`"
+ "batchGet": {
+ "description": "Get a list of contact groups owned by the authenticated user by specifying\na list of contact group resource names.",
+ "response": {
+ "$ref": "BatchGetContactGroupsResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts",
+ "https://www.googleapis.com/auth/contacts.readonly"
+ ],
+ "parameters": {
+ "maxMembers": {
+ "location": "query",
+ "description": "Specifies the maximum number of members to return for each group.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "resourceNames": {
+ "description": "The resource names of the contact groups to get.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ }
+ },
+ "flatPath": "v1/contactGroups:batchGet",
+ "path": "v1/contactGroups:batchGet",
+ "id": "people.contactGroups.batchGet"
},
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the email address."
+ "list": {
+ "description": "List all contact groups owned by the authenticated user. Members of the\ncontact groups are not populated.",
+ "response": {
+ "$ref": "ListContactGroupsResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts",
+ "https://www.googleapis.com/auth/contacts.readonly"
+ ],
+ "parameters": {
+ "syncToken": {
+ "location": "query",
+ "description": "A sync token, returned by a previous call to `contactgroups.list`.\nOnly resources changed since the sync token was created will be returned.",
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "The next_page_token value returned from a previous call to\n[ListContactGroups](/people/api/rest/v1/contactgroups/list).\nRequests the next page of resources.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "location": "query",
+ "description": "The maximum number of resources to return.",
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "flatPath": "v1/contactGroups",
+ "path": "v1/contactGroups",
+ "id": "people.contactGroups.list"
},
- "value": {
- "description": "The email address.",
- "type": "string"
+ "create": {
+ "response": {
+ "$ref": "ContactGroup"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts"
+ ],
+ "parameters": {},
+ "flatPath": "v1/contactGroups",
+ "path": "v1/contactGroups",
+ "id": "people.contactGroups.create",
+ "description": "Create a new contact group owned by the authenticated user.",
+ "request": {
+ "$ref": "CreateContactGroupRequest"
+ }
+ },
+ "get": {
+ "description": "Get a specific contact group owned by the authenticated user by specifying\na contact group resource name.",
+ "response": {
+ "$ref": "ContactGroup"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "maxMembers": {
+ "description": "Specifies the maximum number of members to return.",
+ "format": "int32",
+ "type": "integer",
+ "location": "query"
+ },
+ "resourceName": {
+ "pattern": "^contactGroups/[^/]+$",
+ "location": "path",
+ "description": "The resource name of the contact group to get.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts",
+ "https://www.googleapis.com/auth/contacts.readonly"
+ ],
+ "flatPath": "v1/contactGroups/{contactGroupsId}",
+ "path": "v1/{+resourceName}",
+ "id": "people.contactGroups.get"
}
},
- "id": "EmailAddress",
- "description": "A person's email address."
- },
- "Skill": {
- "description": "A skill that the person has.",
- "type": "object",
- "properties": {
- "value": {
- "description": "The skill; for example, `underwater basket weaving`.",
- "type": "string"
- },
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the skill."
+ "resources": {
+ "members": {
+ "methods": {
+ "modify": {
+ "description": "Modify the members of a contact group owned by the authenticated user.",
+ "request": {
+ "$ref": "ModifyContactGroupMembersRequest"
+ },
+ "response": {
+ "$ref": "ModifyContactGroupMembersResponse"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/contacts"
+ ],
+ "parameters": {
+ "resourceName": {
+ "pattern": "^contactGroups/[^/]+$",
+ "location": "path",
+ "description": "The resource name of the contact group to modify.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "flatPath": "v1/contactGroups/{contactGroupsId}/members:modify",
+ "path": "v1/{+resourceName}/members:modify",
+ "id": "people.contactGroups.members.modify"
+ }
+ }
}
- },
- "id": "Skill"
+ }
+ }
+ },
+ "parameters": {
+ "$.xgafv": {
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string",
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query"
},
- "Date": {
- "type": "object",
- "properties": {
- "day": {
- "format": "int32",
- "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant.",
- "type": "integer"
- },
- "year": {
- "format": "int32",
- "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
- "type": "integer"
- },
- "month": {
- "format": "int32",
- "description": "Month of year. Must be from 1 to 12.",
- "type": "integer"
- }
- },
- "id": "Date",
- "description": "Represents a whole calendar date, for example a date of birth. The time\nof day and time zone are either specified elsewhere or are not\nsignificant. The date is relative to the\n[Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).\nThe day may be 0 to represent a year and month where the day is not\nsignificant. The year may be 0 to represent a month and day independent\nof year; for example, anniversary date."
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
},
- "Tagline": {
- "type": "object",
- "properties": {
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the tagline."
- },
- "value": {
- "description": "The tagline.",
- "type": "string"
- }
- },
- "id": "Tagline",
- "description": "A read-only brief one-line description of the person."
+ "alt": {
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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"
},
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "pp": {
+ "location": "query",
+ "description": "Pretty-print response.",
+ "type": "boolean",
+ "default": "true"
+ },
+ "oauth_token": {
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string",
+ "location": "query"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ },
+ "upload_protocol": {
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string"
+ },
+ "prettyPrint": {
+ "description": "Returns response with indentations and line breaks.",
+ "type": "boolean",
+ "default": "true",
+ "location": "query"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
+ },
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "version": "v1",
+ "baseUrl": "https://people.googleapis.com/",
+ "kind": "discovery#restDescription",
+ "description": "Provides access to information about profiles and contacts.",
+ "servicePath": "",
+ "basePath": "",
+ "revision": "20170828",
+ "documentationLink": "https://developers.google.com/people/",
+ "id": "people:v1",
+ "discoveryVersion": "v1",
+ "version_module": true,
+ "schemas": {
"Name": {
"description": "A person's name. If the name is a mononym, the family name is empty.",
"type": "object",
@@ -187,24 +634,24 @@
"description": "The family name.",
"type": "string"
},
- "phoneticMiddleName": {
- "description": "The middle name(s) spelled as they sound.",
- "type": "string"
- },
"metadata": {
"$ref": "FieldMetadata",
"description": "Metadata about the name."
},
+ "phoneticMiddleName": {
+ "description": "The middle name(s) spelled as they sound.",
+ "type": "string"
+ },
"phoneticFullName": {
"description": "The full name spelled as it sounds.",
"type": "string"
},
"displayNameLastFirst": {
- "description": "The read-only display name with the last name first formatted according to\nthe locale specified by the viewer's account or the\n\u003ccode\u003eAccept-Language\u003c/code\u003e HTTP header.",
+ "description": "The read-only display name with the last name first formatted according to\nthe locale specified by the viewer's account or the\n`Accept-Language` HTTP header.",
"type": "string"
},
"displayName": {
- "description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the \u003ccode\u003eAccept-Language\u003c/code\u003e HTTP header.",
+ "description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the `Accept-Language` HTTP header.",
"type": "string"
},
"honorificSuffix": {
@@ -219,8 +666,8 @@
"type": "object",
"properties": {
"metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the locale."
+ "description": "Metadata about the locale.",
+ "$ref": "FieldMetadata"
},
"value": {
"description": "The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)\nlanguage tag representing the locale.",
@@ -230,41 +677,43 @@
"id": "Locale"
},
"Empty": {
- "properties": {},
- "id": "Empty",
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object"
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
},
"Biography": {
"description": "A person's short biography.",
"type": "object",
"properties": {
+ "metadata": {
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the biography."
+ },
"value": {
"description": "The short biography.",
"type": "string"
},
"contentType": {
- "enumDescriptions": [
- "Unspecified.",
- "Plain text.",
- "HTML text."
- ],
"enum": [
"CONTENT_TYPE_UNSPECIFIED",
"TEXT_PLAIN",
"TEXT_HTML"
],
"description": "The content type of the biography.",
- "type": "string"
- },
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the biography."
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified.",
+ "Plain text.",
+ "HTML text."
+ ]
}
},
"id": "Biography"
},
"FieldMetadata": {
+ "description": "Metadata about a field.",
+ "type": "object",
"properties": {
"verified": {
"description": "True if the field is verified; false if the field is unverified. A\nverified field is typically a name, email address, phone number, or\nwebsite that has been confirmed to be owned by the person.",
@@ -279,34 +728,23 @@
"$ref": "Source"
}
},
- "id": "FieldMetadata",
- "description": "Metadata about a field.",
- "type": "object"
- },
- "RelationshipInterest": {
- "description": "A person's read-only relationship interest .",
- "type": "object",
- "properties": {
- "formattedValue": {
- "type": "string",
- "description": "The value of the relationship interest translated and formatted in the\nviewer's account locale or the locale specified in the Accept-Language\nHTTP header."
- },
- "metadata": {
- "description": "Metadata about the relationship interest.",
- "$ref": "FieldMetadata"
- },
- "value": {
- "description": "The kind of relationship the person is looking for. The value can be custom\nor predefined. Possible values include, but are not limited to, the\nfollowing values:\n\n* `friend`\n* `date`\n* `relationship`\n* `networking`",
- "type": "string"
- }
- },
- "id": "RelationshipInterest"
+ "id": "FieldMetadata"
},
"Source": {
- "description": "The source of a field.",
- "type": "object",
"properties": {
+ "updateTime": {
+ "description": "**Only populated in `person.metadata.sources`.**\n\nLast update timestamp of this source.",
+ "format": "google-datetime",
+ "type": "string"
+ },
"type": {
+ "enum": [
+ "SOURCE_TYPE_UNSPECIFIED",
+ "ACCOUNT",
+ "PROFILE",
+ "DOMAIN_PROFILE",
+ "CONTACT"
+ ],
"description": "The source type.",
"type": "string",
"enumDescriptions": [
@@ -315,67 +753,86 @@
"[Google profile](https://profiles.google.com). You can view the\nprofile at https://profiles.google.com/\u003cvar\u003eid\u003c/var\u003e where\n\u003cvar\u003eid\u003c/var\u003e is the source id.",
"[Google Apps domain profile](https://admin.google.com).",
"[Google contact](https://contacts.google.com). You can view the\ncontact at https://contact.google.com/\u003cvar\u003eid\u003c/var\u003e where \u003cvar\u003eid\u003c/var\u003e\nis the source id."
- ],
- "enum": [
- "SOURCE_TYPE_UNSPECIFIED",
- "ACCOUNT",
- "PROFILE",
- "DOMAIN_PROFILE",
- "CONTACT"
]
},
"etag": {
- "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nsource. Used for web cache validation. Only populated in\nperson.metadata.sources.",
+ "description": "**Only populated in `person.metadata.sources`.**\n\nThe [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nsource. Used for web cache validation.",
"type": "string"
},
"id": {
- "type": "string",
- "description": "The unique identifier within the source type generated by the server."
+ "description": "The unique identifier within the source type generated by the server.",
+ "type": "string"
},
"profileMetadata": {
- "description": "Metadata about a source of type PROFILE.",
+ "description": "**Only populated in `person.metadata.sources`.**\n\nMetadata about a source of type PROFILE.",
"$ref": "ProfileMetadata"
+ }
+ },
+ "id": "Source",
+ "description": "The source of a field.",
+ "type": "object"
+ },
+ "RelationshipInterest": {
+ "description": "A person's read-only relationship interest .",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata about the relationship interest.",
+ "$ref": "FieldMetadata"
},
- "updateTime": {
- "format": "google-datetime",
- "description": "Last update timestamp of this source.",
+ "value": {
+ "description": "The kind of relationship the person is looking for. The value can be custom\nor predefined. Possible values include, but are not limited to, the\nfollowing values:\n\n* `friend`\n* `date`\n* `relationship`\n* `networking`",
+ "type": "string"
+ },
+ "formattedValue": {
+ "description": "The value of the relationship interest translated and formatted in the\nviewer's account locale or the locale specified in the Accept-Language\nHTTP header.",
"type": "string"
}
},
- "id": "Source"
+ "id": "RelationshipInterest"
},
"GetPeopleResponse": {
- "type": "object",
"properties": {
"responses": {
"description": "The response for each requested resource name.",
+ "type": "array",
"items": {
"$ref": "PersonResponse"
- },
- "type": "array"
+ }
}
},
- "id": "GetPeopleResponse"
+ "id": "GetPeopleResponse",
+ "type": "object"
},
"Photo": {
"description": "A person's read-only photo. A picture shown next to the person's name to\nhelp others recognize the person.",
"type": "object",
"properties": {
"metadata": {
- "description": "Metadata about the photo.",
- "$ref": "FieldMetadata"
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the photo."
},
"url": {
- "description": "The URL of the photo. You can change the desired size by appending a query\nparameter `sz=\u003csize\u003e` at the end of the url. Example:\n`https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50`",
+ "description": "The URL of the photo. You can change the desired size by appending a query\nparameter `sz=`\u003cvar\u003esize\u003c/var\u003e at the end of the url. Example:\n`https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50`",
"type": "string"
}
},
"id": "Photo"
},
"PhoneNumber": {
- "description": "A person's phone number.",
- "type": "object",
"properties": {
+ "metadata": {
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the phone number."
+ },
+ "type": {
+ "description": "The type of the phone number. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `mobile`\n* `homeFax`\n* `workFax`\n* `otherFax`\n* `pager`\n* `workMobile`\n* `workPager`\n* `main`\n* `googleVoice`\n* `other`",
+ "type": "string"
+ },
+ "value": {
+ "description": "The phone number.",
+ "type": "string"
+ },
"formattedType": {
"description": "The read-only type of the phone number translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.",
"type": "string"
@@ -383,21 +840,11 @@
"canonicalForm": {
"description": "The read-only canonicalized [ITU-T E.164](https://law.resource.org/pub/us/cfr/ibr/004/itu-t.E.164.1.2008.pdf)\nform of the phone number.",
"type": "string"
- },
- "type": {
- "type": "string",
- "description": "The type of the phone number. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `mobile`\n* `homeFax`\n* `workFax`\n* `otherFax`\n* `pager`\n* `workMobile`\n* `workPager`\n* `main`\n* `googleVoice`\n* `other`"
- },
- "metadata": {
- "description": "Metadata about the phone number.",
- "$ref": "FieldMetadata"
- },
- "value": {
- "description": "The phone number.",
- "type": "string"
}
},
- "id": "PhoneNumber"
+ "id": "PhoneNumber",
+ "description": "A person's phone number.",
+ "type": "object"
},
"ListConnectionsResponse": {
"type": "object",
@@ -406,25 +853,25 @@
"description": "The token that can be used to retrieve the next page of results.",
"type": "string"
},
- "totalItems": {
- "format": "int32",
- "description": "The total number of items in the list without pagination.",
- "type": "integer"
+ "connections": {
+ "description": "The list of people that the requestor is connected to.",
+ "type": "array",
+ "items": {
+ "$ref": "Person"
+ }
},
"nextSyncToken": {
"description": "The token that can be used to retrieve changes since the last request.",
"type": "string"
},
- "connections": {
- "description": "The list of people that the requestor is connected to.",
- "items": {
- "$ref": "Person"
- },
- "type": "array"
+ "totalItems": {
+ "description": "The total number of items in the list without pagination.",
+ "format": "int32",
+ "type": "integer"
},
"totalPeople": {
- "format": "int32",
"description": "**DEPRECATED** (Please use totalItems)\nThe total number of people in the list without pagination.",
+ "format": "int32",
"type": "integer"
}
},
@@ -434,14 +881,14 @@
"description": "A person's birthday. At least one of the `date` and `text` fields are\nspecified. The `date` and `text` fields typically represent the same\ndate, but are not guaranteed to.",
"type": "object",
"properties": {
- "text": {
- "description": "A free-form string representing the user's birthday.",
- "type": "string"
- },
"metadata": {
"description": "Metadata about the birthday.",
"$ref": "FieldMetadata"
},
+ "text": {
+ "description": "A free-form string representing the user's birthday.",
+ "type": "string"
+ },
"date": {
"$ref": "Date",
"description": "The date of the birthday."
@@ -450,18 +897,26 @@
"id": "Birthday"
},
"CreateContactGroupRequest": {
- "description": "A request to create a new contact group.",
- "type": "object",
"properties": {
"contactGroup": {
"$ref": "ContactGroup",
"description": "The contact group to create."
}
},
- "id": "CreateContactGroupRequest"
+ "id": "CreateContactGroupRequest",
+ "description": "A request to create a new contact group.",
+ "type": "object"
},
"Address": {
"properties": {
+ "formattedValue": {
+ "description": "The unstructured value of the address. If this is not set by the user it\nwill be automatically constructed from structured values.",
+ "type": "string"
+ },
+ "country": {
+ "description": "The country of the address.",
+ "type": "string"
+ },
"type": {
"description": "The type of the address. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `other`",
"type": "string"
@@ -501,20 +956,39 @@
"city": {
"description": "The city of the address.",
"type": "string"
- },
- "formattedValue": {
- "description": "The unstructured value of the address. If this is not set by the user it\nwill be automatically constructed from structured values.",
- "type": "string"
- },
- "country": {
- "description": "The country of the address.",
- "type": "string"
}
},
"id": "Address",
"description": "A person's physical address. May be a P.O. box or street address. All fields\nare optional.",
"type": "object"
},
+ "Status": {
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "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"
+ },
+ "details": {
+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
+ "type": "array",
+ "items": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "type": "object"
+ }
+ }
+ },
+ "id": "Status"
+ },
"ContactGroupMembership": {
"properties": {
"contactGroupId": {
@@ -526,75 +1000,48 @@
"description": "A Google contact group membership.",
"type": "object"
},
- "Status": {
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object",
- "properties": {
- "message": {
- "type": "string",
- "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."
- },
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "items": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "type": "object"
- },
- "type": "array"
- },
- "code": {
- "type": "integer",
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code."
- }
- },
- "id": "Status"
- },
"PersonMetadata": {
"description": "The read-only metadata about a person.",
"type": "object",
"properties": {
- "linkedPeopleResourceNames": {
- "description": "Resource names of people linked to this resource.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "previousResourceNames": {
- "description": "Any former resource names this person has had. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.\n\nThe resource name may change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or\nprofile URL.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "sources": {
- "items": {
- "$ref": "Source"
- },
- "type": "array",
- "description": "The sources of data for the person."
- },
- "deleted": {
- "description": "True if the person resource has been deleted. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.",
- "type": "boolean"
- },
"objectType": {
- "enum": [
- "OBJECT_TYPE_UNSPECIFIED",
- "PERSON",
- "PAGE"
- ],
"description": "**DEPRECATED** (Please use\n`person.metadata.sources.profileMetadata.objectType` instead)\n\nThe type of the person object.",
"type": "string",
"enumDescriptions": [
"Unspecified.",
"Person.",
"[Google+ Page.](http://www.google.com/+/brands/)"
+ ],
+ "enum": [
+ "OBJECT_TYPE_UNSPECIFIED",
+ "PERSON",
+ "PAGE"
]
+ },
+ "linkedPeopleResourceNames": {
+ "description": "Resource names of people linked to this resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "sources": {
+ "description": "The sources of data for the person.",
+ "type": "array",
+ "items": {
+ "$ref": "Source"
+ }
+ },
+ "previousResourceNames": {
+ "description": "Any former resource names this person has had. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.\n\nThe resource name may change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or\nprofile URL.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "deleted": {
+ "description": "True if the person resource has been deleted. Populated only for\n[`connections.list`](/people/api/rest/v1/people.connections/list) requests\nthat include a sync token.",
+ "type": "boolean"
}
},
"id": "PersonMetadata"
@@ -603,19 +1050,19 @@
"description": "A request to modify an existing contact group's members.",
"type": "object",
"properties": {
- "resourceNamesToRemove": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "The resource names of the contact people to remove in the form of in the\nform of `people/\u003cperson_id\u003e`."
- },
"resourceNamesToAdd": {
- "description": "The resource names of the contact people to add in the form of in the form\n`people/\u003cperson_id\u003e`.",
+ "description": "The resource names of the contact people to add in the form of in the form\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.",
+ "type": "array",
"items": {
"type": "string"
- },
- "type": "array"
+ }
+ },
+ "resourceNamesToRemove": {
+ "description": "The resource names of the contact people to remove in the form of in the\nform of `people/`\u003cvar\u003eperson_id\u003c/var\u003e.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
}
},
"id": "ModifyContactGroupMembersRequest"
@@ -633,22 +1080,24 @@
"description": "The contact group."
},
"status": {
- "$ref": "Status",
- "description": "The status of the response."
+ "description": "The status of the response.",
+ "$ref": "Status"
}
},
"id": "ContactGroupResponse"
},
"Url": {
+ "description": "A person's associated URLs.",
+ "type": "object",
"properties": {
- "type": {
- "description": "The type of the URL. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `blog`\n* `profile`\n* `homePage`\n* `ftp`\n* `reservations`\n* `appInstallPage`: website for a Google+ application.\n* `other`",
- "type": "string"
- },
"metadata": {
"description": "Metadata about the URL.",
"$ref": "FieldMetadata"
},
+ "type": {
+ "description": "The type of the URL. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `blog`\n* `profile`\n* `homePage`\n* `ftp`\n* `reservations`\n* `appInstallPage`: website for a Google+ application.\n* `other`",
+ "type": "string"
+ },
"value": {
"description": "The URL.",
"type": "string"
@@ -658,9 +1107,7 @@
"type": "string"
}
},
- "id": "Url",
- "description": "A person's associated URLs.",
- "type": "object"
+ "id": "Url"
},
"ImClient": {
"description": "A person's instant messaging client.",
@@ -705,23 +1152,23 @@
"type": "object"
},
"Membership": {
- "id": "Membership",
"description": "A person's read-only membership in a group.",
"type": "object",
"properties": {
- "domainMembership": {
- "description": "The domain membership.",
- "$ref": "DomainMembership"
- },
"contactGroupMembership": {
"$ref": "ContactGroupMembership",
"description": "The contact group membership."
},
+ "domainMembership": {
+ "$ref": "DomainMembership",
+ "description": "The domain membership."
+ },
"metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the membership."
+ "description": "Metadata about the membership.",
+ "$ref": "FieldMetadata"
}
- }
+ },
+ "id": "Membership"
},
"BatchGetContactGroupsResponse": {
"description": "The response to a batch get contact groups request.",
@@ -729,53 +1176,80 @@
"properties": {
"responses": {
"description": "The list of responses for each requested contact group resource.",
+ "type": "array",
"items": {
"$ref": "ContactGroupResponse"
- },
- "type": "array"
+ }
}
},
"id": "BatchGetContactGroupsResponse"
},
"RelationshipStatus": {
+ "description": "A person's read-only relationship status.",
+ "type": "object",
"properties": {
"formattedValue": {
"description": "The read-only value of the relationship status translated and formatted in\nthe viewer's account locale or the `Accept-Language` HTTP header locale.",
"type": "string"
},
"metadata": {
- "description": "Metadata about the relationship status.",
- "$ref": "FieldMetadata"
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the relationship status."
},
"value": {
- "type": "string",
- "description": "The relationship status. The value can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `single`\n* `inARelationship`\n* `engaged`\n* `married`\n* `itsComplicated`\n* `openRelationship`\n* `widowed`\n* `inDomesticPartnership`\n* `inCivilUnion`"
+ "description": "The relationship status. The value can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `single`\n* `inARelationship`\n* `engaged`\n* `married`\n* `itsComplicated`\n* `openRelationship`\n* `widowed`\n* `inDomesticPartnership`\n* `inCivilUnion`",
+ "type": "string"
}
},
- "id": "RelationshipStatus",
- "description": "A person's read-only relationship status.",
- "type": "object"
+ "id": "RelationshipStatus"
},
"BraggingRights": {
- "id": "BraggingRights",
"description": "A person's bragging rights.",
"type": "object",
"properties": {
- "value": {
- "description": "The bragging rights; for example, `climbed mount everest`.",
- "type": "string"
- },
"metadata": {
"description": "Metadata about the bragging rights.",
"$ref": "FieldMetadata"
+ },
+ "value": {
+ "description": "The bragging rights; for example, `climbed mount everest`.",
+ "type": "string"
}
- }
+ },
+ "id": "BraggingRights"
},
"Organization": {
- "id": "Organization",
"description": "A person's past or current organization. Overlapping date ranges are\npermitted.",
"type": "object",
"properties": {
+ "formattedType": {
+ "description": "The read-only type of the organization translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.",
+ "type": "string"
+ },
+ "startDate": {
+ "description": "The start date when the person joined the organization.",
+ "$ref": "Date"
+ },
+ "domain": {
+ "description": "The domain name associated with the organization; for example, `google.com`.",
+ "type": "string"
+ },
+ "department": {
+ "description": "The person's department at the organization.",
+ "type": "string"
+ },
+ "type": {
+ "description": "The type of the organization. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `work`\n* `school`",
+ "type": "string"
+ },
+ "phoneticName": {
+ "description": "The phonetic name of the organization.",
+ "type": "string"
+ },
+ "jobDescription": {
+ "description": "The person's job description at the organization.",
+ "type": "string"
+ },
"endDate": {
"$ref": "Date",
"description": "The end date when the person left the organization."
@@ -792,54 +1266,30 @@
"description": "Metadata about the organization.",
"$ref": "FieldMetadata"
},
- "location": {
- "type": "string",
- "description": "The location of the organization office the person works at."
- },
"title": {
"description": "The person's job title at the organization.",
"type": "string"
},
+ "location": {
+ "description": "The location of the organization office the person works at.",
+ "type": "string"
+ },
"current": {
"description": "True if the organization is the person's current organization;\nfalse if the organization is a past organization.",
"type": "boolean"
- },
- "startDate": {
- "$ref": "Date",
- "description": "The start date when the person joined the organization."
- },
- "formattedType": {
- "description": "The read-only type of the organization translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.",
- "type": "string"
- },
- "domain": {
- "type": "string",
- "description": "The domain name associated with the organization; for example, `google.com`."
- },
- "department": {
- "description": "The person's department at the organization.",
- "type": "string"
- },
- "type": {
- "description": "The type of the organization. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `work`\n* `school`",
- "type": "string"
- },
- "phoneticName": {
- "description": "The phonetic name of the organization.",
- "type": "string"
- },
- "jobDescription": {
- "type": "string",
- "description": "The person's job description at the organization."
}
- }
+ },
+ "id": "Organization"
},
"AgeRangeType": {
+ "description": "A person's age range.",
"type": "object",
"properties": {
+ "metadata": {
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the age range."
+ },
"ageRange": {
- "description": "The age range.",
- "type": "string",
"enumDescriptions": [
"Unspecified.",
"Younger than eighteen.",
@@ -851,45 +1301,41 @@
"LESS_THAN_EIGHTEEN",
"EIGHTEEN_TO_TWENTY",
"TWENTY_ONE_OR_OLDER"
- ]
- },
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the age range."
+ ],
+ "description": "The age range.",
+ "type": "string"
}
},
- "id": "AgeRangeType",
- "description": "A person's age range."
+ "id": "AgeRangeType"
},
"ListContactGroupsResponse": {
- "type": "object",
"properties": {
+ "contactGroups": {
+ "description": "The list of contact groups. Members of the contact groups are not\npopulated.",
+ "type": "array",
+ "items": {
+ "$ref": "ContactGroup"
+ }
+ },
"nextPageToken": {
"description": "The token that can be used to retrieve the next page of results.",
"type": "string"
},
+ "totalItems": {
+ "description": "The total number of items in the list without pagination.",
+ "format": "int32",
+ "type": "integer"
+ },
"nextSyncToken": {
"description": "The token that can be used to retrieve changes since the last request.",
"type": "string"
- },
- "totalItems": {
- "format": "int32",
- "description": "The total number of items in the list without pagination.",
- "type": "integer"
- },
- "contactGroups": {
- "description": "The list of contact groups. Members of the contact groups are not\npopulated.",
- "items": {
- "$ref": "ContactGroup"
- },
- "type": "array"
}
},
"id": "ListContactGroupsResponse",
- "description": "The response to a list contact groups request."
+ "description": "The response to a list contact groups request.",
+ "type": "object"
},
"PersonResponse": {
- "type": "object",
"properties": {
"person": {
"$ref": "Person",
@@ -900,37 +1346,38 @@
"$ref": "Status"
},
"httpStatusCode": {
- "format": "int32",
"description": "**DEPRECATED** (Please use status instead)\n\n[HTTP 1.1 status code]\n(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).",
+ "format": "int32",
"type": "integer"
},
"requestedResourceName": {
- "type": "string",
- "description": "The original requested resource name. May be different than the resource\nname on the returned person.\n\nThe resource name can change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or a\nprofile URL."
+ "description": "The original requested resource name. May be different than the resource\nname on the returned person.\n\nThe resource name can change when adding or removing fields that link a\ncontact and profile such as a verified email, verified phone number, or a\nprofile URL.",
+ "type": "string"
}
},
"id": "PersonResponse",
- "description": "The response for a single person"
+ "description": "The response for a single person",
+ "type": "object"
},
"Relation": {
"description": "A person's relation to another person.",
"type": "object",
"properties": {
- "formattedType": {
- "description": "The type of the relation translated and formatted in the viewer's account\nlocale or the locale specified in the Accept-Language HTTP header.",
+ "metadata": {
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the relation."
+ },
+ "type": {
+ "description": "The person's relation to the other person. The type can be custom or predefined.\nPossible values include, but are not limited to, the following values:\n\n* `spouse`\n* `child`\n* `mother`\n* `father`\n* `parent`\n* `brother`\n* `sister`\n* `friend`\n* `relative`\n* `domesticPartner`\n* `manager`\n* `assistant`\n* `referredBy`\n* `partner`",
"type": "string"
},
"person": {
"description": "The name of the other person this relation refers to.",
"type": "string"
},
- "type": {
- "description": "The person's relation to the other person. The type can be custom or predefined.\nPossible values include, but are not limited to, the following values:\n\n* `spouse`\n* `child`\n* `mother`\n* `father`\n* `parent`\n* `brother`\n* `sister`\n* `friend`\n* `relative`\n* `domesticPartner`\n* `manager`\n* `assistant`\n* `referredBy`\n* `partner`",
+ "formattedType": {
+ "description": "The type of the relation translated and formatted in the viewer's account\nlocale or the locale specified in the Accept-Language HTTP header.",
"type": "string"
- },
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the relation."
}
},
"id": "Relation"
@@ -939,13 +1386,13 @@
"description": "A person's occupation.",
"type": "object",
"properties": {
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the occupation."
- },
"value": {
- "type": "string",
- "description": "The occupation; for example, `carpenter`."
+ "description": "The occupation; for example, `carpenter`.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata about the occupation.",
+ "$ref": "FieldMetadata"
}
},
"id": "Occupation"
@@ -954,7 +1401,17 @@
"description": "A contact group.",
"type": "object",
"properties": {
+ "etag": {
+ "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.",
+ "type": "string"
+ },
+ "formattedName": {
+ "description": "The read-only name translated and formatted in the viewer's account locale\nor the `Accept-Language` HTTP header locale for system groups names.\nGroup names set by the owner are the same as name.",
+ "type": "string"
+ },
"groupType": {
+ "description": "The read-only contact group type.",
+ "type": "string",
"enumDescriptions": [
"Unspecified.",
"User defined contact group.",
@@ -964,189 +1421,46 @@
"GROUP_TYPE_UNSPECIFIED",
"USER_CONTACT_GROUP",
"SYSTEM_CONTACT_GROUP"
- ],
- "description": "The read-only contact group type.",
- "type": "string"
+ ]
},
- "formattedName": {
- "description": "The read-only name translated and formatted in the viewer's account locale\nor the `Accept-Language` HTTP header locale for system groups names.\nGroup names set by the owner are the same as name.",
- "type": "string"
+ "memberResourceNames": {
+ "description": "The list of contact person resource names that are members of the contact\ngroup. The field is not populated for LIST requests and can only be updated\nthrough the\n[ModifyContactGroupMembers](/people/api/rest/v1/contactgroups/members/modify).",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
},
"name": {
"description": "The contact group name set by the group owner or a system provided name\nfor system groups.",
"type": "string"
},
- "memberResourceNames": {
- "description": "The list of contact person resource names that are members of the contact\ngroup. The field is not populated for LIST requests and can only be updated\nthrough the\n[ModifyContactGroupMembers](/people/api/rest/v1/contactgroups/members/modify).",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
"metadata": {
- "description": "Metadata about the contact group.",
- "$ref": "ContactGroupMetadata"
+ "$ref": "ContactGroupMetadata",
+ "description": "Metadata about the contact group."
},
"memberCount": {
- "format": "int32",
"description": "The total number of contacts in the group irrespective of max members in\nspecified in the request.",
+ "format": "int32",
"type": "integer"
},
"resourceName": {
- "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/\u003ccontact_group_id\u003e`.",
+ "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/`\u003cvar\u003econtact_group_id\u003c/var\u003e.",
"type": "string"
- },
- "etag": {
- "type": "string",
- "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation."
}
},
"id": "ContactGroup"
},
"Person": {
- "id": "Person",
"description": "Information about a person merged from various data sources such as the\nauthenticated user's contacts and profile data.\n\nMost fields can have multiple items. The items in a field have no guaranteed\norder, but each non-empty field is guaranteed to have exactly one field with\n`metadata.primary` set to true.",
"type": "object",
"properties": {
- "birthdays": {
- "description": "The person's birthdays.",
- "items": {
- "$ref": "Birthday"
- },
- "type": "array"
- },
- "locales": {
- "description": "The person's locale preferences.",
- "items": {
- "$ref": "Locale"
- },
- "type": "array"
- },
- "relationshipInterests": {
- "description": "The person's read-only relationship interests.",
- "items": {
- "$ref": "RelationshipInterest"
- },
- "type": "array"
- },
- "urls": {
- "description": "The person's associated URLs.",
- "items": {
- "$ref": "Url"
- },
- "type": "array"
- },
- "nicknames": {
- "description": "The person's nicknames.",
- "items": {
- "$ref": "Nickname"
- },
- "type": "array"
- },
- "relations": {
- "description": "The person's relations.",
- "items": {
- "$ref": "Relation"
- },
- "type": "array"
- },
- "names": {
- "items": {
- "$ref": "Name"
- },
- "type": "array",
- "description": "The person's names."
- },
- "occupations": {
- "items": {
- "$ref": "Occupation"
- },
- "type": "array",
- "description": "The person's occupations."
- },
- "emailAddresses": {
- "description": "The person's email addresses.",
- "items": {
- "$ref": "EmailAddress"
- },
- "type": "array"
- },
- "organizations": {
- "description": "The person's past or current organizations.",
- "items": {
- "$ref": "Organization"
- },
- "type": "array"
- },
- "etag": {
- "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.",
- "type": "string"
- },
- "braggingRights": {
- "description": "The person's bragging rights.",
- "items": {
- "$ref": "BraggingRights"
- },
- "type": "array"
- },
- "metadata": {
- "$ref": "PersonMetadata",
- "description": "Read-only metadata about the person."
- },
- "residences": {
- "description": "The person's residences.",
- "items": {
- "$ref": "Residence"
- },
- "type": "array"
- },
- "genders": {
- "description": "The person's genders.",
- "items": {
- "$ref": "Gender"
- },
- "type": "array"
- },
- "interests": {
- "description": "The person's interests.",
- "items": {
- "$ref": "Interest"
- },
- "type": "array"
- },
- "resourceName": {
- "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of `people/\u003cperson_id\u003e`.",
- "type": "string"
- },
- "biographies": {
- "description": "The person's biographies.",
- "items": {
- "$ref": "Biography"
- },
- "type": "array"
- },
- "skills": {
- "description": "The person's skills.",
- "items": {
- "$ref": "Skill"
- },
- "type": "array"
- },
- "relationshipStatuses": {
- "items": {
- "$ref": "RelationshipStatus"
- },
- "type": "array",
- "description": "The person's read-only relationship statuses."
- },
- "photos": {
- "description": "The person's read-only photos.",
- "items": {
- "$ref": "Photo"
- },
- "type": "array"
- },
"ageRange": {
+ "enumDescriptions": [
+ "Unspecified.",
+ "Younger than eighteen.",
+ "Between eighteen and twenty.",
+ "Twenty-one and older."
+ ],
"enum": [
"AGE_RANGE_UNSPECIFIED",
"LESS_THAN_EIGHTEEN",
@@ -1154,91 +1468,224 @@
"TWENTY_ONE_OR_OLDER"
],
"description": "**DEPRECATED** (Please use `person.ageRanges` instead)**\n\nThe person's read-only age range.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified.",
- "Younger than eighteen.",
- "Between eighteen and twenty.",
- "Twenty-one and older."
- ]
+ "type": "string"
},
"taglines": {
"description": "The person's read-only taglines.",
+ "type": "array",
"items": {
"$ref": "Tagline"
- },
- "type": "array"
+ }
},
"ageRanges": {
+ "description": "The person's read-only age ranges.",
+ "type": "array",
"items": {
"$ref": "AgeRangeType"
- },
- "type": "array",
- "description": "The person's read-only age ranges."
+ }
},
"addresses": {
"description": "The person's street addresses.",
+ "type": "array",
"items": {
"$ref": "Address"
- },
- "type": "array"
+ }
},
"events": {
+ "description": "The person's events.",
+ "type": "array",
"items": {
"$ref": "Event"
- },
- "type": "array",
- "description": "The person's events."
+ }
},
"memberships": {
"description": "The person's read-only group memberships.",
+ "type": "array",
"items": {
"$ref": "Membership"
- },
- "type": "array"
+ }
},
"phoneNumbers": {
"description": "The person's phone numbers.",
+ "type": "array",
"items": {
"$ref": "PhoneNumber"
- },
- "type": "array"
+ }
},
"coverPhotos": {
"description": "The person's read-only cover photos.",
+ "type": "array",
"items": {
"$ref": "CoverPhoto"
- },
- "type": "array"
+ }
},
"imClients": {
"description": "The person's instant messaging clients.",
+ "type": "array",
"items": {
"$ref": "ImClient"
- },
- "type": "array"
- }
- }
- },
- "UpdateContactGroupRequest": {
- "description": "A request to update an existing contact group. Only the name can be updated.",
- "type": "object",
- "properties": {
- "contactGroup": {
- "$ref": "ContactGroup",
- "description": "The contact group to update."
+ }
+ },
+ "birthdays": {
+ "description": "The person's birthdays.",
+ "type": "array",
+ "items": {
+ "$ref": "Birthday"
+ }
+ },
+ "locales": {
+ "description": "The person's locale preferences.",
+ "type": "array",
+ "items": {
+ "$ref": "Locale"
+ }
+ },
+ "relationshipInterests": {
+ "description": "The person's read-only relationship interests.",
+ "type": "array",
+ "items": {
+ "$ref": "RelationshipInterest"
+ }
+ },
+ "urls": {
+ "description": "The person's associated URLs.",
+ "type": "array",
+ "items": {
+ "$ref": "Url"
+ }
+ },
+ "nicknames": {
+ "description": "The person's nicknames.",
+ "type": "array",
+ "items": {
+ "$ref": "Nickname"
+ }
+ },
+ "names": {
+ "description": "The person's names.",
+ "type": "array",
+ "items": {
+ "$ref": "Name"
+ }
+ },
+ "relations": {
+ "description": "The person's relations.",
+ "type": "array",
+ "items": {
+ "$ref": "Relation"
+ }
+ },
+ "occupations": {
+ "description": "The person's occupations.",
+ "type": "array",
+ "items": {
+ "$ref": "Occupation"
+ }
+ },
+ "emailAddresses": {
+ "description": "The person's email addresses.",
+ "type": "array",
+ "items": {
+ "$ref": "EmailAddress"
+ }
+ },
+ "organizations": {
+ "description": "The person's past or current organizations.",
+ "type": "array",
+ "items": {
+ "$ref": "Organization"
+ }
+ },
+ "etag": {
+ "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.",
+ "type": "string"
+ },
+ "braggingRights": {
+ "description": "The person's bragging rights.",
+ "type": "array",
+ "items": {
+ "$ref": "BraggingRights"
+ }
+ },
+ "metadata": {
+ "$ref": "PersonMetadata",
+ "description": "Read-only metadata about the person."
+ },
+ "residences": {
+ "description": "The person's residences.",
+ "type": "array",
+ "items": {
+ "$ref": "Residence"
+ }
+ },
+ "genders": {
+ "description": "The person's genders.",
+ "type": "array",
+ "items": {
+ "$ref": "Gender"
+ }
+ },
+ "interests": {
+ "description": "The person's interests.",
+ "type": "array",
+ "items": {
+ "$ref": "Interest"
+ }
+ },
+ "resourceName": {
+ "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.",
+ "type": "string"
+ },
+ "biographies": {
+ "description": "The person's biographies.",
+ "type": "array",
+ "items": {
+ "$ref": "Biography"
+ }
+ },
+ "skills": {
+ "description": "The person's skills.",
+ "type": "array",
+ "items": {
+ "$ref": "Skill"
+ }
+ },
+ "relationshipStatuses": {
+ "description": "The person's read-only relationship statuses.",
+ "type": "array",
+ "items": {
+ "$ref": "RelationshipStatus"
+ }
+ },
+ "photos": {
+ "description": "The person's read-only photos.",
+ "type": "array",
+ "items": {
+ "$ref": "Photo"
+ }
}
},
- "id": "UpdateContactGroupRequest"
+ "id": "Person"
+ },
+ "UpdateContactGroupRequest": {
+ "properties": {
+ "contactGroup": {
+ "description": "The contact group to update.",
+ "$ref": "ContactGroup"
+ }
+ },
+ "id": "UpdateContactGroupRequest",
+ "description": "A request to update an existing contact group. Only the name can be updated.",
+ "type": "object"
},
"ContactGroupMetadata": {
"description": "The read-only metadata about a contact group.",
"type": "object",
"properties": {
"updateTime": {
- "type": "string",
+ "description": "The time the group was last updated.",
"format": "google-datetime",
- "description": "The time the group was last updated."
+ "type": "string"
},
"deleted": {
"description": "True if the contact group resource has been deleted. Populated only for\n[`ListContactGroups`](/people/api/rest/v1/contactgroups/list) requests\nthat include a sync token.",
@@ -1251,14 +1698,14 @@
"description": "A person's past or current residence.",
"type": "object",
"properties": {
- "current": {
- "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.",
- "type": "boolean"
- },
"metadata": {
"$ref": "FieldMetadata",
"description": "Metadata about the residence."
},
+ "current": {
+ "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.",
+ "type": "boolean"
+ },
"value": {
"description": "The address of the residence.",
"type": "string"
@@ -1267,70 +1714,86 @@
"id": "Residence"
},
"Event": {
- "id": "Event",
"description": "An event related to the person.",
"type": "object",
"properties": {
- "formattedType": {
- "description": "The read-only type of the event translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.",
- "type": "string"
+ "metadata": {
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the event."
},
"type": {
"description": "The type of the event. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `anniversary`\n* `other`",
"type": "string"
},
- "metadata": {
- "description": "Metadata about the event.",
- "$ref": "FieldMetadata"
- },
"date": {
- "$ref": "Date",
- "description": "The date of the event."
+ "description": "The date of the event.",
+ "$ref": "Date"
+ },
+ "formattedType": {
+ "description": "The read-only type of the event translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.",
+ "type": "string"
}
- }
+ },
+ "id": "Event"
},
"ModifyContactGroupMembersResponse": {
- "id": "ModifyContactGroupMembersResponse",
"description": "The response to a modify contact group members request.",
"type": "object",
"properties": {
"notFoundResourceNames": {
+ "description": "The contact people resource names that were not found.",
+ "type": "array",
"items": {
"type": "string"
- },
- "type": "array",
- "description": "The contact people resource names that were not found."
+ }
}
- }
+ },
+ "id": "ModifyContactGroupMembersResponse"
},
"ProfileMetadata": {
- "description": "The read-only metadata about a profile.",
- "type": "object",
"properties": {
+ "userTypes": {
+ "description": "The user types.",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "USER_TYPE_UNKNOWN",
+ "GOOGLE_USER",
+ "GPLUS_USER",
+ "GOOGLE_APPS_USER"
+ ]
+ },
+ "enumDescriptions": [
+ "The user type is not known.",
+ "The user is a Google user.",
+ "The user is a Google+ user.",
+ "The user is a Google Apps for Work user."
+ ]
+ },
"objectType": {
+ "enumDescriptions": [
+ "Unspecified.",
+ "Person.",
+ "[Google+ Page.](http://www.google.com/+/brands/)"
+ ],
"enum": [
"OBJECT_TYPE_UNSPECIFIED",
"PERSON",
"PAGE"
],
"description": "The profile object type.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified.",
- "Person.",
- "[Google+ Page.](http://www.google.com/+/brands/)"
- ]
+ "type": "string"
}
},
- "id": "ProfileMetadata"
+ "id": "ProfileMetadata",
+ "description": "The read-only metadata about a profile.",
+ "type": "object"
},
"Gender": {
+ "description": "A person's gender.",
"type": "object",
"properties": {
- "metadata": {
- "$ref": "FieldMetadata",
- "description": "Metadata about the gender."
- },
"value": {
"description": "The gender for the person. The gender can be custom or predefined.\nPossible values include, but are not limited to, the\nfollowing:\n\n* `male`\n* `female`\n* `other`\n* `unknown`",
"type": "string"
@@ -1338,608 +1801,164 @@
"formattedValue": {
"description": "The read-only value of the gender translated and formatted in the viewer's\naccount locale or the `Accept-Language` HTTP header locale.",
"type": "string"
+ },
+ "metadata": {
+ "description": "Metadata about the gender.",
+ "$ref": "FieldMetadata"
}
},
- "id": "Gender",
- "description": "A person's gender."
- }
- },
- "icons": {
- "x16": "http://www.google.com/images/icons/product/search-16.gif",
- "x32": "http://www.google.com/images/icons/product/search-32.gif"
- },
- "protocol": "rest",
- "canonicalName": "People Service",
- "auth": {
- "oauth2": {
- "scopes": {
- "https://www.googleapis.com/auth/plus.login": {
- "description": "Know the list of people in your circles, your age range, and language"
- },
- "https://www.googleapis.com/auth/userinfo.profile": {
- "description": "View your basic profile info"
- },
- "https://www.googleapis.com/auth/user.emails.read": {
- "description": "View your email addresses"
- },
- "https://www.googleapis.com/auth/contacts": {
- "description": "Manage your contacts"
- },
- "https://www.googleapis.com/auth/user.addresses.read": {
- "description": "View your street addresses"
- },
- "https://www.googleapis.com/auth/user.phonenumbers.read": {
- "description": "View your phone numbers"
- },
- "https://www.googleapis.com/auth/userinfo.email": {
- "description": "View your email address"
- },
- "https://www.googleapis.com/auth/contacts.readonly": {
- "description": "View your contacts"
- },
- "https://www.googleapis.com/auth/user.birthday.read": {
- "description": "View your complete date of birth"
- }
- }
- }
- },
- "rootUrl": "https://people.googleapis.com/",
- "ownerDomain": "google.com",
- "name": "people",
- "batchPath": "batch",
- "title": "Google People API",
- "ownerName": "Google",
- "resources": {
- "contactGroups": {
- "methods": {
- "batchGet": {
- "path": "v1/contactGroups:batchGet",
- "id": "people.contactGroups.batchGet",
- "description": "Get a list of contact groups owned by the authenticated user by specifying\na list of contact group resource names.",
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "BatchGetContactGroupsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/contacts",
- "https://www.googleapis.com/auth/contacts.readonly"
- ],
- "parameters": {
- "maxMembers": {
- "format": "int32",
- "description": "Specifies the maximum number of members to return for each group.",
- "type": "integer",
- "location": "query"
- },
- "resourceNames": {
- "description": "The resource names of the contact groups to get.",
- "type": "string",
- "repeated": true,
- "location": "query"
- }
- },
- "flatPath": "v1/contactGroups:batchGet"
- },
- "delete": {
- "description": "Delete an existing contact group owned by the authenticated user by\nspecifying a contact group resource name.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "resourceName"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/contacts"
- ],
- "parameters": {
- "resourceName": {
- "location": "path",
- "description": "The resource name of the contact group to delete.",
- "type": "string",
- "required": true,
- "pattern": "^contactGroups/[^/]+$"
- },
- "deleteContacts": {
- "location": "query",
- "description": "Set to true to also delete the contacts in the specified group.",
- "type": "boolean"
- }
- },
- "flatPath": "v1/contactGroups/{contactGroupsId}",
- "id": "people.contactGroups.delete",
- "path": "v1/{+resourceName}"
- },
- "list": {
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "ListContactGroupsResponse"
- },
- "parameters": {
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "The maximum number of resources to return.",
- "type": "integer"
- },
- "syncToken": {
- "description": "A sync token, returned by a previous call to `contactgroups.list`.\nOnly resources changed since the sync token was created will be returned.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "description": "The next_page_token value returned from a previous call to\n[ListContactGroups](/people/api/rest/v1/contactgroups/list).\nRequests the next page of resources.",
- "type": "string",
- "location": "query"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/contacts",
- "https://www.googleapis.com/auth/contacts.readonly"
- ],
- "flatPath": "v1/contactGroups",
- "path": "v1/contactGroups",
- "id": "people.contactGroups.list",
- "description": "List all contact groups owned by the authenticated user. Members of the\ncontact groups are not populated."
- },
- "create": {
- "request": {
- "$ref": "CreateContactGroupRequest"
- },
- "description": "Create a new contact group owned by the authenticated user.",
- "response": {
- "$ref": "ContactGroup"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/contacts"
- ],
- "parameters": {},
- "flatPath": "v1/contactGroups",
- "id": "people.contactGroups.create",
- "path": "v1/contactGroups"
- },
- "get": {
- "response": {
- "$ref": "ContactGroup"
- },
- "parameterOrder": [
- "resourceName"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/contacts",
- "https://www.googleapis.com/auth/contacts.readonly"
- ],
- "parameters": {
- "maxMembers": {
- "location": "query",
- "format": "int32",
- "description": "Specifies the maximum number of members to return.",
- "type": "integer"
- },
- "resourceName": {
- "location": "path",
- "description": "The resource name of the contact group to get.",
- "type": "string",
- "required": true,
- "pattern": "^contactGroups/[^/]+$"
- }
- },
- "flatPath": "v1/contactGroups/{contactGroupsId}",
- "id": "people.contactGroups.get",
- "path": "v1/{+resourceName}",
- "description": "Get a specific contact group owned by the authenticated user by specifying\na contact group resource name."
- },
- "update": {
- "httpMethod": "PUT",
- "parameterOrder": [
- "resourceName"
- ],
- "response": {
- "$ref": "ContactGroup"
- },
- "parameters": {
- "resourceName": {
- "pattern": "^contactGroups/[^/]+$",
- "location": "path",
- "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/\u003ccontact_group_id\u003e`.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/contacts"
- ],
- "flatPath": "v1/contactGroups/{contactGroupsId}",
- "path": "v1/{+resourceName}",
- "id": "people.contactGroups.update",
- "description": "Update the name of an existing contact group owned by the authenticated\nuser.",
- "request": {
- "$ref": "UpdateContactGroupRequest"
- }
- }
- },
- "resources": {
- "members": {
- "methods": {
- "modify": {
- "request": {
- "$ref": "ModifyContactGroupMembersRequest"
- },
- "description": "Modify the members of a contact group owned by the authenticated user.",
- "response": {
- "$ref": "ModifyContactGroupMembersResponse"
- },
- "parameterOrder": [
- "resourceName"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/contacts"
- ],
- "parameters": {
- "resourceName": {
- "description": "The resource name of the contact group to modify.",
- "type": "string",
- "required": true,
- "pattern": "^contactGroups/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/contactGroups/{contactGroupsId}/members:modify",
- "id": "people.contactGroups.members.modify",
- "path": "v1/{+resourceName}/members:modify"
- }
- }
- }
- }
+ "id": "Gender"
},
- "people": {
- "methods": {
- "getBatchGet": {
- "path": "v1/people:batchGet",
- "id": "people.people.getBatchGet",
- "description": "Provides information about a list of specific people by specifying a list\nof requested resource names. Use `people/me` to indicate the authenticated\nuser.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.",
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "GetPeopleResponse"
- },
- "parameters": {
- "personFields": {
- "location": "query",
- "format": "google-fieldmask",
- "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls",
- "type": "string"
- },
- "requestMask.includeField": {
- "location": "query",
- "format": "google-fieldmask",
- "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.",
- "type": "string"
- },
- "resourceNames": {
- "location": "query",
- "description": "The resource name, such as one returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list),\nof one of the people to provide information about. You can include this\nparameter up to 50 times in one request.",
- "type": "string",
- "repeated": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/contacts",
- "https://www.googleapis.com/auth/contacts.readonly",
- "https://www.googleapis.com/auth/plus.login",
- "https://www.googleapis.com/auth/user.addresses.read",
- "https://www.googleapis.com/auth/user.birthday.read",
- "https://www.googleapis.com/auth/user.emails.read",
- "https://www.googleapis.com/auth/user.phonenumbers.read",
- "https://www.googleapis.com/auth/userinfo.email",
- "https://www.googleapis.com/auth/userinfo.profile"
- ],
- "flatPath": "v1/people:batchGet"
+ "CoverPhoto": {
+ "description": "A person's read-only cover photo. A large image shown on the person's\nprofile page that represents who they are or what they care about.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata about the cover photo.",
+ "$ref": "FieldMetadata"
},
- "get": {
- "httpMethod": "GET",
- "parameterOrder": [
- "resourceName"
- ],
- "response": {
- "$ref": "Person"
- },
- "scopes": [
- "https://www.googleapis.com/auth/contacts",
- "https://www.googleapis.com/auth/contacts.readonly",
- "https://www.googleapis.com/auth/plus.login",
- "https://www.googleapis.com/auth/user.addresses.read",
- "https://www.googleapis.com/auth/user.birthday.read",
- "https://www.googleapis.com/auth/user.emails.read",
- "https://www.googleapis.com/auth/user.phonenumbers.read",
- "https://www.googleapis.com/auth/userinfo.email",
- "https://www.googleapis.com/auth/userinfo.profile"
- ],
- "parameters": {
- "personFields": {
- "location": "query",
- "format": "google-fieldmask",
- "description": "**Required.** A field mask to restrict which fields on the person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls",
- "type": "string"
- },
- "resourceName": {
- "location": "path",
- "description": "The resource name of the person to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify `people/\u003caccount_id\u003e`.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).",
- "type": "string",
- "required": true,
- "pattern": "^people/[^/]+$"
- },
- "requestMask.includeField": {
- "type": "string",
- "location": "query",
- "format": "google-fieldmask",
- "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`."
- }
- },
- "flatPath": "v1/people/{peopleId}",
- "path": "v1/{+resourceName}",
- "id": "people.people.get",
- "description": "Provides information about a person by specifying a resource name. Use\n`people/me` to indicate the authenticated user.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified."
+ "default": {
+ "description": "True if the cover photo is the default cover photo;\nfalse if the cover photo is a user-provided cover photo.",
+ "type": "boolean"
},
- "updateContact": {
- "flatPath": "v1/people/{peopleId}:updateContact",
- "id": "people.people.updateContact",
- "path": "v1/{+resourceName}:updateContact",
- "request": {
- "$ref": "Person"
- },
- "description": "Update contact data for an existing contact person. Any non-contact data\nwill not be modified.\n\nThe request throws a 400 error if `updatePersonFields` is not specified.\n\u003cbr\u003e\nThe request throws a 400 error if `person.metadata.sources` is not\nspecified for the contact to be updated.\n\u003cbr\u003e\nThe request throws a 412 error if `person.metadata.sources.etag` is\ndifferent than the contact's etag, which indicates the contact has changed\nsince its data was read. Clients should get the latest person and re-apply\ntheir updates to the latest person.",
- "response": {
- "$ref": "Person"
- },
- "parameterOrder": [
- "resourceName"
- ],
- "httpMethod": "PATCH",
- "scopes": [
- "https://www.googleapis.com/auth/contacts"
- ],
- "parameters": {
- "updatePersonFields": {
- "location": "query",
- "format": "google-fieldmask",
- "description": "**Required.** A field mask to restrict which fields on the person are\nupdated. Valid values are:\n\n* addresses\n* biographies\n* birthdays\n* braggingRights\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* relations\n* residences\n* skills\n* urls",
- "type": "string"
- },
- "resourceName": {
- "type": "string",
- "required": true,
- "pattern": "^people/[^/]+$",
- "location": "path",
- "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of `people/\u003cperson_id\u003e`."
- }
- }
+ "url": {
+ "description": "The URL of the cover photo.",
+ "type": "string"
+ }
+ },
+ "id": "CoverPhoto"
+ },
+ "Interest": {
+ "properties": {
+ "metadata": {
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the interest."
},
- "createContact": {
- "id": "people.people.createContact",
- "path": "v1/people:createContact",
- "request": {
- "$ref": "Person"
- },
- "description": "Create a new contact and return the person resource for that contact.",
- "response": {
- "$ref": "Person"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/contacts"
- ],
- "parameters": {
- "parent": {
- "location": "query",
- "description": "The resource name of the owning person resource.",
- "type": "string"
- }
- },
- "flatPath": "v1/people:createContact"
+ "value": {
+ "description": "The interest; for example, `stargazing`.",
+ "type": "string"
+ }
+ },
+ "id": "Interest",
+ "description": "One of the person's interests.",
+ "type": "object"
+ },
+ "EmailAddress": {
+ "description": "A person's email address.",
+ "type": "object",
+ "properties": {
+ "displayName": {
+ "description": "The display name of the email.",
+ "type": "string"
},
- "deleteContact": {
- "flatPath": "v1/people/{peopleId}:deleteContact",
- "id": "people.people.deleteContact",
- "path": "v1/{+resourceName}:deleteContact",
- "description": "Delete a contact person. Any non-contact data will not be deleted.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "resourceName"
+ "metadata": {
+ "description": "Metadata about the email address.",
+ "$ref": "FieldMetadata"
+ },
+ "type": {
+ "description": "The type of the email address. The type can be custom or predefined.\nPossible values include, but are not limited to, the following:\n\n* `home`\n* `work`\n* `other`",
+ "type": "string"
+ },
+ "value": {
+ "description": "The email address.",
+ "type": "string"
+ },
+ "formattedType": {
+ "description": "The read-only type of the email address translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.",
+ "type": "string"
+ }
+ },
+ "id": "EmailAddress"
+ },
+ "Nickname": {
+ "description": "A person's nickname.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The nickname.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata about the nickname.",
+ "$ref": "FieldMetadata"
+ },
+ "type": {
+ "description": "The type of the nickname.",
+ "type": "string",
+ "enumDescriptions": [
+ "Generic nickname.",
+ "Maiden name or birth family name. Used when the person's family name has\nchanged as a result of marriage.",
+ "Initials.",
+ "Google+ profile nickname.",
+ "A professional affiliation or other name; for example, `Dr. Smith.`"
],
- "httpMethod": "DELETE",
- "parameters": {
- "resourceName": {
- "pattern": "^people/[^/]+$",
- "location": "path",
- "description": "The resource name of the contact to delete.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/contacts"
+ "enum": [
+ "DEFAULT",
+ "MAIDEN_NAME",
+ "INITIALS",
+ "GPLUS",
+ "OTHER_NAME"
]
}
},
- "resources": {
- "connections": {
- "methods": {
- "list": {
- "flatPath": "v1/people/{peopleId}/connections",
- "id": "people.people.connections.list",
- "path": "v1/{+resourceName}/connections",
- "description": "Provides a list of the authenticated user's contacts merged with any\nconnected profiles.\n\u003cbr\u003e\nThe request throws a 400 error if 'personFields' is not specified.",
- "response": {
- "$ref": "ListConnectionsResponse"
- },
- "parameterOrder": [
- "resourceName"
- ],
- "httpMethod": "GET",
- "parameters": {
- "syncToken": {
- "location": "query",
- "description": "A sync token, returned by a previous call to `people.connections.list`.\nOnly resources changed since the sync token was created will be returned.",
- "type": "string"
- },
- "personFields": {
- "format": "google-fieldmask",
- "description": "**Required.** A field mask to restrict which fields on each person are\nreturned. Valid values are:\n\n* addresses\n* ageRanges\n* biographies\n* birthdays\n* braggingRights\n* coverPhotos\n* emailAddresses\n* events\n* genders\n* imClients\n* interests\n* locales\n* memberships\n* metadata\n* names\n* nicknames\n* occupations\n* organizations\n* phoneNumbers\n* photos\n* relations\n* relationshipInterests\n* relationshipStatuses\n* residences\n* skills\n* taglines\n* urls",
- "type": "string",
- "location": "query"
- },
- "sortOrder": {
- "enum": [
- "LAST_MODIFIED_ASCENDING",
- "FIRST_NAME_ASCENDING",
- "LAST_NAME_ASCENDING"
- ],
- "description": "The order in which the connections should be sorted. Defaults to\n`LAST_MODIFIED_ASCENDING`.",
- "type": "string",
- "location": "query"
- },
- "requestSyncToken": {
- "description": "Whether the response should include a sync token, which can be used to get\nall changes since the last request.",
- "type": "boolean",
- "location": "query"
- },
- "pageToken": {
- "description": "The token of the page to be returned.",
- "type": "string",
- "location": "query"
- },
- "resourceName": {
- "description": "The resource name to return connections for. Only `people/me` is valid.",
- "type": "string",
- "required": true,
- "pattern": "^people/[^/]+$",
- "location": "path"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "The number of connections to include in the response. Valid values are\nbetween 1 and 2000, inclusive. Defaults to 100.",
- "type": "integer"
- },
- "requestMask.includeField": {
- "location": "query",
- "format": "google-fieldmask",
- "description": "**Required.** Comma-separated list of person fields to be included in the\nresponse. Each path should start with `person.`: for example,\n`person.names` or `person.photos`.",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/contacts",
- "https://www.googleapis.com/auth/contacts.readonly"
- ]
- }
- }
+ "id": "Nickname"
+ },
+ "Skill": {
+ "description": "A skill that the person has.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "$ref": "FieldMetadata",
+ "description": "Metadata about the skill."
+ },
+ "value": {
+ "description": "The skill; for example, `underwater basket weaving`.",
+ "type": "string"
}
- }
+ },
+ "id": "Skill"
+ },
+ "Date": {
+ "description": "Represents a whole calendar date, for example a date of birth. The time\nof day and time zone are either specified elsewhere or are not\nsignificant. The date is relative to the\n[Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).\nThe day may be 0 to represent a year and month where the day is not\nsignificant. The year may be 0 to represent a month and day independent\nof year; for example, anniversary date.",
+ "type": "object",
+ "properties": {
+ "year": {
+ "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "day": {
+ "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "month": {
+ "description": "Month of year. Must be from 1 to 12.",
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "id": "Date"
+ },
+ "Tagline": {
+ "description": "A read-only brief one-line description of the person.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata about the tagline.",
+ "$ref": "FieldMetadata"
+ },
+ "value": {
+ "description": "The tagline.",
+ "type": "string"
+ }
+ },
+ "id": "Tagline"
}
},
- "parameters": {
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "prettyPrint": {
- "location": "query",
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "uploadType": {
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string"
- },
- "$.xgafv": {
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format."
- },
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "alt": {
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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",
- "description": "Data format for response.",
- "default": "json"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "quotaUser": {
- "type": "string",
- "location": "query",
- "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."
- },
- "pp": {
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- }
- },
- "version": "v1",
- "baseUrl": "https://people.googleapis.com/",
- "kind": "discovery#restDescription",
- "description": "Provides access to information about profiles and contacts.",
- "servicePath": "",
- "basePath": ""
+ "protocol": "rest",
+ "icons": {
+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ }
}
diff --git a/vendor/google.golang.org/api/people/v1/people-gen.go b/vendor/google.golang.org/api/people/v1/people-gen.go
index 2883a94..47ff5bd 100644
--- a/vendor/google.golang.org/api/people/v1/people-gen.go
+++ b/vendor/google.golang.org/api/people/v1/people-gen.go
@@ -447,7 +447,7 @@ type ContactGroup struct {
// ResourceName: The resource name for the contact group, assigned by
// the server. An ASCII
- // string, in the form of `contactGroups/`.
+ // string, in the form of `contactGroups/`contact_group_id.
ResourceName string `json:"resourceName,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
@@ -1218,12 +1218,12 @@ func (s *Membership) MarshalJSON() ([]byte, error) {
type ModifyContactGroupMembersRequest struct {
// ResourceNamesToAdd: The resource names of the contact people to add
// in the form of in the form
- // `people/`.
+ // `people/`person_id.
ResourceNamesToAdd []string `json:"resourceNamesToAdd,omitempty"`
// ResourceNamesToRemove: The resource names of the contact people to
// remove in the form of in the
- // form of `people/`.
+ // form of `people/`person_id.
ResourceNamesToRemove []string `json:"resourceNamesToRemove,omitempty"`
// ForceSendFields is a list of field names (e.g. "ResourceNamesToAdd")
@@ -1291,14 +1291,13 @@ func (s *ModifyContactGroupMembersResponse) MarshalJSON() ([]byte, error) {
type Name struct {
// DisplayName: The read-only display name formatted according to the
// locale specified by
- // the viewer's account or the Accept-Language
HTTP header.
+ // the viewer's account or the `Accept-Language` HTTP header.
DisplayName string `json:"displayName,omitempty"`
// DisplayNameLastFirst: The read-only display name with the last name
// first formatted according to
- // the locale specified by the viewer's account or
- // the
- // Accept-Language
HTTP header.
+ // the locale specified by the viewer's account or the
+ // `Accept-Language` HTTP header.
DisplayNameLastFirst string `json:"displayNameLastFirst,omitempty"`
// FamilyName: The family name.
@@ -1620,8 +1619,9 @@ type Person struct {
// ResourceName: The resource name for the person, assigned by the
// server. An ASCII string
- // with a max length of 27 characters, in the form of
- // `people/`.
+ // with a max length of 27 characters, in the form
+ // of
+ // `people/`person_id.
ResourceName string `json:"resourceName,omitempty"`
// Skills: The person's skills.
@@ -1844,7 +1844,7 @@ type Photo struct {
// Url: The URL of the photo. You can change the desired size by
// appending a query
- // parameter `sz=` at the end of the url.
+ // parameter `sz=`size at the end of the url.
// Example:
// `https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/A
// AAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50`
@@ -1883,6 +1883,15 @@ type ProfileMetadata struct {
// "PAGE" - [Google+ Page.](http://www.google.com/+/brands/)
ObjectType string `json:"objectType,omitempty"`
+ // UserTypes: The user types.
+ //
+ // Possible values:
+ // "USER_TYPE_UNKNOWN" - The user type is not known.
+ // "GOOGLE_USER" - The user is a Google user.
+ // "GPLUS_USER" - The user is a Google+ user.
+ // "GOOGLE_APPS_USER" - The user is a Google Apps for Work user.
+ UserTypes []string `json:"userTypes,omitempty"`
+
// ForceSendFields is a list of field names (e.g. "ObjectType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
@@ -2130,18 +2139,21 @@ func (s *Skill) MarshalJSON() ([]byte, error) {
// Source: The source of a field.
type Source struct {
- // Etag: The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag)
- // of the
- // source. Used for web cache validation. Only populated
- // in
- // person.metadata.sources.
+ // Etag: **Only populated in `person.metadata.sources`.**
+ //
+ // The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of
+ // the
+ // source. Used for web cache validation.
Etag string `json:"etag,omitempty"`
// Id: The unique identifier within the source type generated by the
// server.
Id string `json:"id,omitempty"`
- // ProfileMetadata: Metadata about a source of type PROFILE.
+ // ProfileMetadata: **Only populated in
+ // `person.metadata.sources`.**
+ //
+ // Metadata about a source of type PROFILE.
ProfileMetadata *ProfileMetadata `json:"profileMetadata,omitempty"`
// Type: The source type.
@@ -2163,7 +2175,9 @@ type Source struct {
// is the source id.
Type string `json:"type,omitempty"`
- // UpdateTime: Last update timestamp of this source.
+ // UpdateTime: **Only populated in `person.metadata.sources`.**
+ //
+ // Last update timestamp of this source.
UpdateTime string `json:"updateTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "Etag") to
@@ -2273,9 +2287,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -3295,7 +3309,7 @@ func (c *ContactGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*ContactGrou
// ],
// "parameters": {
// "resourceName": {
- // "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/\u003ccontact_group_id\u003e`.",
+ // "description": "The resource name for the contact group, assigned by the server. An ASCII\nstring, in the form of `contactGroups/`\u003cvar\u003econtact_group_id\u003c/var\u003e.",
// "location": "path",
// "pattern": "^contactGroups/[^/]+$",
// "required": true,
@@ -3898,7 +3912,7 @@ func (c *PeopleGetCall) Do(opts ...googleapi.CallOption) (*Person, error) {
// "type": "string"
// },
// "resourceName": {
- // "description": "The resource name of the person to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify `people/\u003caccount_id\u003e`.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).",
+ // "description": "The resource name of the person to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).",
// "location": "path",
// "pattern": "^people/[^/]+$",
// "required": true,
@@ -3995,13 +4009,19 @@ func (c *PeopleGetBatchGetCall) RequestMaskIncludeField(requestMaskIncludeField
}
// ResourceNames sets the optional parameter "resourceNames": The
-// resource name, such as one returned
+// resource names of the people to provide information about.
+//
+// - To get information about the authenticated user, specify
+// `people/me`.
+// - To get information about a google account, specify
+// `people/`account_id.
+// - To get information about a contact, specify the resource name that
+// identifies the contact as returned
// by
// [`people.connections.list`](/people/api/rest/v1/people.connections/
-// list),
-// of one of the people to provide information about. You can include
-// this
-// parameter up to 50 times in one request.
+// list).
+//
+// You can include up to 50 resource names in one request.
func (c *PeopleGetBatchGetCall) ResourceNames(resourceNames ...string) *PeopleGetBatchGetCall {
c.urlParams_.SetMulti("resourceNames", append([]string{}, resourceNames...))
return c
@@ -4117,7 +4137,7 @@ func (c *PeopleGetBatchGetCall) Do(opts ...googleapi.CallOption) (*GetPeopleResp
// "type": "string"
// },
// "resourceNames": {
- // "description": "The resource name, such as one returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list),\nof one of the people to provide information about. You can include this\nparameter up to 50 times in one request.",
+ // "description": "The resource names of the people to provide information about.\n\n- To get information about the authenticated user, specify `people/me`.\n- To get information about a google account, specify\n `people/`\u003cvar\u003eaccount_id\u003c/var\u003e.\n- To get information about a contact, specify the resource name that\n identifies the contact as returned by\n[`people.connections.list`](/people/api/rest/v1/people.connections/list).\n\nYou can include up to 50 resource names in one request.",
// "location": "query",
// "repeated": true,
// "type": "string"
@@ -4302,7 +4322,7 @@ func (c *PeopleUpdateContactCall) Do(opts ...googleapi.CallOption) (*Person, err
// ],
// "parameters": {
// "resourceName": {
- // "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of `people/\u003cperson_id\u003e`.",
+ // "description": "The resource name for the person, assigned by the server. An ASCII string\nwith a max length of 27 characters, in the form of\n`people/`\u003cvar\u003eperson_id\u003c/var\u003e.",
// "location": "path",
// "pattern": "^people/[^/]+$",
// "required": true,
diff --git a/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-api.json b/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-api.json
index 450eba7..1152280 100644
--- a/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-api.json
+++ b/vendor/google.golang.org/api/playmoviespartner/v1/playmoviespartner-api.json
@@ -1,9 +1,4 @@
{
- "batchPath": "batch",
- "revision": "20170627",
- "documentationLink": "https://developers.google.com/playmoviespartner/",
- "id": "playmoviespartner:v1",
- "title": "Google Play Movies Partner API",
"ownerName": "Google",
"discoveryVersion": "v1",
"resources": {
@@ -12,24 +7,16 @@
"orders": {
"methods": {
"list": {
- "httpMethod": "GET",
"response": {
"$ref": "ListOrdersResponse"
},
"parameterOrder": [
"accountId"
],
- "scopes": [
- "https://www.googleapis.com/auth/playmovies_partner.readonly"
- ],
+ "httpMethod": "GET",
"parameters": {
- "pphNames": {
- "description": "See _List methods rules_ for info about this field.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
"status": {
+ "description": "Filter Orders that match one of the given status.",
"type": "string",
"repeated": true,
"location": "query",
@@ -40,8 +27,7 @@
"STATUS_PROCESSING",
"STATUS_UNFULFILLED",
"STATUS_NOT_AVAILABLE"
- ],
- "description": "Filter Orders that match one of the given status."
+ ]
},
"name": {
"description": "Filter that matches Orders with a `name`, `show`, `season` or `episode`\nthat contains the given case-insensitive name.",
@@ -49,10 +35,10 @@
"location": "query"
},
"studioNames": {
- "location": "query",
"description": "See _List methods rules_ for info about this field.",
"type": "string",
- "repeated": true
+ "repeated": true,
+ "location": "query"
},
"accountId": {
"location": "path",
@@ -60,46 +46,53 @@
"type": "string",
"required": true
},
- "customId": {
- "description": "Filter Orders that match a case-insensitive, partner-specific custom id.",
- "type": "string",
- "location": "query"
- },
"videoIds": {
"description": "Filter Orders that match any of the given `video_id`s.",
"type": "string",
"repeated": true,
"location": "query"
},
- "pageToken": {
+ "customId": {
+ "description": "Filter Orders that match a case-insensitive, partner-specific custom id.",
"type": "string",
+ "location": "query"
+ },
+ "pageToken": {
"location": "query",
- "description": "See _List methods rules_ for info about this field."
+ "description": "See _List methods rules_ for info about this field.",
+ "type": "string"
},
"pageSize": {
- "location": "query",
"format": "int32",
"description": "See _List methods rules_ for info about this field.",
- "type": "integer"
+ "type": "integer",
+ "location": "query"
+ },
+ "pphNames": {
+ "description": "See _List methods rules_ for info about this field.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
}
},
+ "scopes": [
+ "https://www.googleapis.com/auth/playmovies_partner.readonly"
+ ],
"flatPath": "v1/accounts/{accountId}/orders",
- "path": "v1/accounts/{accountId}/orders",
"id": "playmoviespartner.accounts.orders.list",
+ "path": "v1/accounts/{accountId}/orders",
"description": "List Orders owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method."
},
"get": {
+ "description": "Get an Order given its id.\n\nSee _Authentication and Authorization rules_ and\n_Get methods rules_ for more information about this method.",
+ "httpMethod": "GET",
"response": {
"$ref": "Order"
},
- "httpMethod": "GET",
"parameterOrder": [
"accountId",
"orderId"
],
- "scopes": [
- "https://www.googleapis.com/auth/playmovies_partner.readonly"
- ],
"parameters": {
"orderId": {
"description": "REQUIRED. Order ID.",
@@ -108,64 +101,39 @@
"location": "path"
},
"accountId": {
- "location": "path",
- "description": "REQUIRED. See _General rules_ for more information about this field.",
"type": "string",
- "required": true
+ "required": true,
+ "location": "path",
+ "description": "REQUIRED. See _General rules_ for more information about this field."
}
},
+ "scopes": [
+ "https://www.googleapis.com/auth/playmovies_partner.readonly"
+ ],
"flatPath": "v1/accounts/{accountId}/orders/{orderId}",
- "id": "playmoviespartner.accounts.orders.get",
"path": "v1/accounts/{accountId}/orders/{orderId}",
- "description": "Get an Order given its id.\n\nSee _Authentication and Authorization rules_ and\n_Get methods rules_ for more information about this method."
+ "id": "playmoviespartner.accounts.orders.get"
}
}
},
"avails": {
"methods": {
"list": {
+ "response": {
+ "$ref": "ListAvailsResponse"
+ },
+ "parameterOrder": [
+ "accountId"
+ ],
+ "httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/playmovies_partner.readonly"
],
"parameters": {
- "title": {
- "type": "string",
- "location": "query",
- "description": "Filter that matches Avails with a `title_internal_alias`,\n`series_title_internal_alias`, `season_title_internal_alias`,\nor `episode_title_internal_alias` that contains the given\ncase-insensitive title."
- },
- "pageToken": {
- "location": "query",
- "description": "See _List methods rules_ for info about this field.",
- "type": "string"
- },
- "videoIds": {
- "description": "Filter Avails that match any of the given `video_id`s.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "See _List methods rules_ for info about this field.",
- "type": "integer"
- },
- "altIds": {
- "repeated": true,
- "location": "query",
- "description": "Filter Avails that match (case-insensitive) any of the given partner-specific custom ids.",
- "type": "string"
- },
- "pphNames": {
- "type": "string",
- "repeated": true,
- "location": "query",
- "description": "See _List methods rules_ for info about this field."
- },
"altId": {
- "location": "query",
"description": "Filter Avails that match a case-insensitive, partner-specific custom id.\nNOTE: this field is deprecated and will be removed on V2; `alt_ids`\nshould be used instead.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"studioNames": {
"location": "query",
@@ -184,24 +152,48 @@
"description": "Filter Avails that match (case-insensitive) any of the given country codes,\nusing the \"ISO 3166-1 alpha-2\" format (examples: \"US\", \"us\", \"Us\").",
"type": "string",
"repeated": true
+ },
+ "title": {
+ "location": "query",
+ "description": "Filter that matches Avails with a `title_internal_alias`,\n`series_title_internal_alias`, `season_title_internal_alias`,\nor `episode_title_internal_alias` that contains the given\ncase-insensitive title.",
+ "type": "string"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "See _List methods rules_ for info about this field.",
+ "type": "string"
+ },
+ "videoIds": {
+ "repeated": true,
+ "location": "query",
+ "description": "Filter Avails that match any of the given `video_id`s.",
+ "type": "string"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "See _List methods rules_ for info about this field.",
+ "type": "integer"
+ },
+ "altIds": {
+ "description": "Filter Avails that match (case-insensitive) any of the given partner-specific custom ids.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "pphNames": {
+ "type": "string",
+ "repeated": true,
+ "location": "query",
+ "description": "See _List methods rules_ for info about this field."
}
},
"flatPath": "v1/accounts/{accountId}/avails",
"id": "playmoviespartner.accounts.avails.list",
"path": "v1/accounts/{accountId}/avails",
- "description": "List Avails owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method.",
- "response": {
- "$ref": "ListAvailsResponse"
- },
- "parameterOrder": [
- "accountId"
- ],
- "httpMethod": "GET"
+ "description": "List Avails owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method."
},
"get": {
- "flatPath": "v1/accounts/{accountId}/avails/{availId}",
- "path": "v1/accounts/{accountId}/avails/{availId}",
- "id": "playmoviespartner.accounts.avails.get",
"description": "Get an Avail given its avail group id and avail id.",
"httpMethod": "GET",
"parameterOrder": [
@@ -213,57 +205,77 @@
},
"parameters": {
"availId": {
- "location": "path",
"description": "REQUIRED. Avail ID.",
"type": "string",
- "required": true
- },
- "accountId": {
- "description": "REQUIRED. See _General rules_ for more information about this field.",
- "type": "string",
"required": true,
"location": "path"
+ },
+ "accountId": {
+ "location": "path",
+ "description": "REQUIRED. See _General rules_ for more information about this field.",
+ "type": "string",
+ "required": true
}
},
"scopes": [
"https://www.googleapis.com/auth/playmovies_partner.readonly"
- ]
+ ],
+ "flatPath": "v1/accounts/{accountId}/avails/{availId}",
+ "path": "v1/accounts/{accountId}/avails/{availId}",
+ "id": "playmoviespartner.accounts.avails.get"
}
}
},
"storeInfos": {
"methods": {
"list": {
+ "httpMethod": "GET",
"response": {
"$ref": "ListStoreInfosResponse"
},
"parameterOrder": [
"accountId"
],
- "httpMethod": "GET",
"parameters": {
+ "name": {
+ "location": "query",
+ "description": "Filter that matches StoreInfos with a `name` or `show_name`\nthat contains the given case-insensitive name.",
+ "type": "string"
+ },
+ "studioNames": {
+ "location": "query",
+ "description": "See _List methods rules_ for info about this field.",
+ "type": "string",
+ "repeated": true
+ },
+ "accountId": {
+ "description": "REQUIRED. See _General rules_ for more information about this field.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
"seasonIds": {
"location": "query",
"description": "Filter StoreInfos that match any of the given `season_id`s.",
"type": "string",
"repeated": true
},
- "pageToken": {
- "location": "query",
- "description": "See _List methods rules_ for info about this field.",
- "type": "string"
- },
- "videoId": {
- "location": "query",
- "description": "Filter StoreInfos that match a given `video_id`.\nNOTE: this field is deprecated and will be removed on V2; `video_ids`\nshould be used instead.",
- "type": "string"
- },
"videoIds": {
"description": "Filter StoreInfos that match any of the given `video_id`s.",
"type": "string",
"repeated": true,
"location": "query"
},
+ "videoId": {
+ "description": "Filter StoreInfos that match a given `video_id`.\nNOTE: this field is deprecated and will be removed on V2; `video_ids`\nshould be used instead.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "See _List methods rules_ for info about this field.",
+ "type": "string"
+ },
"pageSize": {
"format": "int32",
"description": "See _List methods rules_ for info about this field.",
@@ -283,35 +295,18 @@
"location": "query"
},
"countries": {
- "repeated": true,
- "location": "query",
"description": "Filter StoreInfos that match (case-insensitive) any of the given country\ncodes, using the \"ISO 3166-1 alpha-2\" format (examples: \"US\", \"us\", \"Us\").",
- "type": "string"
- },
- "studioNames": {
+ "type": "string",
"repeated": true,
- "location": "query",
- "description": "See _List methods rules_ for info about this field.",
- "type": "string"
- },
- "name": {
- "description": "Filter that matches StoreInfos with a `name` or `show_name`\nthat contains the given case-insensitive name.",
- "type": "string",
"location": "query"
- },
- "accountId": {
- "type": "string",
- "required": true,
- "location": "path",
- "description": "REQUIRED. See _General rules_ for more information about this field."
}
},
"scopes": [
"https://www.googleapis.com/auth/playmovies_partner.readonly"
],
"flatPath": "v1/accounts/{accountId}/storeInfos",
- "id": "playmoviespartner.accounts.storeInfos.list",
"path": "v1/accounts/{accountId}/storeInfos",
+ "id": "playmoviespartner.accounts.storeInfos.list",
"description": "List StoreInfos owned or managed by the partner.\n\nSee _Authentication and Authorization rules_ and\n_List methods rules_ for more information about this method."
}
},
@@ -319,7 +314,11 @@
"country": {
"methods": {
"get": {
+ "flatPath": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}",
+ "path": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}",
+ "id": "playmoviespartner.accounts.storeInfos.country.get",
"description": "Get a StoreInfo given its video id and country.\n\nSee _Authentication and Authorization rules_ and\n_Get methods rules_ for more information about this method.",
+ "httpMethod": "GET",
"response": {
"$ref": "StoreInfo"
},
@@ -328,19 +327,21 @@
"videoId",
"country"
],
- "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/playmovies_partner.readonly"
+ ],
"parameters": {
"country": {
+ "location": "path",
"description": "REQUIRED. Edit country.",
"type": "string",
- "required": true,
- "location": "path"
+ "required": true
},
"videoId": {
+ "location": "path",
"description": "REQUIRED. Video ID.",
"type": "string",
- "required": true,
- "location": "path"
+ "required": true
},
"accountId": {
"location": "path",
@@ -348,13 +349,7 @@
"type": "string",
"required": true
}
- },
- "scopes": [
- "https://www.googleapis.com/auth/playmovies_partner.readonly"
- ],
- "flatPath": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}",
- "id": "playmoviespartner.accounts.storeInfos.country.get",
- "path": "v1/accounts/{accountId}/storeInfos/{videoId}/country/{country}"
+ }
}
}
}
@@ -365,15 +360,15 @@
},
"parameters": {
"upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string",
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
+ "location": "query"
},
"prettyPrint": {
- "location": "query",
"description": "Returns response with indentations and line breaks.",
"default": "true",
- "type": "boolean"
+ "type": "boolean",
+ "location": "query"
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
@@ -399,9 +394,9 @@
"location": "query"
},
"callback": {
- "location": "query",
"description": "JSONP",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"alt": {
"description": "Data format for response.",
@@ -420,9 +415,9 @@
"location": "query"
},
"key": {
+ "location": "query",
"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.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"access_token": {
"location": "query",
@@ -430,15 +425,15 @@
"type": "string"
},
"quotaUser": {
+ "location": "query",
"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.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"pp": {
+ "location": "query",
"description": "Pretty-print response.",
"default": "true",
- "type": "boolean",
- "location": "query"
+ "type": "boolean"
},
"bearer_token": {
"description": "OAuth bearer token.",
@@ -453,6 +448,8 @@
},
"schemas": {
"Order": {
+ "description": "An Order tracks the fulfillment of an Edit when delivered using the\nlegacy, non-component-based delivery.\n\nEach Order is uniquely identified by an `order_id`, which is generated\nby Google.\n\nExternally, Orders can also be identified by partners using its `custom_id`\n(when provided).",
+ "type": "object",
"properties": {
"showName": {
"description": "Default Show name,\nusually in the language of the country of origin.\nOnly available for TV Edits\nExample: \"Googlers, The\".",
@@ -477,8 +474,6 @@
"type": "string"
},
"type": {
- "description": "Type of the Edit linked to the Order.",
- "type": "string",
"enumDescriptions": [
"Value could not be determined, please contact technical support if\nit should.",
"A movie picture.",
@@ -492,7 +487,9 @@
"SEASON",
"EPISODE",
"BUNDLE"
- ]
+ ],
+ "description": "Type of the Edit linked to the Order.",
+ "type": "string"
},
"rejectionNote": {
"description": "Field explaining why an Order has been rejected.\nExample: \"Trailer audio is 2ch mono, please re-deliver in stereo\".",
@@ -502,14 +499,14 @@
"description": "YouTube Channel ID that should be used to fulfill the Order.\nExample: \"UCRG64darCZhb\".",
"type": "string"
},
- "legacyPriority": {
- "description": "Legacy Order priority, as defined by Google.\nExample: 'P0'",
- "type": "string"
- },
"pphName": {
"description": "Name of the post-production house that manages the Edit ordered.",
"type": "string"
},
+ "legacyPriority": {
+ "description": "Legacy Order priority, as defined by Google.\nExample: 'P0'",
+ "type": "string"
+ },
"priority": {
"format": "double",
"description": "Order priority, as defined by Google.\nThe higher the value, the higher the priority.\nExample: 90",
@@ -535,31 +532,10 @@
},
"type": "array"
},
- "statusDetail": {
- "description": "Detailed status of the order",
+ "earliestAvailStartTime": {
"type": "string",
- "enumDescriptions": [
- "Value could not be determined, please contact technical support if\nit should.",
- "Approved by Google's Quality Control team.",
- "Rejected by Google's Quality Control team, pending partner redelivery.",
- "Internal error while processing the Order.",
- "Waiting for initial delivery from partner.",
- "Used on Orders that do not have Status, like TV Seasons.",
- "Waiting for re-delivery from partner.",
- "Asset was delivered by partner, but is being reviewed by Google's\nQuality Control team.",
- "Waiting for Google to process the asset."
- ],
- "enum": [
- "ORDER_STATUS_UNSPECIFIED",
- "ORDER_STATUS_QC_APPROVED",
- "ORDER_STATUS_QC_REJECTION",
- "ORDER_STATUS_INTERNAL_FIX",
- "ORDER_STATUS_OPEN_ORDER",
- "ORDER_STATUS_NOT_AVAILABLE",
- "ORDER_STATUS_AWAITING_REDELIVERY",
- "ORDER_STATUS_READY_FOR_QC",
- "ORDER_STATUS_FILE_PROCESSING"
- ]
+ "format": "google-datetime",
+ "description": "Timestamp of the earliest start date of the Avails\nlinked to this Order."
},
"status": {
"enum": [
@@ -581,9 +557,30 @@
"Used when Status is not available (i.e: Orders for TV Seasons)."
]
},
- "earliestAvailStartTime": {
- "format": "google-datetime",
- "description": "Timestamp of the earliest start date of the Avails\nlinked to this Order.",
+ "statusDetail": {
+ "enumDescriptions": [
+ "Value could not be determined, please contact technical support if\nit should.",
+ "Approved by Google's Quality Control team.",
+ "Rejected by Google's Quality Control team, pending partner redelivery.",
+ "Internal error while processing the Order.",
+ "Waiting for initial delivery from partner.",
+ "Used on Orders that do not have Status, like TV Seasons.",
+ "Waiting for re-delivery from partner.",
+ "Asset was delivered by partner, but is being reviewed by Google's\nQuality Control team.",
+ "Waiting for Google to process the asset."
+ ],
+ "enum": [
+ "ORDER_STATUS_UNSPECIFIED",
+ "ORDER_STATUS_QC_APPROVED",
+ "ORDER_STATUS_QC_REJECTION",
+ "ORDER_STATUS_INTERNAL_FIX",
+ "ORDER_STATUS_OPEN_ORDER",
+ "ORDER_STATUS_NOT_AVAILABLE",
+ "ORDER_STATUS_AWAITING_REDELIVERY",
+ "ORDER_STATUS_READY_FOR_QC",
+ "ORDER_STATUS_FILE_PROCESSING"
+ ],
+ "description": "Detailed status of the order",
"type": "string"
},
"name": {
@@ -600,16 +597,16 @@
"type": "string"
},
"seasonName": {
- "type": "string",
- "description": "Default Season name,\nusually in the language of the country of origin.\nOnly available for TV Edits\nExample: \"Googlers, The - A Brave New World\"."
+ "description": "Default Season name,\nusually in the language of the country of origin.\nOnly available for TV Edits\nExample: \"Googlers, The - A Brave New World\".",
+ "type": "string"
},
"customId": {
"description": "ID that can be used to externally identify an Order.\nThis ID is provided by partners when submitting the Avails.\nExample: 'GOOGLER_2006'",
"type": "string"
},
"channelName": {
- "description": "YouTube Channel Name that should be used to fulfill the Order.\nExample: \"Google_channel\".",
- "type": "string"
+ "type": "string",
+ "description": "YouTube Channel Name that should be used to fulfill the Order.\nExample: \"Google_channel\"."
},
"approvedTime": {
"format": "google-datetime",
@@ -617,11 +614,10 @@
"type": "string"
}
},
- "id": "Order",
- "description": "An Order tracks the fulfillment of an Edit when delivered using the\nlegacy, non-component-based delivery.\n\nEach Order is uniquely identified by an `order_id`, which is generated\nby Google.\n\nExternally, Orders can also be identified by partners using its `custom_id`\n(when provided).",
- "type": "object"
+ "id": "Order"
},
"ListStoreInfosResponse": {
+ "id": "ListStoreInfosResponse",
"description": "Response to the 'ListStoreInfos' method.",
"type": "object",
"properties": {
@@ -630,24 +626,30 @@
"type": "string"
},
"totalSize": {
- "type": "integer",
"format": "int32",
- "description": "See _List methods rules_ for more information about this field."
+ "description": "See _List methods rules_ for more information about this field.",
+ "type": "integer"
},
"storeInfos": {
- "description": "List of StoreInfos that match the request criteria.",
"items": {
"$ref": "StoreInfo"
},
- "type": "array"
+ "type": "array",
+ "description": "List of StoreInfos that match the request criteria."
}
- },
- "id": "ListStoreInfosResponse"
+ }
},
"ListAvailsResponse": {
"description": "Response to the 'ListAvails' method.",
"type": "object",
"properties": {
+ "avails": {
+ "items": {
+ "$ref": "Avail"
+ },
+ "type": "array",
+ "description": "List of Avails that match the request criteria."
+ },
"nextPageToken": {
"description": "See _List methods rules_ for info about this field.",
"type": "string"
@@ -656,173 +658,63 @@
"format": "int32",
"description": "See _List methods rules_ for more information about this field.",
"type": "integer"
- },
- "avails": {
- "description": "List of Avails that match the request criteria.",
- "items": {
- "$ref": "Avail"
- },
- "type": "array"
}
},
"id": "ListAvailsResponse"
},
- "ListOrdersResponse": {
+ "Avail": {
+ "type": "object",
"properties": {
- "totalSize": {
- "format": "int32",
- "description": "See _List methods rules_ for more information about this field.",
- "type": "integer"
- },
- "orders": {
- "description": "List of Orders that match the request criteria.",
- "items": {
- "$ref": "Order"
- },
- "type": "array"
- },
- "nextPageToken": {
- "description": "See _List methods rules_ for info about this field.",
- "type": "string"
- }
- },
- "id": "ListOrdersResponse",
- "description": "Response to the 'ListOrders' method.",
- "type": "object"
- },
- "StoreInfo": {
- "properties": {
- "subtitles": {
- "description": "Subtitles available for this Edit.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "audioTracks": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "Audio tracks available for this Edit."
- },
- "showName": {
- "type": "string",
- "description": "Default Show name, usually in the language of the country of\norigin.\nOnly available for TV Edits\nExample: \"Googlers, The\"."
- },
- "country": {
- "description": "Country where Edit is available in ISO 3166-1 alpha-2 country\ncode.\nExample: \"US\".",
+ "suppressionLiftDate": {
+ "description": "First date an Edit could be publically announced as becoming\navailable at a specific future date in territory of Avail.\n*Not* the Avail start date or pre-order start date.\nFormat is YYYY-MM-DD.\nOnly available for pre-orders.\nExample: \"2012-12-10\"",
"type": "string"
},
- "showId": {
- "description": "Google-generated ID identifying the show linked to the Edit.\nOnly available for TV Edits.\nExample: 'et2hsue_x'",
+ "seasonAltId": {
+ "description": "Other identifier referring to the season, as defined by partner.\nOnly available on TV avails.\nExample: \"rs_googlers_s1\".",
"type": "string"
},
- "type": {
+ "encodeId": {
+ "description": "Manifestation Identifier. This should be the Manifestation\nLevel EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-7\"",
+ "type": "string"
+ },
+ "priceType": {
+ "description": "Type of pricing that should be applied to this Avail\nbased on how the partner classify them.\nExample: \"Tier\", \"WSP\", \"SRP\", or \"Category\".",
+ "type": "string"
+ },
+ "captionIncluded": {
+ "description": "Communicating if caption file will be delivered.",
+ "type": "boolean"
+ },
+ "seasonNumber": {
+ "description": "The number assigned to the season within a series.\nOnly available on TV Avails.\nExample: \"1\".",
+ "type": "string"
+ },
+ "licenseType": {
"enum": [
- "TITLE_TYPE_UNSPECIFIED",
- "MOVIE",
- "SEASON",
- "EPISODE",
- "BUNDLE"
+ "LICENSE_TYPE_UNSPECIFIED",
+ "EST",
+ "VOD",
+ "SVOD",
+ "POEST"
],
- "description": "Edit type, like Movie, Episode or Season.",
+ "description": "Type of transaction.",
"type": "string",
"enumDescriptions": [
"Value could not be determined, please contact technical support if\nit should.",
- "A movie picture.",
- "A season of a TV show.",
- "An episode of a TV show.",
- "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\""
+ "Electronic Sell Through - purchase policy for unlimited viewing.",
+ "Video On Demand - rental policy for temporary viewing.",
+ "Subscription Video On Demand - used for subscription platforms.\nNot supported on Google Play.",
+ "Pre-order Electronic Sell Through - pre-order purchase only window."
]
},
- "trailerId": {
- "type": "string",
- "description": "Google-generated ID identifying the trailer linked to the Edit.\nExample: 'bhd_4e_cx'"
- },
- "hasHdOffer": {
- "description": "Whether the Edit has a HD offer.",
- "type": "boolean"
- },
- "mid": {
- "description": "Knowledge Graph ID associated to this Edit, if available.\nThis ID links the Edit to its knowledge entity, externally accessible\nat http://freebase.com.\nIn the absense of Title EIDR or Edit EIDR, this ID helps link together\nmultiple Edits across countries.\nExample: '/m/0ffx29'",
+ "releaseDate": {
+ "description": "Release date of the Title in earliest released territory.\nTypically it is just the year, but it is free-form as per EMA spec.\nExamples: \"1979\", \"Oct 2014\"",
"type": "string"
},
- "hasAudio51": {
- "description": "Whether the Edit has a 5.1 channel audio track.",
- "type": "boolean"
- },
- "name": {
- "type": "string",
- "description": "Default Edit name, usually in the language of the country of\norigin.\nExample: \"Googlers, The\"."
- },
- "seasonId": {
- "description": "Google-generated ID identifying the season linked to the Edit.\nOnly available for TV Edits.\nExample: 'ster23ex'",
+ "end": {
+ "description": "End of term in YYYY-MM-DD format in the timezone of the country\nof the Avail.\n\"Open\" if no end date is available.\nExample: \"2019-02-17\"",
"type": "string"
},
- "titleLevelEidr": {
- "type": "string",
- "description": "Title-level EIDR ID.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-5\"."
- },
- "seasonName": {
- "description": "Default Season name, usually in the language of the country of\norigin.\nOnly available for TV Edits\nExample: \"Googlers, The - A Brave New World\".",
- "type": "string"
- },
- "seasonNumber": {
- "description": "The number assigned to the season within a show.\nOnly available on TV Edits.\nExample: \"1\".",
- "type": "string"
- },
- "editLevelEidr": {
- "description": "Edit-level EIDR ID.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-6\".",
- "type": "string"
- },
- "hasEstOffer": {
- "description": "Whether the Edit has a EST offer.",
- "type": "boolean"
- },
- "hasSdOffer": {
- "description": "Whether the Edit has a SD offer.",
- "type": "boolean"
- },
- "videoId": {
- "description": "Google-generated ID identifying the video linked to the Edit.\nExample: 'gtry456_xc'",
- "type": "string"
- },
- "liveTime": {
- "format": "google-datetime",
- "description": "Timestamp when the Edit went live on the Store.",
- "type": "string"
- },
- "hasInfoCards": {
- "description": "Whether the Edit has info cards.",
- "type": "boolean"
- },
- "hasVodOffer": {
- "type": "boolean",
- "description": "Whether the Edit has a VOD offer."
- },
- "pphNames": {
- "description": "Name of the post-production houses that manage the Edit.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "episodeNumber": {
- "type": "string",
- "description": "The number assigned to the episode within a season.\nOnly available on TV Edits.\nExample: \"1\"."
- },
- "studioName": {
- "description": "Name of the studio that owns the Edit ordered.",
- "type": "string"
- }
- },
- "id": "StoreInfo",
- "description": "Information about a playable sequence (video) associated with an Edit\nand available at the Google Play Store.\n\nInternally, each StoreInfo is uniquely identified by a `video_id`\nand `country`.\n\nExternally, Title-level EIDR or Edit-level EIDR, if provided,\ncan also be used to identify a specific title or edit in a country.",
- "type": "object"
- },
- "Avail": {
- "properties": {
"videoId": {
"description": "Google-generated ID identifying the video linked to this Avail, once\ndelivered.\nNot part of EMA Specs.\nExample: 'gtry456_xc'",
"type": "string"
@@ -847,24 +739,18 @@
"type": "string"
},
"altId": {
- "description": "Other identifier referring to the Edit, as defined by partner.\nExample: \"GOOGLER_2006\"",
- "type": "string"
+ "type": "string",
+ "description": "Other identifier referring to the Edit, as defined by partner.\nExample: \"GOOGLER_2006\""
},
"episodeNumber": {
"description": "The number assigned to the episode within a season.\nOnly available on TV Avails.\nExample: \"3\".",
"type": "string"
},
"seriesTitleInternalAlias": {
- "type": "string",
- "description": "Title used by involved parties to refer to this series.\nOnly available on TV Avails.\nExample: \"Googlers, The\"."
+ "description": "Title used by involved parties to refer to this series.\nOnly available on TV Avails.\nExample: \"Googlers, The\".",
+ "type": "string"
},
"formatProfile": {
- "enumDescriptions": [
- "Value could not be determined, please contact technical support if\nit should.",
- "Standard-definition format.",
- "High-definition format.",
- "4K UHD."
- ],
"enum": [
"FORMAT_PROFILE_UNSPECIFIED",
"SD",
@@ -872,28 +758,30 @@
"UHD"
],
"description": "Indicates the format profile covered by the transaction.",
- "type": "string"
+ "type": "string",
+ "enumDescriptions": [
+ "Value could not be determined, please contact technical support if\nit should.",
+ "Standard-definition format.",
+ "High-definition format.",
+ "4K UHD."
+ ]
},
- "contentId": {
- "description": "Title Identifier. This should be the Title Level EIDR.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-5\".",
+ "ratingValue": {
+ "description": "Value representing the rating.\nRatings should be formatted as per http://www.movielabs.com/md/ratings/\nExample: \"PG\"",
"type": "string"
},
"titleInternalAlias": {
"description": "Title used by involved parties to refer to this content.\nExample: \"Googlers, The\".\nOnly available on Movie Avails.",
"type": "string"
},
- "ratingValue": {
- "description": "Value representing the rating.\nRatings should be formatted as per http://www.movielabs.com/md/ratings/\nExample: \"PG\"",
+ "contentId": {
+ "description": "Title Identifier. This should be the Title Level EIDR.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-5\".",
"type": "string"
},
"storeLanguage": {
"description": "Spoken language of the intended audience.\nLanguage shall be encoded in accordance with RFC 5646.\nExample: \"fr\".",
"type": "string"
},
- "productId": {
- "description": "Edit Identifier. This should be the Edit Level EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-6\"",
- "type": "string"
- },
"displayName": {
"description": "The name of the studio that owns the Edit referred in the Avail.\nThis is the equivalent of `studio_name` in other resources, but it follows\nthe EMA nomenclature.\nExample: \"Google Films\".",
"type": "string"
@@ -902,23 +790,113 @@
"description": "Communicating an exempt category as defined by FCC regulations.\nIt is not required for non-US Avails.\nExample: \"1\"",
"type": "string"
},
+ "productId": {
+ "description": "Edit Identifier. This should be the Edit Level EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-6\"",
+ "type": "string"
+ },
"seasonTitleInternalAlias": {
"description": "Title used by involved parties to refer to this season.\nOnly available on TV Avails.\nExample: \"Googlers, The\".",
"type": "string"
},
- "priceValue": {
- "description": "Value to be applied to the pricing type.\nExample: \"4\" or \"2.99\"",
- "type": "string"
- },
"episodeAltId": {
"description": "Other identifier referring to the episode, as defined by partner.\nOnly available on TV avails.\nExample: \"rs_googlers_s1_3\".",
"type": "string"
},
+ "priceValue": {
+ "description": "Value to be applied to the pricing type.\nExample: \"4\" or \"2.99\"",
+ "type": "string"
+ },
"territory": {
"description": "ISO 3166-1 alpha-2 country code for the country or territory\nof this Avail.\nFor Avails, we use Territory in lieu of Country to comply with\nEMA specifications.\nBut please note that Territory and Country identify the same thing.\nExample: \"US\".",
"type": "string"
},
"workType": {
+ "description": "Work type as enumerated in EMA.",
+ "type": "string",
+ "enumDescriptions": [
+ "Value could not be determined, please contact technical support if\nit should.",
+ "A movie picture.",
+ "A season of a TV show.",
+ "An episode of a TV show.",
+ "A collection of movies, i.e. \"Googlers 1 and Googlers, the return\""
+ ],
+ "enum": [
+ "TITLE_TYPE_UNSPECIFIED",
+ "MOVIE",
+ "SEASON",
+ "EPISODE",
+ "BUNDLE"
+ ]
+ },
+ "availId": {
+ "description": "ID internally generated by Google to uniquely identify an Avail.\nNot part of EMA Specs.",
+ "type": "string"
+ },
+ "ratingReason": {
+ "description": "Value representing the rating reason.\nRating reasons should be formatted as per\n[EMA ratings spec](http://www.movielabs.com/md/ratings/)\nand comma-separated for inclusion of multiple reasons.\nExample: \"L, S, V\"",
+ "type": "string"
+ },
+ "episodeTitleInternalAlias": {
+ "type": "string",
+ "description": "OPTIONAL.TV Only. Title used by involved parties to refer to this episode.\nOnly available on TV Avails.\nExample: \"Coding at Google\"."
+ }
+ },
+ "id": "Avail",
+ "description": "An Avail describes the Availability Window of a specific Edit in a given\ncountry, which means the period Google is allowed to sell or rent the Edit.\n\nAvails are exposed in EMA format Version 1.6b (available at\nhttp://www.movielabs.com/md/avails/)\n\nStudios can see the Avails for the Titles they own.\nPost-production houses cannot see any Avails."
+ },
+ "ListOrdersResponse": {
+ "description": "Response to the 'ListOrders' method.",
+ "type": "object",
+ "properties": {
+ "orders": {
+ "description": "List of Orders that match the request criteria.",
+ "items": {
+ "$ref": "Order"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "See _List methods rules_ for info about this field.",
+ "type": "string"
+ },
+ "totalSize": {
+ "format": "int32",
+ "description": "See _List methods rules_ for more information about this field.",
+ "type": "integer"
+ }
+ },
+ "id": "ListOrdersResponse"
+ },
+ "StoreInfo": {
+ "type": "object",
+ "properties": {
+ "subtitles": {
+ "description": "Subtitles available for this Edit.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "audioTracks": {
+ "description": "Audio tracks available for this Edit.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "showName": {
+ "description": "Default Show name, usually in the language of the country of\norigin.\nOnly available for TV Edits\nExample: \"Googlers, The\".",
+ "type": "string"
+ },
+ "country": {
+ "description": "Country where Edit is available in ISO 3166-1 alpha-2 country\ncode.\nExample: \"US\".",
+ "type": "string"
+ },
+ "showId": {
+ "description": "Google-generated ID identifying the show linked to the Edit.\nOnly available for TV Edits.\nExample: 'et2hsue_x'",
+ "type": "string"
+ },
+ "type": {
"enumDescriptions": [
"Value could not be determined, please contact technical support if\nit should.",
"A movie picture.",
@@ -933,82 +911,99 @@
"EPISODE",
"BUNDLE"
],
- "description": "Work type as enumerated in EMA.",
+ "description": "Edit type, like Movie, Episode or Season.",
"type": "string"
},
- "availId": {
- "description": "ID internally generated by Google to uniquely identify an Avail.\nNot part of EMA Specs.",
+ "trailerId": {
+ "description": "Google-generated ID identifying the trailer linked to the Edit.\nExample: 'bhd_4e_cx'",
"type": "string"
},
- "ratingReason": {
- "description": "Value representing the rating reason.\nRating reasons should be formatted as per\n[EMA ratings spec](http://www.movielabs.com/md/ratings/)\nand comma-separated for inclusion of multiple reasons.\nExample: \"L, S, V\"",
+ "hasHdOffer": {
+ "description": "Whether the Edit has a HD offer.",
+ "type": "boolean"
+ },
+ "mid": {
+ "description": "Knowledge Graph ID associated to this Edit, if available.\nThis ID links the Edit to its knowledge entity, externally accessible\nat http://freebase.com.\nIn the absense of Title EIDR or Edit EIDR, this ID helps link together\nmultiple Edits across countries.\nExample: '/m/0ffx29'",
"type": "string"
},
- "episodeTitleInternalAlias": {
- "description": "OPTIONAL.TV Only. Title used by involved parties to refer to this episode.\nOnly available on TV Avails.\nExample: \"Coding at Google\".",
- "type": "string"
+ "hasAudio51": {
+ "description": "Whether the Edit has a 5.1 channel audio track.",
+ "type": "boolean"
},
- "suppressionLiftDate": {
- "description": "First date an Edit could be publically announced as becoming\navailable at a specific future date in territory of Avail.\n*Not* the Avail start date or pre-order start date.\nFormat is YYYY-MM-DD.\nOnly available for pre-orders.\nExample: \"2012-12-10\"",
- "type": "string"
- },
- "seasonAltId": {
+ "name": {
"type": "string",
- "description": "Other identifier referring to the season, as defined by partner.\nOnly available on TV avails.\nExample: \"rs_googlers_s1\"."
+ "description": "Default Edit name, usually in the language of the country of\norigin.\nExample: \"Googlers, The\"."
},
- "encodeId": {
- "description": "Manifestation Identifier. This should be the Manifestation\nLevel EIDR.\nExample: \"10.2340/1489-49A2-3956-4B2D-FE16-7\"",
+ "seasonId": {
+ "description": "Google-generated ID identifying the season linked to the Edit.\nOnly available for TV Edits.\nExample: 'ster23ex'",
"type": "string"
},
- "priceType": {
- "description": "Type of pricing that should be applied to this Avail\nbased on how the partner classify them.\nExample: \"Tier\", \"WSP\", \"SRP\", or \"Category\".",
+ "titleLevelEidr": {
+ "description": "Title-level EIDR ID.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-5\".",
"type": "string"
},
- "captionIncluded": {
- "type": "boolean",
- "description": "Communicating if caption file will be delivered."
- },
- "licenseType": {
- "description": "Type of transaction.",
- "type": "string",
- "enumDescriptions": [
- "Value could not be determined, please contact technical support if\nit should.",
- "Electronic Sell Through - purchase policy for unlimited viewing.",
- "Video On Demand - rental policy for temporary viewing.",
- "Subscription Video On Demand - used for subscription platforms.\nNot supported on Google Play.",
- "Pre-order Electronic Sell Through - pre-order purchase only window."
- ],
- "enum": [
- "LICENSE_TYPE_UNSPECIFIED",
- "EST",
- "VOD",
- "SVOD",
- "POEST"
- ]
+ "seasonName": {
+ "description": "Default Season name, usually in the language of the country of\norigin.\nOnly available for TV Edits\nExample: \"Googlers, The - A Brave New World\".",
+ "type": "string"
},
"seasonNumber": {
- "description": "The number assigned to the season within a series.\nOnly available on TV Avails.\nExample: \"1\".",
+ "description": "The number assigned to the season within a show.\nOnly available on TV Edits.\nExample: \"1\".",
"type": "string"
},
- "releaseDate": {
- "description": "Release date of the Title in earliest released territory.\nTypically it is just the year, but it is free-form as per EMA spec.\nExamples: \"1979\", \"Oct 2014\"",
+ "editLevelEidr": {
+ "type": "string",
+ "description": "Edit-level EIDR ID.\nExample: \"10.5240/1489-49A2-3956-4B2D-FE16-6\"."
+ },
+ "hasEstOffer": {
+ "description": "Whether the Edit has a EST offer.",
+ "type": "boolean"
+ },
+ "hasSdOffer": {
+ "description": "Whether the Edit has a SD offer.",
+ "type": "boolean"
+ },
+ "videoId": {
+ "description": "Google-generated ID identifying the video linked to the Edit.\nExample: 'gtry456_xc'",
"type": "string"
},
- "end": {
- "description": "End of term in YYYY-MM-DD format in the timezone of the country\nof the Avail.\n\"Open\" if no end date is available.\nExample: \"2019-02-17\"",
+ "liveTime": {
+ "format": "google-datetime",
+ "description": "Timestamp when the Edit went live on the Store.",
"type": "string"
+ },
+ "hasInfoCards": {
+ "description": "Whether the Edit has info cards.",
+ "type": "boolean"
+ },
+ "hasVodOffer": {
+ "description": "Whether the Edit has a VOD offer.",
+ "type": "boolean"
+ },
+ "pphNames": {
+ "description": "Name of the post-production houses that manage the Edit.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "episodeNumber": {
+ "description": "The number assigned to the episode within a season.\nOnly available on TV Edits.\nExample: \"1\".",
+ "type": "string"
+ },
+ "studioName": {
+ "type": "string",
+ "description": "Name of the studio that owns the Edit ordered."
}
},
- "id": "Avail",
- "description": "An Avail describes the Availability Window of a specific Edit in a given\ncountry, which means the period Google is allowed to sell or rent the Edit.\n\nAvails are exposed in EMA format Version 1.6b (available at\nhttp://www.movielabs.com/md/avails/)\n\nStudios can see the Avails for the Titles they own.\nPost-production houses cannot see any Avails.",
- "type": "object"
+ "id": "StoreInfo",
+ "description": "Information about a playable sequence (video) associated with an Edit\nand available at the Google Play Store.\n\nInternally, each StoreInfo is uniquely identified by a `video_id`\nand `country`.\n\nExternally, Title-level EIDR or Edit-level EIDR, if provided,\ncan also be used to identify a specific title or edit in a country."
}
},
- "protocol": "rest",
"icons": {
- "x16": "http://www.google.com/images/icons/product/search-16.gif",
- "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ "x32": "http://www.google.com/images/icons/product/search-32.gif",
+ "x16": "http://www.google.com/images/icons/product/search-16.gif"
},
+ "protocol": "rest",
"version": "v1",
"baseUrl": "https://playmoviespartner.googleapis.com/",
"canonicalName": "Play Movies",
@@ -1021,11 +1016,16 @@
}
}
},
- "servicePath": "",
- "description": "Gets the delivery status of titles for Google Play Movies Partners.",
"kind": "discovery#restDescription",
+ "description": "Gets the delivery status of titles for Google Play Movies Partners.",
+ "servicePath": "",
"rootUrl": "https://playmoviespartner.googleapis.com/",
"basePath": "",
"ownerDomain": "google.com",
- "name": "playmoviespartner"
+ "name": "playmoviespartner",
+ "batchPath": "batch",
+ "id": "playmoviespartner:v1",
+ "documentationLink": "https://developers.google.com/playmoviespartner/",
+ "revision": "20170822",
+ "title": "Google Play Movies Partner API"
}
diff --git a/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json b/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json
index 671e69b..30dc655 100644
--- a/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json
+++ b/vendor/google.golang.org/api/proximitybeacon/v1beta1/proximitybeacon-api.json
@@ -1,23 +1,11 @@
{
- "basePath": "",
- "ownerDomain": "google.com",
- "name": "proximitybeacon",
- "batchPath": "batch",
- "id": "proximitybeacon:v1beta1",
- "documentationLink": "https://developers.google.com/beacons/proximity/",
- "revision": "20170629",
- "title": "Google Proximity Beacon API",
- "ownerName": "Google",
"discoveryVersion": "v1",
- "version_module": "True",
+ "ownerName": "Google",
+ "version_module": true,
"resources": {
"beaconinfo": {
"methods": {
"getforobserved": {
- "request": {
- "$ref": "GetInfoForObservedBeaconsRequest"
- },
- "description": "Given one or more beacon observations, returns any beacon information\nand attachments accessible to your application. Authorize by using the\n[API key](https://developers.google.com/beacons/proximity/get-started#request_a_browser_api_key)\nfor the application.",
"httpMethod": "POST",
"parameterOrder": [],
"response": {
@@ -26,48 +14,59 @@
"parameters": {},
"flatPath": "v1beta1/beaconinfo:getforobserved",
"path": "v1beta1/beaconinfo:getforobserved",
- "id": "proximitybeacon.beaconinfo.getforobserved"
+ "id": "proximitybeacon.beaconinfo.getforobserved",
+ "description": "Given one or more beacon observations, returns any beacon information\nand attachments accessible to your application. Authorize by using the\n[API key](https://developers.google.com/beacons/proximity/get-started#request_a_browser_api_key)\nfor the application.",
+ "request": {
+ "$ref": "GetInfoForObservedBeaconsRequest"
+ }
}
}
},
"namespaces": {
"methods": {
"list": {
- "flatPath": "v1beta1/namespaces",
- "path": "v1beta1/namespaces",
- "id": "proximitybeacon.namespaces.list",
- "description": "Lists all attachment namespaces owned by your Google Developers Console\nproject. Attachment data associated with a beacon must include a\nnamespaced type, and the namespace must be owned by your project.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.",
- "httpMethod": "GET",
- "parameterOrder": [],
"response": {
"$ref": "ListNamespacesResponse"
},
+ "parameterOrder": [],
+ "httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/userlocation.beacon.registry"
],
"parameters": {
"projectId": {
+ "location": "query",
"description": "The project id to list namespaces under.\nOptional.",
- "type": "string",
- "location": "query"
+ "type": "string"
}
- }
+ },
+ "flatPath": "v1beta1/namespaces",
+ "id": "proximitybeacon.namespaces.list",
+ "path": "v1beta1/namespaces",
+ "description": "Lists all attachment namespaces owned by your Google Developers Console\nproject. Attachment data associated with a beacon must include a\nnamespaced type, and the namespace must be owned by your project.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project."
},
"update": {
- "response": {
+ "request": {
"$ref": "Namespace"
},
+ "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated.",
+ "httpMethod": "PUT",
"parameterOrder": [
"namespaceName"
],
- "httpMethod": "PUT",
+ "response": {
+ "$ref": "Namespace"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ],
"parameters": {
"namespaceName": {
+ "pattern": "^namespaces/[^/]+$",
"location": "path",
"description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.",
"type": "string",
- "required": true,
- "pattern": "^namespaces/[^/]+$"
+ "required": true
},
"projectId": {
"description": "The project id of the namespace to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
@@ -75,23 +74,15 @@
"location": "query"
}
},
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
"flatPath": "v1beta1/namespaces/{namespacesId}",
- "id": "proximitybeacon.namespaces.update",
"path": "v1beta1/{+namespaceName}",
- "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated.",
- "request": {
- "$ref": "Namespace"
- }
+ "id": "proximitybeacon.namespaces.update"
}
}
},
"v1beta1": {
"methods": {
"getEidparams": {
- "description": "Gets the Proximity Beacon API's current public key and associated\nparameters used to initiate the Diffie-Hellman key exchange required to\nregister a beacon that broadcasts the Eddystone-EID format. This key\nchanges periodically; clients may cache it and re-use the same public key\nto provision and register multiple beacons. However, clients should be\nprepared to refresh this key when they encounter an error registering an\nEddystone-EID beacon.",
"response": {
"$ref": "EphemeralIdRegistrationParams"
},
@@ -103,15 +94,45 @@
"parameters": {},
"flatPath": "v1beta1/eidparams",
"id": "proximitybeacon.getEidparams",
- "path": "v1beta1/eidparams"
+ "path": "v1beta1/eidparams",
+ "description": "Gets the Proximity Beacon API's current public key and associated\nparameters used to initiate the Diffie-Hellman key exchange required to\nregister a beacon that broadcasts the Eddystone-EID format. This key\nchanges periodically; clients may cache it and re-use the same public key\nto provision and register multiple beacons. However, clients should be\nprepared to refresh this key when they encounter an error registering an\nEddystone-EID beacon."
}
}
},
"beacons": {
"methods": {
"decommission": {
+ "flatPath": "v1beta1/beacons/{beaconsId}:decommission",
+ "id": "proximitybeacon.beacons.decommission",
+ "path": "v1beta1/{+beaconName}:decommission",
"description": "Decommissions the specified beacon in the service. This beacon will no\nlonger be returned from `beaconinfo.getforobserved`. This operation is\npermanent -- you will not be able to re-register a beacon with this ID\nagain.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "beaconName"
+ ],
"httpMethod": "POST",
+ "parameters": {
+ "beaconName": {
+ "location": "path",
+ "description": "Beacon that should be decommissioned. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID of the beacon's \"stable\" UID.\nRequired.",
+ "type": "string",
+ "required": true,
+ "pattern": "^beacons/[^/]+$"
+ },
+ "projectId": {
+ "location": "query",
+ "description": "The project id of the beacon to decommission. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ]
+ },
+ "delete": {
+ "httpMethod": "DELETE",
"parameterOrder": [
"beaconName"
],
@@ -119,44 +140,42 @@
"$ref": "Empty"
},
"parameters": {
- "projectId": {
- "location": "query",
- "description": "The project id of the beacon to decommission. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
- "type": "string"
- },
"beaconName": {
- "description": "Beacon that should be decommissioned. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID of the beacon's \"stable\" UID.\nRequired.",
+ "location": "path",
+ "description": "Beacon that should be deleted. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
"type": "string",
"required": true,
- "pattern": "^beacons/[^/]+$",
- "location": "path"
+ "pattern": "^beacons/[^/]+$"
+ },
+ "projectId": {
+ "location": "query",
+ "description": "The project id of the beacon to delete. If not provided, the project\nthat is making the request is used.\nOptional.",
+ "type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/userlocation.beacon.registry"
],
- "flatPath": "v1beta1/beacons/{beaconsId}:decommission",
- "path": "v1beta1/{+beaconName}:decommission",
- "id": "proximitybeacon.beacons.decommission"
+ "flatPath": "v1beta1/beacons/{beaconsId}",
+ "path": "v1beta1/{+beaconName}",
+ "id": "proximitybeacon.beacons.delete",
+ "description": "Deletes the specified beacon including all diagnostics data for the beacon\nas well as any attachments on the beacon (including those belonging to\nother projects). This operation cannot be undone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project."
},
"deactivate": {
"httpMethod": "POST",
- "response": {
- "$ref": "Empty"
- },
"parameterOrder": [
"beaconName"
],
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
+ "response": {
+ "$ref": "Empty"
+ },
"parameters": {
"beaconName": {
- "location": "path",
"description": "Beacon that should be deactivated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
"type": "string",
"required": true,
- "pattern": "^beacons/[^/]+$"
+ "pattern": "^beacons/[^/]+$",
+ "location": "path"
},
"projectId": {
"location": "query",
@@ -164,76 +183,33 @@
"type": "string"
}
},
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ],
"flatPath": "v1beta1/beacons/{beaconsId}:deactivate",
"path": "v1beta1/{+beaconName}:deactivate",
"id": "proximitybeacon.beacons.deactivate",
"description": "Deactivates a beacon. Once deactivated, the API will not return\ninformation nor attachment data for the beacon when queried via\n`beaconinfo.getforobserved`. Calling this method on an already inactive\nbeacon will do nothing (but will return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project."
},
- "delete": {
- "description": "Deletes the specified beacon including all diagnostics data for the beacon\nas well as any attachments on the beacon (including those belonging to\nother projects). This operation cannot be undone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "beaconName"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
- "parameters": {
- "projectId": {
- "description": "The project id of the beacon to delete. If not provided, the project\nthat is making the request is used.\nOptional.",
- "type": "string",
- "location": "query"
- },
- "beaconName": {
- "description": "Beacon that should be deleted. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
- "type": "string",
- "required": true,
- "pattern": "^beacons/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/beacons/{beaconsId}",
- "id": "proximitybeacon.beacons.delete",
- "path": "v1beta1/{+beaconName}"
- },
- "register": {
- "description": "Registers a previously unregistered beacon given its `advertisedId`.\nThese IDs are unique within the system. An ID can be registered only once.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
- "request": {
- "$ref": "Beacon"
- },
- "response": {
- "$ref": "Beacon"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "parameters": {
- "projectId": {
- "location": "query",
- "description": "The project id of the project the beacon will be registered to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
- "flatPath": "v1beta1/beacons:register",
- "id": "proximitybeacon.beacons.register",
- "path": "v1beta1/beacons:register"
- },
"list": {
+ "flatPath": "v1beta1/beacons",
+ "id": "proximitybeacon.beacons.list",
+ "path": "v1beta1/beacons",
"description": "Searches the beacon registry for beacons that match the given search\ncriteria. Only those beacons that the client has permission to list\nwill be returned.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.",
- "httpMethod": "GET",
"response": {
"$ref": "ListBeaconsResponse"
},
"parameterOrder": [],
+ "httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/userlocation.beacon.registry"
],
"parameters": {
+ "pageToken": {
+ "description": "A pagination token obtained from a previous request to list beacons.",
+ "type": "string",
+ "location": "query"
+ },
"pageSize": {
"location": "query",
"format": "int32",
@@ -241,26 +217,43 @@
"type": "integer"
},
"q": {
- "location": "query",
"description": "Filter query string that supports the following field filters:\n\n* **description:`\"\u003cstring\u003e\"`**\n For example: **description:\"Room 3\"**\n Returns beacons whose description matches tokens in the string \"Room 3\"\n (not necessarily that exact string).\n The string must be double-quoted.\n* **status:`\u003cenum\u003e`**\n For example: **status:active**\n Returns beacons whose status matches the given value. Values must be\n one of the Beacon.Status enum values (case insensitive). Accepts\n multiple filters which will be combined with OR logic.\n* **stability:`\u003cenum\u003e`**\n For example: **stability:mobile**\n Returns beacons whose expected stability matches the given value.\n Values must be one of the Beacon.Stability enum values (case\n insensitive). Accepts multiple filters which will be combined with\n OR logic.\n* **place\\_id:`\"\u003cstring\u003e\"`**\n For example: **place\\_id:\"ChIJVSZzVR8FdkgRXGmmm6SslKw=\"**\n Returns beacons explicitly registered at the given place, expressed as\n a Place ID obtained from [Google Places API](/places/place-id). Does not\n match places inside the given place. Does not consider the beacon's\n actual location (which may be different from its registered place).\n Accepts multiple filters that will be combined with OR logic. The place\n ID must be double-quoted.\n* **registration\\_time`[\u003c|\u003e|\u003c=|\u003e=]\u003cinteger\u003e`**\n For example: **registration\\_time\u003e=1433116800**\n Returns beacons whose registration time matches the given filter.\n Supports the operators: \u003c, \u003e, \u003c=, and \u003e=. Timestamp must be expressed as\n an integer number of seconds since midnight January 1, 1970 UTC. Accepts\n at most two filters that will be combined with AND logic, to support\n \"between\" semantics. If more than two are supplied, the latter ones are\n ignored.\n* **lat:`\u003cdouble\u003e lng:\u003cdouble\u003e radius:\u003cinteger\u003e`**\n For example: **lat:51.1232343 lng:-1.093852 radius:1000**\n Returns beacons whose registered location is within the given circle.\n When any of these fields are given, all are required. Latitude and\n longitude must be decimal degrees between -90.0 and 90.0 and between\n -180.0 and 180.0 respectively. Radius must be an integer number of\n meters between 10 and 1,000,000 (1000 km).\n* **property:`\"\u003cstring\u003e=\u003cstring\u003e\"`**\n For example: **property:\"battery-type=CR2032\"**\n Returns beacons which have a property of the given name and value.\n Supports multiple filters which will be combined with OR logic.\n The entire name=value string must be double-quoted as one string.\n* **attachment\\_type:`\"\u003cstring\u003e\"`**\n For example: **attachment_type:\"my-namespace/my-type\"**\n Returns beacons having at least one attachment of the given namespaced\n type. Supports \"any within this namespace\" via the partial wildcard\n syntax: \"my-namespace/*\". Supports multiple filters which will be\n combined with OR logic. The string must be double-quoted.\n* **indoor\\_level:`\"\u003cstring\u003e\"`**\n For example: **indoor\\_level:\"1\"**\n Returns beacons which are located on the given indoor level. Accepts\n multiple filters that will be combined with OR logic.\n\nMultiple filters on the same field are combined with OR logic (except\nregistration_time which is combined with AND logic).\nMultiple filters on different fields are combined with AND logic.\nFilters should be separated by spaces.\n\nAs with any HTTP query string parameter, the whole filter expression must\nbe URL-encoded.\n\nExample REST request:\n`GET /v1beta1/beacons?q=status:active%20lat:51.123%20lng:-1.095%20radius:1000`",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"projectId": {
- "location": "query",
"description": "The project id to list beacons under. If not present then the project\ncredential that made the request is used as the project.\nOptional.",
- "type": "string"
- },
- "pageToken": {
- "location": "query",
- "description": "A pagination token obtained from a previous request to list beacons.",
- "type": "string"
+ "type": "string",
+ "location": "query"
+ }
+ }
+ },
+ "register": {
+ "flatPath": "v1beta1/beacons:register",
+ "path": "v1beta1/beacons:register",
+ "id": "proximitybeacon.beacons.register",
+ "description": "Registers a previously unregistered beacon given its `advertisedId`.\nThese IDs are unique within the system. An ID can be registered only once.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
+ "request": {
+ "$ref": "Beacon"
+ },
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "Beacon"
+ },
+ "parameters": {
+ "projectId": {
+ "description": "The project id of the project the beacon will be registered to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.",
+ "type": "string",
+ "location": "query"
}
},
- "flatPath": "v1beta1/beacons",
- "path": "v1beta1/beacons",
- "id": "proximitybeacon.beacons.list"
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ]
},
"activate": {
+ "description": "Activates a beacon. A beacon that is active will return information\nand attachment data when queried via `beaconinfo.getforobserved`.\nCalling this method on an already active beacon will do nothing (but\nwill return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
"response": {
"$ref": "Empty"
},
@@ -270,11 +263,11 @@
"httpMethod": "POST",
"parameters": {
"beaconName": {
+ "location": "path",
"description": "Beacon that should be activated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
"type": "string",
"required": true,
- "pattern": "^beacons/[^/]+$",
- "location": "path"
+ "pattern": "^beacons/[^/]+$"
},
"projectId": {
"description": "The project id of the beacon to activate. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
@@ -287,44 +280,39 @@
],
"flatPath": "v1beta1/beacons/{beaconsId}:activate",
"id": "proximitybeacon.beacons.activate",
- "path": "v1beta1/{+beaconName}:activate",
- "description": "Activates a beacon. A beacon that is active will return information\nand attachment data when queried via `beaconinfo.getforobserved`.\nCalling this method on an already active beacon will do nothing (but\nwill return a successful response code).\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project."
+ "path": "v1beta1/{+beaconName}:activate"
},
"get": {
- "flatPath": "v1beta1/beacons/{beaconsId}",
- "id": "proximitybeacon.beacons.get",
"path": "v1beta1/{+beaconName}",
+ "id": "proximitybeacon.beacons.get",
"description": "Returns detailed information about the specified beacon.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.\n\nRequests may supply an Eddystone-EID beacon name in the form:\n`beacons/4!beaconId` where the `beaconId` is the base16 ephemeral ID\nbroadcast by the beacon. The returned `Beacon` object will contain the\nbeacon's stable Eddystone-UID. Clients not authorized to resolve the\nbeacon's ephemeral Eddystone-EID broadcast will receive an error.",
+ "httpMethod": "GET",
"response": {
"$ref": "Beacon"
},
"parameterOrder": [
"beaconName"
],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
"parameters": {
"beaconName": {
+ "pattern": "^beacons/[^/]+$",
"location": "path",
"description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
"type": "string",
- "required": true,
- "pattern": "^beacons/[^/]+$"
+ "required": true
},
"projectId": {
- "location": "query",
"description": "The project id of the beacon to request. If the project id is not specified\nthen the project making the request is used. The project id must match the\nproject that owns the beacon.\nOptional.",
- "type": "string"
+ "type": "string",
+ "location": "query"
}
- }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ],
+ "flatPath": "v1beta1/beacons/{beaconsId}"
},
"update": {
- "description": "Updates the information about the specified beacon. **Any field that you do\nnot populate in the submitted beacon will be permanently erased**, so you\nshould follow the \"read, modify, write\" pattern to avoid inadvertently\ndestroying data.\n\nChanges to the beacon status via this method will be silently ignored.\nTo update beacon status, use the separate methods on this API for\nactivation, deactivation, and decommissioning.\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
- "request": {
- "$ref": "Beacon"
- },
"httpMethod": "PUT",
"parameterOrder": [
"beaconName"
@@ -332,6 +320,9 @@
"response": {
"$ref": "Beacon"
},
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ],
"parameters": {
"beaconName": {
"description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.\n\nThis field must be left empty when registering. After reading a beacon,\nclients can use the name for future operations.",
@@ -346,149 +337,150 @@
"type": "string"
}
},
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
"flatPath": "v1beta1/beacons/{beaconsId}",
"path": "v1beta1/{+beaconName}",
- "id": "proximitybeacon.beacons.update"
+ "id": "proximitybeacon.beacons.update",
+ "request": {
+ "$ref": "Beacon"
+ },
+ "description": "Updates the information about the specified beacon. **Any field that you do\nnot populate in the submitted beacon will be permanently erased**, so you\nshould follow the \"read, modify, write\" pattern to avoid inadvertently\ndestroying data.\n\nChanges to the beacon status via this method will be silently ignored.\nTo update beacon status, use the separate methods on this API for\nactivation, deactivation, and decommissioning.\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project."
}
},
"resources": {
"attachments": {
"methods": {
- "list": {
- "flatPath": "v1beta1/beacons/{beaconsId}/attachments",
- "path": "v1beta1/{+beaconName}/attachments",
- "id": "proximitybeacon.beacons.attachments.list",
- "description": "Returns the attachments for the specified beacon that match the specified\nnamespaced-type pattern.\n\nTo control which namespaced types are returned, you add the\n`namespacedType` query parameter to the request. You must either use\n`*/*`, to return all attachments, or the namespace must be one of\nthe ones returned from the `namespaces` endpoint.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.",
- "httpMethod": "GET",
- "parameterOrder": [
- "beaconName"
- ],
- "response": {
- "$ref": "ListBeaconAttachmentsResponse"
- },
- "parameters": {
- "projectId": {
- "description": "The project id to list beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.",
- "type": "string",
- "location": "query"
- },
- "namespacedType": {
- "location": "query",
- "description": "Specifies the namespace and type of attachment to include in response in\n\u003cvar\u003enamespace/type\u003c/var\u003e format. Accepts `*/*` to specify\n\"all types in all namespaces\".",
- "type": "string"
- },
- "beaconName": {
- "location": "path",
- "description": "Beacon whose attachments should be fetched. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
- "type": "string",
- "required": true,
- "pattern": "^beacons/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ]
- },
- "batchDelete": {
- "flatPath": "v1beta1/beacons/{beaconsId}/attachments:batchDelete",
- "id": "proximitybeacon.beacons.attachments.batchDelete",
- "path": "v1beta1/{+beaconName}/attachments:batchDelete",
- "description": "Deletes multiple attachments on a given beacon. This operation is\npermanent and cannot be undone.\n\nYou can optionally specify `namespacedType` to choose which attachments\nshould be deleted. If you do not specify `namespacedType`, all your\nattachments on the given beacon will be deleted. You also may explicitly\nspecify `*/*` to delete all.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
- "response": {
- "$ref": "DeleteAttachmentsResponse"
- },
- "parameterOrder": [
- "beaconName"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
- "parameters": {
- "namespacedType": {
- "description": "Specifies the namespace and type of attachments to delete in\n`namespace/type` format. Accepts `*/*` to specify\n\"all types in all namespaces\".\nOptional.",
- "type": "string",
- "location": "query"
- },
- "beaconName": {
- "location": "path",
- "description": "The beacon whose attachments should be deleted. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
- "type": "string",
- "required": true,
- "pattern": "^beacons/[^/]+$"
- },
- "projectId": {
- "description": "The project id to delete beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.",
- "type": "string",
- "location": "query"
- }
- }
- },
- "create": {
- "response": {
- "$ref": "BeaconAttachment"
- },
- "parameterOrder": [
- "beaconName"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/userlocation.beacon.registry"
- ],
- "parameters": {
- "projectId": {
- "description": "The project id of the project the attachment will belong to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.",
- "type": "string",
- "location": "query"
- },
- "beaconName": {
- "description": "Beacon on which the attachment should be created. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
- "type": "string",
- "required": true,
- "pattern": "^beacons/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/beacons/{beaconsId}/attachments",
- "id": "proximitybeacon.beacons.attachments.create",
- "path": "v1beta1/{+beaconName}/attachments",
- "request": {
- "$ref": "BeaconAttachment"
- },
- "description": "Associates the given data with the specified beacon. Attachment data must\ncontain two parts:\n\u003cul\u003e\n\u003cli\u003eA namespaced type.\u003c/li\u003e\n\u003cli\u003eThe actual attachment data itself.\u003c/li\u003e\n\u003c/ul\u003e\nThe namespaced type consists of two parts, the namespace and the type.\nThe namespace must be one of the values returned by the `namespaces`\nendpoint, while the type can be a string of any characters except for the\nforward slash (`/`) up to 100 characters in length.\n\nAttachment data can be up to 1024 bytes long.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project."
- },
"delete": {
- "description": "Deletes the specified attachment for the given beacon. Each attachment has\na unique attachment name (`attachmentName`) which is returned when you\nfetch the attachment data via this API. You specify this with the delete\nrequest to control which attachment is removed. This operation cannot be\nundone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
- "response": {
- "$ref": "Empty"
- },
+ "httpMethod": "DELETE",
"parameterOrder": [
"attachmentName"
],
- "httpMethod": "DELETE",
+ "response": {
+ "$ref": "Empty"
+ },
"parameters": {
"projectId": {
- "location": "query",
"description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"attachmentName": {
- "location": "path",
"description": "The attachment name (`attachmentName`) of\nthe attachment to remove. For example:\n`beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738`. For\nEddystone-EID beacons, the beacon ID portion (`3!893737abc9`) may be the\nbeacon's current EID, or its \"stable\" Eddystone-UID.\nRequired.",
"type": "string",
"required": true,
- "pattern": "^beacons/[^/]+/attachments/[^/]+$"
+ "pattern": "^beacons/[^/]+/attachments/[^/]+$",
+ "location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/userlocation.beacon.registry"
],
"flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}",
+ "path": "v1beta1/{+attachmentName}",
"id": "proximitybeacon.beacons.attachments.delete",
- "path": "v1beta1/{+attachmentName}"
+ "description": "Deletes the specified attachment for the given beacon. Each attachment has\na unique attachment name (`attachmentName`) which is returned when you\nfetch the attachment data via this API. You specify this with the delete\nrequest to control which attachment is removed. This operation cannot be\nundone.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project."
+ },
+ "list": {
+ "description": "Returns the attachments for the specified beacon that match the specified\nnamespaced-type pattern.\n\nTo control which namespaced types are returned, you add the\n`namespacedType` query parameter to the request. You must either use\n`*/*`, to return all attachments, or the namespace must be one of\nthe ones returned from the `namespaces` endpoint.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.",
+ "response": {
+ "$ref": "ListBeaconAttachmentsResponse"
+ },
+ "parameterOrder": [
+ "beaconName"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "namespacedType": {
+ "location": "query",
+ "description": "Specifies the namespace and type of attachment to include in response in\n\u003cvar\u003enamespace/type\u003c/var\u003e format. Accepts `*/*` to specify\n\"all types in all namespaces\".",
+ "type": "string"
+ },
+ "beaconName": {
+ "description": "Beacon whose attachments should be fetched. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
+ "type": "string",
+ "required": true,
+ "pattern": "^beacons/[^/]+$",
+ "location": "path"
+ },
+ "projectId": {
+ "location": "query",
+ "description": "The project id to list beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ],
+ "flatPath": "v1beta1/beacons/{beaconsId}/attachments",
+ "id": "proximitybeacon.beacons.attachments.list",
+ "path": "v1beta1/{+beaconName}/attachments"
+ },
+ "batchDelete": {
+ "description": "Deletes multiple attachments on a given beacon. This operation is\npermanent and cannot be undone.\n\nYou can optionally specify `namespacedType` to choose which attachments\nshould be deleted. If you do not specify `namespacedType`, all your\nattachments on the given beacon will be deleted. You also may explicitly\nspecify `*/*` to delete all.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
+ "httpMethod": "POST",
+ "response": {
+ "$ref": "DeleteAttachmentsResponse"
+ },
+ "parameterOrder": [
+ "beaconName"
+ ],
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ],
+ "parameters": {
+ "projectId": {
+ "location": "query",
+ "description": "The project id to delete beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.",
+ "type": "string"
+ },
+ "namespacedType": {
+ "location": "query",
+ "description": "Specifies the namespace and type of attachments to delete in\n`namespace/type` format. Accepts `*/*` to specify\n\"all types in all namespaces\".\nOptional.",
+ "type": "string"
+ },
+ "beaconName": {
+ "pattern": "^beacons/[^/]+$",
+ "location": "path",
+ "description": "The beacon whose attachments should be deleted. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1beta1/beacons/{beaconsId}/attachments:batchDelete",
+ "path": "v1beta1/{+beaconName}/attachments:batchDelete",
+ "id": "proximitybeacon.beacons.attachments.batchDelete"
+ },
+ "create": {
+ "request": {
+ "$ref": "BeaconAttachment"
+ },
+ "description": "Associates the given data with the specified beacon. Attachment data must\ncontain two parts:\n\u003cul\u003e\n\u003cli\u003eA namespaced type.\u003c/li\u003e\n\u003cli\u003eThe actual attachment data itself.\u003c/li\u003e\n\u003c/ul\u003e\nThe namespaced type consists of two parts, the namespace and the type.\nThe namespace must be one of the values returned by the `namespaces`\nendpoint, while the type can be a string of any characters except for the\nforward slash (`/`) up to 100 characters in length.\n\nAttachment data can be up to 1024 bytes long.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers Console project.",
+ "response": {
+ "$ref": "BeaconAttachment"
+ },
+ "parameterOrder": [
+ "beaconName"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/userlocation.beacon.registry"
+ ],
+ "parameters": {
+ "beaconName": {
+ "location": "path",
+ "description": "Beacon on which the attachment should be created. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
+ "type": "string",
+ "required": true,
+ "pattern": "^beacons/[^/]+$"
+ },
+ "projectId": {
+ "description": "The project id of the project the attachment will belong to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v1beta1/beacons/{beaconsId}/attachments",
+ "id": "proximitybeacon.beacons.attachments.create",
+ "path": "v1beta1/{+beaconName}/attachments"
}
}
},
@@ -496,28 +488,28 @@
"methods": {
"list": {
"description": "List the diagnostics for a single beacon. You can also list diagnostics for\nall the beacons owned by your Google Developers Console project by using\nthe beacon name `beacons/-`.\n\nAuthenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the Google Developers Console project.",
+ "httpMethod": "GET",
"response": {
"$ref": "ListDiagnosticsResponse"
},
"parameterOrder": [
"beaconName"
],
- "httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/userlocation.beacon.registry"
],
"parameters": {
"beaconName": {
- "location": "path",
"description": "Beacon that the diagnostics are for.",
"type": "string",
"required": true,
- "pattern": "^beacons/[^/]+$"
+ "pattern": "^beacons/[^/]+$",
+ "location": "path"
},
"pageToken": {
+ "location": "query",
"description": "Requests results that occur after the `page_token`, obtained from the\nresponse to a previous request. Optional.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"alertFilter": {
"location": "query",
@@ -530,20 +522,20 @@
"type": "string"
},
"pageSize": {
- "location": "query",
"format": "int32",
"description": "Specifies the maximum number of results to return. Defaults to\n10. Maximum 1000. Optional.",
- "type": "integer"
+ "type": "integer",
+ "location": "query"
},
"projectId": {
- "location": "query",
"description": "Requests only diagnostic records for the given project id. If not set,\nthen the project making the request will be used for looking up\ndiagnostic records. Optional.",
- "type": "string"
+ "type": "string",
+ "location": "query"
}
},
"flatPath": "v1beta1/beacons/{beaconsId}/diagnostics",
- "id": "proximitybeacon.beacons.diagnostics.list",
- "path": "v1beta1/{+beaconName}/diagnostics"
+ "path": "v1beta1/{+beaconName}/diagnostics",
+ "id": "proximitybeacon.beacons.diagnostics.list"
}
}
}
@@ -551,61 +543,6 @@
}
},
"parameters": {
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "uploadType": {
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "$.xgafv": {
- "description": "V1 error format.",
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ]
- },
- "alt": {
- "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",
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string"
- },
"access_token": {
"description": "OAuth access token.",
"type": "string",
@@ -617,9 +554,9 @@
"location": "query"
},
"quotaUser": {
- "location": "query",
"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.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"pp": {
"location": "query",
@@ -628,67 +565,72 @@
"type": "boolean"
},
"oauth_token": {
+ "location": "query",
"description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "bearer_token": {
+ "description": "OAuth bearer token.",
"type": "string",
"location": "query"
},
- "bearer_token": {
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "prettyPrint": {
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
+ },
+ "uploadType": {
"location": "query",
- "description": "OAuth bearer token.",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string"
+ },
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
+ },
+ "$.xgafv": {
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string",
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query"
+ },
+ "alt": {
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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"
}
},
"schemas": {
- "BeaconInfo": {
- "description": "A subset of beacon information served via the `beaconinfo.getforobserved`\nmethod, which you call when users of your app encounter your beacons.",
- "type": "object",
- "properties": {
- "beaconName": {
- "description": "The name under which the beacon is registered.",
- "type": "string"
- },
- "attachments": {
- "description": "Attachments matching the type(s) requested.\nMay be empty if no attachment types were requested.",
- "items": {
- "$ref": "AttachmentInfo"
- },
- "type": "array"
- },
- "advertisedId": {
- "description": "The ID advertised by the beacon.",
- "$ref": "AdvertisedId"
- }
- },
- "id": "BeaconInfo"
- },
- "AttachmentInfo": {
- "description": "A subset of attachment information served via the\n`beaconinfo.getforobserved` method, used when your users encounter your\nbeacons.",
- "type": "object",
- "properties": {
- "namespacedType": {
- "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e, for\nexample \u003ccode\u003escrupulous-wombat-12345/welcome-message\u003c/code\u003e",
- "type": "string"
- },
- "data": {
- "format": "byte",
- "description": "An opaque data container for client-provided data.",
- "type": "string"
- }
- },
- "id": "AttachmentInfo"
- },
- "DeleteAttachmentsResponse": {
- "description": "Response for a request to delete attachments.",
- "type": "object",
- "properties": {
- "numDeleted": {
- "format": "int32",
- "description": "The number of attachments that were deleted.",
- "type": "integer"
- }
- },
- "id": "DeleteAttachmentsResponse"
- },
"EphemeralIdRegistrationParams": {
"description": "Information a client needs to provision and register beacons that\nbroadcast Eddystone-EID format beacon IDs, using Elliptic curve\nDiffie-Hellman key exchange. See\n[the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.",
"type": "object",
@@ -711,10 +653,24 @@
},
"id": "EphemeralIdRegistrationParams"
},
- "Observation": {
- "description": "Represents one beacon observed once.",
+ "DeleteAttachmentsResponse": {
+ "description": "Response for a request to delete attachments.",
"type": "object",
"properties": {
+ "numDeleted": {
+ "format": "int32",
+ "description": "The number of attachments that were deleted.",
+ "type": "integer"
+ }
+ },
+ "id": "DeleteAttachmentsResponse"
+ },
+ "Observation": {
+ "properties": {
+ "advertisedId": {
+ "description": "The ID advertised by the beacon the client has encountered.\n\nIf the submitted `advertised_id` type is Eddystone-EID, then the client\nmust be authorized to resolve the given beacon. Otherwise no data will be\nreturned for that beacon.\nRequired.",
+ "$ref": "AdvertisedId"
+ },
"telemetry": {
"format": "byte",
"description": "The array of telemetry bytes received from the beacon. The server is\nresponsible for parsing it. This field may frequently be empty, as\nwith a beacon that transmits telemetry only occasionally.",
@@ -724,28 +680,26 @@
"format": "google-datetime",
"description": "Time when the beacon was observed.",
"type": "string"
- },
- "advertisedId": {
- "description": "The ID advertised by the beacon the client has encountered.\n\nIf the submitted `advertised_id` type is Eddystone-EID, then the client\nmust be authorized to resolve the given beacon. Otherwise no data will be\nreturned for that beacon.\nRequired.",
- "$ref": "AdvertisedId"
}
},
- "id": "Observation"
+ "id": "Observation",
+ "description": "Represents one beacon observed once.",
+ "type": "object"
},
"ListDiagnosticsResponse": {
"description": "Response that contains the requested diagnostics.",
"type": "object",
"properties": {
+ "nextPageToken": {
+ "description": "Token that can be used for pagination. Returned only if the\nrequest matches more beacons than can be returned in this response.",
+ "type": "string"
+ },
"diagnostics": {
"description": "The diagnostics matching the given request.",
"items": {
"$ref": "Diagnostics"
},
"type": "array"
- },
- "nextPageToken": {
- "description": "Token that can be used for pagination. Returned only if the\nrequest matches more beacons than can be returned in this response.",
- "type": "string"
}
},
"id": "ListDiagnosticsResponse"
@@ -768,25 +722,6 @@
"description": "Details of a beacon device.",
"type": "object",
"properties": {
- "description": {
- "description": "Free text used to identify and describe the beacon. Maximum length 140\ncharacters.\nOptional.",
- "type": "string"
- },
- "placeId": {
- "description": "The [Google Places API](/places/place-id) Place ID of the place where\nthe beacon is deployed. This is given when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.",
- "type": "string"
- },
- "latLng": {
- "description": "The location of the beacon, expressed as a latitude and longitude pair.\nThis location is given when the beacon is registered or updated. It does\nnot necessarily indicate the actual current location of the beacon.\nOptional.",
- "$ref": "LatLng"
- },
- "properties": {
- "description": "Properties of the beacon device, for example battery type or firmware\nversion.\nOptional.",
- "type": "object",
- "additionalProperties": {
- "type": "string"
- }
- },
"indoorLevel": {
"$ref": "IndoorLevel",
"description": "The indoor level information for this beacon, if known. As returned by the\nGoogle Maps API.\nOptional."
@@ -812,13 +747,6 @@
"type": "string"
},
"expectedStability": {
- "enumDescriptions": [
- "Do not use this value.",
- "Not expected to move, for example a store's front door.",
- "Usually stable but may move rarely, usually within a single place,\nfor example a store display.",
- "Moves frequently, for example a personal item or food truck.",
- "Moves continuously in service, for example a bus or train."
- ],
"enum": [
"STABILITY_UNSPECIFIED",
"STABLE",
@@ -827,7 +755,14 @@
"ROVING"
],
"description": "Expected location stability. This is set when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.",
- "type": "string"
+ "type": "string",
+ "enumDescriptions": [
+ "Do not use this value.",
+ "Not expected to move, for example a store's front door.",
+ "Usually stable but may move rarely, usually within a single place,\nfor example a store display.",
+ "Moves frequently, for example a personal item or food truck.",
+ "Moves continuously in service, for example a bus or train."
+ ]
},
"advertisedId": {
"$ref": "AdvertisedId",
@@ -841,6 +776,25 @@
"format": "byte",
"description": "Some beacons may require a user to provide an authorization key before\nchanging any of its configuration (e.g. broadcast frames, transmit power).\nThis field provides a place to store and control access to that key.\nThis field is populated in responses to `GET /v1beta1/beacons/3!beaconId`\nfrom users with write access to the given beacon. That is to say: If the\nuser is authorized to write the beacon's confidential data in the service,\nthe service considers them authorized to configure the beacon. Note\nthat this key grants nothing on the service, only on the beacon itself.",
"type": "string"
+ },
+ "latLng": {
+ "$ref": "LatLng",
+ "description": "The location of the beacon, expressed as a latitude and longitude pair.\nThis location is given when the beacon is registered or updated. It does\nnot necessarily indicate the actual current location of the beacon.\nOptional."
+ },
+ "placeId": {
+ "description": "The [Google Places API](/places/place-id) Place ID of the place where\nthe beacon is deployed. This is given when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Free text used to identify and describe the beacon. Maximum length 140\ncharacters.\nOptional.",
+ "type": "string"
+ },
+ "properties": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Properties of the beacon device, for example battery type or firmware\nversion.\nOptional.",
+ "type": "object"
}
},
"id": "Beacon"
@@ -875,17 +829,6 @@
},
"id": "AdvertisedId"
},
- "IndoorLevel": {
- "description": "Indoor level, a human-readable string as returned by Google Maps APIs,\nuseful to indicate which floor of a building a beacon is located on.",
- "type": "object",
- "properties": {
- "name": {
- "description": "The name of this level.",
- "type": "string"
- }
- },
- "id": "IndoorLevel"
- },
"Date": {
"description": "Represents a whole calendar date, e.g. date of birth. The time of day and\ntime zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. The day may be 0 to\nrepresent a year and month where the day is not significant, e.g. credit card\nexpiration date. The year may be 0 to represent a month and day independent\nof year, e.g. anniversary date. Related types are google.type.TimeOfDay\nand `google.protobuf.Timestamp`.",
"type": "object",
@@ -908,6 +851,17 @@
},
"id": "Date"
},
+ "IndoorLevel": {
+ "properties": {
+ "name": {
+ "description": "The name of this level.",
+ "type": "string"
+ }
+ },
+ "id": "IndoorLevel",
+ "description": "Indoor level, a human-readable string as returned by Google Maps APIs,\nuseful to indicate which floor of a building a beacon is located on.",
+ "type": "object"
+ },
"ListNamespacesResponse": {
"description": "Response to ListNamespacesRequest that contains all the project's namespaces.",
"type": "object",
@@ -922,9 +876,39 @@
},
"id": "ListNamespacesResponse"
},
- "ListBeaconsResponse": {
- "description": "Response that contains list beacon results and pagination help.",
+ "Diagnostics": {
+ "description": "Diagnostics for a single beacon.",
"type": "object",
+ "properties": {
+ "beaconName": {
+ "description": "Resource name of the beacon. For Eddystone-EID beacons, this may\nbe the beacon's current EID, or the beacon's \"stable\" Eddystone-UID.",
+ "type": "string"
+ },
+ "alerts": {
+ "description": "An unordered list of Alerts that the beacon has.",
+ "items": {
+ "enum": [
+ "ALERT_UNSPECIFIED",
+ "WRONG_LOCATION",
+ "LOW_BATTERY"
+ ],
+ "type": "string"
+ },
+ "type": "array",
+ "enumDescriptions": [
+ "Invalid value. Should never appear.",
+ "The beacon has been reported in a location different than its registered\nlocation. This may indicate that the beacon has been moved. This signal\nis not 100% accurate, but indicates that further investigation is worth\nwhile.",
+ "The battery level for the beacon is low enough that, given the beacon's\ncurrent use, its battery will run out with in the next 60 days. This\nindicates that the battery should be replaced soon."
+ ]
+ },
+ "estimatedLowBatteryDate": {
+ "$ref": "Date",
+ "description": "The date when the battery is expected to be low. If the value is missing\nthen there is no estimate for when the battery will be low.\nThis value is only an estimate, not an exact date."
+ }
+ },
+ "id": "Diagnostics"
+ },
+ "ListBeaconsResponse": {
"properties": {
"nextPageToken": {
"description": "An opaque pagination token that the client may provide in their next\nrequest to retrieve the next page of results.",
@@ -943,49 +927,11 @@
"type": "array"
}
},
- "id": "ListBeaconsResponse"
- },
- "Diagnostics": {
- "description": "Diagnostics for a single beacon.",
- "type": "object",
- "properties": {
- "beaconName": {
- "description": "Resource name of the beacon. For Eddystone-EID beacons, this may\nbe the beacon's current EID, or the beacon's \"stable\" Eddystone-UID.",
- "type": "string"
- },
- "alerts": {
- "description": "An unordered list of Alerts that the beacon has.",
- "items": {
- "type": "string",
- "enum": [
- "ALERT_UNSPECIFIED",
- "WRONG_LOCATION",
- "LOW_BATTERY"
- ]
- },
- "type": "array",
- "enumDescriptions": [
- "Invalid value. Should never appear.",
- "The beacon has been reported in a location different than its registered\nlocation. This may indicate that the beacon has been moved. This signal\nis not 100% accurate, but indicates that further investigation is worth\nwhile.",
- "The battery level for the beacon is low enough that, given the beacon's\ncurrent use, its battery will run out with in the next 60 days. This\nindicates that the battery should be replaced soon."
- ]
- },
- "estimatedLowBatteryDate": {
- "$ref": "Date",
- "description": "The date when the battery is expected to be low. If the value is missing\nthen there is no estimate for when the battery will be low.\nThis value is only an estimate, not an exact date."
- }
- },
- "id": "Diagnostics"
- },
- "Empty": {
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object",
- "properties": {},
- "id": "Empty"
+ "id": "ListBeaconsResponse",
+ "description": "Response that contains list beacon results and pagination help.",
+ "type": "object"
},
"GetInfoForObservedBeaconsRequest": {
- "description": "Request for beacon and attachment information about beacons that\na mobile client has encountered \"in the wild\".",
- "type": "object",
"properties": {
"observations": {
"description": "The beacons that the client has encountered.\nAt least one must be given.",
@@ -1002,7 +948,15 @@
"type": "array"
}
},
- "id": "GetInfoForObservedBeaconsRequest"
+ "id": "GetInfoForObservedBeaconsRequest",
+ "description": "Request for beacon and attachment information about beacons that\na mobile client has encountered \"in the wild\".",
+ "type": "object"
+ },
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
},
"BeaconAttachment": {
"description": "Project-specific data associated with a beacon.",
@@ -1098,8 +1052,6 @@
"id": "ListBeaconAttachmentsResponse"
},
"Namespace": {
- "description": "An attachment namespace defines read and write access for all the attachments\ncreated under it. Each namespace is globally unique, and owned by one\nproject which is the only project that can create attachments under it.",
- "type": "object",
"properties": {
"namespaceName": {
"description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.",
@@ -1120,7 +1072,47 @@
"type": "string"
}
},
- "id": "Namespace"
+ "id": "Namespace",
+ "description": "An attachment namespace defines read and write access for all the attachments\ncreated under it. Each namespace is globally unique, and owned by one\nproject which is the only project that can create attachments under it.",
+ "type": "object"
+ },
+ "BeaconInfo": {
+ "properties": {
+ "beaconName": {
+ "description": "The name under which the beacon is registered.",
+ "type": "string"
+ },
+ "attachments": {
+ "description": "Attachments matching the type(s) requested.\nMay be empty if no attachment types were requested.",
+ "items": {
+ "$ref": "AttachmentInfo"
+ },
+ "type": "array"
+ },
+ "advertisedId": {
+ "description": "The ID advertised by the beacon.",
+ "$ref": "AdvertisedId"
+ }
+ },
+ "id": "BeaconInfo",
+ "description": "A subset of beacon information served via the `beaconinfo.getforobserved`\nmethod, which you call when users of your app encounter your beacons.",
+ "type": "object"
+ },
+ "AttachmentInfo": {
+ "properties": {
+ "data": {
+ "format": "byte",
+ "description": "An opaque data container for client-provided data.",
+ "type": "string"
+ },
+ "namespacedType": {
+ "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e, for\nexample \u003ccode\u003escrupulous-wombat-12345/welcome-message\u003c/code\u003e",
+ "type": "string"
+ }
+ },
+ "id": "AttachmentInfo",
+ "description": "A subset of attachment information served via the\n`beaconinfo.getforobserved` method, used when your users encounter your\nbeacons.",
+ "type": "object"
}
},
"protocol": "rest",
@@ -1142,5 +1134,13 @@
"kind": "discovery#restDescription",
"description": "Registers, manages, indexes, and searches beacons.",
"servicePath": "",
- "rootUrl": "https://proximitybeacon.googleapis.com/"
+ "rootUrl": "https://proximitybeacon.googleapis.com/",
+ "basePath": "",
+ "ownerDomain": "google.com",
+ "name": "proximitybeacon",
+ "batchPath": "batch",
+ "revision": "20170823",
+ "id": "proximitybeacon:v1beta1",
+ "documentationLink": "https://developers.google.com/beacons/proximity/",
+ "title": "Google Proximity Beacon API"
}
diff --git a/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json b/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json
index 506cc41..e28694c 100644
--- a/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json
+++ b/vendor/google.golang.org/api/pubsub/v1/pubsub-api.json
@@ -1,798 +1,201 @@
{
- "basePath": "",
- "ownerDomain": "google.com",
- "name": "pubsub",
- "batchPath": "batch",
- "revision": "20170622",
- "documentationLink": "https://cloud.google.com/pubsub/docs",
- "id": "pubsub:v1",
- "title": "Google Cloud Pub/Sub API",
- "ownerName": "Google",
- "discoveryVersion": "v1",
- "resources": {
- "projects": {
- "resources": {
- "topics": {
- "methods": {
- "get": {
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}",
- "id": "pubsub.projects.topics.get",
- "path": "v1/{+topic}",
- "description": "Gets the configuration of a topic.",
- "response": {
- "$ref": "Topic"
- },
- "parameterOrder": [
- "topic"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "topic": {
- "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path"
- }
- }
- },
- "publish": {
- "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.",
- "request": {
- "$ref": "PublishRequest"
- },
- "response": {
- "$ref": "PublishResponse"
- },
- "parameterOrder": [
- "topic"
- ],
- "httpMethod": "POST",
- "parameters": {
- "topic": {
- "location": "path",
- "description": "The messages in the request will be published on this topic.\nFormat is `projects/{project}/topics/{topic}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish",
- "id": "pubsub.projects.topics.publish",
- "path": "v1/{+topic}:publish"
- },
- "testIamPermissions": {
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:testIamPermissions",
- "path": "v1/{+resource}:testIamPermissions",
- "id": "pubsub.projects.topics.testIamPermissions"
- },
- "delete": {
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}",
- "id": "pubsub.projects.topics.delete",
- "path": "v1/{+topic}",
- "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "topic"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "topic": {
- "location": "path",
- "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$"
- }
- }
- },
- "list": {
- "description": "Lists matching topics.",
- "response": {
- "$ref": "ListTopicsResponse"
- },
- "parameterOrder": [
- "project"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "pageToken": {
- "location": "query",
- "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.",
- "type": "string"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "Maximum number of topics to return.",
- "type": "integer"
- },
- "project": {
- "location": "path",
- "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$"
- }
- },
- "flatPath": "v1/projects/{projectsId}/topics",
- "id": "pubsub.projects.topics.list",
- "path": "v1/{+project}/topics"
- },
- "setIamPolicy": {
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:setIamPolicy",
- "id": "pubsub.projects.topics.setIamPolicy",
- "path": "v1/{+resource}:setIamPolicy",
- "request": {
- "$ref": "SetIamPolicyRequest"
- },
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST"
- },
- "create": {
- "httpMethod": "PUT",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Topic"
- },
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path",
- "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}",
- "path": "v1/{+name}",
- "id": "pubsub.projects.topics.create",
- "description": "Creates the given topic with the given name.",
- "request": {
- "$ref": "Topic"
- }
- },
- "getIamPolicy": {
- "httpMethod": "GET",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy",
- "id": "pubsub.projects.topics.getIamPolicy",
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset."
- }
- },
- "resources": {
- "subscriptions": {
- "methods": {
- "list": {
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "pageToken": {
- "location": "query",
- "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.",
- "type": "string"
- },
- "pageSize": {
- "format": "int32",
- "description": "Maximum number of subscription names to return.",
- "type": "integer",
- "location": "query"
- },
- "topic": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path",
- "description": "The name of the topic that subscriptions are attached to.\nFormat is `projects/{project}/topics/{topic}`."
- }
- },
- "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/subscriptions",
- "id": "pubsub.projects.topics.subscriptions.list",
- "path": "v1/{+topic}/subscriptions",
- "description": "Lists the name of the subscriptions for this topic.",
- "parameterOrder": [
- "topic"
- ],
- "response": {
- "$ref": "ListTopicSubscriptionsResponse"
- },
- "httpMethod": "GET"
- }
- }
- }
- }
- },
- "snapshots": {
- "methods": {
- "testIamPermissions": {
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/snapshots/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field."
- }
- },
- "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:testIamPermissions",
- "id": "pubsub.projects.snapshots.testIamPermissions",
- "path": "v1/{+resource}:testIamPermissions"
- },
- "getIamPolicy": {
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/snapshots/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicy",
- "id": "pubsub.projects.snapshots.getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy"
- },
- "setIamPolicy": {
- "request": {
- "$ref": "SetIamPolicyRequest"
- },
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/snapshots/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicy",
- "id": "pubsub.projects.snapshots.setIamPolicy",
- "path": "v1/{+resource}:setIamPolicy"
- }
- }
- },
- "subscriptions": {
- "methods": {
- "delete": {
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
- "id": "pubsub.projects.subscriptions.delete",
- "path": "v1/{+subscription}",
- "description": "Deletes an existing subscription. All messages retained in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription or its topic unless the same topic is specified.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "subscription"
- ],
- "httpMethod": "DELETE",
- "parameters": {
- "subscription": {
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path",
- "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ]
- },
- "pull": {
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:pull",
- "id": "pubsub.projects.subscriptions.pull",
- "path": "v1/{+subscription}:pull",
- "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.",
- "request": {
- "$ref": "PullRequest"
- },
- "response": {
- "$ref": "PullResponse"
- },
- "parameterOrder": [
- "subscription"
- ],
- "httpMethod": "POST",
- "parameters": {
- "subscription": {
- "location": "path",
- "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ]
- },
- "list": {
- "parameters": {
- "project": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`."
- },
- "pageToken": {
- "location": "query",
- "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.",
- "type": "string"
- },
- "pageSize": {
- "format": "int32",
- "description": "Maximum number of subscriptions to return.",
- "type": "integer",
- "location": "query"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1/projects/{projectsId}/subscriptions",
- "id": "pubsub.projects.subscriptions.list",
- "path": "v1/{+project}/subscriptions",
- "description": "Lists matching subscriptions.",
- "response": {
- "$ref": "ListSubscriptionsResponse"
- },
- "parameterOrder": [
- "project"
- ],
- "httpMethod": "GET"
- },
- "setIamPolicy": {
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy",
- "path": "v1/{+resource}:setIamPolicy",
- "id": "pubsub.projects.subscriptions.setIamPolicy",
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
- "request": {
- "$ref": "SetIamPolicyRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- },
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ]
- },
- "create": {
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
- "id": "pubsub.projects.subscriptions.create",
- "path": "v1/{+name}",
- "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/overview#names).\nThe generated name is populated in the returned Subscription object.\nNote that for REST API requests, you must specify a name in the request.",
- "request": {
- "$ref": "Subscription"
- },
- "response": {
- "$ref": "Subscription"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "PUT",
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path",
- "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ]
- },
- "getIamPolicy": {
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy",
- "id": "pubsub.projects.subscriptions.getIamPolicy",
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "httpMethod": "GET",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- }
- },
- "modifyAckDeadline": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "subscription"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "subscription": {
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path",
- "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline",
- "id": "pubsub.projects.subscriptions.modifyAckDeadline",
- "path": "v1/{+subscription}:modifyAckDeadline",
- "request": {
- "$ref": "ModifyAckDeadlineRequest"
- },
- "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages."
- },
- "acknowledge": {
- "request": {
- "$ref": "AcknowledgeRequest"
- },
- "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error.",
- "httpMethod": "POST",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "Empty"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "subscription": {
- "description": "The subscription whose message is being acknowledged.\nFormat is `projects/{project}/subscriptions/{sub}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge",
- "path": "v1/{+subscription}:acknowledge",
- "id": "pubsub.projects.subscriptions.acknowledge"
- },
- "get": {
- "httpMethod": "GET",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "Subscription"
- },
- "parameters": {
- "subscription": {
- "description": "The name of the subscription to get.\nFormat is `projects/{project}/subscriptions/{sub}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
- "path": "v1/{+subscription}",
- "id": "pubsub.projects.subscriptions.get",
- "description": "Gets the configuration details of a subscription."
- },
- "testIamPermissions": {
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameters": {
- "resource": {
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions",
- "path": "v1/{+resource}:testIamPermissions",
- "id": "pubsub.projects.subscriptions.testIamPermissions",
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- }
- },
- "modifyPushConfig": {
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "subscription": {
- "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig",
- "path": "v1/{+subscription}:modifyPushConfig",
- "id": "pubsub.projects.subscriptions.modifyPushConfig",
- "request": {
- "$ref": "ModifyPushConfigRequest"
- },
- "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`.",
- "httpMethod": "POST",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "Empty"
- }
- }
- }
- }
- }
- }
- },
- "parameters": {
- "uploadType": {
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "$.xgafv": {
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string"
- },
- "alt": {
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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",
- "description": "Data format for response.",
- "default": "json"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "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.",
- "type": "string",
- "location": "query"
- },
- "quotaUser": {
- "type": "string",
- "location": "query",
- "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."
- },
- "pp": {
- "location": "query",
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean"
- },
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- }
- },
"schemas": {
+ "PublishResponse": {
+ "description": "Response for the `Publish` method.",
+ "type": "object",
+ "properties": {
+ "messageIds": {
+ "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "PublishResponse"
+ },
+ "Subscription": {
+ "description": "A subscription resource.",
+ "type": "object",
+ "properties": {
+ "topic": {
+ "description": "The name of the topic from which this subscription is receiving messages.\nFormat is `projects/{project}/topics/{topic}`.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.",
+ "type": "string"
+ },
+ "pushConfig": {
+ "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods.",
+ "$ref": "PushConfig"
+ },
+ "ackDeadlineSeconds": {
+ "format": "int32",
+ "description": "This value is the maximum time after a subscriber receives a message\nbefore the subscriber should acknowledge the message. After message\ndelivery but before the ack deadline expires and before the message is\nacknowledged, it is an outstanding message and will not be delivered\nagain during that time (on a best-effort basis).\n\nFor pull subscriptions, this value is used as the initial value for the ack\ndeadline. To override this value for a given message, call\n`ModifyAckDeadline` with the corresponding `ack_id` if using\npull.\nThe minimum custom deadline you can specify is 10 seconds.\nThe maximum custom deadline you can specify is 600 seconds (10 minutes).\nIf this parameter is 0, a default value of 10 seconds is used.\n\nFor push delivery, this value is also used to set the request timeout for\nthe call to the push endpoint.\n\nIf the subscriber never acknowledges the message, the Pub/Sub\nsystem will eventually redeliver the message.",
+ "type": "integer"
+ },
+ "name": {
+ "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.",
+ "type": "string"
+ }
+ },
+ "id": "Subscription"
+ },
+ "TestIamPermissionsRequest": {
+ "description": "Request message for `TestIamPermissions` method.",
+ "type": "object",
+ "properties": {
+ "permissions": {
+ "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "TestIamPermissionsRequest"
+ },
+ "Topic": {
+ "description": "A topic resource.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.",
+ "type": "string"
+ }
+ },
+ "id": "Topic"
+ },
+ "Policy": {
+ "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
+ "type": "object",
+ "properties": {
+ "etag": {
+ "format": "byte",
+ "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
+ "type": "string"
+ },
+ "version": {
+ "format": "int32",
+ "description": "Version of the `Policy`. The default version is 0.",
+ "type": "integer"
+ },
+ "bindings": {
+ "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
+ "items": {
+ "$ref": "Binding"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Policy"
+ },
+ "ModifyAckDeadlineRequest": {
+ "description": "Request for the ModifyAckDeadline method.",
+ "type": "object",
+ "properties": {
+ "ackDeadlineSeconds": {
+ "format": "int32",
+ "description": "The new ack deadline with respect to the time this request was sent to\nthe Pub/Sub system. For example, if the value is 10, the new\nack deadline will expire 10 seconds after the `ModifyAckDeadline` call\nwas made. Specifying zero may immediately make the message available for\nanother pull request.\nThe minimum deadline you can specify is 0 seconds.\nThe maximum deadline you can specify is 600 seconds (10 minutes).",
+ "type": "integer"
+ },
+ "ackIds": {
+ "description": "List of acknowledgment IDs.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ModifyAckDeadlineRequest"
+ },
+ "SetIamPolicyRequest": {
+ "description": "Request message for `SetIamPolicy` method.",
+ "type": "object",
+ "properties": {
+ "policy": {
+ "$ref": "Policy",
+ "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
+ }
+ },
+ "id": "SetIamPolicyRequest"
+ },
+ "ModifyPushConfigRequest": {
+ "description": "Request for the ModifyPushConfig method.",
+ "type": "object",
+ "properties": {
+ "pushConfig": {
+ "$ref": "PushConfig",
+ "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called."
+ }
+ },
+ "id": "ModifyPushConfigRequest"
+ },
+ "PubsubMessage": {
+ "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.",
+ "type": "object",
+ "properties": {
+ "data": {
+ "format": "byte",
+ "description": "The message payload.",
+ "type": "string"
+ },
+ "messageId": {
+ "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.",
+ "type": "string"
+ },
+ "attributes": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Optional attributes for this message.",
+ "type": "object"
+ },
+ "publishTime": {
+ "format": "google-datetime",
+ "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.",
+ "type": "string"
+ }
+ },
+ "id": "PubsubMessage"
+ },
+ "Binding": {
+ "description": "Associates `members` with a `role`.",
+ "type": "object",
+ "properties": {
+ "members": {
+ "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "role": {
+ "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
+ "type": "string"
+ }
+ },
+ "id": "Binding"
+ },
+ "AcknowledgeRequest": {
+ "description": "Request for the Acknowledge method.",
+ "type": "object",
+ "properties": {
+ "ackIds": {
+ "description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "AcknowledgeRequest"
+ },
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
+ },
"ListTopicsResponse": {
+ "description": "Response for the `ListTopics` method.",
"type": "object",
"properties": {
"nextPageToken": {
@@ -807,28 +210,7 @@
"type": "array"
}
},
- "id": "ListTopicsResponse",
- "description": "Response for the `ListTopics` method."
- },
- "Empty": {
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object",
- "properties": {},
- "id": "Empty"
- },
- "AcknowledgeRequest": {
- "type": "object",
- "properties": {
- "ackIds": {
- "description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "AcknowledgeRequest",
- "description": "Request for the Acknowledge method."
+ "id": "ListTopicsResponse"
},
"ListTopicSubscriptionsResponse": {
"description": "Response for the `ListTopicSubscriptions` method.",
@@ -863,37 +245,37 @@
"id": "PullResponse"
},
"ReceivedMessage": {
+ "description": "A message and its corresponding acknowledgment ID.",
+ "type": "object",
"properties": {
"message": {
- "description": "The message.",
- "$ref": "PubsubMessage"
+ "$ref": "PubsubMessage",
+ "description": "The message."
},
"ackId": {
"description": "This ID can be used to acknowledge the received message.",
"type": "string"
}
},
- "id": "ReceivedMessage",
- "description": "A message and its corresponding acknowledgment ID.",
- "type": "object"
+ "id": "ReceivedMessage"
},
"PushConfig": {
+ "description": "Configuration for a push delivery endpoint.",
+ "type": "object",
"properties": {
"attributes": {
- "type": "object",
"additionalProperties": {
"type": "string"
},
- "description": "Endpoint configuration attributes.\n\nEvery endpoint has a set of API supported attributes that can be used to\ncontrol different aspects of the message delivery.\n\nThe currently supported attribute is `x-goog-version`, which you can\nuse to change the format of the pushed message. This attribute\nindicates the version of the data expected by the endpoint. This\ncontrols the shape of the pushed message (i.e., its fields and metadata).\nThe endpoint version is based on the version of the Pub/Sub API.\n\nIf not present during the `CreateSubscription` call, it will default to\nthe version of the API used to make such call. If not present during a\n`ModifyPushConfig` call, its value will not be changed. `GetSubscription`\ncalls will always return a valid version, even if the subscription was\ncreated without this attribute.\n\nThe possible values for this attribute are:\n\n* `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.\n* `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API."
+ "description": "Endpoint configuration attributes.\n\nEvery endpoint has a set of API supported attributes that can be used to\ncontrol different aspects of the message delivery.\n\nThe currently supported attribute is `x-goog-version`, which you can\nuse to change the format of the pushed message. This attribute\nindicates the version of the data expected by the endpoint. This\ncontrols the shape of the pushed message (i.e., its fields and metadata).\nThe endpoint version is based on the version of the Pub/Sub API.\n\nIf not present during the `CreateSubscription` call, it will default to\nthe version of the API used to make such call. If not present during a\n`ModifyPushConfig` call, its value will not be changed. `GetSubscription`\ncalls will always return a valid version, even if the subscription was\ncreated without this attribute.\n\nThe possible values for this attribute are:\n\n* `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.\n* `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.",
+ "type": "object"
},
"pushEndpoint": {
"description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".",
"type": "string"
}
},
- "id": "PushConfig",
- "description": "Configuration for a push delivery endpoint.",
- "type": "object"
+ "id": "PushConfig"
},
"TestIamPermissionsResponse": {
"description": "Response message for `TestIamPermissions` method.",
@@ -926,24 +308,25 @@
"id": "PullRequest"
},
"ListSubscriptionsResponse": {
+ "description": "Response for the `ListSubscriptions` method.",
+ "type": "object",
"properties": {
"nextPageToken": {
"description": "If not empty, indicates that there may be more subscriptions that match\nthe request; this value should be passed in a new\n`ListSubscriptionsRequest` to get more subscriptions.",
"type": "string"
},
"subscriptions": {
+ "description": "The subscriptions that match the request.",
"items": {
"$ref": "Subscription"
},
- "type": "array",
- "description": "The subscriptions that match the request."
+ "type": "array"
}
},
- "id": "ListSubscriptionsResponse",
- "description": "Response for the `ListSubscriptions` method.",
- "type": "object"
+ "id": "ListSubscriptionsResponse"
},
"PublishRequest": {
+ "description": "Request for the Publish method.",
"type": "object",
"properties": {
"messages": {
@@ -954,182 +337,7 @@
"type": "array"
}
},
- "id": "PublishRequest",
- "description": "Request for the Publish method."
- },
- "PublishResponse": {
- "description": "Response for the `Publish` method.",
- "type": "object",
- "properties": {
- "messageIds": {
- "description": "The server-assigned ID of each published message, in the same order as\nthe messages in the request. IDs are guaranteed to be unique within\nthe topic.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "PublishResponse"
- },
- "Subscription": {
- "properties": {
- "ackDeadlineSeconds": {
- "format": "int32",
- "description": "This value is the maximum time after a subscriber receives a message\nbefore the subscriber should acknowledge the message. After message\ndelivery but before the ack deadline expires and before the message is\nacknowledged, it is an outstanding message and will not be delivered\nagain during that time (on a best-effort basis).\n\nFor pull subscriptions, this value is used as the initial value for the ack\ndeadline. To override this value for a given message, call\n`ModifyAckDeadline` with the corresponding `ack_id` if using\npull.\nThe minimum custom deadline you can specify is 10 seconds.\nThe maximum custom deadline you can specify is 600 seconds (10 minutes).\nIf this parameter is 0, a default value of 10 seconds is used.\n\nFor push delivery, this value is also used to set the request timeout for\nthe call to the push endpoint.\n\nIf the subscriber never acknowledges the message, the Pub/Sub\nsystem will eventually redeliver the message.",
- "type": "integer"
- },
- "name": {
- "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.",
- "type": "string"
- },
- "topic": {
- "type": "string",
- "description": "The name of the topic from which this subscription is receiving messages.\nFormat is `projects/{project}/topics/{topic}`.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted."
- },
- "pushConfig": {
- "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods.",
- "$ref": "PushConfig"
- }
- },
- "id": "Subscription",
- "description": "A subscription resource.",
- "type": "object"
- },
- "TestIamPermissionsRequest": {
- "description": "Request message for `TestIamPermissions` method.",
- "type": "object",
- "properties": {
- "permissions": {
- "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "TestIamPermissionsRequest"
- },
- "Policy": {
- "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
- "type": "object",
- "properties": {
- "etag": {
- "format": "byte",
- "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
- "type": "string"
- },
- "version": {
- "format": "int32",
- "description": "Version of the `Policy`. The default version is 0.",
- "type": "integer"
- },
- "bindings": {
- "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
- "items": {
- "$ref": "Binding"
- },
- "type": "array"
- }
- },
- "id": "Policy"
- },
- "Topic": {
- "description": "A topic resource.",
- "type": "object",
- "properties": {
- "name": {
- "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.",
- "type": "string"
- }
- },
- "id": "Topic"
- },
- "ModifyAckDeadlineRequest": {
- "description": "Request for the ModifyAckDeadline method.",
- "type": "object",
- "properties": {
- "ackDeadlineSeconds": {
- "format": "int32",
- "description": "The new ack deadline with respect to the time this request was sent to\nthe Pub/Sub system. For example, if the value is 10, the new\nack deadline will expire 10 seconds after the `ModifyAckDeadline` call\nwas made. Specifying zero may immediately make the message available for\nanother pull request.\nThe minimum deadline you can specify is 0 seconds.\nThe maximum deadline you can specify is 600 seconds (10 minutes).",
- "type": "integer"
- },
- "ackIds": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "List of acknowledgment IDs."
- }
- },
- "id": "ModifyAckDeadlineRequest"
- },
- "SetIamPolicyRequest": {
- "id": "SetIamPolicyRequest",
- "description": "Request message for `SetIamPolicy` method.",
- "type": "object",
- "properties": {
- "policy": {
- "$ref": "Policy",
- "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
- }
- }
- },
- "PubsubMessage": {
- "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.",
- "type": "object",
- "properties": {
- "data": {
- "format": "byte",
- "description": "The message payload.",
- "type": "string"
- },
- "messageId": {
- "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.",
- "type": "string"
- },
- "attributes": {
- "additionalProperties": {
- "type": "string"
- },
- "description": "Optional attributes for this message.",
- "type": "object"
- },
- "publishTime": {
- "format": "google-datetime",
- "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.",
- "type": "string"
- }
- },
- "id": "PubsubMessage"
- },
- "ModifyPushConfigRequest": {
- "description": "Request for the ModifyPushConfig method.",
- "type": "object",
- "properties": {
- "pushConfig": {
- "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called.",
- "$ref": "PushConfig"
- }
- },
- "id": "ModifyPushConfigRequest"
- },
- "Binding": {
- "description": "Associates `members` with a `role`.",
- "type": "object",
- "properties": {
- "role": {
- "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
- "type": "string"
- },
- "members": {
- "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "Binding"
+ "id": "PublishRequest"
}
},
"protocol": "rest",
@@ -1143,17 +351,809 @@
"auth": {
"oauth2": {
"scopes": {
- "https://www.googleapis.com/auth/pubsub": {
- "description": "View and manage Pub/Sub topics and subscriptions"
- },
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
+ },
+ "https://www.googleapis.com/auth/pubsub": {
+ "description": "View and manage Pub/Sub topics and subscriptions"
}
}
}
},
- "kind": "discovery#restDescription",
"description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n",
+ "kind": "discovery#restDescription",
"servicePath": "",
- "rootUrl": "https://pubsub.googleapis.com/"
+ "rootUrl": "https://pubsub.googleapis.com/",
+ "basePath": "",
+ "ownerDomain": "google.com",
+ "name": "pubsub",
+ "batchPath": "batch",
+ "id": "pubsub:v1",
+ "documentationLink": "https://cloud.google.com/pubsub/docs",
+ "revision": "20170814",
+ "title": "Google Cloud Pub/Sub API",
+ "ownerName": "Google",
+ "discoveryVersion": "v1",
+ "resources": {
+ "projects": {
+ "resources": {
+ "snapshots": {
+ "methods": {
+ "testIamPermissions": {
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/snapshots/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:testIamPermissions",
+ "id": "pubsub.projects.snapshots.testIamPermissions",
+ "path": "v1/{+resource}:testIamPermissions"
+ },
+ "getIamPolicy": {
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/snapshots/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy",
+ "id": "pubsub.projects.snapshots.getIamPolicy"
+ },
+ "setIamPolicy": {
+ "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicy",
+ "id": "pubsub.projects.snapshots.setIamPolicy",
+ "path": "v1/{+resource}:setIamPolicy",
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/snapshots/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ]
+ }
+ }
+ },
+ "subscriptions": {
+ "methods": {
+ "getIamPolicy": {
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy",
+ "id": "pubsub.projects.subscriptions.getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy"
+ },
+ "modifyAckDeadline": {
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline",
+ "id": "pubsub.projects.subscriptions.modifyAckDeadline",
+ "path": "v1/{+subscription}:modifyAckDeadline",
+ "request": {
+ "$ref": "ModifyAckDeadlineRequest"
+ },
+ "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "subscription": {
+ "location": "path",
+ "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ }
+ },
+ "acknowledge": {
+ "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error.",
+ "request": {
+ "$ref": "AcknowledgeRequest"
+ },
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "subscription": {
+ "location": "path",
+ "description": "The subscription whose message is being acknowledged.\nFormat is `projects/{project}/subscriptions/{sub}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge",
+ "id": "pubsub.projects.subscriptions.acknowledge",
+ "path": "v1/{+subscription}:acknowledge"
+ },
+ "get": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "subscription"
+ ],
+ "response": {
+ "$ref": "Subscription"
+ },
+ "parameters": {
+ "subscription": {
+ "location": "path",
+ "description": "The name of the subscription to get.\nFormat is `projects/{project}/subscriptions/{sub}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
+ "path": "v1/{+subscription}",
+ "id": "pubsub.projects.subscriptions.get",
+ "description": "Gets the configuration details of a subscription."
+ },
+ "testIamPermissions": {
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions",
+ "path": "v1/{+resource}:testIamPermissions",
+ "id": "pubsub.projects.subscriptions.testIamPermissions"
+ },
+ "modifyPushConfig": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "subscription"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameters": {
+ "subscription": {
+ "location": "path",
+ "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig",
+ "path": "v1/{+subscription}:modifyPushConfig",
+ "id": "pubsub.projects.subscriptions.modifyPushConfig",
+ "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`.",
+ "request": {
+ "$ref": "ModifyPushConfigRequest"
+ }
+ },
+ "delete": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "subscription": {
+ "location": "path",
+ "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
+ "id": "pubsub.projects.subscriptions.delete",
+ "path": "v1/{+subscription}",
+ "description": "Deletes an existing subscription. All messages retained in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription or its topic unless the same topic is specified."
+ },
+ "pull": {
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:pull",
+ "id": "pubsub.projects.subscriptions.pull",
+ "path": "v1/{+subscription}:pull",
+ "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.",
+ "request": {
+ "$ref": "PullRequest"
+ },
+ "response": {
+ "$ref": "PullResponse"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "subscription": {
+ "location": "path",
+ "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ]
+ },
+ "list": {
+ "description": "Lists matching subscriptions.",
+ "response": {
+ "$ref": "ListSubscriptionsResponse"
+ },
+ "parameterOrder": [
+ "project"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Maximum number of subscriptions to return.",
+ "type": "integer"
+ },
+ "project": {
+ "description": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ },
+ "pageToken": {
+ "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/subscriptions",
+ "id": "pubsub.projects.subscriptions.list",
+ "path": "v1/{+project}/subscriptions"
+ },
+ "setIamPolicy": {
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy",
+ "id": "pubsub.projects.subscriptions.setIamPolicy",
+ "path": "v1/{+resource}:setIamPolicy"
+ },
+ "create": {
+ "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic, conforming\nto the\n[resource name format](https://cloud.google.com/pubsub/docs/overview#names).\nThe generated name is populated in the returned Subscription object.\nNote that for REST API requests, you must specify a name in the request.",
+ "request": {
+ "$ref": "Subscription"
+ },
+ "response": {
+ "$ref": "Subscription"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "PUT",
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}",
+ "id": "pubsub.projects.subscriptions.create",
+ "path": "v1/{+name}"
+ }
+ }
+ },
+ "topics": {
+ "methods": {
+ "getIamPolicy": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy",
+ "id": "pubsub.projects.topics.getIamPolicy",
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset."
+ },
+ "get": {
+ "description": "Gets the configuration of a topic.",
+ "response": {
+ "$ref": "Topic"
+ },
+ "parameterOrder": [
+ "topic"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "topic": {
+ "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}",
+ "id": "pubsub.projects.topics.get",
+ "path": "v1/{+topic}"
+ },
+ "publish": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "topic"
+ ],
+ "response": {
+ "$ref": "PublishResponse"
+ },
+ "parameters": {
+ "topic": {
+ "description": "The messages in the request will be published on this topic.\nFormat is `projects/{project}/topics/{topic}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish",
+ "path": "v1/{+topic}:publish",
+ "id": "pubsub.projects.topics.publish",
+ "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.",
+ "request": {
+ "$ref": "PublishRequest"
+ }
+ },
+ "testIamPermissions": {
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:testIamPermissions",
+ "path": "v1/{+resource}:testIamPermissions",
+ "id": "pubsub.projects.topics.testIamPermissions"
+ },
+ "delete": {
+ "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "topic"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "topic": {
+ "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}",
+ "id": "pubsub.projects.topics.delete",
+ "path": "v1/{+topic}"
+ },
+ "list": {
+ "description": "Lists matching topics.",
+ "response": {
+ "$ref": "ListTopicsResponse"
+ },
+ "parameterOrder": [
+ "project"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Maximum number of topics to return.",
+ "type": "integer"
+ },
+ "project": {
+ "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.",
+ "type": "string"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/topics",
+ "id": "pubsub.projects.topics.list",
+ "path": "v1/{+project}/topics"
+ },
+ "setIamPolicy": {
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:setIamPolicy",
+ "id": "pubsub.projects.topics.setIamPolicy",
+ "path": "v1/{+resource}:setIamPolicy"
+ },
+ "create": {
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}",
+ "id": "pubsub.projects.topics.create",
+ "path": "v1/{+name}",
+ "request": {
+ "$ref": "Topic"
+ },
+ "description": "Creates the given topic with the given name.",
+ "response": {
+ "$ref": "Topic"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "PUT",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ }
+ }
+ },
+ "resources": {
+ "subscriptions": {
+ "methods": {
+ "list": {
+ "description": "Lists the name of the subscriptions for this topic.",
+ "response": {
+ "$ref": "ListTopicSubscriptionsResponse"
+ },
+ "parameterOrder": [
+ "topic"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "pageSize": {
+ "format": "int32",
+ "description": "Maximum number of subscription names to return.",
+ "type": "integer",
+ "location": "query"
+ },
+ "topic": {
+ "location": "path",
+ "description": "The name of the topic that subscriptions are attached to.\nFormat is `projects/{project}/topics/{topic}`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/subscriptions",
+ "id": "pubsub.projects.topics.subscriptions.list",
+ "path": "v1/{+topic}/subscriptions"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
+ },
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
+ },
+ "$.xgafv": {
+ "description": "V1 error format.",
+ "type": "string",
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ]
+ },
+ "alt": {
+ "type": "string",
+ "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",
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ]
+ },
+ "access_token": {
+ "location": "query",
+ "description": "OAuth access token.",
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "quotaUser": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
+ "location": "query"
+ },
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "prettyPrint": {
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ }
+ }
}
diff --git a/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json b/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json
index 62b39dd..1b97b6e 100644
--- a/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json
+++ b/vendor/google.golang.org/api/pubsub/v1beta1a/pubsub-api.json
@@ -1,56 +1,149 @@
{
- "version": "v1beta1a",
- "baseUrl": "https://pubsub.googleapis.com/",
- "canonicalName": "Pubsub",
- "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/pubsub": {
- "description": "View and manage Pub/Sub topics and subscriptions"
- }
- }
- }
- },
- "servicePath": "",
- "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n",
- "kind": "discovery#restDescription",
- "rootUrl": "https://pubsub.googleapis.com/",
- "basePath": "",
- "ownerDomain": "google.com",
- "name": "pubsub",
- "batchPath": "batch",
- "id": "pubsub:v1beta1a",
- "documentationLink": "https://cloud.google.com/pubsub/docs",
- "revision": "20170622",
- "title": "Google Cloud Pub/Sub API",
"discoveryVersion": "v1",
"ownerName": "Google",
"resources": {
"subscriptions": {
"methods": {
- "acknowledge": {
- "path": "v1beta1a/subscriptions/acknowledge",
- "id": "pubsub.subscriptions.acknowledge",
+ "modifyPushConfig": {
+ "flatPath": "v1beta1a/subscriptions/modifyPushConfig",
+ "id": "pubsub.subscriptions.modifyPushConfig",
+ "path": "v1beta1a/subscriptions/modifyPushConfig",
+ "description": "Modifies the \u003ccode\u003ePushConfig\u003c/code\u003e for a specified subscription.\nThis method can be used to suspend the flow of messages to an endpoint\nby clearing the \u003ccode\u003ePushConfig\u003c/code\u003e field in the request. Messages\nwill be accumulated for delivery even if no push configuration is\ndefined or while the configuration is modified.",
"request": {
- "$ref": "AcknowledgeRequest"
+ "$ref": "ModifyPushConfigRequest"
},
- "description": "Acknowledges a particular received message: the Pub/Sub system can remove\nthe given message from the subscription. Acknowledging a message whose\nAck deadline has expired may succeed, but the message could have been\nalready redelivered. Acknowledging a message more than once will not\nresult in an error. This is only used for messages received via pull.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {},
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ]
+ },
+ "pull": {
+ "request": {
+ "$ref": "PullRequest"
+ },
+ "description": "Pulls a single message from the server.\nIf return_immediately is true, and no messages are available in the\nsubscription, this method returns FAILED_PRECONDITION. The system is free\nto return an UNAVAILABLE error if no messages are available in a\nreasonable amount of time (to reduce system load).",
"httpMethod": "POST",
"parameterOrder": [],
"response": {
- "$ref": "Empty"
+ "$ref": "PullResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/pubsub"
],
"parameters": {},
- "flatPath": "v1beta1a/subscriptions/acknowledge"
+ "flatPath": "v1beta1a/subscriptions/pull",
+ "path": "v1beta1a/subscriptions/pull",
+ "id": "pubsub.subscriptions.pull"
+ },
+ "delete": {
+ "httpMethod": "DELETE",
+ "parameterOrder": [
+ "subscription"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameters": {
+ "subscription": {
+ "description": "The subscription to delete.",
+ "type": "string",
+ "required": true,
+ "pattern": "^.+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta1a/subscriptions/{subscriptionsId}",
+ "path": "v1beta1a/subscriptions/{+subscription}",
+ "id": "pubsub.subscriptions.delete",
+ "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to Pull after deletion will return\nNOT_FOUND."
+ },
+ "list": {
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "ListSubscriptionsResponse"
+ },
+ "parameterOrder": [],
+ "parameters": {
+ "pageToken": {
+ "location": "query",
+ "description": "The value obtained in the last \u003ccode\u003eListSubscriptionsResponse\u003c/code\u003e\nfor continuation.",
+ "type": "string"
+ },
+ "maxResults": {
+ "format": "int32",
+ "description": "Maximum number of subscriptions to return.",
+ "type": "integer",
+ "location": "query"
+ },
+ "query": {
+ "location": "query",
+ "description": "A valid label query expression.",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta1a/subscriptions",
+ "path": "v1beta1a/subscriptions",
+ "id": "pubsub.subscriptions.list",
+ "description": "Lists matching subscriptions."
+ },
+ "create": {
+ "response": {
+ "$ref": "Subscription"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {},
+ "flatPath": "v1beta1a/subscriptions",
+ "id": "pubsub.subscriptions.create",
+ "path": "v1beta1a/subscriptions",
+ "request": {
+ "$ref": "Subscription"
+ },
+ "description": "Creates a subscription on a given topic for a given subscriber.\nIf the subscription already exists, returns ALREADY_EXISTS.\nIf the corresponding topic doesn't exist, returns NOT_FOUND.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic."
+ },
+ "acknowledge": {
+ "request": {
+ "$ref": "AcknowledgeRequest"
+ },
+ "description": "Acknowledges a particular received message: the Pub/Sub system can remove\nthe given message from the subscription. Acknowledging a message whose\nAck deadline has expired may succeed, but the message could have been\nalready redelivered. Acknowledging a message more than once will not\nresult in an error. This is only used for messages received via pull.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {},
+ "flatPath": "v1beta1a/subscriptions/acknowledge",
+ "id": "pubsub.subscriptions.acknowledge",
+ "path": "v1beta1a/subscriptions/acknowledge"
},
"modifyAckDeadline": {
+ "description": "Modifies the Ack deadline for a message received from a pull request.",
+ "request": {
+ "$ref": "ModifyAckDeadlineRequest"
+ },
"response": {
"$ref": "Empty"
},
@@ -63,11 +156,33 @@
],
"flatPath": "v1beta1a/subscriptions/modifyAckDeadline",
"id": "pubsub.subscriptions.modifyAckDeadline",
- "path": "v1beta1a/subscriptions/modifyAckDeadline",
- "description": "Modifies the Ack deadline for a message received from a pull request.",
- "request": {
- "$ref": "ModifyAckDeadlineRequest"
- }
+ "path": "v1beta1a/subscriptions/modifyAckDeadline"
+ },
+ "get": {
+ "description": "Gets the configuration details of a subscription.",
+ "response": {
+ "$ref": "Subscription"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "subscription": {
+ "location": "path",
+ "description": "The name of the subscription to get.",
+ "type": "string",
+ "required": true,
+ "pattern": "^.+$"
+ }
+ },
+ "flatPath": "v1beta1a/subscriptions/{subscriptionsId}",
+ "id": "pubsub.subscriptions.get",
+ "path": "v1beta1a/subscriptions/{+subscription}"
},
"pullBatch": {
"id": "pubsub.subscriptions.pullBatch",
@@ -87,283 +202,83 @@
],
"parameters": {},
"flatPath": "v1beta1a/subscriptions/pullBatch"
- },
- "get": {
- "path": "v1beta1a/subscriptions/{+subscription}",
- "id": "pubsub.subscriptions.get",
- "description": "Gets the configuration details of a subscription.",
- "httpMethod": "GET",
- "response": {
- "$ref": "Subscription"
- },
- "parameterOrder": [
- "subscription"
- ],
- "parameters": {
- "subscription": {
- "description": "The name of the subscription to get.",
- "type": "string",
- "required": true,
- "pattern": "^.+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta1a/subscriptions/{subscriptionsId}"
- },
- "modifyPushConfig": {
- "parameters": {},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta1a/subscriptions/modifyPushConfig",
- "path": "v1beta1a/subscriptions/modifyPushConfig",
- "id": "pubsub.subscriptions.modifyPushConfig",
- "description": "Modifies the \u003ccode\u003ePushConfig\u003c/code\u003e for a specified subscription.\nThis method can be used to suspend the flow of messages to an endpoint\nby clearing the \u003ccode\u003ePushConfig\u003c/code\u003e field in the request. Messages\nwill be accumulated for delivery even if no push configuration is\ndefined or while the configuration is modified.",
- "request": {
- "$ref": "ModifyPushConfigRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "Empty"
- }
- },
- "pull": {
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "PullResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {},
- "flatPath": "v1beta1a/subscriptions/pull",
- "path": "v1beta1a/subscriptions/pull",
- "id": "pubsub.subscriptions.pull",
- "request": {
- "$ref": "PullRequest"
- },
- "description": "Pulls a single message from the server.\nIf return_immediately is true, and no messages are available in the\nsubscription, this method returns FAILED_PRECONDITION. The system is free\nto return an UNAVAILABLE error if no messages are available in a\nreasonable amount of time (to reduce system load)."
- },
- "delete": {
- "path": "v1beta1a/subscriptions/{+subscription}",
- "id": "pubsub.subscriptions.delete",
- "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to Pull after deletion will return\nNOT_FOUND.",
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "subscription"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "subscription": {
- "location": "path",
- "description": "The subscription to delete.",
- "type": "string",
- "required": true,
- "pattern": "^.+$"
- }
- },
- "flatPath": "v1beta1a/subscriptions/{subscriptionsId}"
- },
- "list": {
- "response": {
- "$ref": "ListSubscriptionsResponse"
- },
- "parameterOrder": [],
- "httpMethod": "GET",
- "parameters": {
- "pageToken": {
- "location": "query",
- "description": "The value obtained in the last \u003ccode\u003eListSubscriptionsResponse\u003c/code\u003e\nfor continuation.",
- "type": "string"
- },
- "maxResults": {
- "location": "query",
- "format": "int32",
- "description": "Maximum number of subscriptions to return.",
- "type": "integer"
- },
- "query": {
- "description": "A valid label query expression.",
- "type": "string",
- "location": "query"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta1a/subscriptions",
- "id": "pubsub.subscriptions.list",
- "path": "v1beta1a/subscriptions",
- "description": "Lists matching subscriptions."
- },
- "create": {
- "request": {
- "$ref": "Subscription"
- },
- "description": "Creates a subscription on a given topic for a given subscriber.\nIf the subscription already exists, returns ALREADY_EXISTS.\nIf the corresponding topic doesn't exist, returns NOT_FOUND.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic.",
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "Subscription"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {},
- "flatPath": "v1beta1a/subscriptions",
- "path": "v1beta1a/subscriptions",
- "id": "pubsub.subscriptions.create"
}
}
},
"topics": {
"methods": {
- "publish": {
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "Empty"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {},
- "flatPath": "v1beta1a/topics/publish",
- "path": "v1beta1a/topics/publish",
- "id": "pubsub.topics.publish",
- "request": {
- "$ref": "PublishRequest"
- },
- "description": "Adds a message to the topic. Returns NOT_FOUND if the topic does not\nexist."
- },
- "delete": {
- "id": "pubsub.topics.delete",
- "path": "v1beta1a/topics/{+topic}",
- "description": "Deletes the topic with the given name. Returns NOT_FOUND if the topic does\nnot exist. After a topic is deleted, a new topic may be created with the\nsame name.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "topic"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "topic": {
- "description": "Name of the topic to delete.",
- "type": "string",
- "required": true,
- "pattern": "^.+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1a/topics/{topicsId}"
- },
"publishBatch": {
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {},
- "flatPath": "v1beta1a/topics/publishBatch",
- "path": "v1beta1a/topics/publishBatch",
- "id": "pubsub.topics.publishBatch",
+ "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist.",
"request": {
"$ref": "PublishBatchRequest"
},
- "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist.",
- "httpMethod": "POST",
- "parameterOrder": [],
"response": {
"$ref": "PublishBatchResponse"
- }
- },
- "list": {
- "description": "Lists matching topics.",
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "ListTopicsResponse"
},
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/pubsub"
],
+ "flatPath": "v1beta1a/topics/publishBatch",
+ "id": "pubsub.topics.publishBatch",
+ "path": "v1beta1a/topics/publishBatch"
+ },
+ "list": {
+ "flatPath": "v1beta1a/topics",
+ "path": "v1beta1a/topics",
+ "id": "pubsub.topics.list",
+ "description": "Lists matching topics.",
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "ListTopicsResponse"
+ },
+ "parameterOrder": [],
"parameters": {
- "pageToken": {
- "location": "query",
- "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation.",
- "type": "string"
- },
"maxResults": {
- "location": "query",
"format": "int32",
"description": "Maximum number of topics to return.",
- "type": "integer"
+ "type": "integer",
+ "location": "query"
},
"query": {
"location": "query",
"description": "A valid label query expression.",
"type": "string"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation.",
+ "type": "string"
}
},
- "flatPath": "v1beta1a/topics",
- "path": "v1beta1a/topics",
- "id": "pubsub.topics.list"
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ]
},
"create": {
+ "description": "Creates the given topic with the given name.",
+ "request": {
+ "$ref": "Topic"
+ },
"response": {
"$ref": "Topic"
},
"parameterOrder": [],
"httpMethod": "POST",
+ "parameters": {},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/pubsub"
],
- "parameters": {},
"flatPath": "v1beta1a/topics",
"id": "pubsub.topics.create",
- "path": "v1beta1a/topics",
- "request": {
- "$ref": "Topic"
- },
- "description": "Creates the given topic with the given name."
+ "path": "v1beta1a/topics"
},
"get": {
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "topic": {
- "pattern": "^.+$",
- "location": "path",
- "description": "The name of the topic to get.",
- "type": "string",
- "required": true
- }
- },
"flatPath": "v1beta1a/topics/{topicsId}",
"path": "v1beta1a/topics/{+topic}",
"id": "pubsub.topics.get",
@@ -374,22 +289,127 @@
},
"parameterOrder": [
"topic"
- ]
+ ],
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "topic": {
+ "type": "string",
+ "required": true,
+ "pattern": "^.+$",
+ "location": "path",
+ "description": "The name of the topic to get."
+ }
+ }
+ },
+ "publish": {
+ "request": {
+ "$ref": "PublishRequest"
+ },
+ "description": "Adds a message to the topic. Returns NOT_FOUND if the topic does not\nexist.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {},
+ "flatPath": "v1beta1a/topics/publish",
+ "id": "pubsub.topics.publish",
+ "path": "v1beta1a/topics/publish"
+ },
+ "delete": {
+ "path": "v1beta1a/topics/{+topic}",
+ "id": "pubsub.topics.delete",
+ "description": "Deletes the topic with the given name. Returns NOT_FOUND if the topic does\nnot exist. After a topic is deleted, a new topic may be created with the\nsame name.",
+ "httpMethod": "DELETE",
+ "parameterOrder": [
+ "topic"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "topic": {
+ "pattern": "^.+$",
+ "location": "path",
+ "description": "Name of the topic to delete.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1beta1a/topics/{topicsId}"
}
}
}
},
"parameters": {
- "upload_protocol": {
+ "alt": {
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
+ "key": {
"location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "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.",
"type": "string"
},
- "prettyPrint": {
+ "quotaUser": {
+ "type": "string",
"location": "query",
+ "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."
+ },
+ "pp": {
+ "default": "true",
+ "type": "boolean",
+ "location": "query",
+ "description": "Pretty-print response."
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ },
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "upload_protocol": {
+ "type": "string",
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
+ },
+ "prettyPrint": {
"description": "Returns response with indentations and line breaks.",
"default": "true",
- "type": "boolean"
+ "type": "boolean",
+ "location": "query"
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
@@ -415,83 +435,63 @@
"type": "string"
},
"callback": {
+ "location": "query",
"description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "alt": {
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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",
- "description": "Data format for response.",
- "default": "json"
- },
- "access_token": {
- "type": "string",
- "location": "query",
- "description": "OAuth access token."
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "quotaUser": {
- "location": "query",
- "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.",
"type": "string"
- },
- "pp": {
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
- },
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
}
},
"schemas": {
- "ModifyPushConfigRequest": {
+ "ModifyAckDeadlineRequest": {
+ "description": "Request for the ModifyAckDeadline method.",
+ "type": "object",
"properties": {
- "pushConfig": {
- "description": "An empty \u003ccode\u003epush_config\u003c/code\u003e indicates that the Pub/Sub system should\npause pushing messages from the given subscription.",
- "$ref": "PushConfig"
- },
"subscription": {
- "description": "The name of the subscription.",
+ "description": "Next Index: 5\nThe name of the subscription from which messages are being pulled.",
"type": "string"
+ },
+ "ackId": {
+ "description": "The acknowledgment ID. Either this or ack_ids must be populated,\nnot both.",
+ "type": "string"
+ },
+ "ackDeadlineSeconds": {
+ "format": "int32",
+ "description": "The new ack deadline with respect to the time this request was sent to the\nPub/Sub system. Must be \u003e= 0. For example, if the value is 10, the new ack\ndeadline will expire 10 seconds after the ModifyAckDeadline call was made.\nSpecifying zero may immediately make the message available for another pull\nrequest.",
+ "type": "integer"
+ },
+ "ackIds": {
+ "description": "List of acknowledgment IDs. Either this field or ack_id\nshould be populated, not both.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
}
},
- "id": "ModifyPushConfigRequest",
- "description": "Request for the ModifyPushConfig method.",
- "type": "object"
+ "id": "ModifyAckDeadlineRequest"
+ },
+ "PullBatchRequest": {
+ "description": "Request for the PullBatch method.",
+ "type": "object",
+ "properties": {
+ "maxEvents": {
+ "format": "int32",
+ "description": "The maximum number of PubsubEvents returned for this request. The Pub/Sub\nsystem may return fewer than the number of events specified.",
+ "type": "integer"
+ },
+ "subscription": {
+ "description": "The subscription from which messages should be pulled.",
+ "type": "string"
+ },
+ "returnImmediately": {
+ "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.",
+ "type": "boolean"
+ }
+ },
+ "id": "PullBatchRequest"
},
"PubsubMessage": {
"description": "A message data and its labels.",
"type": "object",
"properties": {
- "data": {
- "format": "byte",
- "description": "The message payload.",
- "type": "string"
- },
"messageId": {
"description": "ID of this message assigned by the server at publication time. Guaranteed\nto be unique within the topic. This value may be read by a subscriber\nthat receives a PubsubMessage via a Pull call or a push delivery. It must\nnot be populated by a publisher in a Publish call.",
"type": "string"
@@ -507,11 +507,68 @@
"$ref": "Label"
},
"type": "array"
+ },
+ "data": {
+ "format": "byte",
+ "description": "The message payload.",
+ "type": "string"
}
},
"id": "PubsubMessage"
},
+ "ModifyPushConfigRequest": {
+ "description": "Request for the ModifyPushConfig method.",
+ "type": "object",
+ "properties": {
+ "pushConfig": {
+ "description": "An empty \u003ccode\u003epush_config\u003c/code\u003e indicates that the Pub/Sub system should\npause pushing messages from the given subscription.",
+ "$ref": "PushConfig"
+ },
+ "subscription": {
+ "description": "The name of the subscription.",
+ "type": "string"
+ }
+ },
+ "id": "ModifyPushConfigRequest"
+ },
+ "ListTopicsResponse": {
+ "id": "ListTopicsResponse",
+ "description": "Response for the ListTopics method.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "If not empty, indicates that there are more topics that match the request,\nand this value should be passed to the next \u003ccode\u003eListTopicsRequest\u003c/code\u003e\nto continue.",
+ "type": "string"
+ },
+ "topic": {
+ "description": "The resulting topics.",
+ "items": {
+ "$ref": "Topic"
+ },
+ "type": "array"
+ }
+ }
+ },
+ "PublishBatchRequest": {
+ "description": "Request for the PublishBatch method.",
+ "type": "object",
+ "properties": {
+ "messages": {
+ "items": {
+ "$ref": "PubsubMessage"
+ },
+ "type": "array",
+ "description": "The messages to publish."
+ },
+ "topic": {
+ "description": "The messages in the request will be published on this topic.",
+ "type": "string"
+ }
+ },
+ "id": "PublishBatchRequest"
+ },
"AcknowledgeRequest": {
+ "id": "AcknowledgeRequest",
"description": "Request for the Acknowledge method.",
"type": "object",
"properties": {
@@ -526,8 +583,7 @@
},
"type": "array"
}
- },
- "id": "AcknowledgeRequest"
+ }
},
"PullBatchResponse": {
"description": "Response for the PullBatch method.",
@@ -544,46 +600,10 @@
"id": "PullBatchResponse"
},
"Empty": {
+ "id": "Empty",
"description": "An empty message that you can re-use to avoid defining duplicated empty\nmessages in your project. A typical example is to use it as argument or the\nreturn value of a service API. For instance:\n\n service Foo {\n rpc Bar (proto2.Empty) returns (proto2.Empty) { };\n };\n\nBEGIN GOOGLE-INTERNAL\nThe difference between this one and net/rpc/empty-message.proto is that\n1) The generated message here is in proto2 C++ API.\n2) The proto2.Empty has minimum dependencies\n (no message_set or net/rpc dependencies)\nEND GOOGLE-INTERNAL",
"type": "object",
- "properties": {},
- "id": "Empty"
- },
- "PublishBatchRequest": {
- "description": "Request for the PublishBatch method.",
- "type": "object",
- "properties": {
- "topic": {
- "description": "The messages in the request will be published on this topic.",
- "type": "string"
- },
- "messages": {
- "description": "The messages to publish.",
- "items": {
- "$ref": "PubsubMessage"
- },
- "type": "array"
- }
- },
- "id": "PublishBatchRequest"
- },
- "ListTopicsResponse": {
- "description": "Response for the ListTopics method.",
- "type": "object",
- "properties": {
- "topic": {
- "description": "The resulting topics.",
- "items": {
- "$ref": "Topic"
- },
- "type": "array"
- },
- "nextPageToken": {
- "type": "string",
- "description": "If not empty, indicates that there are more topics that match the request,\nand this value should be passed to the next \u003ccode\u003eListTopicsRequest\u003c/code\u003e\nto continue."
- }
- },
- "id": "ListTopicsResponse"
+ "properties": {}
},
"PullResponse": {
"properties": {
@@ -601,17 +621,18 @@
"type": "object"
},
"PushConfig": {
+ "description": "Configuration for a push delivery endpoint.",
+ "type": "object",
"properties": {
"pushEndpoint": {
"description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".",
"type": "string"
}
},
- "id": "PushConfig",
- "description": "Configuration for a push delivery endpoint.",
- "type": "object"
+ "id": "PushConfig"
},
"PullRequest": {
+ "id": "PullRequest",
"description": "Request for the Pull method.",
"type": "object",
"properties": {
@@ -620,11 +641,10 @@
"type": "string"
},
"returnImmediately": {
- "type": "boolean",
- "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning FAILED_PRECONDITION. The client may cancel the request if\nit does not wish to wait any longer for the response."
+ "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning FAILED_PRECONDITION. The client may cancel the request if\nit does not wish to wait any longer for the response.",
+ "type": "boolean"
}
- },
- "id": "PullRequest"
+ }
},
"PubsubEvent": {
"description": "An event indicating a received message or truncation event.",
@@ -635,8 +655,8 @@
"type": "string"
},
"deleted": {
- "description": "Indicates that this subscription has been deleted. (Note that pull\nsubscribers will always receive NOT_FOUND in response in their pull\nrequest on the subscription, rather than seeing this boolean.)",
- "type": "boolean"
+ "type": "boolean",
+ "description": "Indicates that this subscription has been deleted. (Note that pull\nsubscribers will always receive NOT_FOUND in response in their pull\nrequest on the subscription, rather than seeing this boolean.)"
},
"truncated": {
"description": "Indicates that this subscription has been truncated.",
@@ -668,19 +688,19 @@
"id": "ListSubscriptionsResponse"
},
"PublishRequest": {
- "description": "Request for the Publish method.",
"type": "object",
"properties": {
"topic": {
- "type": "string",
- "description": "The message in the request will be published on this topic."
+ "description": "The message in the request will be published on this topic.",
+ "type": "string"
},
"message": {
- "description": "The message to publish.",
- "$ref": "PubsubMessage"
+ "$ref": "PubsubMessage",
+ "description": "The message to publish."
}
},
- "id": "PublishRequest"
+ "id": "PublishRequest",
+ "description": "Request for the Publish method."
},
"PublishBatchResponse": {
"description": "Response for the PublishBatch method.",
@@ -700,6 +720,10 @@
"description": "A subscription resource.",
"type": "object",
"properties": {
+ "name": {
+ "description": "Name of the subscription.",
+ "type": "string"
+ },
"topic": {
"description": "The name of the topic from which this subscription is receiving messages.",
"type": "string"
@@ -712,16 +736,11 @@
"format": "int32",
"description": "For either push or pull delivery, the value is the maximum time after a\nsubscriber receives a message before the subscriber should acknowledge or\nNack the message. If the Ack deadline for a message passes without an\nAck or a Nack, the Pub/Sub system will eventually redeliver the message.\nIf a subscriber acknowledges after the deadline, the Pub/Sub system may\naccept the Ack, but it is possible that the message has been already\ndelivered again. Multiple Acks to the message are allowed and will\nsucceed.\n\nFor push delivery, this value is used to set the request timeout for\nthe call to the push endpoint.\n\nFor pull delivery, this value is used as the initial value for the Ack\ndeadline. It may be overridden for each message using its corresponding\nack_id with \u003ccode\u003eModifyAckDeadline\u003c/code\u003e.\nWhile a message is outstanding (i.e. it has been delivered to a pull\nsubscriber and the subscriber has not yet Acked or Nacked), the Pub/Sub\nsystem will not deliver that message to another pull subscriber\n(on a best-effort basis).",
"type": "integer"
- },
- "name": {
- "description": "Name of the subscription.",
- "type": "string"
}
},
"id": "Subscription"
},
"Topic": {
- "id": "Topic",
"description": "A topic resource.",
"type": "object",
"properties": {
@@ -729,16 +748,13 @@
"description": "Name of the topic.",
"type": "string"
}
- }
+ },
+ "id": "Topic"
},
"Label": {
"description": "A key-value pair applied to a given object.",
"type": "object",
"properties": {
- "strValue": {
- "description": "A string value.",
- "type": "string"
- },
"numValue": {
"format": "int64",
"description": "An integer value.",
@@ -747,61 +763,45 @@
"key": {
"description": "The key of a label is a syntactically valid URL (as per RFC 1738) with\nthe \"scheme\" and initial slashes omitted and with the additional\nrestrictions noted below. Each key should be globally unique. The\n\"host\" portion is called the \"namespace\" and is not necessarily\nresolvable to a network endpoint. Instead, the namespace indicates what\nsystem or entity defines the semantics of the label. Namespaces do not\nrestrict the set of objects to which a label may be associated.\n\nKeys are defined by the following grammar:\n\n key = hostname \"/\" kpath\n kpath = ksegment *[ \"/\" ksegment ]\n ksegment = alphadigit | *[ alphadigit | \"-\" | \"_\" | \".\" ]\n\nwhere \"hostname\" and \"alphadigit\" are defined as in RFC 1738.\n\nExample key:\n spanner.google.com/universe",
"type": "string"
+ },
+ "strValue": {
+ "description": "A string value.",
+ "type": "string"
}
},
"id": "Label"
- },
- "ModifyAckDeadlineRequest": {
- "description": "Request for the ModifyAckDeadline method.",
- "type": "object",
- "properties": {
- "subscription": {
- "description": "Next Index: 5\nThe name of the subscription from which messages are being pulled.",
- "type": "string"
- },
- "ackId": {
- "description": "The acknowledgment ID. Either this or ack_ids must be populated,\nnot both.",
- "type": "string"
- },
- "ackDeadlineSeconds": {
- "type": "integer",
- "format": "int32",
- "description": "The new ack deadline with respect to the time this request was sent to the\nPub/Sub system. Must be \u003e= 0. For example, if the value is 10, the new ack\ndeadline will expire 10 seconds after the ModifyAckDeadline call was made.\nSpecifying zero may immediately make the message available for another pull\nrequest."
- },
- "ackIds": {
- "description": "List of acknowledgment IDs. Either this field or ack_id\nshould be populated, not both.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "ModifyAckDeadlineRequest"
- },
- "PullBatchRequest": {
- "description": "Request for the PullBatch method.",
- "type": "object",
- "properties": {
- "returnImmediately": {
- "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the Pull response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.",
- "type": "boolean"
- },
- "maxEvents": {
- "format": "int32",
- "description": "The maximum number of PubsubEvents returned for this request. The Pub/Sub\nsystem may return fewer than the number of events specified.",
- "type": "integer"
- },
- "subscription": {
- "description": "The subscription from which messages should be pulled.",
- "type": "string"
- }
- },
- "id": "PullBatchRequest"
}
},
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
- "protocol": "rest"
+ "protocol": "rest",
+ "version": "v1beta1a",
+ "baseUrl": "https://pubsub.googleapis.com/",
+ "canonicalName": "Pubsub",
+ "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/pubsub": {
+ "description": "View and manage Pub/Sub topics and subscriptions"
+ }
+ }
+ }
+ },
+ "servicePath": "",
+ "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n",
+ "kind": "discovery#restDescription",
+ "rootUrl": "https://pubsub.googleapis.com/",
+ "basePath": "",
+ "ownerDomain": "google.com",
+ "name": "pubsub",
+ "batchPath": "batch",
+ "revision": "20170814",
+ "documentationLink": "https://cloud.google.com/pubsub/docs",
+ "id": "pubsub:v1beta1a",
+ "title": "Google Cloud Pub/Sub API"
}
diff --git a/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json b/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json
index 8b2aae2..826f8de 100644
--- a/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json
+++ b/vendor/google.golang.org/api/pubsub/v1beta2/pubsub-api.json
@@ -1,628 +1,8 @@
{
- "title": "Google Cloud Pub/Sub API",
- "discoveryVersion": "v1",
- "ownerName": "Google",
- "resources": {
- "projects": {
- "resources": {
- "subscriptions": {
- "methods": {
- "getIamPolicy": {
- "path": "v1beta2/{+resource}:getIamPolicy",
- "id": "pubsub.projects.subscriptions.getIamPolicy",
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "httpMethod": "GET",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- },
- "parameters": {
- "resource": {
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy"
- },
- "modifyAckDeadline": {
- "path": "v1beta2/{+subscription}:modifyAckDeadline",
- "id": "pubsub.projects.subscriptions.modifyAckDeadline",
- "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.",
- "request": {
- "$ref": "ModifyAckDeadlineRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "Empty"
- },
- "parameters": {
- "subscription": {
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path",
- "description": "The name of the subscription.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline"
- },
- "acknowledge": {
- "httpMethod": "POST",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "Empty"
- },
- "parameters": {
- "subscription": {
- "location": "path",
- "description": "The subscription whose message is being acknowledged.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge",
- "path": "v1beta2/{+subscription}:acknowledge",
- "id": "pubsub.projects.subscriptions.acknowledge",
- "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error.",
- "request": {
- "$ref": "AcknowledgeRequest"
- }
- },
- "get": {
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}",
- "id": "pubsub.projects.subscriptions.get",
- "path": "v1beta2/{+subscription}",
- "description": "Gets the configuration details of a subscription.",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "Subscription"
- },
- "httpMethod": "GET",
- "parameters": {
- "subscription": {
- "description": "The name of the subscription to get.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ]
- },
- "testIamPermissions": {
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions",
- "path": "v1beta2/{+resource}:testIamPermissions",
- "id": "pubsub.projects.subscriptions.testIamPermissions",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning."
- },
- "modifyPushConfig": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "subscription"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "subscription": {
- "location": "path",
- "description": "The name of the subscription.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$"
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig",
- "id": "pubsub.projects.subscriptions.modifyPushConfig",
- "path": "v1beta2/{+subscription}:modifyPushConfig",
- "request": {
- "$ref": "ModifyPushConfigRequest"
- },
- "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`."
- },
- "delete": {
- "httpMethod": "DELETE",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "Empty"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "subscription": {
- "description": "The subscription to delete.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}",
- "path": "v1beta2/{+subscription}",
- "id": "pubsub.projects.subscriptions.delete",
- "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription, or its topic unless the same topic is specified."
- },
- "pull": {
- "path": "v1beta2/{+subscription}:pull",
- "id": "pubsub.projects.subscriptions.pull",
- "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.",
- "request": {
- "$ref": "PullRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "subscription"
- ],
- "response": {
- "$ref": "PullResponse"
- },
- "parameters": {
- "subscription": {
- "description": "The subscription from which messages should be pulled.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:pull"
- },
- "list": {
- "description": "Lists matching subscriptions.",
- "httpMethod": "GET",
- "response": {
- "$ref": "ListSubscriptionsResponse"
- },
- "parameterOrder": [
- "project"
- ],
- "parameters": {
- "pageSize": {
- "format": "int32",
- "description": "Maximum number of subscriptions to return.",
- "type": "integer",
- "location": "query"
- },
- "project": {
- "description": "The name of the cloud project that subscriptions belong to.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path"
- },
- "pageToken": {
- "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.",
- "type": "string",
- "location": "query"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions",
- "path": "v1beta2/{+project}/subscriptions",
- "id": "pubsub.projects.subscriptions.list"
- },
- "setIamPolicy": {
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy",
- "id": "pubsub.projects.subscriptions.setIamPolicy",
- "path": "v1beta2/{+resource}:setIamPolicy",
- "request": {
- "$ref": "SetIamPolicyRequest"
- },
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy."
- },
- "create": {
- "path": "v1beta2/{+name}",
- "id": "pubsub.projects.subscriptions.create",
- "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic. Note that\nfor REST API requests, you must specify a name.",
- "request": {
- "$ref": "Subscription"
- },
- "httpMethod": "PUT",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Subscription"
- },
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
- "location": "path",
- "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}"
- }
- }
- },
- "topics": {
- "methods": {
- "testIamPermissions": {
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "location": "path",
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$"
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:testIamPermissions",
- "id": "pubsub.projects.topics.testIamPermissions",
- "path": "v1beta2/{+resource}:testIamPermissions",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning."
- },
- "delete": {
- "path": "v1beta2/{+topic}",
- "id": "pubsub.projects.topics.delete",
- "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`.",
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "topic"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "topic": {
- "location": "path",
- "description": "Name of the topic to delete.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$"
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}"
- },
- "list": {
- "httpMethod": "GET",
- "parameterOrder": [
- "project"
- ],
- "response": {
- "$ref": "ListTopicsResponse"
- },
- "parameters": {
- "pageToken": {
- "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "type": "integer",
- "location": "query",
- "format": "int32",
- "description": "Maximum number of topics to return."
- },
- "project": {
- "description": "The name of the cloud project that topics belong to.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/topics",
- "path": "v1beta2/{+project}/topics",
- "id": "pubsub.projects.topics.list",
- "description": "Lists matching topics."
- },
- "setIamPolicy": {
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy",
- "id": "pubsub.projects.topics.setIamPolicy",
- "path": "v1beta2/{+resource}:setIamPolicy",
- "request": {
- "$ref": "SetIamPolicyRequest"
- },
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy."
- },
- "create": {
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path",
- "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`."
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}",
- "path": "v1beta2/{+name}",
- "id": "pubsub.projects.topics.create",
- "request": {
- "$ref": "Topic"
- },
- "description": "Creates the given topic with the given name.",
- "httpMethod": "PUT",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Topic"
- }
- },
- "getIamPolicy": {
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "resource": {
- "location": "path",
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$"
- }
- },
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:getIamPolicy",
- "id": "pubsub.projects.topics.getIamPolicy",
- "path": "v1beta2/{+resource}:getIamPolicy"
- },
- "get": {
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}",
- "path": "v1beta2/{+topic}",
- "id": "pubsub.projects.topics.get",
- "description": "Gets the configuration of a topic.",
- "httpMethod": "GET",
- "response": {
- "$ref": "Topic"
- },
- "parameterOrder": [
- "topic"
- ],
- "parameters": {
- "topic": {
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path",
- "description": "The name of the topic to get.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ]
- },
- "publish": {
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish",
- "id": "pubsub.projects.topics.publish",
- "path": "v1beta2/{+topic}:publish",
- "request": {
- "$ref": "PublishRequest"
- },
- "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.",
- "response": {
- "$ref": "PublishResponse"
- },
- "parameterOrder": [
- "topic"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "parameters": {
- "topic": {
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path",
- "description": "The messages in the request will be published on this topic.",
- "type": "string",
- "required": true
- }
- }
- }
- },
- "resources": {
- "subscriptions": {
- "methods": {
- "list": {
- "id": "pubsub.projects.topics.subscriptions.list",
- "path": "v1beta2/{+topic}/subscriptions",
- "description": "Lists the name of the subscriptions for this topic.",
- "response": {
- "$ref": "ListTopicSubscriptionsResponse"
- },
- "parameterOrder": [
- "topic"
- ],
- "httpMethod": "GET",
- "parameters": {
- "pageToken": {
- "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "Maximum number of subscription names to return.",
- "type": "integer"
- },
- "topic": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/topics/[^/]+$",
- "location": "path",
- "description": "The name of the topic that subscriptions are attached to."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/pubsub"
- ],
- "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}/subscriptions"
- }
- }
- }
- }
- }
- }
- }
- },
"parameters": {
- "alt": {
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
+ "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.",
"type": "string",
- "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"
},
"access_token": {
@@ -630,50 +10,50 @@
"description": "OAuth access token.",
"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.",
- "type": "string",
- "location": "query"
- },
"quotaUser": {
"location": "query",
"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.",
"type": "string"
},
"pp": {
+ "location": "query",
"description": "Pretty-print response.",
"default": "true",
- "type": "boolean",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
+ "type": "boolean"
},
"oauth_token": {
+ "type": "string",
"location": "query",
- "description": "OAuth 2.0 token for the current user.",
+ "description": "OAuth 2.0 token for the current user."
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
"type": "string"
},
"upload_protocol": {
- "location": "query",
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
- "prettyPrint": {
- "default": "true",
- "type": "boolean",
- "location": "query",
- "description": "Returns response with indentations and line breaks."
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string",
"location": "query"
},
+ "prettyPrint": {
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
"fields": {
- "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response."
+ },
+ "callback": {
+ "description": "JSONP",
"type": "string",
"location": "query"
},
@@ -690,10 +70,21 @@
"2"
]
},
- "callback": {
+ "alt": {
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
"type": "string",
+ "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",
- "description": "JSONP"
+ "description": "Data format for response.",
+ "default": "json"
}
},
"schemas": {
@@ -708,45 +99,45 @@
},
"id": "SetIamPolicyRequest"
},
- "PubsubMessage": {
- "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute.",
- "type": "object",
- "properties": {
- "data": {
- "format": "byte",
- "description": "The message payload. For JSON requests, the value of this field must be\n[base64-encoded](https://tools.ietf.org/html/rfc4648).",
- "type": "string"
- },
- "messageId": {
- "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.",
- "type": "string"
- },
- "attributes": {
- "additionalProperties": {
- "type": "string"
- },
- "description": "Optional attributes for this message.",
- "type": "object"
- },
- "publishTime": {
- "format": "google-datetime",
- "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.",
- "type": "string"
- }
- },
- "id": "PubsubMessage"
- },
"ModifyPushConfigRequest": {
"description": "Request for the ModifyPushConfig method.",
"type": "object",
"properties": {
"pushConfig": {
- "$ref": "PushConfig",
- "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called."
+ "description": "The push configuration for future deliveries.\n\nAn empty `pushConfig` indicates that the Pub/Sub system should\nstop pushing messages from the given subscription and allow\nmessages to be pulled and acknowledged - effectively pausing\nthe subscription if `Pull` is not called.",
+ "$ref": "PushConfig"
}
},
"id": "ModifyPushConfigRequest"
},
+ "PubsubMessage": {
+ "type": "object",
+ "properties": {
+ "messageId": {
+ "description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.",
+ "type": "string"
+ },
+ "attributes": {
+ "description": "Optional attributes for this message.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "publishTime": {
+ "format": "google-datetime",
+ "description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.",
+ "type": "string"
+ },
+ "data": {
+ "format": "byte",
+ "description": "The message payload. For JSON requests, the value of this field must be\n[base64-encoded](https://tools.ietf.org/html/rfc4648).",
+ "type": "string"
+ }
+ },
+ "id": "PubsubMessage",
+ "description": "A message data and its attributes. The message payload must not be empty;\nit must contain either a non-empty data field, or at least one attribute."
+ },
"Binding": {
"description": "Associates `members` with a `role`.",
"type": "object",
@@ -759,8 +150,8 @@
"type": "array"
},
"role": {
- "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
- "type": "string"
+ "type": "string",
+ "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired"
}
},
"id": "Binding"
@@ -772,6 +163,8 @@
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`."
},
"AcknowledgeRequest": {
+ "description": "Request for the Acknowledge method.",
+ "type": "object",
"properties": {
"ackIds": {
"description": "The acknowledgment ID for the messages being acknowledged that was returned\nby the Pub/Sub system in the `Pull` response. Must not be empty.",
@@ -781,30 +174,27 @@
"type": "array"
}
},
- "id": "AcknowledgeRequest",
- "description": "Request for the Acknowledge method.",
- "type": "object"
+ "id": "AcknowledgeRequest"
},
"ListTopicsResponse": {
"description": "Response for the `ListTopics` method.",
"type": "object",
"properties": {
+ "nextPageToken": {
+ "description": "If not empty, indicates that there may be more topics that match the\nrequest; this value should be passed in a new `ListTopicsRequest`.",
+ "type": "string"
+ },
"topics": {
"description": "The resulting topics.",
"items": {
"$ref": "Topic"
},
"type": "array"
- },
- "nextPageToken": {
- "description": "If not empty, indicates that there may be more topics that match the\nrequest; this value should be passed in a new `ListTopicsRequest`.",
- "type": "string"
}
},
"id": "ListTopicsResponse"
},
"ListTopicSubscriptionsResponse": {
- "description": "Response for the `ListTopicSubscriptions` method.",
"type": "object",
"properties": {
"nextPageToken": {
@@ -819,9 +209,12 @@
"type": "array"
}
},
- "id": "ListTopicSubscriptionsResponse"
+ "id": "ListTopicSubscriptionsResponse",
+ "description": "Response for the `ListTopicSubscriptions` method."
},
"PullResponse": {
+ "description": "Response for the `Pull` method.",
+ "type": "object",
"properties": {
"receivedMessages": {
"description": "Received Pub/Sub messages. The Pub/Sub system will return zero messages if\nthere are no more available in the backlog. The Pub/Sub system may return\nfewer than the `maxMessages` requested even if there are more messages\navailable in the backlog.",
@@ -831,28 +224,24 @@
"type": "array"
}
},
- "id": "PullResponse",
- "description": "Response for the `Pull` method.",
- "type": "object"
+ "id": "PullResponse"
},
"ReceivedMessage": {
- "id": "ReceivedMessage",
"description": "A message and its corresponding acknowledgment ID.",
"type": "object",
"properties": {
- "ackId": {
- "description": "This ID can be used to acknowledge the received message.",
- "type": "string"
- },
"message": {
"$ref": "PubsubMessage",
"description": "The message."
+ },
+ "ackId": {
+ "description": "This ID can be used to acknowledge the received message.",
+ "type": "string"
}
- }
+ },
+ "id": "ReceivedMessage"
},
"PushConfig": {
- "description": "Configuration for a push delivery endpoint.",
- "type": "object",
"properties": {
"attributes": {
"additionalProperties": {
@@ -862,43 +251,47 @@
"type": "object"
},
"pushEndpoint": {
- "type": "string",
- "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\"."
+ "description": "A URL locating the endpoint to which messages should be pushed.\nFor example, a Webhook endpoint might use \"https://example.com/push\".",
+ "type": "string"
}
},
- "id": "PushConfig"
+ "id": "PushConfig",
+ "description": "Configuration for a push delivery endpoint.",
+ "type": "object"
},
"TestIamPermissionsResponse": {
"description": "Response message for `TestIamPermissions` method.",
"type": "object",
"properties": {
"permissions": {
+ "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
"items": {
"type": "string"
},
- "type": "array",
- "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed."
+ "type": "array"
}
},
"id": "TestIamPermissionsResponse"
},
"PullRequest": {
+ "description": "Request for the `Pull` method.",
+ "type": "object",
"properties": {
- "returnImmediately": {
- "type": "boolean",
- "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the `Pull` response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response."
- },
"maxMessages": {
"format": "int32",
"description": "The maximum number of messages returned for this request. The Pub/Sub\nsystem may return fewer than the number specified.",
"type": "integer"
+ },
+ "returnImmediately": {
+ "description": "If this is specified as true the system will respond immediately even if\nit is not able to return a message in the `Pull` response. Otherwise the\nsystem is allowed to wait until at least one message is available rather\nthan returning no messages. The client may cancel the request if it does\nnot wish to wait any longer for the response.",
+ "type": "boolean"
}
},
- "id": "PullRequest",
- "description": "Request for the `Pull` method.",
- "type": "object"
+ "id": "PullRequest"
},
"ListSubscriptionsResponse": {
+ "id": "ListSubscriptionsResponse",
+ "description": "Response for the `ListSubscriptions` method.",
"type": "object",
"properties": {
"nextPageToken": {
@@ -912,23 +305,21 @@
},
"type": "array"
}
- },
- "id": "ListSubscriptionsResponse",
- "description": "Response for the `ListSubscriptions` method."
+ }
},
"PublishRequest": {
- "description": "Request for the Publish method.",
"type": "object",
"properties": {
"messages": {
+ "description": "The messages to publish.",
"items": {
"$ref": "PubsubMessage"
},
- "type": "array",
- "description": "The messages to publish."
+ "type": "array"
}
},
- "id": "PublishRequest"
+ "id": "PublishRequest",
+ "description": "Request for the Publish method."
},
"PublishResponse": {
"type": "object",
@@ -945,28 +336,28 @@
"description": "Response for the `Publish` method."
},
"Subscription": {
+ "id": "Subscription",
+ "description": "A subscription resource.",
+ "type": "object",
"properties": {
- "pushConfig": {
- "$ref": "PushConfig",
- "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods."
- },
"ackDeadlineSeconds": {
"format": "int32",
"description": "This value is the maximum time after a subscriber receives a message\nbefore the subscriber should acknowledge the message. After message\ndelivery but before the ack deadline expires and before the message is\nacknowledged, it is an outstanding message and will not be delivered\nagain during that time (on a best-effort basis).\n\nFor pull subscriptions, this value is used as the initial value for the ack\ndeadline. To override this value for a given message, call\n`ModifyAckDeadline` with the corresponding `ack_id` if using pull.\nThe maximum custom deadline you can specify is 600 seconds (10 minutes).\n\nFor push delivery, this value is also used to set the request timeout for\nthe call to the push endpoint.\n\nIf the subscriber never acknowledges the message, the Pub/Sub\nsystem will eventually redeliver the message.\n\nIf this parameter is 0, a default value of 10 seconds is used.",
"type": "integer"
},
"name": {
- "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.",
- "type": "string"
+ "type": "string",
+ "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`."
},
"topic": {
"description": "The name of the topic from which this subscription is receiving messages.\nThe value of this field will be `_deleted-topic_` if the topic has been\ndeleted.",
"type": "string"
+ },
+ "pushConfig": {
+ "description": "If push delivery is used with this subscription, this field is\nused to configure it. An empty `pushConfig` signifies that the subscriber\nwill pull and ack messages using API methods.",
+ "$ref": "PushConfig"
}
- },
- "id": "Subscription",
- "description": "A subscription resource.",
- "type": "object"
+ }
},
"TestIamPermissionsRequest": {
"description": "Request message for `TestIamPermissions` method.",
@@ -982,17 +373,6 @@
},
"id": "TestIamPermissionsRequest"
},
- "Topic": {
- "type": "object",
- "properties": {
- "name": {
- "type": "string",
- "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`."
- }
- },
- "id": "Topic",
- "description": "A topic resource."
- },
"Policy": {
"description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
"type": "object",
@@ -1017,10 +397,28 @@
},
"id": "Policy"
},
+ "Topic": {
+ "description": "A topic resource.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.",
+ "type": "string"
+ }
+ },
+ "id": "Topic"
+ },
"ModifyAckDeadlineRequest": {
"description": "Request for the ModifyAckDeadline method.",
"type": "object",
"properties": {
+ "ackIds": {
+ "description": "List of acknowledgment IDs.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
"ackId": {
"description": "The acknowledgment ID. Either this or ack_ids must be populated, but not\nboth.",
"type": "string"
@@ -1029,13 +427,6 @@
"format": "int32",
"description": "The new ack deadline with respect to the time this request was sent to\nthe Pub/Sub system. Must be \u003e= 0. For example, if the value is 10, the new\nack deadline will expire 10 seconds after the `ModifyAckDeadline` call\nwas made. Specifying zero may immediately make the message available for\nanother pull request.",
"type": "integer"
- },
- "ackIds": {
- "description": "List of acknowledgment IDs.",
- "items": {
- "type": "string"
- },
- "type": "array"
}
},
"id": "ModifyAckDeadlineRequest"
@@ -1061,15 +452,624 @@
}
}
},
- "kind": "discovery#restDescription",
- "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n",
"servicePath": "",
+ "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n",
+ "kind": "discovery#restDescription",
"rootUrl": "https://pubsub.googleapis.com/",
"basePath": "",
"ownerDomain": "google.com",
"name": "pubsub",
"batchPath": "batch",
- "revision": "20170622",
+ "id": "pubsub:v1beta2",
"documentationLink": "https://cloud.google.com/pubsub/docs",
- "id": "pubsub:v1beta2"
+ "revision": "20170814",
+ "title": "Google Cloud Pub/Sub API",
+ "discoveryVersion": "v1",
+ "ownerName": "Google",
+ "resources": {
+ "projects": {
+ "resources": {
+ "subscriptions": {
+ "methods": {
+ "testIamPermissions": {
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions",
+ "path": "v1beta2/{+resource}:testIamPermissions",
+ "id": "pubsub.projects.subscriptions.testIamPermissions"
+ },
+ "modifyPushConfig": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "subscription": {
+ "description": "The name of the subscription.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig",
+ "id": "pubsub.projects.subscriptions.modifyPushConfig",
+ "path": "v1beta2/{+subscription}:modifyPushConfig",
+ "request": {
+ "$ref": "ModifyPushConfigRequest"
+ },
+ "description": "Modifies the `PushConfig` for a specified subscription.\n\nThis may be used to change a push subscription to a pull one (signified by\nan empty `PushConfig`) or vice versa, or change the endpoint URL and other\nattributes of a push subscription. Messages will accumulate for delivery\ncontinuously through the call regardless of changes to the `PushConfig`."
+ },
+ "pull": {
+ "description": "Pulls messages from the server. Returns an empty list if there are no\nmessages available in the backlog. The server may return `UNAVAILABLE` if\nthere are too many concurrent pull requests pending for the given\nsubscription.",
+ "request": {
+ "$ref": "PullRequest"
+ },
+ "response": {
+ "$ref": "PullResponse"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "subscription": {
+ "description": "The subscription from which messages should be pulled.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:pull",
+ "id": "pubsub.projects.subscriptions.pull",
+ "path": "v1beta2/{+subscription}:pull"
+ },
+ "delete": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "subscription"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "subscription": {
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path",
+ "description": "The subscription to delete.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}",
+ "id": "pubsub.projects.subscriptions.delete",
+ "path": "v1beta2/{+subscription}",
+ "description": "Deletes an existing subscription. All pending messages in the subscription\nare immediately dropped. Calls to `Pull` after deletion will return\n`NOT_FOUND`. After a subscription is deleted, a new one may be created with\nthe same name, but the new one has no association with the old\nsubscription, or its topic unless the same topic is specified."
+ },
+ "list": {
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions",
+ "id": "pubsub.projects.subscriptions.list",
+ "path": "v1beta2/{+project}/subscriptions",
+ "description": "Lists matching subscriptions.",
+ "response": {
+ "$ref": "ListSubscriptionsResponse"
+ },
+ "parameterOrder": [
+ "project"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "project": {
+ "pattern": "^projects/[^/]+$",
+ "location": "path",
+ "description": "The name of the cloud project that subscriptions belong to.",
+ "type": "string",
+ "required": true
+ },
+ "pageToken": {
+ "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that\nthis is a continuation of a prior `ListSubscriptions` call, and that the\nsystem should return the next page of data.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Maximum number of subscriptions to return.",
+ "type": "integer"
+ }
+ }
+ },
+ "create": {
+ "id": "pubsub.projects.subscriptions.create",
+ "path": "v1beta2/{+name}",
+ "description": "Creates a subscription to a given topic.\nIf the subscription already exists, returns `ALREADY_EXISTS`.\nIf the corresponding topic doesn't exist, returns `NOT_FOUND`.\n\nIf the name is not provided in the request, the server will assign a random\nname for this subscription on the same project as the topic. Note that\nfor REST API requests, you must specify a name.",
+ "request": {
+ "$ref": "Subscription"
+ },
+ "response": {
+ "$ref": "Subscription"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "PUT",
+ "parameters": {
+ "name": {
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path",
+ "description": "The name of the subscription. It must have the format\n`\"projects/{project}/subscriptions/{subscription}\"`. `{subscription}` must\nstart with a letter, and contain only letters (`[A-Za-z]`), numbers\n(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),\nplus (`+`) or percent signs (`%`). It must be between 3 and 255 characters\nin length, and it must not start with `\"goog\"`.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}"
+ },
+ "setIamPolicy": {
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field."
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy",
+ "id": "pubsub.projects.subscriptions.setIamPolicy",
+ "path": "v1beta2/{+resource}:setIamPolicy"
+ },
+ "acknowledge": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "subscription"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "subscription": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path",
+ "description": "The subscription whose message is being acknowledged."
+ }
+ },
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge",
+ "path": "v1beta2/{+subscription}:acknowledge",
+ "id": "pubsub.projects.subscriptions.acknowledge",
+ "request": {
+ "$ref": "AcknowledgeRequest"
+ },
+ "description": "Acknowledges the messages associated with the `ack_ids` in the\n`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages\nfrom the subscription.\n\nAcknowledging a message whose ack deadline has expired may succeed,\nbut such a message may be redelivered later. Acknowledging a message more\nthan once will not result in an error."
+ },
+ "modifyAckDeadline": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "subscription"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameters": {
+ "subscription": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path",
+ "description": "The name of the subscription."
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline",
+ "path": "v1beta2/{+subscription}:modifyAckDeadline",
+ "id": "pubsub.projects.subscriptions.modifyAckDeadline",
+ "description": "Modifies the ack deadline for a specific message. This method is useful\nto indicate that more time is needed to process a message by the\nsubscriber, or to make the message available for redelivery if the\nprocessing was interrupted. Note that this does not modify the\nsubscription-level `ackDeadlineSeconds` used for subsequent messages.",
+ "request": {
+ "$ref": "ModifyAckDeadlineRequest"
+ }
+ },
+ "getIamPolicy": {
+ "path": "v1beta2/{+resource}:getIamPolicy",
+ "id": "pubsub.projects.subscriptions.getIamPolicy",
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "parameters": {
+ "resource": {
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy"
+ },
+ "get": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "subscription"
+ ],
+ "response": {
+ "$ref": "Subscription"
+ },
+ "parameters": {
+ "subscription": {
+ "pattern": "^projects/[^/]+/subscriptions/[^/]+$",
+ "location": "path",
+ "description": "The name of the subscription to get.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}",
+ "path": "v1beta2/{+subscription}",
+ "id": "pubsub.projects.subscriptions.get",
+ "description": "Gets the configuration details of a subscription."
+ }
+ }
+ },
+ "topics": {
+ "methods": {
+ "create": {
+ "response": {
+ "$ref": "Topic"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "PUT",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The name of the topic. It must have the format\n`\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter,\nand contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`),\nunderscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent\nsigns (`%`). It must be between 3 and 255 characters in length, and it\nmust not start with `\"goog\"`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}",
+ "id": "pubsub.projects.topics.create",
+ "path": "v1beta2/{+name}",
+ "request": {
+ "$ref": "Topic"
+ },
+ "description": "Creates the given topic with the given name."
+ },
+ "setIamPolicy": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy",
+ "path": "v1beta2/{+resource}:setIamPolicy",
+ "id": "pubsub.projects.topics.setIamPolicy",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy."
+ },
+ "getIamPolicy": {
+ "path": "v1beta2/{+resource}:getIamPolicy",
+ "id": "pubsub.projects.topics.getIamPolicy",
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:getIamPolicy"
+ },
+ "get": {
+ "response": {
+ "$ref": "Topic"
+ },
+ "parameterOrder": [
+ "topic"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "parameters": {
+ "topic": {
+ "description": "The name of the topic to get.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}",
+ "id": "pubsub.projects.topics.get",
+ "path": "v1beta2/{+topic}",
+ "description": "Gets the configuration of a topic."
+ },
+ "publish": {
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish",
+ "id": "pubsub.projects.topics.publish",
+ "path": "v1beta2/{+topic}:publish",
+ "description": "Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic\ndoes not exist. The message payload must not be empty; it must contain\n either a non-empty data field, or at least one attribute.",
+ "request": {
+ "$ref": "PublishRequest"
+ },
+ "response": {
+ "$ref": "PublishResponse"
+ },
+ "parameterOrder": [
+ "topic"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "topic": {
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path",
+ "description": "The messages in the request will be published on this topic.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ]
+ },
+ "testIamPermissions": {
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:testIamPermissions",
+ "id": "pubsub.projects.topics.testIamPermissions",
+ "path": "v1beta2/{+resource}:testIamPermissions"
+ },
+ "delete": {
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}",
+ "path": "v1beta2/{+topic}",
+ "id": "pubsub.projects.topics.delete",
+ "description": "Deletes the topic with the given name. Returns `NOT_FOUND` if the topic\ndoes not exist. After a topic is deleted, a new topic may be created with\nthe same name; this is an entirely new topic with none of the old\nconfiguration or subscriptions. Existing subscriptions to this topic are\nnot deleted, but their `topic` field is set to `_deleted-topic_`.",
+ "httpMethod": "DELETE",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "topic"
+ ],
+ "parameters": {
+ "topic": {
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path",
+ "description": "Name of the topic to delete.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ]
+ },
+ "list": {
+ "flatPath": "v1beta2/projects/{projectsId}/topics",
+ "path": "v1beta2/{+project}/topics",
+ "id": "pubsub.projects.topics.list",
+ "description": "Lists matching topics.",
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "ListTopicsResponse"
+ },
+ "parameterOrder": [
+ "project"
+ ],
+ "parameters": {
+ "pageToken": {
+ "description": "The value returned by the last `ListTopicsResponse`; indicates that this is\na continuation of a prior `ListTopics` call, and that the system should\nreturn the next page of data.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "type": "integer",
+ "location": "query",
+ "format": "int32",
+ "description": "Maximum number of topics to return."
+ },
+ "project": {
+ "description": "The name of the cloud project that topics belong to.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ]
+ }
+ },
+ "resources": {
+ "subscriptions": {
+ "methods": {
+ "list": {
+ "description": "Lists the name of the subscriptions for this topic.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "topic"
+ ],
+ "response": {
+ "$ref": "ListTopicSubscriptionsResponse"
+ },
+ "parameters": {
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Maximum number of subscription names to return.",
+ "type": "integer"
+ },
+ "topic": {
+ "description": "The name of the topic that subscriptions are attached to.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/topics/[^/]+$",
+ "location": "path"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates\nthat this is a continuation of a prior `ListTopicSubscriptions` call, and\nthat the system should return the next page of data.",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/pubsub"
+ ],
+ "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}/subscriptions",
+ "path": "v1beta2/{+topic}/subscriptions",
+ "id": "pubsub.projects.topics.subscriptions.list"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
}
diff --git a/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json b/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json
index 6004846..50bb231 100644
--- a/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json
+++ b/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-api.json
@@ -1,16 +1,22 @@
{
- "id": "runtimeconfig:v1",
- "revision": "20170620",
- "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/",
- "discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
+ "CancelOperationRequest": {
+ "id": "CancelOperationRequest",
+ "description": "The request message for Operations.CancelOperation.",
+ "type": "object",
+ "properties": {}
+ },
"Status": {
"description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
"type": "object",
"properties": {
+ "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"
+ },
"details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
"items": {
"type": "object",
"additionalProperties": {
@@ -24,63 +30,59 @@
"format": "int32",
"description": "The status code, which should be an enum value of google.rpc.Code.",
"type": "integer"
- },
- "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"
}
},
"id": "Status"
},
"Operation": {
+ "id": "Operation",
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
"type": "object",
"properties": {
- "done": {
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
- "type": "boolean"
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "type": "string"
},
- "response": {
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
+ "error": {
+ "description": "The error result of the operation in case of failure or cancellation.",
+ "$ref": "Status"
+ },
+ "metadata": {
+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
"type": "object",
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
}
},
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
- "type": "string"
+ "done": {
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
+ "type": "boolean"
},
- "error": {
- "$ref": "Status",
- "description": "The error result of the operation in case of failure or cancellation."
- },
- "metadata": {
+ "response": {
"additionalProperties": {
- "type": "any",
- "description": "Properties of the object. Contains field @type with type URL."
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
},
- "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
"type": "object"
}
- },
- "id": "Operation",
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call."
+ }
},
"ListOperationsResponse": {
"description": "The response message for Operations.ListOperations.",
"type": "object",
"properties": {
+ "nextPageToken": {
+ "description": "The standard List next-page token.",
+ "type": "string"
+ },
"operations": {
"description": "A list of operations that matches the specified filter in the request.",
"items": {
"$ref": "Operation"
},
"type": "array"
- },
- "nextPageToken": {
- "description": "The standard List next-page token.",
- "type": "string"
}
},
"id": "ListOperationsResponse"
@@ -90,19 +92,13 @@
"type": "object",
"properties": {},
"id": "Empty"
- },
- "CancelOperationRequest": {
- "type": "object",
- "properties": {},
- "id": "CancelOperationRequest",
- "description": "The request message for Operations.CancelOperation."
}
},
- "protocol": "rest",
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
+ "protocol": "rest",
"canonicalName": "Cloud RuntimeConfig",
"auth": {
"oauth2": {
@@ -125,14 +121,92 @@
"resources": {
"operations": {
"methods": {
- "cancel": {
+ "delete": {
+ "path": "v1/{+name}",
+ "id": "runtimeconfig.operations.delete",
+ "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
+ "httpMethod": "DELETE",
"response": {
"$ref": "Empty"
},
"parameterOrder": [
"name"
],
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The name of the operation resource to be deleted.",
+ "type": "string",
+ "required": true,
+ "pattern": "^operations/.+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/operations/{operationsId}"
+ },
+ "list": {
+ "response": {
+ "$ref": "ListOperationsResponse"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "pageToken": {
+ "description": "The standard list page token.",
+ "type": "string",
+ "location": "query"
+ },
+ "name": {
+ "pattern": "^operations$",
+ "location": "path",
+ "description": "The name of the operation's parent resource.",
+ "type": "string",
+ "required": true
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "The standard list page size.",
+ "type": "integer"
+ },
+ "filter": {
+ "description": "The standard list filter.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1/operations",
+ "id": "runtimeconfig.operations.list",
+ "path": "v1/{+name}",
+ "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id."
+ },
+ "cancel": {
+ "path": "v1/{+name}:cancel",
+ "id": "runtimeconfig.operations.cancel",
+ "request": {
+ "$ref": "CancelOperationRequest"
+ },
+ "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
"httpMethod": "POST",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
"parameters": {
"name": {
"description": "The name of the operation resource to be cancelled.",
@@ -142,149 +216,45 @@
"location": "path"
}
},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1/operations/{operationsId}:cancel",
- "id": "runtimeconfig.operations.cancel",
- "path": "v1/{+name}:cancel",
- "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
- "request": {
- "$ref": "CancelOperationRequest"
- }
- },
- "delete": {
- "flatPath": "v1/operations/{operationsId}",
- "id": "runtimeconfig.operations.delete",
- "path": "v1/{+name}",
- "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^operations/.+$",
- "location": "path",
- "description": "The name of the operation resource to be deleted."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ]
- },
- "list": {
- "flatPath": "v1/operations",
- "path": "v1/{+name}",
- "id": "runtimeconfig.operations.list",
- "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "ListOperationsResponse"
- },
- "parameters": {
- "filter": {
- "location": "query",
- "description": "The standard list filter.",
- "type": "string"
- },
- "pageToken": {
- "location": "query",
- "description": "The standard list page token.",
- "type": "string"
- },
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^operations$",
- "location": "path",
- "description": "The name of the operation's parent resource."
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "The standard list page size.",
- "type": "integer"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ]
+ "flatPath": "v1/operations/{operationsId}:cancel"
}
}
}
},
"parameters": {
- "quotaUser": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "pp": {
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "oauth_token": {
- "type": "string",
- "location": "query",
- "description": "OAuth 2.0 token for the current user."
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
"prettyPrint": {
+ "location": "query",
"description": "Returns response with indentations and line breaks.",
"default": "true",
- "type": "boolean",
- "location": "query"
- },
- "uploadType": {
- "type": "string",
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
+ "type": "boolean"
},
"fields": {
"location": "query",
"description": "Selector specifying which fields to include in a partial response.",
"type": "string"
},
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
"callback": {
"location": "query",
"description": "JSONP",
"type": "string"
},
"$.xgafv": {
- "enum": [
- "1",
- "2"
- ],
"description": "V1 error format.",
"type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
],
- "location": "query"
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ]
},
"alt": {
"enum": [
@@ -308,15 +278,45 @@
"type": "string"
},
"key": {
- "location": "query",
"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.",
+ "type": "string",
+ "location": "query"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "oauth_token": {
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string",
+ "location": "query"
+ },
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
+ "location": "query"
+ },
+ "upload_protocol": {
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string"
}
},
"version": "v1",
"baseUrl": "https://runtimeconfig.googleapis.com/",
+ "servicePath": "",
"kind": "discovery#restDescription",
"description": "The Runtime Configurator allows you to dynamically configure and expose variables through Google Cloud Platform. In addition, you can also set Watchers and Waiters that will watch for changes to your data and return based on certain conditions.",
- "servicePath": "",
- "basePath": ""
+ "basePath": "",
+ "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/",
+ "revision": "20170816",
+ "id": "runtimeconfig:v1",
+ "discoveryVersion": "v1"
}
diff --git a/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-gen.go b/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-gen.go
index 2b66cb6..4dcb473 100644
--- a/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-gen.go
+++ b/vendor/google.golang.org/api/runtimeconfig/v1/runtimeconfig-gen.go
@@ -302,9 +302,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
diff --git a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json
index 89651b3..7e73d38 100644
--- a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json
+++ b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-api.json
@@ -1,13 +1,353 @@
{
+ "schemas": {
+ "SetIamPolicyRequest": {
+ "description": "Request message for `SetIamPolicy` method.",
+ "type": "object",
+ "properties": {
+ "policy": {
+ "$ref": "Policy",
+ "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
+ }
+ },
+ "id": "SetIamPolicyRequest"
+ },
+ "Status": {
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object",
+ "properties": {
+ "details": {
+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "type": "array"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
+ }
+ },
+ "id": "Status"
+ },
+ "Binding": {
+ "description": "Associates `members` with a `role`.",
+ "type": "object",
+ "properties": {
+ "members": {
+ "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "role": {
+ "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
+ "type": "string"
+ }
+ },
+ "id": "Binding"
+ },
+ "Empty": {
+ "type": "object",
+ "properties": {},
+ "id": "Empty",
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`."
+ },
+ "Cardinality": {
+ "description": "A Cardinality condition for the Waiter resource. A cardinality condition is\nmet when the number of variables under a specified path prefix reaches a\npredefined number. For example, if you set a Cardinality condition where\nthe `path` is set to `/foo` and the number of paths is set to 2, the\nfollowing variables would meet the condition in a RuntimeConfig resource:\n\n+ `/foo/variable1 = \"value1\"`\n+ `/foo/variable2 = \"value2\"`\n+ `/bar/variable3 = \"value3\"`\n\nIt would not would not satisify the same condition with the `number` set to\n3, however, because there is only 2 paths that start with `/foo`.\nCardinality conditions are recursive; all subtrees under the specific\npath prefix are counted.",
+ "type": "object",
+ "properties": {
+ "number": {
+ "format": "int32",
+ "description": "The number variables under the `path` that must exist to meet this\ncondition. Defaults to 1 if not specified.",
+ "type": "integer"
+ },
+ "path": {
+ "description": "The root of the variable subtree to monitor. For example, `/foo`.",
+ "type": "string"
+ }
+ },
+ "id": "Cardinality"
+ },
+ "ListConfigsResponse": {
+ "id": "ListConfigsResponse",
+ "description": "`ListConfigs()` returns the following response. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.",
+ "type": "object",
+ "properties": {
+ "configs": {
+ "items": {
+ "$ref": "RuntimeConfig"
+ },
+ "type": "array",
+ "description": "A list of the configurations in the project. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way."
+ },
+ "nextPageToken": {
+ "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results",
+ "type": "string"
+ }
+ }
+ },
+ "EndCondition": {
+ "description": "The condition that a Waiter resource is waiting for.",
+ "type": "object",
+ "properties": {
+ "cardinality": {
+ "$ref": "Cardinality",
+ "description": "The cardinality of the `EndCondition`."
+ }
+ },
+ "id": "EndCondition"
+ },
+ "TestIamPermissionsResponse": {
+ "id": "TestIamPermissionsResponse",
+ "description": "Response message for `TestIamPermissions` method.",
+ "type": "object",
+ "properties": {
+ "permissions": {
+ "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ }
+ },
+ "ListVariablesResponse": {
+ "properties": {
+ "variables": {
+ "description": "A list of variables and their values. The order of returned variable\nobjects is arbitrary.",
+ "items": {
+ "$ref": "Variable"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results",
+ "type": "string"
+ }
+ },
+ "id": "ListVariablesResponse",
+ "description": "Response for the `ListVariables()` method.",
+ "type": "object"
+ },
+ "RuntimeConfig": {
+ "description": "A RuntimeConfig resource is the primary resource in the Cloud RuntimeConfig\nservice. A RuntimeConfig resource consists of metadata and a hierarchy of\nvariables.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The resource name of a runtime config. The name must have the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, and `[CONFIG_NAME]` is an\narbitrary name that matches RFC 1035 segment specification. The length of\n`[CONFIG_NAME]` must be less than 64 bytes.\n\nYou pick the RuntimeConfig resource name, but the server will validate that\nthe name adheres to this format. After you create the resource, you cannot\nchange the resource's name.",
+ "type": "string"
+ },
+ "description": {
+ "description": "An optional description of the RuntimeConfig object.",
+ "type": "string"
+ }
+ },
+ "id": "RuntimeConfig"
+ },
+ "WatchVariableRequest": {
+ "description": "Request for the `WatchVariable()` method.",
+ "type": "object",
+ "properties": {
+ "newerThan": {
+ "type": "string",
+ "format": "google-datetime",
+ "description": "If specified, checks the current timestamp of the variable and if the\ncurrent timestamp is newer than `newerThan` timestamp, the method returns\nimmediately.\n\nIf not specified or the variable has an older timestamp, the watcher waits\nfor a the value to change before returning."
+ }
+ },
+ "id": "WatchVariableRequest"
+ },
+ "ListWaitersResponse": {
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results",
+ "type": "string"
+ },
+ "waiters": {
+ "description": "Found waiters in the project.",
+ "items": {
+ "$ref": "Waiter"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListWaitersResponse",
+ "description": "Response for the `ListWaiters()` method.\nOrder of returned waiter objects is arbitrary."
+ },
+ "TestIamPermissionsRequest": {
+ "description": "Request message for `TestIamPermissions` method.",
+ "type": "object",
+ "properties": {
+ "permissions": {
+ "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "TestIamPermissionsRequest"
+ },
+ "Waiter": {
+ "id": "Waiter",
+ "description": "A Waiter resource waits for some end condition within a RuntimeConfig resource\nto be met before it returns. For example, assume you have a distributed\nsystem where each node writes to a Variable resource indidicating the node's\nreadiness as part of the startup process.\n\nYou then configure a Waiter resource with the success condition set to wait\nuntil some number of nodes have checked in. Afterwards, your application\nruns some arbitrary code after the condition has been met and the waiter\nreturns successfully.\n\nOnce created, a Waiter resource is immutable.\n\nTo learn more about using waiters, read the\n[Creating a Waiter](/deployment-manager/runtime-configurator/creating-a-waiter)\ndocumentation.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "description": "[Output Only] If the waiter ended due to a failure or timeout, this value\nwill be set.",
+ "$ref": "Status"
+ },
+ "failure": {
+ "description": "[Optional] The failure condition of this waiter. If this condition is met,\n`done` will be set to `true` and the `error` code will be set to `ABORTED`.\nThe failure condition takes precedence over the success condition. If both\nconditions are met, a failure will be indicated. This value is optional; if\nno failure condition is set, the only failure scenario will be a timeout.",
+ "$ref": "EndCondition"
+ },
+ "success": {
+ "$ref": "EndCondition",
+ "description": "[Required] The success condition. If this condition is met, `done` will be\nset to `true` and the `error` value will remain unset. The failure condition\ntakes precedence over the success condition. If both conditions are met, a\nfailure will be indicated."
+ },
+ "createTime": {
+ "format": "google-datetime",
+ "description": "[Output Only] The instant at which this Waiter resource was created. Adding\nthe value of `timeout` to this instant yields the timeout deadline for the\nwaiter.",
+ "type": "string"
+ },
+ "done": {
+ "description": "[Output Only] If the value is `false`, it means the waiter is still waiting\nfor one of its conditions to be met.\n\nIf true, the waiter has finished. If the waiter finished due to a timeout\nor failure, `error` will be set.",
+ "type": "boolean"
+ },
+ "timeout": {
+ "type": "string",
+ "format": "google-duration",
+ "description": "[Required] Specifies the timeout of the waiter in seconds, beginning from\nthe instant that `waiters().create` method is called. If this time elapses\nbefore the success or failure conditions are met, the waiter fails and sets\nthe `error` code to `DEADLINE_EXCEEDED`."
+ },
+ "name": {
+ "description": "The name of the Waiter resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]\n\nThe `[PROJECT_ID]` must be a valid Google Cloud project ID,\nthe `[CONFIG_NAME]` must be a valid RuntimeConfig resource, the\n`[WAITER_NAME]` must match RFC 1035 segment specification, and the length\nof `[WAITER_NAME]` must be less than 64 bytes.\n\nAfter you create a Waiter resource, you cannot change the resource name.",
+ "type": "string"
+ }
+ }
+ },
+ "Variable": {
+ "description": "Describes a single variable within a RuntimeConfig resource.\nThe name denotes the hierarchical variable name. For example,\n`ports/serving_port` is a valid variable name. The variable value is an\nopaque string and only leaf variables can have values (that is, variables\nthat do not have any child variables).",
+ "type": "object",
+ "properties": {
+ "state": {
+ "enum": [
+ "VARIABLE_STATE_UNSPECIFIED",
+ "UPDATED",
+ "DELETED"
+ ],
+ "description": "[Ouput only] The current state of the variable. The variable state indicates\nthe outcome of the `variables().watch` call and is visible through the\n`get` and `list` calls.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default variable state.",
+ "The variable was updated, while `variables().watch` was executing.",
+ "The variable was deleted, while `variables().watch` was executing."
+ ]
+ },
+ "updateTime": {
+ "format": "google-datetime",
+ "description": "[Output Only] The time of the last variable update.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the variable resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, `[CONFIG_NAME]` must be a\nvalid RuntimeConfig reource and `[VARIABLE_NAME]` follows Unix file system\nfile path naming.\n\nThe `[VARIABLE_NAME]` can contain ASCII letters, numbers, slashes and\ndashes. Slashes are used as path element separators and are not part of the\n`[VARIABLE_NAME]` itself, so `[VARIABLE_NAME]` must contain at least one\nnon-slash character. Multiple slashes are coalesced into single slash\ncharacter. Each path segment should follow RFC 1035 segment specification.\nThe length of a `[VARIABLE_NAME]` must be less than 256 bytes.\n\nOnce you create a variable, you cannot change the variable name.",
+ "type": "string"
+ },
+ "text": {
+ "description": "The string value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. For example,\n`text: \"my text value\"`. The string must be valid UTF-8.",
+ "type": "string"
+ },
+ "value": {
+ "type": "string",
+ "format": "byte",
+ "description": "The binary value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. The value must be\nbase64 encoded. Only one of `value` or `text` can be set."
+ }
+ },
+ "id": "Variable"
+ },
+ "Policy": {
+ "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
+ "type": "object",
+ "properties": {
+ "etag": {
+ "format": "byte",
+ "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
+ "type": "string"
+ },
+ "version": {
+ "format": "int32",
+ "description": "Version of the `Policy`. The default version is 0.",
+ "type": "integer"
+ },
+ "bindings": {
+ "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
+ "items": {
+ "$ref": "Binding"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Policy"
+ },
+ "Operation": {
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
+ "type": "object",
+ "properties": {
+ "done": {
+ "type": "boolean",
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable."
+ },
+ "response": {
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`."
+ },
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "type": "string"
+ },
+ "error": {
+ "$ref": "Status",
+ "description": "The error result of the operation in case of failure or cancellation."
+ },
+ "metadata": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
+ "type": "object"
+ }
+ },
+ "id": "Operation"
+ }
+ },
+ "icons": {
+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ },
+ "protocol": "rest",
"canonicalName": "Cloud RuntimeConfig",
"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/cloudruntimeconfig": {
"description": "Manage your Google Cloud Platform services' runtime configuration"
+ },
+ "https://www.googleapis.com/auth/cloud-platform": {
+ "description": "View and manage your data across Google Cloud Platform services"
}
}
}
@@ -22,416 +362,255 @@
"projects": {
"resources": {
"configs": {
+ "methods": {
+ "setIamPolicy": {
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:setIamPolicy",
+ "id": "runtimeconfig.projects.configs.setIamPolicy",
+ "path": "v1beta1/{+resource}:setIamPolicy",
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ }
+ },
+ "create": {
+ "response": {
+ "$ref": "RuntimeConfig"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "requestId": {
+ "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.",
+ "type": "string",
+ "location": "query"
+ },
+ "parent": {
+ "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs",
+ "id": "runtimeconfig.projects.configs.create",
+ "path": "v1beta1/{+parent}/configs",
+ "description": "Creates a new RuntimeConfig resource. The configuration name must be\nunique within project.",
+ "request": {
+ "$ref": "RuntimeConfig"
+ }
+ },
+ "getIamPolicy": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "resource": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$",
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field."
+ }
+ },
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:getIamPolicy",
+ "path": "v1beta1/{+resource}:getIamPolicy",
+ "id": "runtimeconfig.projects.configs.getIamPolicy",
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset."
+ },
+ "get": {
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}",
+ "path": "v1beta1/{+name}",
+ "id": "runtimeconfig.projects.configs.get",
+ "description": "Gets information about a RuntimeConfig resource.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "RuntimeConfig"
+ },
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the RuntimeConfig resource to retrieve, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ]
+ },
+ "update": {
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}",
+ "path": "v1beta1/{+name}",
+ "id": "runtimeconfig.projects.configs.update",
+ "description": "Updates a RuntimeConfig resource. The configuration must exist beforehand.",
+ "request": {
+ "$ref": "RuntimeConfig"
+ },
+ "httpMethod": "PUT",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "RuntimeConfig"
+ },
+ "parameters": {
+ "name": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$",
+ "location": "path",
+ "description": "The name of the RuntimeConfig resource to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ]
+ },
+ "testIamPermissions": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:testIamPermissions",
+ "path": "v1beta1/{+resource}:testIamPermissions",
+ "id": "runtimeconfig.projects.configs.testIamPermissions",
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ }
+ },
+ "delete": {
+ "description": "Deletes a RuntimeConfig resource.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The RuntimeConfig resource to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$"
+ }
+ },
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}",
+ "id": "runtimeconfig.projects.configs.delete",
+ "path": "v1beta1/{+name}"
+ },
+ "list": {
+ "description": "Lists all the RuntimeConfig resources within project.",
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "ListConfigsResponse"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "parent": {
+ "pattern": "^projects/[^/]+$",
+ "location": "path",
+ "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.",
+ "type": "string",
+ "required": true
+ },
+ "pageToken": {
+ "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.",
+ "type": "integer",
+ "location": "query"
+ }
+ },
+ "flatPath": "v1beta1/projects/{projectsId}/configs",
+ "path": "v1beta1/{+parent}/configs",
+ "id": "runtimeconfig.projects.configs.list"
+ }
+ },
"resources": {
- "waiters": {
- "methods": {
- "delete": {
- "description": "Deletes the waiter with the specified name.",
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "name": {
- "description": "The Waiter resource to delete, in the format:\n\n `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}",
- "path": "v1beta1/{+name}",
- "id": "runtimeconfig.projects.configs.waiters.delete"
- },
- "get": {
- "path": "v1beta1/{+name}",
- "id": "runtimeconfig.projects.configs.waiters.get",
- "description": "Gets information about a single waiter.",
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Waiter"
- },
- "parameters": {
- "name": {
- "description": "The fully-qualified name of the Waiter resource object to retrieve, in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}"
- },
- "list": {
- "description": "List waiters within the given configuration.",
- "httpMethod": "GET",
- "response": {
- "$ref": "ListWaitersResponse"
- },
- "parameterOrder": [
- "parent"
- ],
- "parameters": {
- "pageToken": {
- "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "format": "int32",
- "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.",
- "type": "integer",
- "location": "query"
- },
- "parent": {
- "description": "The path to the configuration for which you want to get a list of waiters.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters",
- "path": "v1beta1/{+parent}/waiters",
- "id": "runtimeconfig.projects.configs.waiters.list"
- },
- "create": {
- "request": {
- "$ref": "Waiter"
- },
- "description": "Creates a Waiter resource. This operation returns a long-running Operation\nresource which can be polled for completion. However, a waiter with the\ngiven name will exist (and can be retrieved) prior to the operation\ncompleting. If the operation fails, the failed Waiter resource will\nstill exist and must be deleted prior to subsequent creation attempts.",
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "requestId": {
- "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.",
- "type": "string",
- "location": "query"
- },
- "parent": {
- "location": "path",
- "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters",
- "id": "runtimeconfig.projects.configs.waiters.create",
- "path": "v1beta1/{+parent}/waiters"
- },
- "testIamPermissions": {
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}:testIamPermissions",
- "id": "runtimeconfig.projects.configs.waiters.testIamPermissions",
- "path": "v1beta1/{+resource}:testIamPermissions"
- }
- }
- },
- "operations": {
- "methods": {
- "get": {
- "httpMethod": "GET",
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "The name of the operation resource.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}",
- "path": "v1beta1/{+name}",
- "id": "runtimeconfig.projects.configs.operations.get",
- "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice."
- },
- "testIamPermissions": {
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "resource": {
- "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}:testIamPermissions",
- "path": "v1beta1/{+resource}:testIamPermissions",
- "id": "runtimeconfig.projects.configs.operations.testIamPermissions"
- }
- }
- },
"variables": {
"methods": {
- "get": {
- "description": "Gets information about a single variable.",
- "response": {
- "$ref": "Variable"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
- "location": "path",
- "description": "The name of the variable to return, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]`"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}",
- "id": "runtimeconfig.projects.configs.variables.get",
- "path": "v1beta1/{+name}"
- },
- "watch": {
- "request": {
- "$ref": "WatchVariableRequest"
- },
- "description": "Watches a specific variable and waits for a change in the variable's value.\nWhen there is a change, this method returns the new value or times out.\n\nIf a variable is deleted while being watched, the `variableState` state is\nset to `DELETED` and the method returns the last known variable `value`.\n\nIf you set the deadline for watching to a larger value than internal timeout\n(60 seconds), the current variable value is returned and the `variableState`\nwill be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for Changes](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation.",
- "httpMethod": "POST",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Variable"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
- "location": "path",
- "description": "The name of the variable to watch, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch",
- "path": "v1beta1/{+name}:watch",
- "id": "runtimeconfig.projects.configs.variables.watch"
- },
- "update": {
- "id": "runtimeconfig.projects.configs.variables.update",
- "path": "v1beta1/{+name}",
- "request": {
- "$ref": "Variable"
- },
- "description": "Updates an existing variable with a new value.",
- "response": {
- "$ref": "Variable"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "PUT",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "name": {
- "description": "The name of the variable to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}"
- },
- "testIamPermissions": {
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "parameters": {
- "resource": {
- "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions",
- "id": "runtimeconfig.projects.configs.variables.testIamPermissions",
- "path": "v1beta1/{+resource}:testIamPermissions"
- },
- "delete": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "recursive": {
- "location": "query",
- "description": "Set to `true` to recursively delete multiple variables with the same\nprefix.",
- "type": "boolean"
- },
- "name": {
- "description": "The name of the variable to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}",
- "id": "runtimeconfig.projects.configs.variables.delete",
- "path": "v1beta1/{+name}",
- "description": "Deletes a variable or multiple variables.\n\nIf you specify a variable name, then that variable is deleted. If you\nspecify a prefix and `recursive` is true, then all variables with that\nprefix are deleted. You must set a `recursive` to true if you delete\nvariables by prefix."
- },
- "list": {
- "description": "Lists variables within given a configuration, matching any provided filters.\nThis only lists variable names, not the values, unless `return_values` is\ntrue, in which case only variables that user has IAM permission to GetVariable\nwill be returned.",
- "response": {
- "$ref": "ListVariablesResponse"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "GET",
- "parameters": {
- "returnValues": {
- "type": "boolean",
- "location": "query",
- "description": "The flag indicates whether the user wants to return values of variables.\nIf true, then only those variables that user has IAM GetVariable permission\nwill be returned along with their values."
- },
- "pageToken": {
- "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "format": "int32",
- "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.",
- "type": "integer",
- "location": "query"
- },
- "parent": {
- "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$",
- "location": "path"
- },
- "filter": {
- "location": "query",
- "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables",
- "id": "runtimeconfig.projects.configs.variables.list",
- "path": "v1beta1/{+parent}/variables"
- },
"create": {
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables",
+ "id": "runtimeconfig.projects.configs.variables.create",
+ "path": "v1beta1/{+parent}/variables",
+ "request": {
+ "$ref": "Variable"
+ },
+ "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting Data](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation.",
"response": {
"$ref": "Variable"
},
@@ -456,254 +635,415 @@
"required": true,
"pattern": "^projects/[^/]+/configs/[^/]+$"
}
+ }
+ },
+ "get": {
+ "id": "runtimeconfig.projects.configs.variables.get",
+ "path": "v1beta1/{+name}",
+ "description": "Gets information about a single variable.",
+ "response": {
+ "$ref": "Variable"
},
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables",
- "id": "runtimeconfig.projects.configs.variables.create",
- "path": "v1beta1/{+parent}/variables",
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "name": {
+ "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
+ "location": "path",
+ "description": "The name of the variable to return, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]`",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}"
+ },
+ "watch": {
+ "description": "Watches a specific variable and waits for a change in the variable's value.\nWhen there is a change, this method returns the new value or times out.\n\nIf a variable is deleted while being watched, the `variableState` state is\nset to `DELETED` and the method returns the last known variable `value`.\n\nIf you set the deadline for watching to a larger value than internal timeout\n(60 seconds), the current variable value is returned and the `variableState`\nwill be `VARIABLE_STATE_UNSPECIFIED`.\n\nTo learn more about creating a watcher, read the\n[Watching a Variable for Changes](/deployment-manager/runtime-configurator/watching-a-variable)\ndocumentation.",
+ "request": {
+ "$ref": "WatchVariableRequest"
+ },
+ "response": {
+ "$ref": "Variable"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "name": {
+ "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
+ "location": "path",
+ "description": "The name of the variable to watch, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch",
+ "id": "runtimeconfig.projects.configs.variables.watch",
+ "path": "v1beta1/{+name}:watch"
+ },
+ "update": {
"request": {
"$ref": "Variable"
},
- "description": "Creates a variable within the given configuration. You cannot create\na variable with a name that is a prefix of an existing variable name, or a\nname that has an existing variable name as a prefix.\n\nTo learn more about creating a variable, read the\n[Setting and Getting Data](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation."
- }
- }
- }
- },
- "methods": {
- "getIamPolicy": {
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "httpMethod": "GET",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- },
- "parameters": {
- "resource": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:getIamPolicy",
- "path": "v1beta1/{+resource}:getIamPolicy",
- "id": "runtimeconfig.projects.configs.getIamPolicy"
- },
- "get": {
- "description": "Gets information about a RuntimeConfig resource.",
- "response": {
- "$ref": "RuntimeConfig"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$",
- "location": "path",
- "description": "The name of the RuntimeConfig resource to retrieve, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}",
- "id": "runtimeconfig.projects.configs.get",
- "path": "v1beta1/{+name}"
- },
- "update": {
- "httpMethod": "PUT",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "RuntimeConfig"
- },
- "parameters": {
- "name": {
- "description": "The name of the RuntimeConfig resource to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}",
- "path": "v1beta1/{+name}",
- "id": "runtimeconfig.projects.configs.update",
- "description": "Updates a RuntimeConfig resource. The configuration must exist beforehand.",
- "request": {
- "$ref": "RuntimeConfig"
- }
- },
- "testIamPermissions": {
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:testIamPermissions",
- "path": "v1beta1/{+resource}:testIamPermissions",
- "id": "runtimeconfig.projects.configs.testIamPermissions",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "resource": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field."
- }
- }
- },
- "delete": {
- "httpMethod": "DELETE",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Empty"
- },
- "parameters": {
- "name": {
- "description": "The RuntimeConfig resource to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}",
- "path": "v1beta1/{+name}",
- "id": "runtimeconfig.projects.configs.delete",
- "description": "Deletes a RuntimeConfig resource."
- },
- "list": {
- "response": {
- "$ref": "ListConfigsResponse"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "parent": {
- "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path"
+ "description": "Updates an existing variable with a new value.",
+ "httpMethod": "PUT",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Variable"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the variable to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$"
+ }
+ },
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}",
+ "path": "v1beta1/{+name}",
+ "id": "runtimeconfig.projects.configs.variables.update"
},
- "pageToken": {
- "location": "query",
- "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.",
- "type": "string"
+ "testIamPermissions": {
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions",
+ "id": "runtimeconfig.projects.configs.variables.testIamPermissions",
+ "path": "v1beta1/{+resource}:testIamPermissions"
},
- "pageSize": {
- "format": "int32",
- "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.",
- "type": "integer",
- "location": "query"
+ "delete": {
+ "id": "runtimeconfig.projects.configs.variables.delete",
+ "path": "v1beta1/{+name}",
+ "description": "Deletes a variable or multiple variables.\n\nIf you specify a variable name, then that variable is deleted. If you\nspecify a prefix and `recursive` is true, then all variables with that\nprefix are deleted. You must set a `recursive` to true if you delete\nvariables by prefix.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "recursive": {
+ "location": "query",
+ "description": "Set to `true` to recursively delete multiple variables with the same\nprefix.",
+ "type": "boolean"
+ },
+ "name": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$",
+ "location": "path",
+ "description": "The name of the variable to delete, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]`"
+ }
+ },
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}"
+ },
+ "list": {
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables",
+ "id": "runtimeconfig.projects.configs.variables.list",
+ "path": "v1beta1/{+parent}/variables",
+ "description": "Lists variables within given a configuration, matching any provided filters.\nThis only lists variable names, not the values, unless `return_values` is\ntrue, in which case only variables that user has IAM permission to GetVariable\nwill be returned.",
+ "response": {
+ "$ref": "ListVariablesResponse"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "returnValues": {
+ "description": "The flag indicates whether the user wants to return values of variables.\nIf true, then only those variables that user has IAM GetVariable permission\nwill be returned along with their values.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "pageToken": {
+ "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.",
+ "type": "integer"
+ },
+ "parent": {
+ "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$",
+ "location": "path"
+ },
+ "filter": {
+ "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ]
}
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs",
- "id": "runtimeconfig.projects.configs.list",
- "path": "v1beta1/{+parent}/configs",
- "description": "Lists all the RuntimeConfig resources within project."
- },
- "setIamPolicy": {
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- },
- "parameters": {
- "resource": {
- "location": "path",
- "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/configs/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:setIamPolicy",
- "path": "v1beta1/{+resource}:setIamPolicy",
- "id": "runtimeconfig.projects.configs.setIamPolicy",
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
- "request": {
- "$ref": "SetIamPolicyRequest"
}
},
- "create": {
- "response": {
- "$ref": "RuntimeConfig"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloudruntimeconfig"
- ],
- "parameters": {
- "requestId": {
- "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.",
- "type": "string",
- "location": "query"
+ "waiters": {
+ "methods": {
+ "create": {
+ "description": "Creates a Waiter resource. This operation returns a long-running Operation\nresource which can be polled for completion. However, a waiter with the\ngiven name will exist (and can be retrieved) prior to the operation\ncompleting. If the operation fails, the failed Waiter resource will\nstill exist and must be deleted prior to subsequent creation attempts.",
+ "request": {
+ "$ref": "Waiter"
+ },
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "parent"
+ ],
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameters": {
+ "requestId": {
+ "location": "query",
+ "description": "An optional but recommended unique `request_id`. If the server\nreceives two `create()` requests with the same\n`request_id`, then the second request will be ignored and the\nfirst resource created and stored in the backend is returned.\nEmpty `request_id` fields are ignored.\n\nIt is responsibility of the client to ensure uniqueness of the\n`request_id` strings.\n\n`request_id` strings are limited to 64 characters.",
+ "type": "string"
+ },
+ "parent": {
+ "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters",
+ "path": "v1beta1/{+parent}/waiters",
+ "id": "runtimeconfig.projects.configs.waiters.create"
},
- "parent": {
- "description": "The [project ID](https://support.google.com/cloud/answer/6158840?hl=en&ref_topic=6158848)\nfor this request, in the format `projects/[PROJECT_ID]`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path"
+ "testIamPermissions": {
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}:testIamPermissions",
+ "path": "v1beta1/{+resource}:testIamPermissions",
+ "id": "runtimeconfig.projects.configs.waiters.testIamPermissions",
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameters": {
+ "resource": {
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$",
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field."
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ]
+ },
+ "delete": {
+ "httpMethod": "DELETE",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameters": {
+ "name": {
+ "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$",
+ "location": "path",
+ "description": "The Waiter resource to delete, in the format:\n\n `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}",
+ "path": "v1beta1/{+name}",
+ "id": "runtimeconfig.projects.configs.waiters.delete",
+ "description": "Deletes the waiter with the specified name."
+ },
+ "get": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Waiter"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The fully-qualified name of the Waiter resource object to retrieve, in the\nformat:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$"
+ }
+ },
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}",
+ "path": "v1beta1/{+name}",
+ "id": "runtimeconfig.projects.configs.waiters.get",
+ "description": "Gets information about a single waiter."
+ },
+ "list": {
+ "response": {
+ "$ref": "ListWaitersResponse"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "parent": {
+ "pattern": "^projects/[^/]+/configs/[^/]+$",
+ "location": "path",
+ "description": "The path to the configuration for which you want to get a list of waiters.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ "type": "string",
+ "required": true
+ },
+ "pageToken": {
+ "description": "Specifies a page token to use. Set `pageToken` to a `nextPageToken`\nreturned by a previous list request to get the next page of results.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "type": "integer",
+ "location": "query",
+ "format": "int32",
+ "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements."
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters",
+ "id": "runtimeconfig.projects.configs.waiters.list",
+ "path": "v1beta1/{+parent}/waiters",
+ "description": "List waiters within the given configuration."
}
- },
- "flatPath": "v1beta1/projects/{projectsId}/configs",
- "id": "runtimeconfig.projects.configs.create",
- "path": "v1beta1/{+parent}/configs",
- "request": {
- "$ref": "RuntimeConfig"
- },
- "description": "Creates a new RuntimeConfig resource. The configuration name must be\nunique within project."
+ }
+ },
+ "operations": {
+ "methods": {
+ "get": {
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "name": {
+ "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$",
+ "location": "path",
+ "description": "The name of the operation resource.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}",
+ "id": "runtimeconfig.projects.configs.operations.get",
+ "path": "v1beta1/{+name}",
+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice."
+ },
+ "testIamPermissions": {
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloudruntimeconfig"
+ ],
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}:testIamPermissions",
+ "id": "runtimeconfig.projects.configs.operations.testIamPermissions",
+ "path": "v1beta1/{+resource}:testIamPermissions",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning."
+ }
+ }
}
}
}
@@ -711,16 +1051,60 @@
}
},
"parameters": {
- "access_token": {
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
+ },
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "$.xgafv": {
+ "description": "V1 error format.",
+ "type": "string",
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
"location": "query",
- "description": "OAuth access token.",
+ "enum": [
+ "1",
+ "2"
+ ]
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
"type": "string"
},
+ "alt": {
+ "type": "string",
+ "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",
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ]
+ },
"key": {
"location": "query",
"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.",
"type": "string"
},
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
"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.",
"type": "string",
@@ -733,14 +1117,14 @@
"type": "boolean"
},
"bearer_token": {
+ "location": "query",
"description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"oauth_token": {
+ "location": "query",
"description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"upload_protocol": {
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
@@ -748,54 +1132,10 @@
"location": "query"
},
"prettyPrint": {
+ "location": "query",
"description": "Returns response with indentations and line breaks.",
"default": "true",
- "type": "boolean",
- "location": "query"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "uploadType": {
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string"
- },
- "$.xgafv": {
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string"
- },
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
- },
- "alt": {
- "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",
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string"
+ "type": "boolean"
}
},
"version": "v1beta1",
@@ -804,349 +1144,9 @@
"description": "The Runtime Configurator allows you to dynamically configure and expose variables through Google Cloud Platform. In addition, you can also set Watchers and Waiters that will watch for changes to your data and return based on certain conditions.",
"servicePath": "",
"basePath": "",
- "revision": "20170620",
+ "revision": "20170816",
"documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/",
"id": "runtimeconfig:v1beta1",
"discoveryVersion": "v1",
- "version_module": "True",
- "schemas": {
- "SetIamPolicyRequest": {
- "type": "object",
- "properties": {
- "policy": {
- "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.",
- "$ref": "Policy"
- }
- },
- "id": "SetIamPolicyRequest",
- "description": "Request message for `SetIamPolicy` method."
- },
- "Status": {
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object",
- "properties": {
- "code": {
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "type": "integer"
- },
- "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"
- },
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "items": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "type": "array"
- }
- },
- "id": "Status"
- },
- "Binding": {
- "description": "Associates `members` with a `role`.",
- "type": "object",
- "properties": {
- "members": {
- "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "role": {
- "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
- "type": "string"
- }
- },
- "id": "Binding"
- },
- "Cardinality": {
- "description": "A Cardinality condition for the Waiter resource. A cardinality condition is\nmet when the number of variables under a specified path prefix reaches a\npredefined number. For example, if you set a Cardinality condition where\nthe `path` is set to `/foo` and the number of paths is set to 2, the\nfollowing variables would meet the condition in a RuntimeConfig resource:\n\n+ `/foo/variable1 = \"value1\"`\n+ `/foo/variable2 = \"value2\"`\n+ `/bar/variable3 = \"value3\"`\n\nIt would not would not satisify the same condition with the `number` set to\n3, however, because there is only 2 paths that start with `/foo`.\nCardinality conditions are recursive; all subtrees under the specific\npath prefix are counted.",
- "type": "object",
- "properties": {
- "number": {
- "format": "int32",
- "description": "The number variables under the `path` that must exist to meet this\ncondition. Defaults to 1 if not specified.",
- "type": "integer"
- },
- "path": {
- "description": "The root of the variable subtree to monitor. For example, `/foo`.",
- "type": "string"
- }
- },
- "id": "Cardinality"
- },
- "Empty": {
- "type": "object",
- "properties": {},
- "id": "Empty",
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`."
- },
- "ListConfigsResponse": {
- "properties": {
- "configs": {
- "description": "A list of the configurations in the project. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.",
- "items": {
- "$ref": "RuntimeConfig"
- },
- "type": "array"
- },
- "nextPageToken": {
- "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results",
- "type": "string"
- }
- },
- "id": "ListConfigsResponse",
- "description": "`ListConfigs()` returns the following response. The order of returned\nobjects is arbitrary; that is, it is not ordered in any particular way.",
- "type": "object"
- },
- "EndCondition": {
- "description": "The condition that a Waiter resource is waiting for.",
- "type": "object",
- "properties": {
- "cardinality": {
- "$ref": "Cardinality",
- "description": "The cardinality of the `EndCondition`."
- }
- },
- "id": "EndCondition"
- },
- "TestIamPermissionsResponse": {
- "type": "object",
- "properties": {
- "permissions": {
- "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "TestIamPermissionsResponse",
- "description": "Response message for `TestIamPermissions` method."
- },
- "ListVariablesResponse": {
- "description": "Response for the `ListVariables()` method.",
- "type": "object",
- "properties": {
- "variables": {
- "items": {
- "$ref": "Variable"
- },
- "type": "array",
- "description": "A list of variables and their values. The order of returned variable\nobjects is arbitrary."
- },
- "nextPageToken": {
- "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results",
- "type": "string"
- }
- },
- "id": "ListVariablesResponse"
- },
- "RuntimeConfig": {
- "description": "A RuntimeConfig resource is the primary resource in the Cloud RuntimeConfig\nservice. A RuntimeConfig resource consists of metadata and a hierarchy of\nvariables.",
- "type": "object",
- "properties": {
- "name": {
- "description": "The resource name of a runtime config. The name must have the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, and `[CONFIG_NAME]` is an\narbitrary name that matches RFC 1035 segment specification. The length of\n`[CONFIG_NAME]` must be less than 64 bytes.\n\nYou pick the RuntimeConfig resource name, but the server will validate that\nthe name adheres to this format. After you create the resource, you cannot\nchange the resource's name.",
- "type": "string"
- },
- "description": {
- "description": "An optional description of the RuntimeConfig object.",
- "type": "string"
- }
- },
- "id": "RuntimeConfig"
- },
- "WatchVariableRequest": {
- "properties": {
- "newerThan": {
- "format": "google-datetime",
- "description": "If specified, checks the current timestamp of the variable and if the\ncurrent timestamp is newer than `newerThan` timestamp, the method returns\nimmediately.\n\nIf not specified or the variable has an older timestamp, the watcher waits\nfor a the value to change before returning.",
- "type": "string"
- }
- },
- "id": "WatchVariableRequest",
- "description": "Request for the `WatchVariable()` method.",
- "type": "object"
- },
- "ListWaitersResponse": {
- "id": "ListWaitersResponse",
- "description": "Response for the `ListWaiters()` method.\nOrder of returned waiter objects is arbitrary.",
- "type": "object",
- "properties": {
- "waiters": {
- "description": "Found waiters in the project.",
- "items": {
- "$ref": "Waiter"
- },
- "type": "array"
- },
- "nextPageToken": {
- "type": "string",
- "description": "This token allows you to get the next page of results for list requests.\nIf the number of results is larger than `pageSize`, use the `nextPageToken`\nas a value for the query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to continue\npaging through the results"
- }
- }
- },
- "Waiter": {
- "id": "Waiter",
- "description": "A Waiter resource waits for some end condition within a RuntimeConfig resource\nto be met before it returns. For example, assume you have a distributed\nsystem where each node writes to a Variable resource indidicating the node's\nreadiness as part of the startup process.\n\nYou then configure a Waiter resource with the success condition set to wait\nuntil some number of nodes have checked in. Afterwards, your application\nruns some arbitrary code after the condition has been met and the waiter\nreturns successfully.\n\nOnce created, a Waiter resource is immutable.\n\nTo learn more about using waiters, read the\n[Creating a Waiter](/deployment-manager/runtime-configurator/creating-a-waiter)\ndocumentation.",
- "type": "object",
- "properties": {
- "success": {
- "description": "[Required] The success condition. If this condition is met, `done` will be\nset to `true` and the `error` value will remain unset. The failure condition\ntakes precedence over the success condition. If both conditions are met, a\nfailure will be indicated.",
- "$ref": "EndCondition"
- },
- "createTime": {
- "format": "google-datetime",
- "description": "[Output Only] The instant at which this Waiter resource was created. Adding\nthe value of `timeout` to this instant yields the timeout deadline for the\nwaiter.",
- "type": "string"
- },
- "done": {
- "description": "[Output Only] If the value is `false`, it means the waiter is still waiting\nfor one of its conditions to be met.\n\nIf true, the waiter has finished. If the waiter finished due to a timeout\nor failure, `error` will be set.",
- "type": "boolean"
- },
- "timeout": {
- "format": "google-duration",
- "description": "[Required] Specifies the timeout of the waiter in seconds, beginning from\nthe instant that `waiters().create` method is called. If this time elapses\nbefore the success or failure conditions are met, the waiter fails and sets\nthe `error` code to `DEADLINE_EXCEEDED`.",
- "type": "string"
- },
- "name": {
- "description": "The name of the Waiter resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]\n\nThe `[PROJECT_ID]` must be a valid Google Cloud project ID,\nthe `[CONFIG_NAME]` must be a valid RuntimeConfig resource, the\n`[WAITER_NAME]` must match RFC 1035 segment specification, and the length\nof `[WAITER_NAME]` must be less than 64 bytes.\n\nAfter you create a Waiter resource, you cannot change the resource name.",
- "type": "string"
- },
- "error": {
- "$ref": "Status",
- "description": "[Output Only] If the waiter ended due to a failure or timeout, this value\nwill be set."
- },
- "failure": {
- "$ref": "EndCondition",
- "description": "[Optional] The failure condition of this waiter. If this condition is met,\n`done` will be set to `true` and the `error` code will be set to `ABORTED`.\nThe failure condition takes precedence over the success condition. If both\nconditions are met, a failure will be indicated. This value is optional; if\nno failure condition is set, the only failure scenario will be a timeout."
- }
- }
- },
- "TestIamPermissionsRequest": {
- "type": "object",
- "properties": {
- "permissions": {
- "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "TestIamPermissionsRequest",
- "description": "Request message for `TestIamPermissions` method."
- },
- "Policy": {
- "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
- "type": "object",
- "properties": {
- "version": {
- "format": "int32",
- "description": "Version of the `Policy`. The default version is 0.",
- "type": "integer"
- },
- "bindings": {
- "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
- "items": {
- "$ref": "Binding"
- },
- "type": "array"
- },
- "etag": {
- "format": "byte",
- "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
- "type": "string"
- }
- },
- "id": "Policy"
- },
- "Variable": {
- "description": "Describes a single variable within a RuntimeConfig resource.\nThe name denotes the hierarchical variable name. For example,\n`ports/serving_port` is a valid variable name. The variable value is an\nopaque string and only leaf variables can have values (that is, variables\nthat do not have any child variables).",
- "type": "object",
- "properties": {
- "name": {
- "description": "The name of the variable resource, in the format:\n\n projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]\n\nThe `[PROJECT_ID]` must be a valid project ID, `[CONFIG_NAME]` must be a\nvalid RuntimeConfig reource and `[VARIABLE_NAME]` follows Unix file system\nfile path naming.\n\nThe `[VARIABLE_NAME]` can contain ASCII letters, numbers, slashes and\ndashes. Slashes are used as path element separators and are not part of the\n`[VARIABLE_NAME]` itself, so `[VARIABLE_NAME]` must contain at least one\nnon-slash character. Multiple slashes are coalesced into single slash\ncharacter. Each path segment should follow RFC 1035 segment specification.\nThe length of a `[VARIABLE_NAME]` must be less than 256 bytes.\n\nOnce you create a variable, you cannot change the variable name.",
- "type": "string"
- },
- "text": {
- "description": "The string value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. For example,\n`text: \"my text value\"`. The string must be valid UTF-8.",
- "type": "string"
- },
- "value": {
- "format": "byte",
- "description": "The binary value of the variable. The length of the value must be less\nthan 4096 bytes. Empty values are also accepted. The value must be\nbase64 encoded. Only one of `value` or `text` can be set.",
- "type": "string"
- },
- "state": {
- "enumDescriptions": [
- "Default variable state.",
- "The variable was updated, while `variables().watch` was executing.",
- "The variable was deleted, while `variables().watch` was executing."
- ],
- "enum": [
- "VARIABLE_STATE_UNSPECIFIED",
- "UPDATED",
- "DELETED"
- ],
- "description": "[Ouput only] The current state of the variable. The variable state indicates\nthe outcome of the `variables().watch` call and is visible through the\n`get` and `list` calls.",
- "type": "string"
- },
- "updateTime": {
- "format": "google-datetime",
- "description": "[Output Only] The time of the last variable update.",
- "type": "string"
- }
- },
- "id": "Variable"
- },
- "Operation": {
- "type": "object",
- "properties": {
- "error": {
- "$ref": "Status",
- "description": "The error result of the operation in case of failure or cancellation."
- },
- "metadata": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
- "type": "object"
- },
- "done": {
- "type": "boolean",
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable."
- },
- "response": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
- "type": "object"
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
- "type": "string"
- }
- },
- "id": "Operation",
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call."
- }
- },
- "icons": {
- "x16": "http://www.google.com/images/icons/product/search-16.gif",
- "x32": "http://www.google.com/images/icons/product/search-32.gif"
- },
- "protocol": "rest"
+ "version_module": true
}
diff --git a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go
index fc28d31..960feb8 100644
--- a/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go
+++ b/vendor/google.golang.org/api/runtimeconfig/v1beta1/runtimeconfig-gen.go
@@ -446,8 +446,8 @@ func (s *ListWaitersResponse) MarshalJSON() ([]byte, error) {
type Operation struct {
// Done: If the value is `false`, it means the operation is still in
// progress.
- // If true, the operation is completed, and either `error` or `response`
- // is
+ // If `true`, the operation is completed, and either `error` or
+ // `response` is
// available.
Done bool `json:"done,omitempty"`
@@ -777,9 +777,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -2740,7 +2740,7 @@ func (c *ProjectsConfigsVariablesCreateCall) Do(opts ...googleapi.CallOption) (*
// ],
// "parameters": {
// "parent": {
- // "description": "The path to the RutimeConfig resource that this variable should belong to.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ // "description": "The path to the RutimeConfig resource that this variable should belong to.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
// "location": "path",
// "pattern": "^projects/[^/]+/configs/[^/]+$",
// "required": true,
@@ -3234,7 +3234,7 @@ func (c *ProjectsConfigsVariablesListCall) Do(opts ...googleapi.CallOption) (*Li
// "type": "string"
// },
// "parent": {
- // "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ // "description": "The path to the RuntimeConfig resource for which you want to list variables.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
// "location": "path",
// "pattern": "^projects/[^/]+/configs/[^/]+$",
// "required": true,
@@ -3857,7 +3857,7 @@ func (c *ProjectsConfigsWaitersCreateCall) Do(opts ...googleapi.CallOption) (*Op
// ],
// "parameters": {
// "parent": {
- // "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.",
+ // "description": "The path to the configuration that will own the waiter.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`.",
// "location": "path",
// "pattern": "^projects/[^/]+/configs/[^/]+$",
// "required": true,
@@ -4298,7 +4298,7 @@ func (c *ProjectsConfigsWaitersListCall) Do(opts ...googleapi.CallOption) (*List
// "type": "string"
// },
// "parent": {
- // "description": "The path to the configuration for which you want to get a list of waiters.\nThe configuration must exist beforehand; the path must by in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
+ // "description": "The path to the configuration for which you want to get a list of waiters.\nThe configuration must exist beforehand; the path must be in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`",
// "location": "path",
// "pattern": "^projects/[^/]+/configs/[^/]+$",
// "required": true,
diff --git a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json
index d545816..f6731ad 100644
--- a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json
+++ b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-api.json
@@ -1,16 +1,74 @@
{
+ "rootUrl": "https://safebrowsing.googleapis.com/",
+ "basePath": "",
+ "ownerDomain": "google.com",
+ "name": "safebrowsing",
"batchPath": "batch",
- "revision": "20170628",
+ "revision": "20170814",
"documentationLink": "https://developers.google.com/safe-browsing/",
"id": "safebrowsing:v4",
"title": "Google Safe Browsing API",
- "ownerName": "Google",
"discoveryVersion": "v1",
+ "ownerName": "Google",
"resources": {
+ "threatListUpdates": {
+ "methods": {
+ "fetch": {
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "FetchThreatListUpdatesResponse"
+ },
+ "parameters": {},
+ "flatPath": "v4/threatListUpdates:fetch",
+ "path": "v4/threatListUpdates:fetch",
+ "id": "safebrowsing.threatListUpdates.fetch",
+ "request": {
+ "$ref": "FetchThreatListUpdatesRequest"
+ },
+ "description": "Fetches the most recent threat list updates. A client can request updates\nfor multiple lists at once."
+ }
+ }
+ },
+ "encodedFullHashes": {
+ "methods": {
+ "get": {
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "FindFullHashesResponse"
+ },
+ "parameterOrder": [
+ "encodedRequest"
+ ],
+ "parameters": {
+ "encodedRequest": {
+ "format": "byte",
+ "description": "A serialized FindFullHashesRequest proto.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
+ "clientId": {
+ "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.",
+ "type": "string",
+ "location": "query"
+ },
+ "clientVersion": {
+ "description": "The version of the client implementation.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v4/encodedFullHashes/{encodedRequest}",
+ "path": "v4/encodedFullHashes/{encodedRequest}",
+ "id": "safebrowsing.encodedFullHashes.get",
+ "description": ""
+ }
+ }
+ },
"threatLists": {
"methods": {
"list": {
- "flatPath": "v4/threatLists",
"id": "safebrowsing.threatLists.list",
"path": "v4/threatLists",
"description": "Lists the Safe Browsing threat lists available for download.",
@@ -19,7 +77,8 @@
},
"parameterOrder": [],
"httpMethod": "GET",
- "parameters": {}
+ "parameters": {},
+ "flatPath": "v4/threatLists"
}
}
},
@@ -45,15 +104,15 @@
"fullHashes": {
"methods": {
"find": {
- "httpMethod": "POST",
- "parameterOrder": [],
"response": {
"$ref": "FindFullHashesResponse"
},
+ "parameterOrder": [],
+ "httpMethod": "POST",
"parameters": {},
"flatPath": "v4/fullHashes:find",
- "path": "v4/fullHashes:find",
"id": "safebrowsing.fullHashes.find",
+ "path": "v4/fullHashes:find",
"description": "Finds the full hashes that match the requested hash prefixes.",
"request": {
"$ref": "FindFullHashesRequest"
@@ -62,76 +121,21 @@
}
},
"encodedUpdates": {
- "methods": {
- "get": {
- "httpMethod": "GET",
- "parameterOrder": [
- "encodedRequest"
- ],
- "response": {
- "$ref": "FetchThreatListUpdatesResponse"
- },
- "parameters": {
- "encodedRequest": {
- "format": "byte",
- "description": "A serialized FetchThreatListUpdatesRequest proto.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "clientId": {
- "type": "string",
- "location": "query",
- "description": "A client ID that uniquely identifies the client implementation of the Safe\nBrowsing API."
- },
- "clientVersion": {
- "type": "string",
- "location": "query",
- "description": "The version of the client implementation."
- }
- },
- "flatPath": "v4/encodedUpdates/{encodedRequest}",
- "path": "v4/encodedUpdates/{encodedRequest}",
- "id": "safebrowsing.encodedUpdates.get",
- "description": ""
- }
- }
- },
- "threatListUpdates": {
- "methods": {
- "fetch": {
- "description": "Fetches the most recent threat list updates. A client can request updates\nfor multiple lists at once.",
- "request": {
- "$ref": "FetchThreatListUpdatesRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "FetchThreatListUpdatesResponse"
- },
- "parameters": {},
- "flatPath": "v4/threatListUpdates:fetch",
- "path": "v4/threatListUpdates:fetch",
- "id": "safebrowsing.threatListUpdates.fetch"
- }
- }
- },
- "encodedFullHashes": {
"methods": {
"get": {
"description": "",
+ "response": {
+ "$ref": "FetchThreatListUpdatesResponse"
+ },
"parameterOrder": [
"encodedRequest"
],
"httpMethod": "GET",
- "response": {
- "$ref": "FindFullHashesResponse"
- },
"parameters": {
"clientId": {
- "type": "string",
"location": "query",
- "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API."
+ "description": "A client ID that uniquely identifies the client implementation of the Safe\nBrowsing API.",
+ "type": "string"
},
"clientVersion": {
"description": "The version of the client implementation.",
@@ -140,32 +144,42 @@
},
"encodedRequest": {
"format": "byte",
- "description": "A serialized FindFullHashesRequest proto.",
+ "description": "A serialized FetchThreatListUpdatesRequest proto.",
"type": "string",
"required": true,
"location": "path"
}
},
- "flatPath": "v4/encodedFullHashes/{encodedRequest}",
- "id": "safebrowsing.encodedFullHashes.get",
- "path": "v4/encodedFullHashes/{encodedRequest}"
+ "flatPath": "v4/encodedUpdates/{encodedRequest}",
+ "id": "safebrowsing.encodedUpdates.get",
+ "path": "v4/encodedUpdates/{encodedRequest}"
}
}
}
},
"parameters": {
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string",
"location": "query"
},
+ "prettyPrint": {
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
"uploadType": {
+ "location": "query",
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
+ "type": "string"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
},
"$.xgafv": {
- "type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
@@ -175,7 +189,8 @@
"1",
"2"
],
- "description": "V1 error format."
+ "description": "V1 error format.",
+ "type": "string"
},
"callback": {
"location": "query",
@@ -183,8 +198,6 @@
"type": "string"
},
"alt": {
- "description": "Data format for response.",
- "default": "json",
"enum": [
"json",
"media",
@@ -196,22 +209,24 @@
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
- "location": "query"
- },
- "key": {
"location": "query",
- "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.",
- "type": "string"
+ "description": "Data format for response.",
+ "default": "json"
},
"access_token": {
"location": "query",
"description": "OAuth access token.",
"type": "string"
},
- "quotaUser": {
- "type": "string",
+ "key": {
"location": "query",
- "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."
+ "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.",
+ "type": "string"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
},
"pp": {
"description": "Pretty-print response.",
@@ -225,592 +240,15 @@
"type": "string"
},
"oauth_token": {
- "location": "query",
"description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string",
"location": "query"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean",
- "location": "query"
}
},
"schemas": {
- "RawIndices": {
- "description": "A set of raw indices to remove from a local list.",
- "type": "object",
- "properties": {
- "indices": {
- "description": "The indices to remove from a lexicographically-sorted local list.",
- "items": {
- "format": "int32",
- "type": "integer"
- },
- "type": "array"
- }
- },
- "id": "RawIndices"
- },
- "RawHashes": {
- "id": "RawHashes",
- "description": "The uncompressed threat entries in hash format of a particular prefix length.\nHashes can be anywhere from 4 to 32 bytes in size. A large majority are 4\nbytes, but some hashes are lengthened if they collide with the hash of a\npopular URL.\n\nUsed for sending ThreatEntrySet to clients that do not support compression,\nor when sending non-4-byte hashes to clients that do support compression.",
- "type": "object",
- "properties": {
- "prefixSize": {
- "format": "int32",
- "description": "The number of bytes for each prefix encoded below. This field can be\nanywhere from 4 (shortest prefix) to 32 (full SHA256 hash).",
- "type": "integer"
- },
- "rawHashes": {
- "format": "byte",
- "description": "The hashes, in binary format, concatenated into one long string. Hashes are\nsorted in lexicographic order. For JSON API users, hashes are\nbase64-encoded.",
- "type": "string"
- }
- }
- },
- "FetchThreatListUpdatesResponse": {
- "type": "object",
- "properties": {
- "minimumWaitDuration": {
- "format": "google-duration",
- "description": "The minimum duration the client must wait before issuing any update\nrequest. If this field is not set clients may update as soon as they want.",
- "type": "string"
- },
- "listUpdateResponses": {
- "description": "The list updates requested by the clients.",
- "items": {
- "$ref": "ListUpdateResponse"
- },
- "type": "array"
- }
- },
- "id": "FetchThreatListUpdatesResponse"
- },
- "Checksum": {
- "description": "The expected state of a client's local database.",
- "type": "object",
- "properties": {
- "sha256": {
- "format": "byte",
- "description": "The SHA256 hash of the client state; that is, of the sorted list of all\nhashes present in the database.",
- "type": "string"
- }
- },
- "id": "Checksum"
- },
- "FindFullHashesResponse": {
- "type": "object",
- "properties": {
- "matches": {
- "description": "The full hashes that matched the requested prefixes.",
- "items": {
- "$ref": "ThreatMatch"
- },
- "type": "array"
- },
- "negativeCacheDuration": {
- "format": "google-duration",
- "description": "For requested entities that did not match the threat list, how long to\ncache the response.",
- "type": "string"
- },
- "minimumWaitDuration": {
- "format": "google-duration",
- "description": "The minimum duration the client must wait before issuing any find hashes\nrequest. If this field is not set, clients can issue a request as soon as\nthey want.",
- "type": "string"
- }
- },
- "id": "FindFullHashesResponse"
- },
- "ThreatEntrySet": {
- "description": "A set of threats that should be added or removed from a client's local\ndatabase.",
- "type": "object",
- "properties": {
- "riceIndices": {
- "$ref": "RiceDeltaEncoding",
- "description": "The encoded local, lexicographically-sorted list indices, using a\nGolomb-Rice encoding. Used for sending compressed removal indices. The\nremoval indices (uint32) are sorted in ascending order, then delta encoded\nand stored as encoded_data."
- },
- "compressionType": {
- "type": "string",
- "enumDescriptions": [
- "Unknown.",
- "Raw, uncompressed data.",
- "Rice-Golomb encoded data."
- ],
- "enum": [
- "COMPRESSION_TYPE_UNSPECIFIED",
- "RAW",
- "RICE"
- ],
- "description": "The compression type for the entries in this set."
- },
- "rawIndices": {
- "description": "The raw removal indices for a local list.",
- "$ref": "RawIndices"
- },
- "rawHashes": {
- "$ref": "RawHashes",
- "description": "The raw SHA256-formatted entries."
- },
- "riceHashes": {
- "description": "The encoded 4-byte prefixes of SHA256-formatted entries, using a\nGolomb-Rice encoding. The hashes are converted to uint32, sorted in\nascending order, then delta encoded and stored as encoded_data.",
- "$ref": "RiceDeltaEncoding"
- }
- },
- "id": "ThreatEntrySet"
- },
- "FindFullHashesRequest": {
- "id": "FindFullHashesRequest",
- "description": "Request to return full hashes matched by the provided hash prefixes.",
- "type": "object",
- "properties": {
- "apiClient": {
- "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation.",
- "$ref": "ClientInfo"
- },
- "clientStates": {
- "description": "The current client states for each of the client's local threat lists.",
- "items": {
- "format": "byte",
- "type": "string"
- },
- "type": "array"
- },
- "client": {
- "$ref": "ClientInfo",
- "description": "The client metadata."
- },
- "threatInfo": {
- "$ref": "ThreatInfo",
- "description": "The lists and hashes to be checked."
- }
- }
- },
- "ListUpdateRequest": {
- "description": "A single list update request.",
- "type": "object",
- "properties": {
- "threatEntryType": {
- "enumDescriptions": [
- "Unspecified.",
- "A URL.",
- "An executable program.",
- "An IP range.",
- "Chrome extension.",
- "Filename.",
- "CERT"
- ],
- "enum": [
- "THREAT_ENTRY_TYPE_UNSPECIFIED",
- "URL",
- "EXECUTABLE",
- "IP_RANGE",
- "CHROME_EXTENSION",
- "FILENAME",
- "CERT"
- ],
- "description": "The types of entries present in the list.",
- "type": "string"
- },
- "state": {
- "format": "byte",
- "description": "The current state of the client for the requested list (the encrypted\nclient state that was received from the last successful list update).",
- "type": "string"
- },
- "platformType": {
- "description": "The type of platform at risk by entries present in the list.",
- "type": "string",
- "enumDescriptions": [
- "Unknown platform.",
- "Threat posed to Windows.",
- "Threat posed to Linux.",
- "Threat posed to Android.",
- "Threat posed to OS X.",
- "Threat posed to iOS.",
- "Threat posed to at least one of the defined platforms.",
- "Threat posed to all defined platforms.",
- "Threat posed to Chrome."
- ],
- "enum": [
- "PLATFORM_TYPE_UNSPECIFIED",
- "WINDOWS",
- "LINUX",
- "ANDROID",
- "OSX",
- "IOS",
- "ANY_PLATFORM",
- "ALL_PLATFORMS",
- "CHROME"
- ]
- },
- "constraints": {
- "description": "The constraints associated with this request.",
- "$ref": "Constraints"
- },
- "threatType": {
- "enum": [
- "THREAT_TYPE_UNSPECIFIED",
- "MALWARE",
- "SOCIAL_ENGINEERING",
- "UNWANTED_SOFTWARE",
- "POTENTIALLY_HARMFUL_APPLICATION",
- "MALICIOUS_BINARY"
- ],
- "description": "The type of threat posed by entries present in the list.",
- "type": "string",
- "enumDescriptions": [
- "Unknown.",
- "Malware threat type.",
- "Social engineering threat type.",
- "Unwanted software threat type.",
- "Potentially harmful application threat type.",
- "Malicious binary threat type."
- ]
- }
- },
- "id": "ListUpdateRequest"
- },
- "FetchThreatListUpdatesRequest": {
- "description": "Describes a Safe Browsing API update request. Clients can request updates for\nmultiple lists in a single request.\nNOTE: Field index 2 is unused.\nNEXT: 5",
- "type": "object",
- "properties": {
- "listUpdateRequests": {
- "description": "The requested threat list updates.",
- "items": {
- "$ref": "ListUpdateRequest"
- },
- "type": "array"
- },
- "client": {
- "$ref": "ClientInfo",
- "description": "The client metadata."
- }
- },
- "id": "FetchThreatListUpdatesRequest"
- },
- "ListUpdateResponse": {
- "description": "An update to an individual list.",
- "type": "object",
- "properties": {
- "platformType": {
- "enumDescriptions": [
- "Unknown platform.",
- "Threat posed to Windows.",
- "Threat posed to Linux.",
- "Threat posed to Android.",
- "Threat posed to OS X.",
- "Threat posed to iOS.",
- "Threat posed to at least one of the defined platforms.",
- "Threat posed to all defined platforms.",
- "Threat posed to Chrome."
- ],
- "enum": [
- "PLATFORM_TYPE_UNSPECIFIED",
- "WINDOWS",
- "LINUX",
- "ANDROID",
- "OSX",
- "IOS",
- "ANY_PLATFORM",
- "ALL_PLATFORMS",
- "CHROME"
- ],
- "description": "The platform type for which data is returned.",
- "type": "string"
- },
- "threatEntryType": {
- "description": "The format of the threats.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified.",
- "A URL.",
- "An executable program.",
- "An IP range.",
- "Chrome extension.",
- "Filename.",
- "CERT"
- ],
- "enum": [
- "THREAT_ENTRY_TYPE_UNSPECIFIED",
- "URL",
- "EXECUTABLE",
- "IP_RANGE",
- "CHROME_EXTENSION",
- "FILENAME",
- "CERT"
- ]
- },
- "additions": {
- "description": "A set of entries to add to a local threat type's list. Repeated to allow\nfor a combination of compressed and raw data to be sent in a single\nresponse.",
- "items": {
- "$ref": "ThreatEntrySet"
- },
- "type": "array"
- },
- "checksum": {
- "description": "The expected SHA256 hash of the client state; that is, of the sorted list\nof all hashes present in the database after applying the provided update.\nIf the client state doesn't match the expected state, the client must\ndisregard this update and retry later.",
- "$ref": "Checksum"
- },
- "responseType": {
- "description": "The type of response. This may indicate that an action is required by the\nclient when the response is received.",
- "type": "string",
- "enumDescriptions": [
- "Unknown.",
- "Partial updates are applied to the client's existing local database.",
- "Full updates replace the client's entire local database. This means\nthat either the client was seriously out-of-date or the client is\nbelieved to be corrupt."
- ],
- "enum": [
- "RESPONSE_TYPE_UNSPECIFIED",
- "PARTIAL_UPDATE",
- "FULL_UPDATE"
- ]
- },
- "threatType": {
- "enum": [
- "THREAT_TYPE_UNSPECIFIED",
- "MALWARE",
- "SOCIAL_ENGINEERING",
- "UNWANTED_SOFTWARE",
- "POTENTIALLY_HARMFUL_APPLICATION",
- "MALICIOUS_BINARY"
- ],
- "description": "The threat type for which data is returned.",
- "type": "string",
- "enumDescriptions": [
- "Unknown.",
- "Malware threat type.",
- "Social engineering threat type.",
- "Unwanted software threat type.",
- "Potentially harmful application threat type.",
- "Malicious binary threat type."
- ]
- },
- "removals": {
- "description": "A set of entries to remove from a local threat type's list. In practice,\nthis field is empty or contains exactly one ThreatEntrySet.",
- "items": {
- "$ref": "ThreatEntrySet"
- },
- "type": "array"
- },
- "newClientState": {
- "type": "string",
- "format": "byte",
- "description": "The new client state, in encrypted format. Opaque to clients."
- }
- },
- "id": "ListUpdateResponse"
- },
- "Constraints": {
- "description": "The constraints for this update.",
- "type": "object",
- "properties": {
- "region": {
- "description": "Requests the list for a specific geographic location. If not set the\nserver may pick that value based on the user's IP address. Expects ISO\n3166-1 alpha-2 format.",
- "type": "string"
- },
- "maxDatabaseEntries": {
- "format": "int32",
- "description": "Sets the maximum number of entries that the client is willing to have\nin the local database. This should be a power of 2 between 2**10 and\n2**20. If zero, no database size limit is set.",
- "type": "integer"
- },
- "supportedCompressions": {
- "description": "The compression types supported by the client.",
- "items": {
- "enum": [
- "COMPRESSION_TYPE_UNSPECIFIED",
- "RAW",
- "RICE"
- ],
- "type": "string"
- },
- "type": "array",
- "enumDescriptions": [
- "Unknown.",
- "Raw, uncompressed data.",
- "Rice-Golomb encoded data."
- ]
- },
- "maxUpdateEntries": {
- "format": "int32",
- "description": "The maximum size in number of entries. The update will not contain more\nentries than this value. This should be a power of 2 between 2**10 and\n2**20. If zero, no update size limit is set.",
- "type": "integer"
- }
- },
- "id": "Constraints"
- },
- "ThreatMatch": {
- "description": "A match when checking a threat entry in the Safe Browsing threat lists.",
- "type": "object",
- "properties": {
- "cacheDuration": {
- "format": "google-duration",
- "description": "The cache lifetime for the returned match. Clients must not cache this\nresponse for more than this duration to avoid false positives.",
- "type": "string"
- },
- "threatType": {
- "description": "The threat type matching this threat.",
- "type": "string",
- "enumDescriptions": [
- "Unknown.",
- "Malware threat type.",
- "Social engineering threat type.",
- "Unwanted software threat type.",
- "Potentially harmful application threat type.",
- "Malicious binary threat type."
- ],
- "enum": [
- "THREAT_TYPE_UNSPECIFIED",
- "MALWARE",
- "SOCIAL_ENGINEERING",
- "UNWANTED_SOFTWARE",
- "POTENTIALLY_HARMFUL_APPLICATION",
- "MALICIOUS_BINARY"
- ]
- },
- "threatEntryMetadata": {
- "$ref": "ThreatEntryMetadata",
- "description": "Optional metadata associated with this threat."
- },
- "threat": {
- "description": "The threat matching this threat.",
- "$ref": "ThreatEntry"
- },
- "platformType": {
- "enum": [
- "PLATFORM_TYPE_UNSPECIFIED",
- "WINDOWS",
- "LINUX",
- "ANDROID",
- "OSX",
- "IOS",
- "ANY_PLATFORM",
- "ALL_PLATFORMS",
- "CHROME"
- ],
- "description": "The platform type matching this threat.",
- "type": "string",
- "enumDescriptions": [
- "Unknown platform.",
- "Threat posed to Windows.",
- "Threat posed to Linux.",
- "Threat posed to Android.",
- "Threat posed to OS X.",
- "Threat posed to iOS.",
- "Threat posed to at least one of the defined platforms.",
- "Threat posed to all defined platforms.",
- "Threat posed to Chrome."
- ]
- },
- "threatEntryType": {
- "description": "The threat entry type matching this threat.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified.",
- "A URL.",
- "An executable program.",
- "An IP range.",
- "Chrome extension.",
- "Filename.",
- "CERT"
- ],
- "enum": [
- "THREAT_ENTRY_TYPE_UNSPECIFIED",
- "URL",
- "EXECUTABLE",
- "IP_RANGE",
- "CHROME_EXTENSION",
- "FILENAME",
- "CERT"
- ]
- }
- },
- "id": "ThreatMatch"
- },
- "RiceDeltaEncoding": {
- "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or\ncompressed removal indices.",
- "type": "object",
- "properties": {
- "encodedData": {
- "format": "byte",
- "description": "The encoded deltas that are encoded using the Golomb-Rice coder.",
- "type": "string"
- },
- "firstValue": {
- "format": "int64",
- "description": "The offset of the first entry in the encoded data, or, if only a single\ninteger was encoded, that single integer's value.",
- "type": "string"
- },
- "numEntries": {
- "type": "integer",
- "format": "int32",
- "description": "The number of entries that are delta encoded in the encoded data. If only a\nsingle integer was encoded, this will be zero and the single value will be\nstored in `first_value`."
- },
- "riceParameter": {
- "format": "int32",
- "description": "The Golomb-Rice parameter, which is a number between 2 and 28. This field\nis missing (that is, zero) if `num_entries` is zero.",
- "type": "integer"
- }
- },
- "id": "RiceDeltaEncoding"
- },
- "ListThreatListsResponse": {
- "type": "object",
- "properties": {
- "threatLists": {
- "description": "The lists available for download by the client.",
- "items": {
- "$ref": "ThreatListDescriptor"
- },
- "type": "array"
- }
- },
- "id": "ListThreatListsResponse"
- },
- "ThreatEntry": {
- "id": "ThreatEntry",
- "description": "An individual threat; for example, a malicious URL or its hash\nrepresentation. Only one of these fields should be set.",
- "type": "object",
- "properties": {
- "digest": {
- "format": "byte",
- "description": "The digest of an executable in SHA256 format. The API supports both\nbinary and hex digests. For JSON requests, digests are base64-encoded.",
- "type": "string"
- },
- "hash": {
- "format": "byte",
- "description": "A hash prefix, consisting of the most significant 4-32 bytes of a SHA256\nhash. This field is in binary format. For JSON requests, hashes are\nbase64-encoded.",
- "type": "string"
- },
- "url": {
- "description": "A URL.",
- "type": "string"
- }
- }
- },
- "FindThreatMatchesResponse": {
- "id": "FindThreatMatchesResponse",
- "type": "object",
- "properties": {
- "matches": {
- "items": {
- "$ref": "ThreatMatch"
- },
- "type": "array",
- "description": "The threat list matches."
- }
- }
- },
"ThreatListDescriptor": {
- "description": "Describes an individual threat list. A list is defined by three parameters:\nthe type of threat posed, the type of platform targeted by the threat, and\nthe type of entries in the list.",
- "type": "object",
"properties": {
"platformType": {
- "type": "string",
"enumDescriptions": [
"Unknown platform.",
"Threat posed to Windows.",
@@ -833,9 +271,27 @@
"ALL_PLATFORMS",
"CHROME"
],
- "description": "The platform type targeted by the list's entries."
+ "description": "The platform type targeted by the list's entries.",
+ "type": "string"
},
"threatType": {
+ "enum": [
+ "THREAT_TYPE_UNSPECIFIED",
+ "MALWARE",
+ "SOCIAL_ENGINEERING",
+ "UNWANTED_SOFTWARE",
+ "POTENTIALLY_HARMFUL_APPLICATION",
+ "SOCIAL_ENGINEERING_INTERNAL",
+ "API_ABUSE",
+ "MALICIOUS_BINARY",
+ "CSD_WHITELIST",
+ "CSD_DOWNLOAD_WHITELIST",
+ "CLIENT_INCIDENT",
+ "CLIENT_INCIDENT_WHITELIST",
+ "APK_MALWARE_OFFLINE",
+ "SUBRESOURCE_FILTER"
+ ],
+ "description": "The threat type posed by the list's entries.",
"type": "string",
"enumDescriptions": [
"Unknown.",
@@ -843,19 +299,27 @@
"Social engineering threat type.",
"Unwanted software threat type.",
"Potentially harmful application threat type.",
- "Malicious binary threat type."
- ],
- "enum": [
- "THREAT_TYPE_UNSPECIFIED",
- "MALWARE",
- "SOCIAL_ENGINEERING",
- "UNWANTED_SOFTWARE",
- "POTENTIALLY_HARMFUL_APPLICATION",
- "MALICIOUS_BINARY"
- ],
- "description": "The threat type posed by the list's entries."
+ "Social engineering threat type for internal use.",
+ "API abuse threat type.",
+ "Malicious binary threat type.",
+ "Client side detection whitelist threat type.",
+ "Client side download detection whitelist threat type.",
+ "Client incident threat type.",
+ "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.",
+ "List used for offline APK checks in PAM.",
+ "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list."
+ ]
},
"threatEntryType": {
+ "enum": [
+ "THREAT_ENTRY_TYPE_UNSPECIFIED",
+ "URL",
+ "EXECUTABLE",
+ "IP_RANGE",
+ "CHROME_EXTENSION",
+ "FILENAME",
+ "CERT"
+ ],
"description": "The entry types contained in the list.",
"type": "string",
"enumDescriptions": [
@@ -866,23 +330,14 @@
"Chrome extension.",
"Filename.",
"CERT"
- ],
- "enum": [
- "THREAT_ENTRY_TYPE_UNSPECIFIED",
- "URL",
- "EXECUTABLE",
- "IP_RANGE",
- "CHROME_EXTENSION",
- "FILENAME",
- "CERT"
]
}
},
- "id": "ThreatListDescriptor"
+ "id": "ThreatListDescriptor",
+ "description": "Describes an individual threat list. A list is defined by three parameters:\nthe type of threat posed, the type of platform targeted by the threat, and\nthe type of entries in the list.",
+ "type": "object"
},
"MetadataEntry": {
- "description": "A single metadata entry.",
- "type": "object",
"properties": {
"value": {
"format": "byte",
@@ -895,12 +350,11 @@
"type": "string"
}
},
- "id": "MetadataEntry"
+ "id": "MetadataEntry",
+ "description": "A single metadata entry.",
+ "type": "object"
},
"ClientInfo": {
- "id": "ClientInfo",
- "description": "The client metadata associated with Safe Browsing API requests.",
- "type": "object",
"properties": {
"clientId": {
"description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.",
@@ -910,7 +364,25 @@
"description": "The version of the client implementation.",
"type": "string"
}
- }
+ },
+ "id": "ClientInfo",
+ "description": "The client metadata associated with Safe Browsing API requests.",
+ "type": "object"
+ },
+ "FindThreatMatchesRequest": {
+ "properties": {
+ "client": {
+ "$ref": "ClientInfo",
+ "description": "The client metadata."
+ },
+ "threatInfo": {
+ "$ref": "ThreatInfo",
+ "description": "The lists and entries to be checked for matches."
+ }
+ },
+ "id": "FindThreatMatchesRequest",
+ "description": "Request to check entries against lists.",
+ "type": "object"
},
"ThreatInfo": {
"description": "The information regarding one or more threats that a client submits when\nchecking for matches in threat lists.",
@@ -942,31 +414,47 @@
"type": "array"
},
"threatTypes": {
- "items": {
- "type": "string",
- "enum": [
- "THREAT_TYPE_UNSPECIFIED",
- "MALWARE",
- "SOCIAL_ENGINEERING",
- "UNWANTED_SOFTWARE",
- "POTENTIALLY_HARMFUL_APPLICATION",
- "MALICIOUS_BINARY"
- ]
- },
- "type": "array",
"enumDescriptions": [
"Unknown.",
"Malware threat type.",
"Social engineering threat type.",
"Unwanted software threat type.",
"Potentially harmful application threat type.",
- "Malicious binary threat type."
+ "Social engineering threat type for internal use.",
+ "API abuse threat type.",
+ "Malicious binary threat type.",
+ "Client side detection whitelist threat type.",
+ "Client side download detection whitelist threat type.",
+ "Client incident threat type.",
+ "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.",
+ "List used for offline APK checks in PAM.",
+ "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list."
],
- "description": "The threat types to be checked."
+ "description": "The threat types to be checked.",
+ "items": {
+ "enum": [
+ "THREAT_TYPE_UNSPECIFIED",
+ "MALWARE",
+ "SOCIAL_ENGINEERING",
+ "UNWANTED_SOFTWARE",
+ "POTENTIALLY_HARMFUL_APPLICATION",
+ "SOCIAL_ENGINEERING_INTERNAL",
+ "API_ABUSE",
+ "MALICIOUS_BINARY",
+ "CSD_WHITELIST",
+ "CSD_DOWNLOAD_WHITELIST",
+ "CLIENT_INCIDENT",
+ "CLIENT_INCIDENT_WHITELIST",
+ "APK_MALWARE_OFFLINE",
+ "SUBRESOURCE_FILTER"
+ ],
+ "type": "string"
+ },
+ "type": "array"
},
"platformTypes": {
+ "description": "The platform types to be checked.",
"items": {
- "type": "string",
"enum": [
"PLATFORM_TYPE_UNSPECIFIED",
"WINDOWS",
@@ -977,7 +465,8 @@
"ANY_PLATFORM",
"ALL_PLATFORMS",
"CHROME"
- ]
+ ],
+ "type": "string"
},
"type": "array",
"enumDescriptions": [
@@ -990,8 +479,7 @@
"Threat posed to at least one of the defined platforms.",
"Threat posed to all defined platforms.",
"Threat posed to Chrome."
- ],
- "description": "The platform types to be checked."
+ ]
},
"threatEntries": {
"description": "The threat entries to be checked.",
@@ -1003,24 +491,7 @@
},
"id": "ThreatInfo"
},
- "FindThreatMatchesRequest": {
- "id": "FindThreatMatchesRequest",
- "description": "Request to check entries against lists.",
- "type": "object",
- "properties": {
- "client": {
- "$ref": "ClientInfo",
- "description": "The client metadata."
- },
- "threatInfo": {
- "description": "The lists and entries to be checked for matches.",
- "$ref": "ThreatInfo"
- }
- }
- },
"ThreatEntryMetadata": {
- "description": "The metadata associated with a specific threat entry. The client is expected\nto know the metadata key/value pairs associated with each threat type.",
- "type": "object",
"properties": {
"entries": {
"description": "The metadata entries.",
@@ -1030,21 +501,630 @@
"type": "array"
}
},
- "id": "ThreatEntryMetadata"
+ "id": "ThreatEntryMetadata",
+ "description": "The metadata associated with a specific threat entry. The client is expected\nto know the metadata key/value pairs associated with each threat type.",
+ "type": "object"
+ },
+ "RawIndices": {
+ "description": "A set of raw indices to remove from a local list.",
+ "type": "object",
+ "properties": {
+ "indices": {
+ "description": "The indices to remove from a lexicographically-sorted local list.",
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "type": "array"
+ }
+ },
+ "id": "RawIndices"
+ },
+ "RawHashes": {
+ "properties": {
+ "rawHashes": {
+ "format": "byte",
+ "description": "The hashes, in binary format, concatenated into one long string. Hashes are\nsorted in lexicographic order. For JSON API users, hashes are\nbase64-encoded.",
+ "type": "string"
+ },
+ "prefixSize": {
+ "format": "int32",
+ "description": "The number of bytes for each prefix encoded below. This field can be\nanywhere from 4 (shortest prefix) to 32 (full SHA256 hash).",
+ "type": "integer"
+ }
+ },
+ "id": "RawHashes",
+ "description": "The uncompressed threat entries in hash format of a particular prefix length.\nHashes can be anywhere from 4 to 32 bytes in size. A large majority are 4\nbytes, but some hashes are lengthened if they collide with the hash of a\npopular URL.\n\nUsed for sending ThreatEntrySet to clients that do not support compression,\nor when sending non-4-byte hashes to clients that do support compression.",
+ "type": "object"
+ },
+ "FetchThreatListUpdatesResponse": {
+ "type": "object",
+ "properties": {
+ "minimumWaitDuration": {
+ "format": "google-duration",
+ "description": "The minimum duration the client must wait before issuing any update\nrequest. If this field is not set clients may update as soon as they want.",
+ "type": "string"
+ },
+ "listUpdateResponses": {
+ "description": "The list updates requested by the clients.",
+ "items": {
+ "$ref": "ListUpdateResponse"
+ },
+ "type": "array"
+ }
+ },
+ "id": "FetchThreatListUpdatesResponse"
+ },
+ "FindFullHashesResponse": {
+ "properties": {
+ "negativeCacheDuration": {
+ "format": "google-duration",
+ "description": "For requested entities that did not match the threat list, how long to\ncache the response.",
+ "type": "string"
+ },
+ "minimumWaitDuration": {
+ "format": "google-duration",
+ "description": "The minimum duration the client must wait before issuing any find hashes\nrequest. If this field is not set, clients can issue a request as soon as\nthey want.",
+ "type": "string"
+ },
+ "matches": {
+ "description": "The full hashes that matched the requested prefixes.",
+ "items": {
+ "$ref": "ThreatMatch"
+ },
+ "type": "array"
+ }
+ },
+ "id": "FindFullHashesResponse",
+ "type": "object"
+ },
+ "Checksum": {
+ "properties": {
+ "sha256": {
+ "format": "byte",
+ "description": "The SHA256 hash of the client state; that is, of the sorted list of all\nhashes present in the database.",
+ "type": "string"
+ }
+ },
+ "id": "Checksum",
+ "description": "The expected state of a client's local database.",
+ "type": "object"
+ },
+ "ThreatEntrySet": {
+ "description": "A set of threats that should be added or removed from a client's local\ndatabase.",
+ "type": "object",
+ "properties": {
+ "riceHashes": {
+ "description": "The encoded 4-byte prefixes of SHA256-formatted entries, using a\nGolomb-Rice encoding. The hashes are converted to uint32, sorted in\nascending order, then delta encoded and stored as encoded_data.",
+ "$ref": "RiceDeltaEncoding"
+ },
+ "riceIndices": {
+ "description": "The encoded local, lexicographically-sorted list indices, using a\nGolomb-Rice encoding. Used for sending compressed removal indices. The\nremoval indices (uint32) are sorted in ascending order, then delta encoded\nand stored as encoded_data.",
+ "$ref": "RiceDeltaEncoding"
+ },
+ "compressionType": {
+ "enumDescriptions": [
+ "Unknown.",
+ "Raw, uncompressed data.",
+ "Rice-Golomb encoded data."
+ ],
+ "enum": [
+ "COMPRESSION_TYPE_UNSPECIFIED",
+ "RAW",
+ "RICE"
+ ],
+ "description": "The compression type for the entries in this set.",
+ "type": "string"
+ },
+ "rawIndices": {
+ "description": "The raw removal indices for a local list.",
+ "$ref": "RawIndices"
+ },
+ "rawHashes": {
+ "description": "The raw SHA256-formatted entries.",
+ "$ref": "RawHashes"
+ }
+ },
+ "id": "ThreatEntrySet"
+ },
+ "FindFullHashesRequest": {
+ "description": "Request to return full hashes matched by the provided hash prefixes.",
+ "type": "object",
+ "properties": {
+ "clientStates": {
+ "description": "The current client states for each of the client's local threat lists.",
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "client": {
+ "$ref": "ClientInfo",
+ "description": "The client metadata."
+ },
+ "threatInfo": {
+ "$ref": "ThreatInfo",
+ "description": "The lists and hashes to be checked."
+ },
+ "apiClient": {
+ "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation.",
+ "$ref": "ClientInfo"
+ }
+ },
+ "id": "FindFullHashesRequest"
+ },
+ "ListUpdateRequest": {
+ "description": "A single list update request.",
+ "type": "object",
+ "properties": {
+ "state": {
+ "format": "byte",
+ "description": "The current state of the client for the requested list (the encrypted\nclient state that was received from the last successful list update).",
+ "type": "string"
+ },
+ "platformType": {
+ "enum": [
+ "PLATFORM_TYPE_UNSPECIFIED",
+ "WINDOWS",
+ "LINUX",
+ "ANDROID",
+ "OSX",
+ "IOS",
+ "ANY_PLATFORM",
+ "ALL_PLATFORMS",
+ "CHROME"
+ ],
+ "description": "The type of platform at risk by entries present in the list.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown platform.",
+ "Threat posed to Windows.",
+ "Threat posed to Linux.",
+ "Threat posed to Android.",
+ "Threat posed to OS X.",
+ "Threat posed to iOS.",
+ "Threat posed to at least one of the defined platforms.",
+ "Threat posed to all defined platforms.",
+ "Threat posed to Chrome."
+ ]
+ },
+ "constraints": {
+ "description": "The constraints associated with this request.",
+ "$ref": "Constraints"
+ },
+ "threatType": {
+ "enum": [
+ "THREAT_TYPE_UNSPECIFIED",
+ "MALWARE",
+ "SOCIAL_ENGINEERING",
+ "UNWANTED_SOFTWARE",
+ "POTENTIALLY_HARMFUL_APPLICATION",
+ "SOCIAL_ENGINEERING_INTERNAL",
+ "API_ABUSE",
+ "MALICIOUS_BINARY",
+ "CSD_WHITELIST",
+ "CSD_DOWNLOAD_WHITELIST",
+ "CLIENT_INCIDENT",
+ "CLIENT_INCIDENT_WHITELIST",
+ "APK_MALWARE_OFFLINE",
+ "SUBRESOURCE_FILTER"
+ ],
+ "description": "The type of threat posed by entries present in the list.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown.",
+ "Malware threat type.",
+ "Social engineering threat type.",
+ "Unwanted software threat type.",
+ "Potentially harmful application threat type.",
+ "Social engineering threat type for internal use.",
+ "API abuse threat type.",
+ "Malicious binary threat type.",
+ "Client side detection whitelist threat type.",
+ "Client side download detection whitelist threat type.",
+ "Client incident threat type.",
+ "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.",
+ "List used for offline APK checks in PAM.",
+ "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list."
+ ]
+ },
+ "threatEntryType": {
+ "enum": [
+ "THREAT_ENTRY_TYPE_UNSPECIFIED",
+ "URL",
+ "EXECUTABLE",
+ "IP_RANGE",
+ "CHROME_EXTENSION",
+ "FILENAME",
+ "CERT"
+ ],
+ "description": "The types of entries present in the list.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified.",
+ "A URL.",
+ "An executable program.",
+ "An IP range.",
+ "Chrome extension.",
+ "Filename.",
+ "CERT"
+ ]
+ }
+ },
+ "id": "ListUpdateRequest"
+ },
+ "FetchThreatListUpdatesRequest": {
+ "properties": {
+ "listUpdateRequests": {
+ "description": "The requested threat list updates.",
+ "items": {
+ "$ref": "ListUpdateRequest"
+ },
+ "type": "array"
+ },
+ "client": {
+ "description": "The client metadata.",
+ "$ref": "ClientInfo"
+ }
+ },
+ "id": "FetchThreatListUpdatesRequest",
+ "description": "Describes a Safe Browsing API update request. Clients can request updates for\nmultiple lists in a single request.\nNOTE: Field index 2 is unused.\nNEXT: 5",
+ "type": "object"
+ },
+ "ListUpdateResponse": {
+ "properties": {
+ "checksum": {
+ "$ref": "Checksum",
+ "description": "The expected SHA256 hash of the client state; that is, of the sorted list\nof all hashes present in the database after applying the provided update.\nIf the client state doesn't match the expected state, the client must\ndisregard this update and retry later."
+ },
+ "responseType": {
+ "enumDescriptions": [
+ "Unknown.",
+ "Partial updates are applied to the client's existing local database.",
+ "Full updates replace the client's entire local database. This means\nthat either the client was seriously out-of-date or the client is\nbelieved to be corrupt."
+ ],
+ "enum": [
+ "RESPONSE_TYPE_UNSPECIFIED",
+ "PARTIAL_UPDATE",
+ "FULL_UPDATE"
+ ],
+ "description": "The type of response. This may indicate that an action is required by the\nclient when the response is received.",
+ "type": "string"
+ },
+ "threatType": {
+ "enumDescriptions": [
+ "Unknown.",
+ "Malware threat type.",
+ "Social engineering threat type.",
+ "Unwanted software threat type.",
+ "Potentially harmful application threat type.",
+ "Social engineering threat type for internal use.",
+ "API abuse threat type.",
+ "Malicious binary threat type.",
+ "Client side detection whitelist threat type.",
+ "Client side download detection whitelist threat type.",
+ "Client incident threat type.",
+ "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.",
+ "List used for offline APK checks in PAM.",
+ "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list."
+ ],
+ "enum": [
+ "THREAT_TYPE_UNSPECIFIED",
+ "MALWARE",
+ "SOCIAL_ENGINEERING",
+ "UNWANTED_SOFTWARE",
+ "POTENTIALLY_HARMFUL_APPLICATION",
+ "SOCIAL_ENGINEERING_INTERNAL",
+ "API_ABUSE",
+ "MALICIOUS_BINARY",
+ "CSD_WHITELIST",
+ "CSD_DOWNLOAD_WHITELIST",
+ "CLIENT_INCIDENT",
+ "CLIENT_INCIDENT_WHITELIST",
+ "APK_MALWARE_OFFLINE",
+ "SUBRESOURCE_FILTER"
+ ],
+ "description": "The threat type for which data is returned.",
+ "type": "string"
+ },
+ "removals": {
+ "description": "A set of entries to remove from a local threat type's list. In practice,\nthis field is empty or contains exactly one ThreatEntrySet.",
+ "items": {
+ "$ref": "ThreatEntrySet"
+ },
+ "type": "array"
+ },
+ "newClientState": {
+ "format": "byte",
+ "description": "The new client state, in encrypted format. Opaque to clients.",
+ "type": "string"
+ },
+ "platformType": {
+ "enumDescriptions": [
+ "Unknown platform.",
+ "Threat posed to Windows.",
+ "Threat posed to Linux.",
+ "Threat posed to Android.",
+ "Threat posed to OS X.",
+ "Threat posed to iOS.",
+ "Threat posed to at least one of the defined platforms.",
+ "Threat posed to all defined platforms.",
+ "Threat posed to Chrome."
+ ],
+ "enum": [
+ "PLATFORM_TYPE_UNSPECIFIED",
+ "WINDOWS",
+ "LINUX",
+ "ANDROID",
+ "OSX",
+ "IOS",
+ "ANY_PLATFORM",
+ "ALL_PLATFORMS",
+ "CHROME"
+ ],
+ "description": "The platform type for which data is returned.",
+ "type": "string"
+ },
+ "threatEntryType": {
+ "enum": [
+ "THREAT_ENTRY_TYPE_UNSPECIFIED",
+ "URL",
+ "EXECUTABLE",
+ "IP_RANGE",
+ "CHROME_EXTENSION",
+ "FILENAME",
+ "CERT"
+ ],
+ "description": "The format of the threats.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified.",
+ "A URL.",
+ "An executable program.",
+ "An IP range.",
+ "Chrome extension.",
+ "Filename.",
+ "CERT"
+ ]
+ },
+ "additions": {
+ "description": "A set of entries to add to a local threat type's list. Repeated to allow\nfor a combination of compressed and raw data to be sent in a single\nresponse.",
+ "items": {
+ "$ref": "ThreatEntrySet"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListUpdateResponse",
+ "description": "An update to an individual list.",
+ "type": "object"
+ },
+ "Constraints": {
+ "properties": {
+ "supportedCompressions": {
+ "enumDescriptions": [
+ "Unknown.",
+ "Raw, uncompressed data.",
+ "Rice-Golomb encoded data."
+ ],
+ "description": "The compression types supported by the client.",
+ "items": {
+ "enum": [
+ "COMPRESSION_TYPE_UNSPECIFIED",
+ "RAW",
+ "RICE"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "maxUpdateEntries": {
+ "format": "int32",
+ "description": "The maximum size in number of entries. The update will not contain more\nentries than this value. This should be a power of 2 between 2**10 and\n2**20. If zero, no update size limit is set.",
+ "type": "integer"
+ },
+ "region": {
+ "description": "Requests the list for a specific geographic location. If not set the\nserver may pick that value based on the user's IP address. Expects ISO\n3166-1 alpha-2 format.",
+ "type": "string"
+ },
+ "maxDatabaseEntries": {
+ "format": "int32",
+ "description": "Sets the maximum number of entries that the client is willing to have\nin the local database. This should be a power of 2 between 2**10 and\n2**20. If zero, no database size limit is set.",
+ "type": "integer"
+ }
+ },
+ "id": "Constraints",
+ "description": "The constraints for this update.",
+ "type": "object"
+ },
+ "ThreatMatch": {
+ "properties": {
+ "threatEntryType": {
+ "enumDescriptions": [
+ "Unspecified.",
+ "A URL.",
+ "An executable program.",
+ "An IP range.",
+ "Chrome extension.",
+ "Filename.",
+ "CERT"
+ ],
+ "enum": [
+ "THREAT_ENTRY_TYPE_UNSPECIFIED",
+ "URL",
+ "EXECUTABLE",
+ "IP_RANGE",
+ "CHROME_EXTENSION",
+ "FILENAME",
+ "CERT"
+ ],
+ "description": "The threat entry type matching this threat.",
+ "type": "string"
+ },
+ "cacheDuration": {
+ "format": "google-duration",
+ "description": "The cache lifetime for the returned match. Clients must not cache this\nresponse for more than this duration to avoid false positives.",
+ "type": "string"
+ },
+ "threatType": {
+ "enum": [
+ "THREAT_TYPE_UNSPECIFIED",
+ "MALWARE",
+ "SOCIAL_ENGINEERING",
+ "UNWANTED_SOFTWARE",
+ "POTENTIALLY_HARMFUL_APPLICATION",
+ "SOCIAL_ENGINEERING_INTERNAL",
+ "API_ABUSE",
+ "MALICIOUS_BINARY",
+ "CSD_WHITELIST",
+ "CSD_DOWNLOAD_WHITELIST",
+ "CLIENT_INCIDENT",
+ "CLIENT_INCIDENT_WHITELIST",
+ "APK_MALWARE_OFFLINE",
+ "SUBRESOURCE_FILTER"
+ ],
+ "description": "The threat type matching this threat.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown.",
+ "Malware threat type.",
+ "Social engineering threat type.",
+ "Unwanted software threat type.",
+ "Potentially harmful application threat type.",
+ "Social engineering threat type for internal use.",
+ "API abuse threat type.",
+ "Malicious binary threat type.",
+ "Client side detection whitelist threat type.",
+ "Client side download detection whitelist threat type.",
+ "Client incident threat type.",
+ "Whitelist used when detecting client incident threats.\nThis enum was never launched and should be re-used for the next list.",
+ "List used for offline APK checks in PAM.",
+ "Patterns to be used for activating the subresource filter. Interstitial\nwill not be shown for patterns from this list."
+ ]
+ },
+ "threatEntryMetadata": {
+ "description": "Optional metadata associated with this threat.",
+ "$ref": "ThreatEntryMetadata"
+ },
+ "threat": {
+ "description": "The threat matching this threat.",
+ "$ref": "ThreatEntry"
+ },
+ "platformType": {
+ "enumDescriptions": [
+ "Unknown platform.",
+ "Threat posed to Windows.",
+ "Threat posed to Linux.",
+ "Threat posed to Android.",
+ "Threat posed to OS X.",
+ "Threat posed to iOS.",
+ "Threat posed to at least one of the defined platforms.",
+ "Threat posed to all defined platforms.",
+ "Threat posed to Chrome."
+ ],
+ "enum": [
+ "PLATFORM_TYPE_UNSPECIFIED",
+ "WINDOWS",
+ "LINUX",
+ "ANDROID",
+ "OSX",
+ "IOS",
+ "ANY_PLATFORM",
+ "ALL_PLATFORMS",
+ "CHROME"
+ ],
+ "description": "The platform type matching this threat.",
+ "type": "string"
+ }
+ },
+ "id": "ThreatMatch",
+ "description": "A match when checking a threat entry in the Safe Browsing threat lists.",
+ "type": "object"
+ },
+ "RiceDeltaEncoding": {
+ "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or\ncompressed removal indices.",
+ "type": "object",
+ "properties": {
+ "riceParameter": {
+ "format": "int32",
+ "description": "The Golomb-Rice parameter, which is a number between 2 and 28. This field\nis missing (that is, zero) if `num_entries` is zero.",
+ "type": "integer"
+ },
+ "encodedData": {
+ "format": "byte",
+ "description": "The encoded deltas that are encoded using the Golomb-Rice coder.",
+ "type": "string"
+ },
+ "firstValue": {
+ "format": "int64",
+ "description": "The offset of the first entry in the encoded data, or, if only a single\ninteger was encoded, that single integer's value.",
+ "type": "string"
+ },
+ "numEntries": {
+ "format": "int32",
+ "description": "The number of entries that are delta encoded in the encoded data. If only a\nsingle integer was encoded, this will be zero and the single value will be\nstored in `first_value`.",
+ "type": "integer"
+ }
+ },
+ "id": "RiceDeltaEncoding"
+ },
+ "ListThreatListsResponse": {
+ "properties": {
+ "threatLists": {
+ "description": "The lists available for download by the client.",
+ "items": {
+ "$ref": "ThreatListDescriptor"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListThreatListsResponse",
+ "type": "object"
+ },
+ "FindThreatMatchesResponse": {
+ "type": "object",
+ "properties": {
+ "matches": {
+ "description": "The threat list matches.",
+ "items": {
+ "$ref": "ThreatMatch"
+ },
+ "type": "array"
+ }
+ },
+ "id": "FindThreatMatchesResponse"
+ },
+ "ThreatEntry": {
+ "description": "An individual threat; for example, a malicious URL or its hash\nrepresentation. Only one of these fields should be set.",
+ "type": "object",
+ "properties": {
+ "digest": {
+ "format": "byte",
+ "description": "The digest of an executable in SHA256 format. The API supports both\nbinary and hex digests. For JSON requests, digests are base64-encoded.",
+ "type": "string"
+ },
+ "hash": {
+ "format": "byte",
+ "description": "A hash prefix, consisting of the most significant 4-32 bytes of a SHA256\nhash. This field is in binary format. For JSON requests, hashes are\nbase64-encoded.",
+ "type": "string"
+ },
+ "url": {
+ "description": "A URL.",
+ "type": "string"
+ }
+ },
+ "id": "ThreatEntry"
}
},
+ "protocol": "rest",
"icons": {
"x32": "http://www.google.com/images/icons/product/search-32.gif",
"x16": "http://www.google.com/images/icons/product/search-16.gif"
},
- "protocol": "rest",
"version": "v4",
"baseUrl": "https://safebrowsing.googleapis.com/",
- "kind": "discovery#restDescription",
- "description": "The Safe Browsing API is an experimental API that allows client applications to check URLs against Google's constantly-updated blacklists of suspected phishing and malware pages. Your client application can use the API to download an encrypted table for local, client-side lookups of URLs.",
"servicePath": "",
- "rootUrl": "https://safebrowsing.googleapis.com/",
- "basePath": "",
- "ownerDomain": "google.com",
- "name": "safebrowsing"
+ "description": "Enables client applications to check web resources (most commonly URLs) against Google-generated lists of unsafe web resources.",
+ "kind": "discovery#restDescription"
}
diff --git a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go
index a34a69b..51c6c50 100644
--- a/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go
+++ b/vendor/google.golang.org/api/safebrowsing/v4/safebrowsing-gen.go
@@ -554,7 +554,21 @@ type ListUpdateRequest struct {
// "UNWANTED_SOFTWARE" - Unwanted software threat type.
// "POTENTIALLY_HARMFUL_APPLICATION" - Potentially harmful application
// threat type.
+ // "SOCIAL_ENGINEERING_INTERNAL" - Social engineering threat type for
+ // internal use.
+ // "API_ABUSE" - API abuse threat type.
// "MALICIOUS_BINARY" - Malicious binary threat type.
+ // "CSD_WHITELIST" - Client side detection whitelist threat type.
+ // "CSD_DOWNLOAD_WHITELIST" - Client side download detection whitelist
+ // threat type.
+ // "CLIENT_INCIDENT" - Client incident threat type.
+ // "CLIENT_INCIDENT_WHITELIST" - Whitelist used when detecting client
+ // incident threats.
+ // This enum was never launched and should be re-used for the next list.
+ // "APK_MALWARE_OFFLINE" - List used for offline APK checks in PAM.
+ // "SUBRESOURCE_FILTER" - Patterns to be used for activating the
+ // subresource filter. Interstitial
+ // will not be shown for patterns from this list.
ThreatType string `json:"threatType,omitempty"`
// ForceSendFields is a list of field names (e.g. "Constraints") to
@@ -658,7 +672,21 @@ type ListUpdateResponse struct {
// "UNWANTED_SOFTWARE" - Unwanted software threat type.
// "POTENTIALLY_HARMFUL_APPLICATION" - Potentially harmful application
// threat type.
+ // "SOCIAL_ENGINEERING_INTERNAL" - Social engineering threat type for
+ // internal use.
+ // "API_ABUSE" - API abuse threat type.
// "MALICIOUS_BINARY" - Malicious binary threat type.
+ // "CSD_WHITELIST" - Client side detection whitelist threat type.
+ // "CSD_DOWNLOAD_WHITELIST" - Client side download detection whitelist
+ // threat type.
+ // "CLIENT_INCIDENT" - Client incident threat type.
+ // "CLIENT_INCIDENT_WHITELIST" - Whitelist used when detecting client
+ // incident threats.
+ // This enum was never launched and should be re-used for the next list.
+ // "APK_MALWARE_OFFLINE" - List used for offline APK checks in PAM.
+ // "SUBRESOURCE_FILTER" - Patterns to be used for activating the
+ // subresource filter. Interstitial
+ // will not be shown for patterns from this list.
ThreatType string `json:"threatType,omitempty"`
// ForceSendFields is a list of field names (e.g. "Additions") to
@@ -1017,7 +1045,21 @@ type ThreatInfo struct {
// "UNWANTED_SOFTWARE" - Unwanted software threat type.
// "POTENTIALLY_HARMFUL_APPLICATION" - Potentially harmful application
// threat type.
+ // "SOCIAL_ENGINEERING_INTERNAL" - Social engineering threat type for
+ // internal use.
+ // "API_ABUSE" - API abuse threat type.
// "MALICIOUS_BINARY" - Malicious binary threat type.
+ // "CSD_WHITELIST" - Client side detection whitelist threat type.
+ // "CSD_DOWNLOAD_WHITELIST" - Client side download detection whitelist
+ // threat type.
+ // "CLIENT_INCIDENT" - Client incident threat type.
+ // "CLIENT_INCIDENT_WHITELIST" - Whitelist used when detecting client
+ // incident threats.
+ // This enum was never launched and should be re-used for the next list.
+ // "APK_MALWARE_OFFLINE" - List used for offline APK checks in PAM.
+ // "SUBRESOURCE_FILTER" - Patterns to be used for activating the
+ // subresource filter. Interstitial
+ // will not be shown for patterns from this list.
ThreatTypes []string `json:"threatTypes,omitempty"`
// ForceSendFields is a list of field names (e.g. "PlatformTypes") to
@@ -1085,7 +1127,21 @@ type ThreatListDescriptor struct {
// "UNWANTED_SOFTWARE" - Unwanted software threat type.
// "POTENTIALLY_HARMFUL_APPLICATION" - Potentially harmful application
// threat type.
+ // "SOCIAL_ENGINEERING_INTERNAL" - Social engineering threat type for
+ // internal use.
+ // "API_ABUSE" - API abuse threat type.
// "MALICIOUS_BINARY" - Malicious binary threat type.
+ // "CSD_WHITELIST" - Client side detection whitelist threat type.
+ // "CSD_DOWNLOAD_WHITELIST" - Client side download detection whitelist
+ // threat type.
+ // "CLIENT_INCIDENT" - Client incident threat type.
+ // "CLIENT_INCIDENT_WHITELIST" - Whitelist used when detecting client
+ // incident threats.
+ // This enum was never launched and should be re-used for the next list.
+ // "APK_MALWARE_OFFLINE" - List used for offline APK checks in PAM.
+ // "SUBRESOURCE_FILTER" - Patterns to be used for activating the
+ // subresource filter. Interstitial
+ // will not be shown for patterns from this list.
ThreatType string `json:"threatType,omitempty"`
// ForceSendFields is a list of field names (e.g. "PlatformType") to
@@ -1161,7 +1217,21 @@ type ThreatMatch struct {
// "UNWANTED_SOFTWARE" - Unwanted software threat type.
// "POTENTIALLY_HARMFUL_APPLICATION" - Potentially harmful application
// threat type.
+ // "SOCIAL_ENGINEERING_INTERNAL" - Social engineering threat type for
+ // internal use.
+ // "API_ABUSE" - API abuse threat type.
// "MALICIOUS_BINARY" - Malicious binary threat type.
+ // "CSD_WHITELIST" - Client side detection whitelist threat type.
+ // "CSD_DOWNLOAD_WHITELIST" - Client side download detection whitelist
+ // threat type.
+ // "CLIENT_INCIDENT" - Client incident threat type.
+ // "CLIENT_INCIDENT_WHITELIST" - Whitelist used when detecting client
+ // incident threats.
+ // This enum was never launched and should be re-used for the next list.
+ // "APK_MALWARE_OFFLINE" - List used for offline APK checks in PAM.
+ // "SUBRESOURCE_FILTER" - Patterns to be used for activating the
+ // subresource filter. Interstitial
+ // will not be shown for patterns from this list.
ThreatType string `json:"threatType,omitempty"`
// ForceSendFields is a list of field names (e.g. "CacheDuration") to
diff --git a/vendor/google.golang.org/api/script/v1/script-api.json b/vendor/google.golang.org/api/script/v1/script-api.json
index 3cce4ec..6e0d056 100644
--- a/vendor/google.golang.org/api/script/v1/script-api.json
+++ b/vendor/google.golang.org/api/script/v1/script-api.json
@@ -1,69 +1,19 @@
{
- "auth": {
- "oauth2": {
- "scopes": {
- "https://www.googleapis.com/auth/groups": {
- "description": "View and manage your Google Groups"
- },
- "https://www.googleapis.com/auth/forms.currentonly": {
- "description": "View and manage forms that this application has been installed in"
- },
- "https://www.googleapis.com/auth/drive": {
- "description": "View and manage the files in your Google Drive"
- },
- "https://www.googleapis.com/auth/spreadsheets": {
- "description": "View and manage your spreadsheets in Google Drive"
- },
- "https://mail.google.com/": {
- "description": "Read, send, delete, and manage your email"
- },
- "https://www.googleapis.com/auth/admin.directory.user": {
- "description": "View and manage the provisioning of users on your domain"
- },
- "https://www.googleapis.com/auth/admin.directory.group": {
- "description": "View and manage the provisioning of groups on your domain"
- },
- "https://www.googleapis.com/auth/forms": {
- "description": "View and manage your forms in Google Drive"
- },
- "https://www.google.com/m8/feeds": {
- "description": "Manage your contacts"
- },
- "https://www.googleapis.com/auth/userinfo.email": {
- "description": "View your email address"
- },
- "https://www.google.com/calendar/feeds": {
- "description": "Manage your calendars"
- }
- }
- }
- },
- "servicePath": "",
- "description": "Executes Google Apps Script projects.",
- "kind": "discovery#restDescription",
- "rootUrl": "https://script.googleapis.com/",
- "basePath": "",
- "ownerDomain": "google.com",
- "name": "script",
- "batchPath": "batch",
- "revision": "20170621",
- "documentationLink": "https://developers.google.com/apps-script/execution/rest/v1/scripts/run",
- "id": "script:v1",
- "title": "Google Apps Script Execution API",
- "discoveryVersion": "v1",
- "ownerName": "Google",
"resources": {
"scripts": {
"methods": {
"run": {
- "parameters": {
- "scriptId": {
- "location": "path",
- "description": "The project key of the script to be executed. To find the project key, open\nthe project in the script editor and select **File \u003e Project properties**.",
- "type": "string",
- "required": true
- }
+ "request": {
+ "$ref": "ExecutionRequest"
},
+ "description": "Runs a function in an Apps Script project. The project must be deployed\nfor use with the Apps Script Execution API.\n\nThis method requires authorization with an OAuth 2.0 token that includes at\nleast one of the scopes listed in the [Authorization](#authorization)\nsection; script projects that do not require authorization cannot be\nexecuted through this API. To find the correct scopes to include in the\nauthentication token, open the project in the script editor, then select\n**File \u003e Project properties** and click the **Scopes** tab.",
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "scriptId"
+ ],
+ "httpMethod": "POST",
"scopes": [
"https://mail.google.com/",
"https://www.google.com/calendar/feeds",
@@ -77,27 +27,62 @@
"https://www.googleapis.com/auth/spreadsheets",
"https://www.googleapis.com/auth/userinfo.email"
],
+ "parameters": {
+ "scriptId": {
+ "type": "string",
+ "required": true,
+ "location": "path",
+ "description": "The script ID of the script to be executed. To find the script ID, open\nthe project in the script editor and select **File \u003e Project properties**."
+ }
+ },
"flatPath": "v1/scripts/{scriptId}:run",
"id": "script.scripts.run",
- "path": "v1/scripts/{scriptId}:run",
- "description": "Runs a function in an Apps Script project. The project must be deployed\nfor use with the Apps Script Execution API.\n\nThis method requires authorization with an OAuth 2.0 token that includes at\nleast one of the scopes listed in the [Authorization](#authorization)\nsection; script projects that do not require authorization cannot be\nexecuted through this API. To find the correct scopes to include in the\nauthentication token, open the project in the script editor, then select\n**File \u003e Project properties** and click the **Scopes** tab.",
- "request": {
- "$ref": "ExecutionRequest"
- },
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "scriptId"
- ],
- "httpMethod": "POST"
+ "path": "v1/scripts/{scriptId}:run"
}
}
}
},
"parameters": {
- "alt": {
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "prettyPrint": {
"location": "query",
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "$.xgafv": {
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string"
+ },
+ "callback": {
+ "type": "string",
+ "location": "query",
+ "description": "JSONP"
+ },
+ "alt": {
"description": "Data format for response.",
"default": "json",
"enum": [
@@ -110,17 +95,18 @@
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
- ]
+ ],
+ "location": "query"
},
"access_token": {
+ "type": "string",
"location": "query",
- "description": "OAuth access token.",
- "type": "string"
+ "description": "OAuth access token."
},
"key": {
+ "location": "query",
"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.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"quotaUser": {
"location": "query",
@@ -133,119 +119,31 @@
"type": "boolean",
"location": "query"
},
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
"bearer_token": {
"location": "query",
"description": "OAuth bearer token.",
"type": "string"
},
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "oauth_token": {
+ "description": "OAuth 2.0 token for the current user.",
"type": "string",
"location": "query"
- },
- "prettyPrint": {
- "location": "query",
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean"
- },
- "uploadType": {
- "type": "string",
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
- },
- "fields": {
- "location": "query",
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string"
- },
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
- },
- "$.xgafv": {
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format."
}
},
"schemas": {
- "JoinAsyncResponse": {
- "id": "JoinAsyncResponse",
- "description": "An object that provides the return value for the JoinAsync method.",
- "type": "object",
- "properties": {
- "results": {
- "additionalProperties": {
- "$ref": "Operation"
- },
- "description": "The return values for each script function, in a map of operation resource\nnames to the Operation containing the result of the process. The response\nwill contain either an error or the result of the script function.",
- "type": "object"
- }
- }
- },
- "Operation": {
- "description": "The response will not arrive until the function finishes executing. The maximum runtime is listed in the guide to [limitations in Apps Script](https://developers.google.com/apps-script/guides/services/quotas#current_limitations).\n\u003cp\u003eIf the script function returns successfully, the `response` field will contain an `ExecutionResponse` object with the function's return value in the object's `result` field.\u003c/p\u003e\n\u003cp\u003eIf the script function (or Apps Script itself) throws an exception, the `error` field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error.\u003c/p\u003e\n\u003cp\u003eIf the `run` call itself fails (for example, because of a malformed request or an authorization error), the method will return an HTTP response code in the 4XX range with a different format for the response body. Client libraries will automatically convert a 4XX response into an exception class.\u003c/p\u003e",
- "type": "object",
- "properties": {
- "response": {
- "description": "If the script function returns successfully, this field will contain an `ExecutionResponse` object with the function's return value as the object's `result` field.",
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "name": {
- "description": "This field is not used.",
- "type": "string"
- },
- "error": {
- "$ref": "Status",
- "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, this field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error."
- },
- "metadata": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "This field is not used.",
- "type": "object"
- },
- "done": {
- "description": "This field is not used.",
- "type": "boolean"
- }
- },
- "id": "Operation"
- },
"ScriptStackTraceElement": {
"id": "ScriptStackTraceElement",
"description": "A stack trace through the script that shows where the execution failed.",
"type": "object",
"properties": {
- "function": {
- "description": "The name of the function that failed.",
- "type": "string"
- },
"lineNumber": {
"format": "int32",
"description": "The line number where the script failed.",
"type": "integer"
+ },
+ "function": {
+ "description": "The name of the function that failed.",
+ "type": "string"
}
}
},
@@ -272,14 +170,10 @@
"id": "ExecutionError"
},
"Status": {
+ "id": "Status",
"description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, the response body's `error` field will contain this `Status` object.",
"type": "object",
"properties": {
- "code": {
- "format": "int32",
- "description": "The status code. For this API, this value will always be 3, corresponding to an INVALID_ARGUMENT error.",
- "type": "integer"
- },
"message": {
"description": "A developer-facing error message, which is in English. Any user-facing error message is localized and sent in the [`google.rpc.Status.details`](google.rpc.Status.details) field, or localized by the client.",
"type": "string"
@@ -287,83 +181,148 @@
"details": {
"description": "An array that contains a single `ExecutionError` object that provides information about the nature of the error.",
"items": {
- "type": "object",
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
- }
+ },
+ "type": "object"
},
"type": "array"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code. For this API, this value will always be 3, corresponding to an \u003ccode\u003eINVALID_ARGUMENT\u003c/code\u003e error.",
+ "type": "integer"
}
- },
- "id": "Status"
+ }
},
"ExecutionRequest": {
"description": "A request to run the function in a script. The script is identified by the\nspecified `script_id`. Executing a function on a script returns results\nbased on the implementation of the script.",
"type": "object",
"properties": {
+ "sessionState": {
+ "description": "For Android add-ons only. An ID that represents the user's current session\nin the Android app for Google Docs or Sheets, included as extra data in the\n[`Intent`](https://developer.android.com/guide/components/intents-filters.html)\nthat launches the add-on. When an Android add-on is run with a session\nstate, it gains the privileges of a\n[bound](https://developers.google.com/apps-script/guides/bound) script —\nthat is, it can access information like the user's current cursor position\n(in Docs) or selected cell (in Sheets). To retrieve the state, call\n`Intent.getStringExtra(\"com.google.android.apps.docs.addons.SessionState\")`.\nOptional.",
+ "type": "string"
+ },
+ "devMode": {
+ "type": "boolean",
+ "description": "If `true` and the user is an owner of the script, the script runs at the\nmost recently saved version rather than the version deployed for use with\nthe Execution API. Optional; default is `false`."
+ },
+ "function": {
+ "description": "The name of the function to execute in the given script. The name does not\ninclude parentheses or parameters.",
+ "type": "string"
+ },
"parameters": {
"description": "The parameters to be passed to the function being executed. The object type\nfor each parameter should match the expected type in Apps Script.\nParameters cannot be Apps Script-specific object types (such as a\n`Document` or a `Calendar`); they can only be primitive types such as\n`string`, `number`, `array`, `object`, or `boolean`. Optional.",
"items": {
"type": "any"
},
"type": "array"
- },
- "sessionState": {
- "description": "For Android add-ons only. An ID that represents the user's current session\nin the Android app for Google Docs or Sheets, included as extra data in the\n[`Intent`](https://developer.android.com/guide/components/intents-filters.html)\nthat launches the add-on. When an Android add-on is run with a session\nstate, it gains the privileges of a\n[bound](https://developers.google.com/apps-script/guides/bound) script —\nthat is, it can access information like the user's current cursor position\n(in Docs) or selected cell (in Sheets). To retrieve the state, call\n`Intent.getStringExtra(\"com.google.android.apps.docs.addons.SessionState\")`.\nOptional.",
- "type": "string"
- },
- "devMode": {
- "description": "If `true` and the user is an owner of the script, the script runs at the\nmost recently saved version rather than the version deployed for use with\nthe Execution API. Optional; default is `false`.",
- "type": "boolean"
- },
- "function": {
- "description": "The name of the function to execute in the given script. The name does not\ninclude parentheses or parameters.",
- "type": "string"
}
},
"id": "ExecutionRequest"
},
- "JoinAsyncRequest": {
- "description": "A request to retrieve the results from a collection of requests,\nspecified by the operation resource names.",
- "type": "object",
- "properties": {
- "scriptId": {
- "description": "The script id which specifies the script which all processes in the names\nfield must be from.",
- "type": "string"
- },
- "names": {
- "description": "List of operation resource names that we want to join,\nas returned from a call to RunAsync.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "timeout": {
- "format": "google-duration",
- "description": "Timeout for information retrieval in milliseconds.",
- "type": "string"
- }
- },
- "id": "JoinAsyncRequest"
- },
"ExecutionResponse": {
"description": "An object that provides the return value of a function executed through the\nApps Script Execution API. If a\n`run` call succeeds and the\nscript function returns successfully, the response body's\n`response` field contains this\n`ExecutionResponse` object.",
"type": "object",
"properties": {
"result": {
- "type": "any",
- "description": "The return value of the script function. The type matches the object type\nreturned in Apps Script. Functions called through the Execution API cannot\nreturn Apps Script-specific objects (such as a `Document` or a `Calendar`);\nthey can only return primitive types such as a `string`, `number`, `array`,\n`object`, or `boolean`."
+ "description": "The return value of the script function. The type matches the object type\nreturned in Apps Script. Functions called through the Execution API cannot\nreturn Apps Script-specific objects (such as a `Document` or a `Calendar`);\nthey can only return primitive types such as a `string`, `number`, `array`,\n`object`, or `boolean`.",
+ "type": "any"
}
},
"id": "ExecutionResponse"
+ },
+ "Operation": {
+ "description": "The response will not arrive until the function finishes executing. The maximum runtime is listed in the guide to [limitations in Apps Script](https://developers.google.com/apps-script/guides/services/quotas#current_limitations).\n\u003cp\u003eIf the script function returns successfully, the `response` field will contain an `ExecutionResponse` object with the function's return value in the object's `result` field.\u003c/p\u003e\n\u003cp\u003eIf the script function (or Apps Script itself) throws an exception, the `error` field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error.\u003c/p\u003e\n\u003cp\u003eIf the `run` call itself fails (for example, because of a malformed request or an authorization error), the method will return an HTTP response code in the 4XX range with a different format for the response body. Client libraries will automatically convert a 4XX response into an exception class.\u003c/p\u003e",
+ "type": "object",
+ "properties": {
+ "response": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "If the script function returns successfully, this field will contain an `ExecutionResponse` object with the function's return value as the object's `result` field.",
+ "type": "object"
+ },
+ "error": {
+ "$ref": "Status",
+ "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, this field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error."
+ },
+ "metadata": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "This field is not used.",
+ "type": "object"
+ },
+ "done": {
+ "description": "This field is only used with asynchronous executions and indicates whether or not the script execution has completed. A completed execution has a populated response field containing the `ExecutionResponse` from function that was executed.",
+ "type": "boolean"
+ }
+ },
+ "id": "Operation"
}
},
- "protocol": "rest",
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
+ "protocol": "rest",
"version": "v1",
- "baseUrl": "https://script.googleapis.com/"
+ "baseUrl": "https://script.googleapis.com/",
+ "auth": {
+ "oauth2": {
+ "scopes": {
+ "https://www.googleapis.com/auth/drive": {
+ "description": "View and manage the files in your Google Drive"
+ },
+ "https://www.googleapis.com/auth/spreadsheets": {
+ "description": "View and manage your spreadsheets in Google Drive"
+ },
+ "https://mail.google.com/": {
+ "description": "Read, send, delete, and manage your email"
+ },
+ "https://www.googleapis.com/auth/admin.directory.group": {
+ "description": "View and manage the provisioning of groups on your domain"
+ },
+ "https://www.googleapis.com/auth/admin.directory.user": {
+ "description": "View and manage the provisioning of users on your domain"
+ },
+ "https://www.googleapis.com/auth/forms": {
+ "description": "View and manage your forms in Google Drive"
+ },
+ "https://www.google.com/m8/feeds": {
+ "description": "Manage your contacts"
+ },
+ "https://www.googleapis.com/auth/userinfo.email": {
+ "description": "View your email address"
+ },
+ "https://www.google.com/calendar/feeds": {
+ "description": "Manage your calendars"
+ },
+ "https://www.googleapis.com/auth/groups": {
+ "description": "View and manage your Google Groups"
+ },
+ "https://www.googleapis.com/auth/forms.currentonly": {
+ "description": "View and manage forms that this application has been installed in"
+ }
+ }
+ }
+ },
+ "servicePath": "",
+ "description": "Executes functions in Google Apps Script projects.",
+ "kind": "discovery#restDescription",
+ "rootUrl": "https://script.googleapis.com/",
+ "basePath": "",
+ "ownerDomain": "google.com",
+ "name": "script",
+ "batchPath": "batch",
+ "id": "script:v1",
+ "documentationLink": "https://developers.google.com/apps-script/execution/rest/v1/scripts/run",
+ "revision": "20170829",
+ "title": "Google Apps Script Execution API",
+ "discoveryVersion": "v1",
+ "ownerName": "Google"
}
diff --git a/vendor/google.golang.org/api/script/v1/script-gen.go b/vendor/google.golang.org/api/script/v1/script-gen.go
index ccd1f27..cdbfdf9 100644
--- a/vendor/google.golang.org/api/script/v1/script-gen.go
+++ b/vendor/google.golang.org/api/script/v1/script-gen.go
@@ -279,78 +279,6 @@ func (s *ExecutionResponse) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// JoinAsyncRequest: A request to retrieve the results from a collection
-// of requests,
-// specified by the operation resource names.
-type JoinAsyncRequest struct {
- // Names: List of operation resource names that we want to join,
- // as returned from a call to RunAsync.
- Names []string `json:"names,omitempty"`
-
- // ScriptId: The script id which specifies the script which all
- // processes in the names
- // field must be from.
- ScriptId string `json:"scriptId,omitempty"`
-
- // Timeout: Timeout for information retrieval in milliseconds.
- Timeout string `json:"timeout,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Names") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Names") to include in API
- // requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *JoinAsyncRequest) MarshalJSON() ([]byte, error) {
- type noMethod JoinAsyncRequest
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
-// JoinAsyncResponse: An object that provides the return value for the
-// JoinAsync method.
-type JoinAsyncResponse struct {
- // Results: The return values for each script function, in a map of
- // operation resource
- // names to the Operation containing the result of the process. The
- // response
- // will contain either an error or the result of the script function.
- Results map[string]Operation `json:"results,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Results") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
- ForceSendFields []string `json:"-"`
-
- // NullFields is a list of field names (e.g. "Results") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
- NullFields []string `json:"-"`
-}
-
-func (s *JoinAsyncResponse) MarshalJSON() ([]byte, error) {
- type noMethod JoinAsyncResponse
- raw := noMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
-}
-
// Operation: The response will not arrive until the function finishes
// executing. The maximum runtime is listed in the guide to [limitations
// in Apps
@@ -370,7 +298,10 @@ func (s *JoinAsyncResponse) MarshalJSON() ([]byte, error) {
// the response body. Client libraries will automatically convert a 4XX
// response into an exception class.
type Operation struct {
- // Done: This field is not used.
+ // Done: This field is only used with asynchronous executions and
+ // indicates whether or not the script execution has completed. A
+ // completed execution has a populated response field containing the
+ // `ExecutionResponse` from function that was executed.
Done bool `json:"done,omitempty"`
// Error: If a `run` call succeeds but the script function (or Apps
@@ -383,9 +314,6 @@ type Operation struct {
// Metadata: This field is not used.
Metadata googleapi.RawMessage `json:"metadata,omitempty"`
- // Name: This field is not used.
- Name string `json:"name,omitempty"`
-
// Response: If the script function returns successfully, this field
// will contain an `ExecutionResponse` object with the function's return
// value as the object's `result` field.
@@ -455,7 +383,7 @@ func (s *ScriptStackTraceElement) MarshalJSON() ([]byte, error) {
// will contain this `Status` object.
type Status struct {
// Code: The status code. For this API, this value will always be 3,
- // corresponding to an INVALID_ARGUMENT error.
+ // corresponding to an INVALID_ARGUMENT
error.
Code int64 `json:"code,omitempty"`
// Details: An array that contains a single `ExecutionError` object that
@@ -619,7 +547,7 @@ func (c *ScriptsRunCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
// ],
// "parameters": {
// "scriptId": {
- // "description": "The project key of the script to be executed. To find the project key, open\nthe project in the script editor and select **File \u003e Project properties**.",
+ // "description": "The script ID of the script to be executed. To find the script ID, open\nthe project in the script editor and select **File \u003e Project properties**.",
// "location": "path",
// "required": true,
// "type": "string"
diff --git a/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json b/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json
index 90f8521..37e685b 100644
--- a/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json
+++ b/vendor/google.golang.org/api/searchconsole/v1/searchconsole-api.json
@@ -1,30 +1,33 @@
{
+ "ownerDomain": "google.com",
+ "name": "searchconsole",
+ "batchPath": "batch",
+ "revision": "20170828",
"documentationLink": "https://developers.google.com/webmaster-tools/search-console-api/",
- "revision": "20170704",
"id": "searchconsole:v1",
"title": "Google Search Console URL Testing Tools API",
- "discoveryVersion": "v1",
"ownerName": "Google",
- "version_module": "True",
+ "discoveryVersion": "v1",
+ "version_module": true,
"resources": {
"urlTestingTools": {
"resources": {
"mobileFriendlyTest": {
"methods": {
"run": {
+ "response": {
+ "$ref": "RunMobileFriendlyTestResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {},
+ "flatPath": "v1/urlTestingTools/mobileFriendlyTest:run",
"path": "v1/urlTestingTools/mobileFriendlyTest:run",
"id": "searchconsole.urlTestingTools.mobileFriendlyTest.run",
"request": {
"$ref": "RunMobileFriendlyTestRequest"
},
- "description": "Runs Mobile-Friendly Test for a given URL.",
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "RunMobileFriendlyTestResponse"
- },
- "parameters": {},
- "flatPath": "v1/urlTestingTools/mobileFriendlyTest:run"
+ "description": "Runs Mobile-Friendly Test for a given URL."
}
}
}
@@ -32,24 +35,59 @@
}
},
"parameters": {
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
"type": "string",
"location": "query"
},
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "pp": {
+ "location": "query",
+ "description": "Pretty-print response.",
+ "type": "boolean",
+ "default": "true"
+ },
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ },
+ "upload_protocol": {
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string"
+ },
+ "prettyPrint": {
+ "description": "Returns response with indentations and line breaks.",
+ "type": "boolean",
+ "default": "true",
+ "location": "query"
+ },
"uploadType": {
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string",
"location": "query"
},
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
},
"$.xgafv": {
- "description": "V1 error format.",
- "type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
@@ -58,9 +96,21 @@
"enum": [
"1",
"2"
- ]
+ ],
+ "description": "V1 error format.",
+ "type": "string"
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
+ "type": "string"
},
"alt": {
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
"type": "string",
"enumDescriptions": [
"Responses with Content-Type of application/json",
@@ -69,140 +119,10 @@
],
"location": "query",
"description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ]
- },
- "access_token": {
- "description": "OAuth access token.",
- "type": "string",
- "location": "query"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "quotaUser": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "pp": {
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
- },
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean",
- "location": "query"
+ "default": "json"
}
},
"schemas": {
- "MobileFriendlyIssue": {
- "properties": {
- "rule": {
- "description": "Rule violated.",
- "type": "string",
- "enumDescriptions": [
- "Unknown rule. Sorry, we don't have any description for the rule that was\nbroken.",
- "Plugins incompatible with mobile devices are being used. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#flash_usage).",
- "Viewsport is not specified using the meta viewport tag. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#viewport_not_configured).",
- "Viewport defined to a fixed width. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#fixed-width_viewport).",
- "Content not sized to viewport. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#content_not_sized_to_viewport).",
- "Font size is too small for easy reading on a small screen. [Learn More]\n(https://support.google.com/webmasters/answer/6352293#small_font_size).",
- "Touch elements are too close to each other. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#touch_elements_too_close)."
- ],
- "enum": [
- "MOBILE_FRIENDLY_RULE_UNSPECIFIED",
- "USES_INCOMPATIBLE_PLUGINS",
- "CONFIGURE_VIEWPORT",
- "FIXED_WIDTH_VIEWPORT",
- "SIZE_CONTENT_TO_VIEWPORT",
- "USE_LEGIBLE_FONT_SIZES",
- "TAP_TARGETS_TOO_CLOSE"
- ]
- }
- },
- "id": "MobileFriendlyIssue",
- "description": "Mobile-friendly issue.",
- "type": "object"
- },
- "RunMobileFriendlyTestResponse": {
- "description": "Mobile-friendly test response, including mobile-friendly issues and resource\nissues.",
- "type": "object",
- "properties": {
- "mobileFriendliness": {
- "description": "Test verdict, whether the page is mobile friendly or not.",
- "type": "string",
- "enumDescriptions": [
- "Internal error when running this test. Please try running the test again.",
- "The page is mobile friendly.",
- "The page is not mobile friendly."
- ],
- "enum": [
- "MOBILE_FRIENDLY_TEST_RESULT_UNSPECIFIED",
- "MOBILE_FRIENDLY",
- "NOT_MOBILE_FRIENDLY"
- ]
- },
- "mobileFriendlyIssues": {
- "description": "List of mobile-usability issues.",
- "items": {
- "$ref": "MobileFriendlyIssue"
- },
- "type": "array"
- },
- "screenshot": {
- "description": "Screenshot of the requested URL.",
- "$ref": "Image"
- },
- "resourceIssues": {
- "description": "Information about embedded resources issues.",
- "items": {
- "$ref": "ResourceIssue"
- },
- "type": "array"
- },
- "testStatus": {
- "$ref": "TestStatus",
- "description": "Final state of the test, can be either complete or an error."
- }
- },
- "id": "RunMobileFriendlyTestResponse"
- },
- "ResourceIssue": {
- "description": "Information about a resource with issue.",
- "type": "object",
- "properties": {
- "blockedResource": {
- "$ref": "BlockedResource",
- "description": "Describes a blocked resource issue."
- }
- },
- "id": "ResourceIssue"
- },
"BlockedResource": {
"description": "Blocked resource.",
"type": "object",
@@ -215,8 +135,6 @@
"id": "BlockedResource"
},
"TestStatus": {
- "description": "Final state of the test, including error details if necessary.",
- "type": "object",
"properties": {
"status": {
"enumDescriptions": [
@@ -239,23 +157,25 @@
"type": "string"
}
},
- "id": "TestStatus"
+ "id": "TestStatus",
+ "description": "Final state of the test, including error details if necessary.",
+ "type": "object"
},
"Image": {
- "description": "Describe image data.",
- "type": "object",
"properties": {
"mimeType": {
"description": "The mime-type of the image data.",
"type": "string"
},
"data": {
- "format": "byte",
"description": "Image data in format determined by the mime type. Currently, the format\nwill always be \"image/png\", but this might change in the future.",
+ "format": "byte",
"type": "string"
}
},
- "id": "Image"
+ "id": "Image",
+ "description": "Describe image data.",
+ "type": "object"
},
"RunMobileFriendlyTestRequest": {
"description": "Mobile-friendly test request.",
@@ -271,6 +191,89 @@
}
},
"id": "RunMobileFriendlyTestRequest"
+ },
+ "MobileFriendlyIssue": {
+ "properties": {
+ "rule": {
+ "enum": [
+ "MOBILE_FRIENDLY_RULE_UNSPECIFIED",
+ "USES_INCOMPATIBLE_PLUGINS",
+ "CONFIGURE_VIEWPORT",
+ "FIXED_WIDTH_VIEWPORT",
+ "SIZE_CONTENT_TO_VIEWPORT",
+ "USE_LEGIBLE_FONT_SIZES",
+ "TAP_TARGETS_TOO_CLOSE"
+ ],
+ "description": "Rule violated.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown rule. Sorry, we don't have any description for the rule that was\nbroken.",
+ "Plugins incompatible with mobile devices are being used. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#flash_usage).",
+ "Viewsport is not specified using the meta viewport tag. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#viewport_not_configured).",
+ "Viewport defined to a fixed width. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#fixed-width_viewport).",
+ "Content not sized to viewport. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#content_not_sized_to_viewport).",
+ "Font size is too small for easy reading on a small screen. [Learn More]\n(https://support.google.com/webmasters/answer/6352293#small_font_size).",
+ "Touch elements are too close to each other. [Learn more]\n(https://support.google.com/webmasters/answer/6352293#touch_elements_too_close)."
+ ]
+ }
+ },
+ "id": "MobileFriendlyIssue",
+ "description": "Mobile-friendly issue.",
+ "type": "object"
+ },
+ "RunMobileFriendlyTestResponse": {
+ "properties": {
+ "testStatus": {
+ "description": "Final state of the test, can be either complete or an error.",
+ "$ref": "TestStatus"
+ },
+ "resourceIssues": {
+ "description": "Information about embedded resources issues.",
+ "type": "array",
+ "items": {
+ "$ref": "ResourceIssue"
+ }
+ },
+ "mobileFriendliness": {
+ "enum": [
+ "MOBILE_FRIENDLY_TEST_RESULT_UNSPECIFIED",
+ "MOBILE_FRIENDLY",
+ "NOT_MOBILE_FRIENDLY"
+ ],
+ "description": "Test verdict, whether the page is mobile friendly or not.",
+ "type": "string",
+ "enumDescriptions": [
+ "Internal error when running this test. Please try running the test again.",
+ "The page is mobile friendly.",
+ "The page is not mobile friendly."
+ ]
+ },
+ "mobileFriendlyIssues": {
+ "description": "List of mobile-usability issues.",
+ "type": "array",
+ "items": {
+ "$ref": "MobileFriendlyIssue"
+ }
+ },
+ "screenshot": {
+ "$ref": "Image",
+ "description": "Screenshot of the requested URL."
+ }
+ },
+ "id": "RunMobileFriendlyTestResponse",
+ "description": "Mobile-friendly test response, including mobile-friendly issues and resource\nissues.",
+ "type": "object"
+ },
+ "ResourceIssue": {
+ "properties": {
+ "blockedResource": {
+ "$ref": "BlockedResource",
+ "description": "Describes a blocked resource issue."
+ }
+ },
+ "id": "ResourceIssue",
+ "description": "Information about a resource with issue.",
+ "type": "object"
}
},
"protocol": "rest",
@@ -281,12 +284,9 @@
"version": "v1",
"baseUrl": "https://searchconsole.googleapis.com/",
"canonicalName": "Search Console",
- "servicePath": "",
- "description": "Provides tools for running validation tests against single URLs",
"kind": "discovery#restDescription",
+ "description": "Provides tools for running validation tests against single URLs",
+ "servicePath": "",
"rootUrl": "https://searchconsole.googleapis.com/",
- "basePath": "",
- "ownerDomain": "google.com",
- "name": "searchconsole",
- "batchPath": "batch"
+ "basePath": ""
}
diff --git a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json
index 2b7494b..5b65590 100644
--- a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json
+++ b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-api.json
@@ -1,194 +1,287 @@
{
+ "ownerName": "Google",
+ "resources": {
+ "services": {
+ "methods": {
+ "report": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "response": {
+ "$ref": "ReportResponse"
+ },
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "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.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/servicecontrol"
+ ],
+ "flatPath": "v1/services/{serviceName}:report",
+ "path": "v1/services/{serviceName}:report",
+ "id": "servicecontrol.services.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 of 1MB.\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).",
+ "request": {
+ "$ref": "ReportRequest"
+ }
+ },
+ "allocateQuota": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "response": {
+ "$ref": "AllocateQuotaResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/servicecontrol"
+ ],
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "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.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/services/{serviceName}:allocateQuota",
+ "path": "v1/services/{serviceName}:allocateQuota",
+ "id": "servicecontrol.services.allocateQuota",
+ "request": {
+ "$ref": "AllocateQuotaRequest"
+ },
+ "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[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system."
+ },
+ "startReconciliation": {
+ "id": "servicecontrol.services.startReconciliation",
+ "path": "v1/services/{serviceName}:startReconciliation",
+ "description": "Unlike rate quota, allocation quota does not get refilled periodically.\nSo, it is possible that the quota usage as seen by the service differs from\nwhat the One Platform considers the usage is. This is expected to happen\nonly rarely, but over time this can accumulate. Services can invoke\nStartReconciliation and EndReconciliation to correct this usage drift, as\ndescribed below:\n1. Service sends StartReconciliation with a timestamp in future for each\n metric that needs to be reconciled. The timestamp being in future allows\n to account for in-flight AllocateQuota and ReleaseQuota requests for the\n same metric.\n2. One Platform records this timestamp and starts tracking subsequent\n AllocateQuota and ReleaseQuota requests until EndReconciliation is\n called.\n3. At or after the time specified in the StartReconciliation, service\n sends EndReconciliation with the usage that needs to be reconciled to.\n4. One Platform adjusts its own record of usage for that metric to the\n value specified in EndReconciliation by taking in to account any\n allocation or release between StartReconciliation and EndReconciliation.\n\nSignals the quota controller that the service wants to perform a usage\nreconciliation as specified in the request.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).",
+ "request": {
+ "$ref": "StartReconciliationRequest"
+ },
+ "response": {
+ "$ref": "StartReconciliationResponse"
+ },
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "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.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/servicecontrol"
+ ],
+ "flatPath": "v1/services/{serviceName}:startReconciliation"
+ },
+ "check": {
+ "request": {
+ "$ref": "CheckRequest"
+ },
+ "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\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[Google Cloud IAM](https://cloud.google.com/iam).",
+ "response": {
+ "$ref": "CheckResponse"
+ },
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/servicecontrol"
+ ],
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "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.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/services/{serviceName}:check",
+ "id": "servicecontrol.services.check",
+ "path": "v1/services/{serviceName}:check"
+ },
+ "releaseQuota": {
+ "response": {
+ "$ref": "ReleaseQuotaResponse"
+ },
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/servicecontrol"
+ ],
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "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.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/services/{serviceName}:releaseQuota",
+ "id": "servicecontrol.services.releaseQuota",
+ "path": "v1/services/{serviceName}:releaseQuota",
+ "request": {
+ "$ref": "ReleaseQuotaRequest"
+ },
+ "description": "Releases previously allocated quota done through AllocateQuota method.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system."
+ },
+ "endReconciliation": {
+ "response": {
+ "$ref": "EndReconciliationResponse"
+ },
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/servicecontrol"
+ ],
+ "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.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/services/{serviceName}:endReconciliation",
+ "id": "servicecontrol.services.endReconciliation",
+ "path": "v1/services/{serviceName}:endReconciliation",
+ "request": {
+ "$ref": "EndReconciliationRequest"
+ },
+ "description": "Signals the quota controller that service ends the ongoing usage\nreconciliation.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam)."
+ }
+ }
+ }
+ },
+ "parameters": {
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "prettyPrint": {
+ "location": "query",
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
+ },
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
+ },
+ "$.xgafv": {
+ "description": "V1 error format.",
+ "type": "string",
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ]
+ },
+ "alt": {
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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",
+ "description": "Data format for response.",
+ "default": "json"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "quotaUser": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "pp": {
+ "location": "query",
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "oauth_token": {
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string",
+ "location": "query"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ }
+ },
+ "version": "v1",
+ "baseUrl": "https://servicecontrol.googleapis.com/",
+ "servicePath": "",
+ "description": "Google Service Control provides control plane functionality to managed services, such as logging, monitoring, and status checks.",
+ "kind": "discovery#restDescription",
+ "basePath": "",
+ "id": "servicecontrol:v1",
+ "documentationLink": "https://cloud.google.com/service-control/",
+ "revision": "20170819",
+ "discoveryVersion": "v1",
+ "version_module": true,
"schemas": {
- "ReportRequest": {
- "properties": {
- "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"
- },
- "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\nIf multiple operations are in a single request, the total request size\nshould be no larger than 1MB. See ReportResponse.report_errors for\npartial failure behavior.",
- "items": {
- "$ref": "Operation"
- },
- "type": "array"
- }
- },
- "id": "ReportRequest",
- "description": "Request message for the Report method.",
- "type": "object"
- },
- "Status": {
- "properties": {
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "items": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "type": "object"
- },
- "type": "array"
- },
- "code": {
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "type": "integer"
- },
- "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"
- }
- },
- "id": "Status",
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object"
- },
- "LogEntry": {
- "description": "An individual log entry.",
- "type": "object",
- "properties": {
- "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. You can only pass `protoPayload`\nvalues that belong to a set of approved types.",
- "type": "object"
- },
- "timestamp": {
- "format": "google-datetime",
- "description": "The time the event described by the log entry occurred. If\nomitted, defaults to operation start time.",
- "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"
- },
- "severity": {
- "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."
- ],
- "enum": [
- "DEFAULT",
- "DEBUG",
- "INFO",
- "NOTICE",
- "WARNING",
- "ERROR",
- "CRITICAL",
- "ALERT",
- "EMERGENCY"
- ],
- "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.",
- "type": "string"
- },
- "name": {
- "description": "Required. The log to which this log entry belongs. Examples: `\"syslog\"`,\n`\"book_log\"`.",
- "type": "string"
- },
- "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"
- },
- "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"
- }
- },
- "id": "LogEntry"
- },
- "AuditLog": {
- "description": "Common audit log format for Google Cloud Platform API operations.\n\n",
- "type": "object",
- "properties": {
- "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"
- },
- "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"
- },
- "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"
- },
- "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"
- },
- "serviceData": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "Other service-specific data about the request, response, and other\nactivities.",
- "type": "object"
- },
- "requestMetadata": {
- "description": "Metadata about the operation.",
- "$ref": "RequestMetadata"
- },
- "numResponseItems": {
- "format": "int64",
- "description": "The number of items returned from a List or Query API method,\nif applicable.",
- "type": "string"
- },
- "status": {
- "description": "The status of the overall operation.",
- "$ref": "Status"
- },
- "authenticationInfo": {
- "$ref": "AuthenticationInfo",
- "description": "Authentication information."
- },
- "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"
- },
- "serviceName": {
- "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.",
- "type": "string"
- }
- },
- "id": "AuditLog"
- },
"MetricValue": {
"description": "Represents a single metric value.",
"type": "object",
"properties": {
+ "stringValue": {
+ "description": "A text string value.",
+ "type": "string"
+ },
"labels": {
"additionalProperties": {
"type": "string"
@@ -196,10 +289,6 @@
"description": "The labels describing the metric value.\nSee comments on google.api.servicecontrol.v1.Operation.labels for\nthe overriding relationship.",
"type": "object"
},
- "stringValue": {
- "description": "A text string value.",
- "type": "string"
- },
"doubleValue": {
"format": "double",
"description": "A double precision floating point value.",
@@ -235,6 +324,27 @@
},
"id": "MetricValue"
},
+ "Money": {
+ "description": "Represents an amount of money with its currency type.",
+ "type": "object",
+ "properties": {
+ "units": {
+ "format": "int64",
+ "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
+ "type": "string"
+ },
+ "currencyCode": {
+ "description": "The 3-letter currency code defined in ISO 4217.",
+ "type": "string"
+ },
+ "nanos": {
+ "format": "int32",
+ "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.",
+ "type": "integer"
+ }
+ },
+ "id": "Money"
+ },
"EndReconciliationResponse": {
"properties": {
"reconciliationErrors": {
@@ -263,54 +373,25 @@
"id": "EndReconciliationResponse",
"type": "object"
},
- "Money": {
+ "ExplicitBuckets": {
+ "description": "Describing buckets with arbitrary user-provided width.",
+ "type": "object",
"properties": {
- "currencyCode": {
- "description": "The 3-letter currency code defined in ISO 4217.",
- "type": "string"
- },
- "nanos": {
- "format": "int32",
- "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.",
- "type": "integer"
- },
- "units": {
- "format": "int64",
- "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
- "type": "string"
+ "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"
}
},
- "id": "Money",
- "description": "Represents an amount of money with its currency type.",
- "type": "object"
+ "id": "ExplicitBuckets"
},
"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",
"type": "object",
"properties": {
- "maximum": {
- "format": "double",
- "description": "The maximum of the population of values. Ignored if `count` is zero.",
- "type": "number"
- },
- "sumOfSquaredDeviation": {
- "format": "double",
- "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.",
- "type": "number"
- },
- "exponentialBuckets": {
- "description": "Buckets with exponentially growing width.",
- "$ref": "ExponentialBuckets"
- },
- "minimum": {
- "format": "double",
- "description": "The minimum of the population of values. Ignored if `count` is zero.",
- "type": "number"
- },
- "linearBuckets": {
- "description": "Buckets with constant width.",
- "$ref": "LinearBuckets"
- },
"count": {
"format": "int64",
"description": "The total number of samples in the distribution. Must be \u003e= 0.",
@@ -332,26 +413,36 @@
"explicitBuckets": {
"$ref": "ExplicitBuckets",
"description": "Buckets with arbitrary user-provided width."
+ },
+ "maximum": {
+ "format": "double",
+ "description": "The maximum of the population of values. Ignored if `count` is zero.",
+ "type": "number"
+ },
+ "sumOfSquaredDeviation": {
+ "format": "double",
+ "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.",
+ "type": "number"
+ },
+ "exponentialBuckets": {
+ "$ref": "ExponentialBuckets",
+ "description": "Buckets with exponentially growing width."
+ },
+ "minimum": {
+ "format": "double",
+ "description": "The minimum of the population of values. Ignored if `count` is zero.",
+ "type": "number"
+ },
+ "linearBuckets": {
+ "description": "Buckets with constant width.",
+ "$ref": "LinearBuckets"
}
},
"id": "Distribution"
},
- "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"
- }
- },
- "id": "ExplicitBuckets",
- "description": "Describing buckets with arbitrary user-provided width.",
- "type": "object"
- },
"ExponentialBuckets": {
+ "description": "Describing buckets with exponentially growing width.",
+ "type": "object",
"properties": {
"scale": {
"format": "double",
@@ -369,12 +460,16 @@
"type": "number"
}
},
- "id": "ExponentialBuckets",
- "description": "Describing buckets with exponentially growing width.",
- "type": "object"
+ "id": "ExponentialBuckets"
},
"AuthorizationInfo": {
+ "description": "Authorization information for the operation.",
+ "type": "object",
"properties": {
+ "resource": {
+ "description": "The resource being accessed, as a REST-style string. For example:\n\n bigquery.googleapis.com/projects/PROJECTID/datasets/DATASETID",
+ "type": "string"
+ },
"granted": {
"description": "Whether or not authorization for `resource` and `permission`\nwas granted.",
"type": "boolean"
@@ -382,15 +477,9 @@
"permission": {
"description": "The required IAM permission.",
"type": "string"
- },
- "resource": {
- "description": "The resource being accessed, as a REST-style string. For example:\n\n bigquery.googlapis.com/projects/PROJECTID/datasets/DATASETID",
- "type": "string"
}
},
- "id": "AuthorizationInfo",
- "description": "Authorization information for the operation.",
- "type": "object"
+ "id": "AuthorizationInfo"
},
"StartReconciliationResponse": {
"type": "object",
@@ -424,13 +513,6 @@
"description": "Represents the properties needed for quota operations.",
"type": "object",
"properties": {
- "limitByIds": {
- "additionalProperties": {
- "type": "string"
- },
- "description": "LimitType IDs that should be used for checking quota. Key in this map\nshould be a valid LimitType string, and the value is the ID to be used. For\nexample, an entry \u003cUSER, 123\u003e will cause all user quota limits to use 123\nas the user ID. See google/api/quota.proto for the definition of LimitType.\nCLIENT_PROJECT: Not supported.\nUSER: Value of this entry will be used for enforcing user-level quota\n limits. If none specified, caller IP passed in the\n servicecontrol.googleapis.com/caller_ip label will be used instead.\n If the server cannot resolve a value for this LimitType, an error\n will be thrown. No validation will be performed on this ID.\nDeprecated: use servicecontrol.googleapis.com/user label to send user ID.",
- "type": "object"
- },
"quotaMode": {
"enum": [
"ACQUIRE",
@@ -446,6 +528,13 @@
"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."
]
+ },
+ "limitByIds": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "LimitType IDs that should be used for checking quota. Key in this map\nshould be a valid LimitType string, and the value is the ID to be used. For\nexample, an entry \u003cUSER, 123\u003e will cause all user quota limits to use 123\nas the user ID. See google/api/quota.proto for the definition of LimitType.\nCLIENT_PROJECT: Not supported.\nUSER: Value of this entry will be used for enforcing user-level quota\n limits. If none specified, caller IP passed in the\n servicecontrol.googleapis.com/caller_ip label will be used instead.\n If the server cannot resolve a value for this LimitType, an error\n will be thrown. No validation will be performed on this ID.\nDeprecated: use servicecontrol.googleapis.com/user label to send user ID.",
+ "type": "object"
}
},
"id": "QuotaProperties"
@@ -476,18 +565,20 @@
"description": "Authentication information for the operation.",
"type": "object",
"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.",
+ "principalEmail": {
+ "description": "The email address of the authenticated user making the request.\nFor privacy reasons, the principal email address is redacted for all\nread-only operations that fail with a \"permission denied\" error.",
"type": "string"
},
- "principalEmail": {
- "description": "The email address of the authenticated user making the request.",
+ "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"
}
},
"id": "AuthenticationInfo"
},
"AllocateQuotaResponse": {
+ "description": "Response message for the AllocateQuota method.",
+ "type": "object",
"properties": {
"operationId": {
"description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.",
@@ -512,19 +603,17 @@
"type": "array"
}
},
- "id": "AllocateQuotaResponse",
- "description": "Response message for the AllocateQuota method.",
- "type": "object"
+ "id": "AllocateQuotaResponse"
},
"ReleaseQuotaRequest": {
"properties": {
- "releaseOperation": {
- "description": "Operation that describes the quota release.",
- "$ref": "QuotaOperation"
- },
"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"
+ },
+ "releaseOperation": {
+ "description": "Operation that describes the quota release.",
+ "$ref": "QuotaOperation"
}
},
"id": "ReleaseQuotaRequest",
@@ -535,12 +624,12 @@
"description": "Metadata about the request.",
"type": "object",
"properties": {
- "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: s~my-project`:\n The request was made from the `my-project` App Engine app.\n\nNOLINT",
+ "callerIp": {
+ "description": "The IP address of the caller.\nFor caller from internet, this will be public IPv4 or IPv6 address.\nFor caller from GCE VM with external IP address, this will be the VM's\nexternal IP address. For caller from GCE VM without external IP address, if\nthe VM is in the same GCP organization (or project) as the accessed\nresource, `caller_ip` will be the GCE VM's internal IPv4 address, otherwise\nit will be redacted to \"gce-internal-ip\".\nSee https://cloud.google.com/compute/docs/vpc/ for more information.",
"type": "string"
},
- "callerIp": {
- "description": "The IP address of the caller.",
+ "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: s~my-project`:\n The request was made from the `my-project` App Engine app.\nNOLINT",
"type": "string"
}
},
@@ -561,6 +650,7 @@
"enum": [
"UNSPECIFIED",
"RESOURCE_EXHAUSTED",
+ "OUT_OF_RANGE",
"BILLING_NOT_ACTIVE",
"PROJECT_DELETED",
"API_KEY_INVALID",
@@ -578,6 +668,7 @@
"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.",
@@ -603,11 +694,17 @@
"type": "string"
},
"type": "array"
+ },
+ "consumerInfo": {
+ "$ref": "ConsumerInfo",
+ "description": "Consumer info of this check."
}
},
"id": "CheckInfo"
},
"ReleaseQuotaResponse": {
+ "description": "Response message for the ReleaseQuota method.",
+ "type": "object",
"properties": {
"operationId": {
"description": "The same operation_id value used in the ReleaseQuotaRequest. Used for\nlogging and diagnostics purposes.",
@@ -632,12 +729,16 @@
"type": "array"
}
},
- "id": "ReleaseQuotaResponse",
- "description": "Response message for the ReleaseQuota method.",
- "type": "object"
+ "id": "ReleaseQuotaResponse"
},
"AllocateQuotaRequest": {
+ "description": "Request message for the AllocateQuota method.",
+ "type": "object",
"properties": {
+ "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"
+ },
"allocateOperation": {
"description": "Operation that describes the quota allocation.",
"$ref": "QuotaOperation"
@@ -657,51 +758,51 @@
],
"description": "Allocation mode for this operation.\nDeprecated: use QuotaMode inside the QuotaOperation.",
"type": "string"
- },
- "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"
}
},
- "id": "AllocateQuotaRequest",
- "description": "Request message for the AllocateQuota method.",
- "type": "object"
+ "id": "AllocateQuotaRequest"
},
"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.",
"type": "object",
"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"
+ },
+ "metricName": {
+ "description": "The metric name defined in the service configuration.",
+ "type": "string"
}
},
"id": "MetricValueSet"
},
"ReportError": {
+ "description": "Represents the processing error of one Operation in the request.",
+ "type": "object",
"properties": {
- "status": {
- "$ref": "Status",
- "description": "Details of the error when processing the `Operation`."
- },
"operationId": {
"description": "The Operation.operation_id value from the request.",
"type": "string"
+ },
+ "status": {
+ "description": "Details of the error when processing the Operation.",
+ "$ref": "Status"
}
},
- "id": "ReportError",
- "description": "Represents the processing error of one `Operation` in the request.",
- "type": "object"
+ "id": "ReportError"
},
"CheckError": {
+ "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.",
+ "type": "object",
"properties": {
+ "detail": {
+ "description": "Free-form text providing details on the error cause of the error.",
+ "type": "string"
+ },
"code": {
"enum": [
"ERROR_CODE_UNSPECIFIED",
@@ -773,45 +874,34 @@
"Cloud Resource Manager backend server is unavailable.",
"Backend server for evaluating security policy is unavailable."
]
- },
- "detail": {
- "description": "Free-form text providing details on the error cause of the error.",
- "type": "string"
}
},
- "id": "CheckError",
- "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.",
- "type": "object"
+ "id": "CheckError"
},
"StartReconciliationRequest": {
"properties": {
- "reconciliationOperation": {
- "$ref": "QuotaOperation",
- "description": "Operation that describes the quota reconciliation."
- },
"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"
+ },
+ "reconciliationOperation": {
+ "$ref": "QuotaOperation",
+ "description": "Operation that describes the quota reconciliation."
}
},
"id": "StartReconciliationRequest",
"type": "object"
},
"QuotaInfo": {
+ "description": "Contains the quota information for a quota check response.",
+ "type": "object",
"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.\nDeprecated: Use quota_metrics to get per quota group usage.",
+ "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": {
@@ -820,13 +910,32 @@
"$ref": "MetricValueSet"
},
"type": "array"
+ },
+ "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"
}
},
- "id": "QuotaInfo",
- "description": "Contains the quota information for a quota check response.",
+ "id": "QuotaInfo"
+ },
+ "ConsumerInfo": {
+ "properties": {
+ "projectNumber": {
+ "format": "int64",
+ "description": "The Google cloud project number, e.g. 1234567890. A value of 0 indicates\nno project number is found.",
+ "type": "string"
+ }
+ },
+ "id": "ConsumerInfo",
+ "description": "`ConsumerInfo` provides information about the consumer project.",
"type": "object"
},
"CheckRequest": {
+ "description": "Request message for the Check method.",
+ "type": "object",
"properties": {
"skipActivationCheck": {
"description": "Indicates if service activation check should be skipped for this request.\nDefault behavior is to perform the check and apply relevant quota.",
@@ -845,19 +954,31 @@
"type": "string"
}
},
- "id": "CheckRequest",
- "description": "Request message for the Check method.",
- "type": "object"
+ "id": "CheckRequest"
},
"QuotaOperation": {
"description": "Represents information regarding a quota operation.",
"type": "object",
"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"
+ },
+ "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\nUUID version 4 is recommended, though not required. In scenarios where an\noperation is computed from existing information and an idempotent id is\ndesirable for deduplication purpose, UUID version 5 is recommended. See\nRFC 4122 for details.",
+ "type": "string"
+ },
"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. This field is not\nrequired if the quota operation is performed on non-API resources.\n\nExample of an RPC method name:\n google.example.library.v1.LibraryService.CreateShelf",
"type": "string"
},
"quotaMode": {
+ "enumDescriptions": [
+ "",
+ "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.\nFor ReleaseQuota request, this mode is supported only for precise quota\nlimits. In this case, this operation releases quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the release can make used quota negative, release error\nwill be returned and no quota will be released.",
+ "For AllocateQuota request, this mode is supported only for imprecise\nquota limits. In this case, the operation allocates quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the amount is higher than the available quota, request does\nnot fail but all available quota will be allocated.\nFor ReleaseQuota request, this mode is supported for both precise quota\nlimits and imprecise quota limits. In this case, this operation releases\nquota for the amount specified in the service configuration or specified\nusing the quota metrics. If the release can make used quota\nnegative, request does not fail but only the used quota will be\nreleased. After the ReleaseQuota request completes, the used quota\nwill be 0, and never goes to negative.",
+ "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. Not supported for ReleaseQuota request."
+ ],
"enum": [
"UNSPECIFIED",
"NORMAL",
@@ -865,13 +986,7 @@
"CHECK_ONLY"
],
"description": "Quota mode for this operation.",
- "type": "string",
- "enumDescriptions": [
- "",
- "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.\nFor ReleaseQuota request, this mode is supported only for precise quota\nlimits. In this case, this operation releases quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the release can make used quota negative, release error\nwill be returned and no quota will be released.",
- "For AllocateQuota request, this mode is supported only for imprecise\nquota limits. In this case, the operation allocates quota for the amount\nspecified in the service configuration or specified using the quota\nmetrics. If the amount is higher than the available quota, request does\nnot fail but all available quota will be allocated.\nFor ReleaseQuota request, this mode is supported for both precise quota\nlimits and imprecise quota limits. In this case, this operation releases\nquota for the amount specified in the service configuration or specified\nusing the quota metrics. If the release can make used quota\nnegative, request does not fail but only the used quota will be\nreleased. After the ReleaseQuota request completes, the used quota\nwill be 0, and never goes to negative.",
- "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. Not supported for ReleaseQuota request."
- ]
+ "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.",
@@ -886,14 +1001,6 @@
},
"description": "Labels describing the operation.",
"type": "object"
- },
- "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"
- },
- "operationId": {
- "description": "Identity of the operation. This must be unique within the scope of the\nservice that generated the operation. If the service calls AllocateQuota\nand ReleaseQuota on the same operation, the two calls should carry the\nsame ID.\n\nUUID version 4 is recommended, though not required. In scenarios where an\noperation is computed from existing information and an idempotent id is\ndesirable for deduplication purpose, UUID version 5 is recommended. See\nRFC 4122 for details.",
- "type": "string"
}
},
"id": "QuotaOperation"
@@ -927,7 +1034,56 @@
"id": "ReportInfo"
},
"Operation": {
+ "description": "Represents information regarding an operation.",
+ "type": "object",
"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\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"
+ },
+ "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"
+ },
+ "endTime": {
+ "format": "google-datetime",
+ "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.",
+ "type": "string"
+ },
+ "startTime": {
+ "format": "google-datetime",
+ "description": "Required. Start time of the operation.",
+ "type": "string"
+ },
+ "importance": {
+ "enum": [
+ "LOW",
+ "HIGH",
+ "DEBUG"
+ ],
+ "description": "DO NOT USE. This is an experimental field.",
+ "type": "string",
+ "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."
+ ]
+ },
+ "resourceContainers": {
+ "description": "DO NOT USE.\nThis field is not ready for use yet.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "resourceContainer": {
+ "description": "The resource name of the parent of a resource in the resource hierarchy.\n\nThis can 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"
+ },
"labels": {
"additionalProperties": {
"type": "string"
@@ -959,56 +1115,21 @@
"quotaProperties": {
"description": "Represents the properties needed for quota check. Applicable only if this\noperation is for a quota check request.",
"$ref": "QuotaProperties"
- },
- "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\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"
- },
- "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"
- },
- "endTime": {
- "format": "google-datetime",
- "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.",
- "type": "string"
- },
- "operationName": {
- "description": "Fully qualified name of the operation. Reserved for future use.",
- "type": "string"
- },
- "startTime": {
- "format": "google-datetime",
- "description": "Required. Start time of the operation.",
- "type": "string"
- },
- "importance": {
- "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."
- ],
- "enum": [
- "LOW",
- "HIGH",
- "DEBUG"
- ],
- "description": "DO NOT USE. This is an experimental field.",
- "type": "string"
- },
- "resourceContainer": {
- "description": "The resource name of the parent of a resource in the resource hierarchy.\n\nThis can 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"
}
},
- "id": "Operation",
- "description": "Represents information regarding an operation.",
- "type": "object"
+ "id": "Operation"
},
"ReportResponse": {
"description": "Response message for the Report method.",
"type": "object",
"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": {
@@ -1019,18 +1140,13 @@
"serviceConfigId": {
"description": "The actual config id used to process the request.",
"type": "string"
- },
- "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"
}
},
"id": "ReportResponse"
},
"CheckResponse": {
+ "description": "Response message for the Check method.",
+ "type": "object",
"properties": {
"checkInfo": {
"description": "Feedback data returned from the server during processing a Check request.",
@@ -1056,25 +1172,208 @@
"$ref": "QuotaInfo"
}
},
- "id": "CheckResponse",
- "description": "Response message for the Check method.",
- "type": "object"
+ "id": "CheckResponse"
+ },
+ "ReportRequest": {
+ "description": "Request message for the Report method.",
+ "type": "object",
+ "properties": {
+ "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"
+ },
+ "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\nIf multiple operations are in a single request, the total request size\nshould be no larger than 1MB. See ReportResponse.report_errors for\npartial failure behavior.",
+ "items": {
+ "$ref": "Operation"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ReportRequest"
+ },
+ "Status": {
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object",
+ "properties": {
+ "details": {
+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "type": "array"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
+ }
+ },
+ "id": "Status"
+ },
+ "AuditLog": {
+ "description": "Common audit log format for Google Cloud Platform API operations.\n\n",
+ "type": "object",
+ "properties": {
+ "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"
+ },
+ "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"
+ },
+ "request": {
+ "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",
+ "additionalProperties": {
+ "description": "Properties of the object.",
+ "type": "any"
+ }
+ },
+ "requestMetadata": {
+ "description": "Metadata about the operation.",
+ "$ref": "RequestMetadata"
+ },
+ "serviceData": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "Other service-specific data about the request, response, and other\nactivities.",
+ "type": "object"
+ },
+ "numResponseItems": {
+ "format": "int64",
+ "description": "The number of items returned from a List or Query API method,\nif applicable.",
+ "type": "string"
+ },
+ "authenticationInfo": {
+ "$ref": "AuthenticationInfo",
+ "description": "Authentication information."
+ },
+ "status": {
+ "description": "The status of the overall operation.",
+ "$ref": "Status"
+ },
+ "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"
+ },
+ "serviceName": {
+ "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.",
+ "type": "string"
+ },
+ "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"
+ }
+ },
+ "id": "AuditLog"
+ },
+ "LogEntry": {
+ "description": "An individual log entry.",
+ "type": "object",
+ "properties": {
+ "severity": {
+ "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.",
+ "type": "string",
+ "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."
+ ],
+ "enum": [
+ "DEFAULT",
+ "DEBUG",
+ "INFO",
+ "NOTICE",
+ "WARNING",
+ "ERROR",
+ "CRITICAL",
+ "ALERT",
+ "EMERGENCY"
+ ]
+ },
+ "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"
+ },
+ "name": {
+ "description": "Required. The log to which this log entry belongs. Examples: `\"syslog\"`,\n`\"book_log\"`.",
+ "type": "string"
+ },
+ "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"
+ },
+ "protoPayload": {
+ "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",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "timestamp": {
+ "format": "google-datetime",
+ "description": "The time the event described by the log entry occurred. If\nomitted, defaults to operation start time.",
+ "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"
+ }
+ },
+ "id": "LogEntry"
}
},
- "icons": {
- "x32": "http://www.google.com/images/icons/product/search-32.gif",
- "x16": "http://www.google.com/images/icons/product/search-16.gif"
- },
"protocol": "rest",
+ "icons": {
+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ },
"canonicalName": "Service Control",
"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"
+ },
+ "https://www.googleapis.com/auth/cloud-platform": {
+ "description": "View and manage your data across Google Cloud Platform services"
}
}
}
@@ -1083,279 +1382,6 @@
"ownerDomain": "google.com",
"name": "servicecontrol",
"batchPath": "batch",
- "title": "Google Service Control API",
- "ownerName": "Google",
- "resources": {
- "services": {
- "methods": {
- "endReconciliation": {
- "id": "servicecontrol.services.endReconciliation",
- "path": "v1/services/{serviceName}:endReconciliation",
- "request": {
- "$ref": "EndReconciliationRequest"
- },
- "description": "Signals the quota controller that service ends the ongoing usage\nreconciliation.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).",
- "response": {
- "$ref": "EndReconciliationResponse"
- },
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/servicecontrol"
- ],
- "parameters": {
- "serviceName": {
- "location": "path",
- "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.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/services/{serviceName}:endReconciliation"
- },
- "report": {
- "id": "servicecontrol.services.report",
- "path": "v1/services/{serviceName}:report",
- "request": {
- "$ref": "ReportRequest"
- },
- "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 of 1MB.\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).",
- "response": {
- "$ref": "ReportResponse"
- },
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/servicecontrol"
- ],
- "parameters": {
- "serviceName": {
- "location": "path",
- "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/services/{serviceName}:report"
- },
- "allocateQuota": {
- "httpMethod": "POST",
- "parameterOrder": [
- "serviceName"
- ],
- "response": {
- "$ref": "AllocateQuotaResponse"
- },
- "parameters": {
- "serviceName": {
- "location": "path",
- "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.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/servicecontrol"
- ],
- "flatPath": "v1/services/{serviceName}:allocateQuota",
- "path": "v1/services/{serviceName}:allocateQuota",
- "id": "servicecontrol.services.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[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system.",
- "request": {
- "$ref": "AllocateQuotaRequest"
- }
- },
- "startReconciliation": {
- "response": {
- "$ref": "StartReconciliationResponse"
- },
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "POST",
- "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.",
- "type": "string",
- "required": true,
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/servicecontrol"
- ],
- "flatPath": "v1/services/{serviceName}:startReconciliation",
- "id": "servicecontrol.services.startReconciliation",
- "path": "v1/services/{serviceName}:startReconciliation",
- "description": "Unlike rate quota, allocation quota does not get refilled periodically.\nSo, it is possible that the quota usage as seen by the service differs from\nwhat the One Platform considers the usage is. This is expected to happen\nonly rarely, but over time this can accumulate. Services can invoke\nStartReconciliation and EndReconciliation to correct this usage drift, as\ndescribed below:\n1. Service sends StartReconciliation with a timestamp in future for each\n metric that needs to be reconciled. The timestamp being in future allows\n to account for in-flight AllocateQuota and ReleaseQuota requests for the\n same metric.\n2. One Platform records this timestamp and starts tracking subsequent\n AllocateQuota and ReleaseQuota requests until EndReconciliation is\n called.\n3. At or after the time specified in the StartReconciliation, service\n sends EndReconciliation with the usage that needs to be reconciled to.\n4. One Platform adjusts its own record of usage for that metric to the\n value specified in EndReconciliation by taking in to account any\n allocation or release between StartReconciliation and EndReconciliation.\n\nSignals the quota controller that the service wants to perform a usage\nreconciliation as specified in the request.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).",
- "request": {
- "$ref": "StartReconciliationRequest"
- }
- },
- "check": {
- "response": {
- "$ref": "CheckResponse"
- },
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/servicecontrol"
- ],
- "parameters": {
- "serviceName": {
- "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.",
- "type": "string",
- "required": true,
- "location": "path"
- }
- },
- "flatPath": "v1/services/{serviceName}:check",
- "id": "servicecontrol.services.check",
- "path": "v1/services/{serviceName}:check",
- "request": {
- "$ref": "CheckRequest"
- },
- "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\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[Google Cloud IAM](https://cloud.google.com/iam)."
- },
- "releaseQuota": {
- "request": {
- "$ref": "ReleaseQuotaRequest"
- },
- "description": "Releases previously allocated quota done through AllocateQuota method.\n\nThis method requires the `servicemanagement.services.quota`\npermission on the specified service. For more information, see\n[Google Cloud IAM](https://cloud.google.com/iam).\n\n**NOTE:** the client code **must** fail-open if the server returns one\nof the following quota errors:\n- `PROJECT_STATUS_UNAVAILABLE`\n- `SERVICE_STATUS_UNAVAILABLE`\n- `BILLING_STATUS_UNAVAILABLE`\n- `QUOTA_SYSTEM_UNAVAILABLE`\n\nThe server may inject above errors to prohibit any hard dependency\non the quota system.",
- "response": {
- "$ref": "ReleaseQuotaResponse"
- },
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/servicecontrol"
- ],
- "parameters": {
- "serviceName": {
- "location": "path",
- "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.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/services/{serviceName}:releaseQuota",
- "id": "servicecontrol.services.releaseQuota",
- "path": "v1/services/{serviceName}:releaseQuota"
- }
- }
- }
- },
- "parameters": {
- "alt": {
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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"
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "quotaUser": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "pp": {
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "$.xgafv": {
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string"
- }
- },
- "version": "v1",
- "baseUrl": "https://servicecontrol.googleapis.com/",
- "kind": "discovery#restDescription",
- "description": "Google Service Control provides control plane functionality to managed services, such as logging, monitoring, and status checks.",
- "servicePath": "",
- "basePath": "",
- "revision": "20170626",
- "documentationLink": "https://cloud.google.com/service-control/",
- "id": "servicecontrol:v1",
- "discoveryVersion": "v1",
- "version_module": "True"
+ "fullyEncodeReservedExpansion": true,
+ "title": "Google Service Control API"
}
diff --git a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go
index 16cef55..6bee243 100644
--- a/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go
+++ b/vendor/google.golang.org/api/servicecontrol/v1/servicecontrol-gen.go
@@ -326,6 +326,9 @@ type AuthenticationInfo struct {
// PrincipalEmail: The email address of the authenticated user making
// the request.
+ // For privacy reasons, the principal email address is redacted for
+ // all
+ // read-only operations that fail with a "permission denied" error.
PrincipalEmail string `json:"principalEmail,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuthoritySelector")
@@ -365,7 +368,7 @@ type AuthorizationInfo struct {
// Resource: The resource being accessed, as a REST-style string. For
// example:
//
- // bigquery.googlapis.com/projects/PROJECTID/datasets/DATASETID
+ // bigquery.googleapis.com/projects/PROJECTID/datasets/DATASETID
Resource string `json:"resource,omitempty"`
// ForceSendFields is a list of field names (e.g. "Granted") to
@@ -492,6 +495,9 @@ func (s *CheckError) MarshalJSON() ([]byte, error) {
}
type CheckInfo struct {
+ // ConsumerInfo: Consumer info of this check.
+ ConsumerInfo *ConsumerInfo `json:"consumerInfo,omitempty"`
+
// UnusedArguments: A list of fields and label keys that are ignored by
// the server.
// The client doesn't need to send them for following requests to
@@ -499,7 +505,7 @@ type CheckInfo struct {
// performance and allow better aggregation.
UnusedArguments []string `json:"unusedArguments,omitempty"`
- // ForceSendFields is a list of field names (e.g. "UnusedArguments") to
+ // ForceSendFields is a list of field names (e.g. "ConsumerInfo") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
@@ -507,13 +513,12 @@ type CheckInfo struct {
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "UnusedArguments") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
+ // NullFields is a list of field names (e.g. "ConsumerInfo") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
@@ -623,6 +628,37 @@ func (s *CheckResponse) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+// ConsumerInfo: `ConsumerInfo` provides information about the consumer
+// project.
+type ConsumerInfo struct {
+ // ProjectNumber: The Google cloud project number, e.g. 1234567890. A
+ // value of 0 indicates
+ // no project number is found.
+ ProjectNumber int64 `json:"projectNumber,omitempty,string"`
+
+ // ForceSendFields is a list of field names (e.g. "ProjectNumber") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "ProjectNumber") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *ConsumerInfo) MarshalJSON() ([]byte, error) {
+ type noMethod ConsumerInfo
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// Distribution: Distribution represents a frequency distribution of
// double-valued sample
// points. It contains the size of the population of sample points
@@ -1021,8 +1057,9 @@ type LogEntry struct {
// ProtoPayload: The log entry payload, represented as a protocol buffer
// that is
- // expressed as a JSON object. You can only pass `protoPayload`
- // values that belong to a set of approved types.
+ // expressed as a JSON object. The only accepted type currently
+ // is
+ // AuditLog.
ProtoPayload googleapi.RawMessage `json:"protoPayload,omitempty"`
// Severity: The severity of the log entry. The default value
@@ -1351,6 +1388,10 @@ type Operation struct {
// - “organizations/”
ResourceContainer string `json:"resourceContainer,omitempty"`
+ // ResourceContainers: DO NOT USE.
+ // This field is not ready for use yet.
+ ResourceContainers []string `json:"resourceContainers,omitempty"`
+
// StartTime: Required. Start time of the operation.
StartTime string `json:"startTime,omitempty"`
@@ -1389,6 +1430,17 @@ type QuotaError struct {
// "UNSPECIFIED" - This is never used.
// "RESOURCE_EXHAUSTED" - Quota allocation failed.
// Same as google.rpc.Code.RESOURCE_EXHAUSTED.
+ // "OUT_OF_RANGE" - Quota release failed. This error is ONLY returned
+ // on a NORMAL release.
+ // More formally: if a user requests a release of 10 tokens, but only
+ // 5 tokens were previously allocated, in a BEST_EFFORT release, this
+ // will
+ // be considered a success, 5 tokens will be released, and the result
+ // will
+ // be "Ok". If this is done in NORMAL mode, no tokens will be
+ // released,
+ // and an OUT_OF_RANGE error will be returned.
+ // Same as google.rpc.Code.OUT_OF_RANGE.
// "BILLING_NOT_ACTIVE" - Consumer cannot access the service because
// the service requires active
// billing.
@@ -1459,7 +1511,15 @@ type QuotaInfo struct {
// quota check was not successful, then this will not be populated due
// to no
// quota consumption.
- // Deprecated: Use quota_metrics to get per quota group usage.
+ //
+ // We are not merging this field with 'quota_metrics' field because of
+ // the
+ // complexity of scaling in Chemist client code base. For simplicity, we
+ // will
+ // keep this field for Castor (that scales quota usage) and
+ // 'quota_metrics'
+ // for SuperQuota (that doesn't scale quota usage).
+ //
QuotaConsumed map[string]int64 `json:"quotaConsumed,omitempty"`
// QuotaMetrics: Quota metrics to indicate the usage. Depending on the
@@ -1534,13 +1594,11 @@ type QuotaOperation struct {
// google.example.library.v1.LibraryService.CreateShelf
MethodName string `json:"methodName,omitempty"`
- // OperationId: Identity of the operation. This must be unique within
- // the scope of the
- // service that generated the operation. If the service calls
- // AllocateQuota
- // and ReleaseQuota on the same operation, the two calls should carry
- // the
- // same ID.
+ // OperationId: Identity of the operation. This is expected to be unique
+ // within the scope
+ // of the service that generated the operation, and guarantees
+ // idempotency in
+ // case of retries.
//
// UUID version 4 is recommended, though not required. In scenarios
// where an
@@ -1806,13 +1864,13 @@ func (s *ReleaseQuotaResponse) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// ReportError: Represents the processing error of one `Operation` in
-// the request.
+// ReportError: Represents the processing error of one Operation in the
+// request.
type ReportError struct {
// OperationId: The Operation.operation_id value from the request.
OperationId string `json:"operationId,omitempty"`
- // Status: Details of the error when processing the `Operation`.
+ // Status: Details of the error when processing the Operation.
Status *Status `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "OperationId") to
@@ -1990,6 +2048,18 @@ func (s *ReportResponse) MarshalJSON() ([]byte, error) {
// RequestMetadata: Metadata about the request.
type RequestMetadata struct {
// CallerIp: The IP address of the caller.
+ // For caller from internet, this will be public IPv4 or IPv6
+ // address.
+ // For caller from GCE VM with external IP address, this will be the
+ // VM's
+ // external IP address. For caller from GCE VM without external IP
+ // address, if
+ // the VM is in the same GCP organization (or project) as the
+ // accessed
+ // resource, `caller_ip` will be the GCE VM's internal IPv4 address,
+ // otherwise
+ // it will be redacted to "gce-internal-ip".
+ // See https://cloud.google.com/compute/docs/vpc/ for more information.
CallerIp string `json:"callerIp,omitempty"`
// CallerSuppliedUserAgent: The user agent of the caller.
@@ -2003,9 +2073,7 @@ type RequestMetadata struct {
// The request was made by the Google Cloud SDK CLI (gcloud).
// + `AppEngine-Google; (+http://code.google.com/appengine; appid:
// s~my-project`:
- // The request was made from the `my-project` App Engine
- // app.
- //
+ // The request was made from the `my-project` App Engine app.
// NOLINT
CallerSuppliedUserAgent string `json:"callerSuppliedUserAgent,omitempty"`
@@ -2210,9 +2278,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -2422,7 +2490,7 @@ type ServicesCheckCall struct {
// cached
// results for longer time.
//
-// NOTE: the `CheckRequest` has the size limit of 64KB.
+// NOTE: the CheckRequest has the size limit of 64KB.
//
// This method requires the `servicemanagement.services.check`
// permission
@@ -2521,7 +2589,7 @@ func (c *ServicesCheckCall) Do(opts ...googleapi.CallOption) (*CheckResponse, er
}
return ret, nil
// {
- // "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\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[Google Cloud IAM](https://cloud.google.com/iam).",
+ // "description": "Checks an operation with Google Service Control to decide whether\nthe given operation should proceed. It should be called before the\noperation is executed.\n\nIf feasible, the client should cache the check results and reuse them for\n60 seconds. In case of server errors, the client can rely on the cached\nresults for longer time.\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[Google Cloud IAM](https://cloud.google.com/iam).",
// "flatPath": "v1/services/{serviceName}:check",
// "httpMethod": "POST",
// "id": "servicecontrol.services.check",
@@ -2530,7 +2598,7 @@ func (c *ServicesCheckCall) Do(opts ...googleapi.CallOption) (*CheckResponse, er
// ],
// "parameters": {
// "serviceName": {
- // "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.",
+ // "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"
@@ -2872,7 +2940,7 @@ type ServicesReportCall struct {
// 0.01%
// for business and compliance reasons.
//
-// NOTE: the `ReportRequest` has the size limit of 1MB.
+// NOTE: the ReportRequest has the size limit of 1MB.
//
// This method requires the `servicemanagement.services.report`
// permission
@@ -2971,7 +3039,7 @@ func (c *ServicesReportCall) Do(opts ...googleapi.CallOption) (*ReportResponse,
}
return ret, nil
// {
- // "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 of 1MB.\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).",
+ // "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 of 1MB.\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",
@@ -2980,7 +3048,7 @@ func (c *ServicesReportCall) Do(opts ...googleapi.CallOption) (*ReportResponse,
// ],
// "parameters": {
// "serviceName": {
- // "description": "The service name as specified in its service configuration. For example,\n`\"pubsub.googleapis.com\"`.\n\nSee google.api.Service for the definition of a service name.",
+ // "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"
diff --git a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json
index cb1dcbb..623cbe6 100644
--- a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json
+++ b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-api.json
@@ -1,133 +1,109 @@
{
- "servicePath": "",
- "description": "Google Service Management allows service producers to publish their services on Google Cloud Platform so that they can be discovered and used by service consumers.",
- "kind": "discovery#restDescription",
- "rootUrl": "https://servicemanagement.googleapis.com/",
- "basePath": "",
"ownerDomain": "google.com",
"name": "servicemanagement",
"batchPath": "batch",
- "revision": "20170626",
- "documentationLink": "https://cloud.google.com/service-management/",
- "id": "servicemanagement:v1",
+ "fullyEncodeReservedExpansion": true,
"title": "Google Service Management API",
- "discoveryVersion": "v1",
"ownerName": "Google",
"resources": {
- "services": {
+ "operations": {
"methods": {
+ "get": {
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the operation resource.",
+ "type": "string",
+ "required": true,
+ "pattern": "^operations/.+$"
+ }
+ },
+ "flatPath": "v1/operations/{operationsId}",
+ "id": "servicemanagement.operations.get",
+ "path": "v1/{+name}",
+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice."
+ },
"list": {
"response": {
- "$ref": "ListServicesResponse"
+ "$ref": "ListOperationsResponse"
},
"parameterOrder": [],
"httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
"parameters": {
- "consumerId": {
- "location": "query",
- "description": "Include services consumed by the specified consumer.\n\nThe Google Service Management implementation accepts the following\nforms:\n- project:\u003cproject_id\u003e",
- "type": "string"
+ "filter": {
+ "description": "A string for filtering Operations.\n The following filter fields are supported:\n\n * serviceName: Required. Only `=` operator is allowed.\n * startTime: The time this job was started, in ISO 8601 format.\n Allowed operators are `\u003e=`, `\u003e`, `\u003c=`, and `\u003c`.\n * status: Can be `done`, `in_progress`, or `failed`. Allowed\n operators are `=`, and `!=`.\n\n Filter expression supports conjunction (AND) and disjunction (OR)\n logical operators. However, the serviceName restriction must be at the\n top-level and can only be combined with other restrictions via the AND\n logical operator.\n\n Examples:\n\n * `serviceName={some-service}.googleapis.com`\n * `serviceName={some-service}.googleapis.com AND startTime\u003e=\"2017-02-01\"`\n * `serviceName={some-service}.googleapis.com AND status=done`\n * `serviceName={some-service}.googleapis.com AND (status=done OR startTime\u003e=\"2017-02-01\")`",
+ "type": "string",
+ "location": "query"
},
"pageToken": {
"location": "query",
- "description": "Token identifying which result to start with; returned by a previous list\ncall.",
+ "description": "The standard list page token.",
+ "type": "string"
+ },
+ "name": {
+ "location": "query",
+ "description": "Not used.",
"type": "string"
},
"pageSize": {
"location": "query",
"format": "int32",
- "description": "Requested size of the next page of data.",
+ "description": "The maximum number of operations to return. If unspecified, defaults to\n50. The maximum value is 100.",
"type": "integer"
- },
- "producerProjectId": {
- "location": "query",
- "description": "Include services produced by the specified project.",
- "type": "string"
}
},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only",
- "https://www.googleapis.com/auth/service.management",
- "https://www.googleapis.com/auth/service.management.readonly"
- ],
- "flatPath": "v1/services",
- "id": "servicemanagement.services.list",
- "path": "v1/services",
- "description": "Lists managed services.\n\nReturns all public services. For authenticated users, also returns all\nservices the calling user has \"servicemanagement.services.get\" permission\nfor.\n\n**BETA:** If the caller specifies the `consumer_id`, it returns only the\nservices enabled on the consumer. The `consumer_id` must have the format\nof \"project:{PROJECT-ID}\"."
- },
- "create": {
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "parameters": {},
- "flatPath": "v1/services",
- "id": "servicemanagement.services.create",
- "path": "v1/services",
- "request": {
- "$ref": "ManagedService"
- },
- "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e"
- },
- "generateConfigReport": {
- "response": {
- "$ref": "GenerateConfigReportResponse"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "parameters": {},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "flatPath": "v1/services:generateConfigReport",
- "id": "servicemanagement.services.generateConfigReport",
- "path": "v1/services:generateConfigReport",
- "description": "Generates and returns a report (errors, warnings and changes from\nexisting configurations) associated with\nGenerateConfigReportRequest.new_value\n\nIf GenerateConfigReportRequest.old_value is specified,\nGenerateConfigReportRequest will contain a single ChangeReport based on the\ncomparison between GenerateConfigReportRequest.new_value and\nGenerateConfigReportRequest.old_value.\nIf GenerateConfigReportRequest.old_value is not specified, this method\nwill compare GenerateConfigReportRequest.new_value with the last pushed\nservice configuration.",
- "request": {
- "$ref": "GenerateConfigReportRequest"
- }
- },
+ "flatPath": "v1/operations",
+ "id": "servicemanagement.operations.list",
+ "path": "v1/operations",
+ "description": "Lists service operations that match the specified filter in the request."
+ }
+ }
+ },
+ "services": {
+ "methods": {
"get": {
- "id": "servicemanagement.services.get",
- "path": "v1/services/{serviceName}",
"description": "Gets a managed service. Authentication is required unless the service is\npublic.",
"response": {
"$ref": "ManagedService"
},
- "httpMethod": "GET",
"parameterOrder": [
"serviceName"
],
+ "httpMethod": "GET",
+ "parameters": {
+ "serviceName": {
+ "description": "The name of the service. See the `ServiceManager` overview for naming\nrequirements. For example: `example.googleapis.com`.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/cloud-platform.read-only",
"https://www.googleapis.com/auth/service.management",
"https://www.googleapis.com/auth/service.management.readonly"
],
- "parameters": {
- "serviceName": {
- "location": "path",
- "description": "The name of the service. See the `ServiceManager` overview for naming\nrequirements. For example: `example.googleapis.com`.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/services/{serviceName}"
+ "flatPath": "v1/services/{serviceName}",
+ "id": "servicemanagement.services.get",
+ "path": "v1/services/{serviceName}"
},
"testIamPermissions": {
- "id": "servicemanagement.services.testIamPermissions",
- "path": "v1/{+resource}:testIamPermissions",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
"response": {
"$ref": "TestIamPermissionsResponse"
},
@@ -135,12 +111,6 @@
"resource"
],
"httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only",
- "https://www.googleapis.com/auth/service.management",
- "https://www.googleapis.com/auth/service.management.readonly"
- ],
"parameters": {
"resource": {
"location": "path",
@@ -150,9 +120,22 @@
"pattern": "^services/[^/]+$"
}
},
- "flatPath": "v1/services/{servicesId}:testIamPermissions"
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only",
+ "https://www.googleapis.com/auth/service.management",
+ "https://www.googleapis.com/auth/service.management.readonly"
+ ],
+ "flatPath": "v1/services/{servicesId}:testIamPermissions",
+ "id": "servicemanagement.services.testIamPermissions",
+ "path": "v1/{+resource}:testIamPermissions",
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ }
},
"getConfig": {
+ "description": "Gets a service configuration (version) for a managed service.",
"response": {
"$ref": "Service"
},
@@ -168,13 +151,13 @@
],
"parameters": {
"view": {
- "description": "Specifies which parts of the Service Config should be returned in the\nresponse.",
- "type": "string",
"location": "query",
"enum": [
"BASIC",
"FULL"
- ]
+ ],
+ "description": "Specifies which parts of the Service Config should be returned in the\nresponse.",
+ "type": "string"
},
"serviceName": {
"description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
@@ -190,14 +173,34 @@
},
"flatPath": "v1/services/{serviceName}/config",
"id": "servicemanagement.services.getConfig",
- "path": "v1/services/{serviceName}/config",
- "description": "Gets a service configuration (version) for a managed service."
+ "path": "v1/services/{serviceName}/config"
+ },
+ "delete": {
+ "description": "Deletes a managed service. This method will change the service to the\n`Soft-Delete` state for 30 days. Within this period, service producers may\ncall UndeleteService to restore the service.\nAfter 30 days, the service will be permanently deleted.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e",
+ "httpMethod": "DELETE",
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "response": {
+ "$ref": "Operation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/services/{serviceName}",
+ "path": "v1/services/{serviceName}",
+ "id": "servicemanagement.services.delete"
},
"enable": {
- "request": {
- "$ref": "EnableServiceRequest"
- },
- "description": "Enables a service for a project, so it can be used\nfor the project. See\n[Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: EnableServiceResponse\u003e",
"response": {
"$ref": "Operation"
},
@@ -211,42 +214,25 @@
],
"parameters": {
"serviceName": {
- "type": "string",
- "required": true,
"location": "path",
- "description": "Name of the service to enable. Specifying an unknown service name will\ncause the request to fail."
+ "description": "Name of the service to enable. Specifying an unknown service name will\ncause the request to fail.",
+ "type": "string",
+ "required": true
}
},
"flatPath": "v1/services/{serviceName}:enable",
"id": "servicemanagement.services.enable",
- "path": "v1/services/{serviceName}:enable"
- },
- "delete": {
- "id": "servicemanagement.services.delete",
- "path": "v1/services/{serviceName}",
- "description": "Deletes a managed service. This method will change the service to the\n`Soft-Delete` state for 30 days. Within this period, service producers may\ncall UndeleteService to restore the service.\nAfter 30 days, the service will be permanently deleted.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e",
- "parameterOrder": [
- "serviceName"
- ],
- "response": {
- "$ref": "Operation"
+ "path": "v1/services/{serviceName}:enable",
+ "request": {
+ "$ref": "EnableServiceRequest"
},
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "parameters": {
- "serviceName": {
- "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
- "type": "string",
- "required": true,
- "location": "path"
- }
- },
- "flatPath": "v1/services/{serviceName}"
+ "description": "Enables a service for a project, so it can be used\nfor the project. See\n[Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: EnableServiceResponse\u003e"
},
"setIamPolicy": {
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
"response": {
"$ref": "Policy"
},
@@ -269,41 +255,44 @@
],
"flatPath": "v1/services/{servicesId}:setIamPolicy",
"id": "servicemanagement.services.setIamPolicy",
- "path": "v1/{+resource}:setIamPolicy",
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
- "request": {
- "$ref": "SetIamPolicyRequest"
- }
+ "path": "v1/{+resource}:setIamPolicy"
},
"disable": {
- "description": "Disables a service for a project, so it can no longer be\nbe used for the project. It prevents accidental usage that may cause\nunexpected billing charges or security leaks.\n\nOperation\u003cresponse: DisableServiceResponse\u003e",
"request": {
"$ref": "DisableServiceRequest"
},
- "httpMethod": "POST",
- "parameterOrder": [
- "serviceName"
- ],
+ "description": "Disables a service for a project, so it can no longer be\nbe used for the project. It prevents accidental usage that may cause\nunexpected billing charges or security leaks.\n\nOperation\u003cresponse: DisableServiceResponse\u003e",
"response": {
"$ref": "Operation"
},
- "parameters": {
- "serviceName": {
- "location": "path",
- "description": "Name of the service to disable. Specifying an unknown service name\nwill cause the request to fail.",
- "type": "string",
- "required": true
- }
- },
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/service.management"
],
+ "parameters": {
+ "serviceName": {
+ "description": "Name of the service to disable. Specifying an unknown service name\nwill cause the request to fail.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
"flatPath": "v1/services/{serviceName}:disable",
- "path": "v1/services/{serviceName}:disable",
- "id": "servicemanagement.services.disable"
+ "id": "servicemanagement.services.disable",
+ "path": "v1/services/{serviceName}:disable"
},
"getIamPolicy": {
+ "flatPath": "v1/services/{servicesId}:getIamPolicy",
+ "id": "servicemanagement.services.getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy",
+ "request": {
+ "$ref": "GetIamPolicyRequest"
+ },
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
"response": {
"$ref": "Policy"
},
@@ -311,33 +300,23 @@
"resource"
],
"httpMethod": "POST",
- "parameters": {
- "resource": {
- "type": "string",
- "required": true,
- "pattern": "^services/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field."
- }
- },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/cloud-platform.read-only",
"https://www.googleapis.com/auth/service.management",
"https://www.googleapis.com/auth/service.management.readonly"
],
- "flatPath": "v1/services/{servicesId}:getIamPolicy",
- "id": "servicemanagement.services.getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy",
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "request": {
- "$ref": "GetIamPolicyRequest"
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^services/[^/]+$",
+ "location": "path"
+ }
}
},
"undelete": {
- "flatPath": "v1/services/{serviceName}:undelete",
- "id": "servicemanagement.services.undelete",
- "path": "v1/services/{serviceName}:undelete",
"description": "Revives a previously deleted managed service. The method restores the\nservice using the configuration at the time the service was deleted.\nThe target service must exist and must have been deleted within the\nlast 30 days.\n\nOperation\u003cresponse: UndeleteServiceResponse\u003e",
"response": {
"$ref": "Operation"
@@ -352,18 +331,306 @@
],
"parameters": {
"serviceName": {
+ "location": "path",
"description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
"type": "string",
- "required": true,
- "location": "path"
+ "required": true
}
- }
+ },
+ "flatPath": "v1/services/{serviceName}:undelete",
+ "id": "servicemanagement.services.undelete",
+ "path": "v1/services/{serviceName}:undelete"
+ },
+ "list": {
+ "description": "Lists managed services.\n\nReturns all public services. For authenticated users, also returns all\nservices the calling user has \"servicemanagement.services.get\" permission\nfor.\n\n**BETA:** If the caller specifies the `consumer_id`, it returns only the\nservices enabled on the consumer. The `consumer_id` must have the format\nof \"project:{PROJECT-ID}\".",
+ "response": {
+ "$ref": "ListServicesResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only",
+ "https://www.googleapis.com/auth/service.management",
+ "https://www.googleapis.com/auth/service.management.readonly"
+ ],
+ "parameters": {
+ "consumerId": {
+ "location": "query",
+ "description": "Include services consumed by the specified consumer.\n\nThe Google Service Management implementation accepts the following\nforms:\n- project:\u003cproject_id\u003e",
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "Token identifying which result to start with; returned by a previous list\ncall.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "Requested size of the next page of data.",
+ "type": "integer",
+ "location": "query"
+ },
+ "producerProjectId": {
+ "location": "query",
+ "description": "Include services produced by the specified project.",
+ "type": "string"
+ }
+ },
+ "flatPath": "v1/services",
+ "id": "servicemanagement.services.list",
+ "path": "v1/services"
+ },
+ "create": {
+ "flatPath": "v1/services",
+ "path": "v1/services",
+ "id": "servicemanagement.services.create",
+ "request": {
+ "$ref": "ManagedService"
+ },
+ "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e",
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "Operation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
+ "parameters": {}
+ },
+ "generateConfigReport": {
+ "description": "Generates and returns a report (errors, warnings and changes from\nexisting configurations) associated with\nGenerateConfigReportRequest.new_value\n\nIf GenerateConfigReportRequest.old_value is specified,\nGenerateConfigReportRequest will contain a single ChangeReport based on the\ncomparison between GenerateConfigReportRequest.new_value and\nGenerateConfigReportRequest.old_value.\nIf GenerateConfigReportRequest.old_value is not specified, this method\nwill compare GenerateConfigReportRequest.new_value with the last pushed\nservice configuration.",
+ "request": {
+ "$ref": "GenerateConfigReportRequest"
+ },
+ "response": {
+ "$ref": "GenerateConfigReportResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {},
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
+ "flatPath": "v1/services:generateConfigReport",
+ "id": "servicemanagement.services.generateConfigReport",
+ "path": "v1/services:generateConfigReport"
}
},
"resources": {
+ "configs": {
+ "methods": {
+ "submit": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameters": {
+ "serviceName": {
+ "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
+ "flatPath": "v1/services/{serviceName}/configs:submit",
+ "path": "v1/services/{serviceName}/configs:submit",
+ "id": "servicemanagement.services.configs.submit",
+ "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e",
+ "request": {
+ "$ref": "SubmitConfigSourceRequest"
+ }
+ },
+ "get": {
+ "description": "Gets a service configuration (version) for a managed service.",
+ "response": {
+ "$ref": "Service"
+ },
+ "parameterOrder": [
+ "serviceName",
+ "configId"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only",
+ "https://www.googleapis.com/auth/service.management",
+ "https://www.googleapis.com/auth/service.management.readonly"
+ ],
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
+ "type": "string",
+ "required": true
+ },
+ "configId": {
+ "description": "The id of the service configuration resource.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
+ "view": {
+ "description": "Specifies which parts of the Service Config should be returned in the\nresponse.",
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "BASIC",
+ "FULL"
+ ]
+ }
+ },
+ "flatPath": "v1/services/{serviceName}/configs/{configId}",
+ "id": "servicemanagement.services.configs.get",
+ "path": "v1/services/{serviceName}/configs/{configId}"
+ },
+ "list": {
+ "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "response": {
+ "$ref": "ListServiceConfigsResponse"
+ },
+ "parameters": {
+ "serviceName": {
+ "location": "path",
+ "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
+ "type": "string",
+ "required": true
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "The token of the page to retrieve.",
+ "type": "string"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "The max number of items to include in the response list.",
+ "type": "integer"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only",
+ "https://www.googleapis.com/auth/service.management",
+ "https://www.googleapis.com/auth/service.management.readonly"
+ ],
+ "flatPath": "v1/services/{serviceName}/configs",
+ "path": "v1/services/{serviceName}/configs",
+ "id": "servicemanagement.services.configs.list"
+ },
+ "create": {
+ "flatPath": "v1/services/{serviceName}/configs",
+ "id": "servicemanagement.services.configs.create",
+ "path": "v1/services/{serviceName}/configs",
+ "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout.",
+ "request": {
+ "$ref": "Service"
+ },
+ "response": {
+ "$ref": "Service"
+ },
+ "parameterOrder": [
+ "serviceName"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "serviceName": {
+ "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ]
+ }
+ }
+ },
"consumers": {
"methods": {
+ "testIamPermissions": {
+ "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:testIamPermissions",
+ "id": "servicemanagement.services.consumers.testIamPermissions",
+ "path": "v1/{+resource}:testIamPermissions",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only",
+ "https://www.googleapis.com/auth/service.management",
+ "https://www.googleapis.com/auth/service.management.readonly"
+ ],
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^services/[^/]+/consumers/[^/]+$"
+ }
+ }
+ },
+ "getIamPolicy": {
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^services/[^/]+/consumers/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only",
+ "https://www.googleapis.com/auth/service.management",
+ "https://www.googleapis.com/auth/service.management.readonly"
+ ],
+ "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy",
+ "id": "servicemanagement.services.consumers.getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy",
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
+ "request": {
+ "$ref": "GetIamPolicyRequest"
+ }
+ },
"setIamPolicy": {
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
"response": {
"$ref": "Policy"
},
@@ -386,73 +653,7 @@
],
"flatPath": "v1/services/{servicesId}/consumers/{consumersId}:setIamPolicy",
"id": "servicemanagement.services.consumers.setIamPolicy",
- "path": "v1/{+resource}:setIamPolicy",
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
- "request": {
- "$ref": "SetIamPolicyRequest"
- }
- },
- "testIamPermissions": {
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only",
- "https://www.googleapis.com/auth/service.management",
- "https://www.googleapis.com/auth/service.management.readonly"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^services/[^/]+/consumers/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:testIamPermissions",
- "id": "servicemanagement.services.consumers.testIamPermissions",
- "path": "v1/{+resource}:testIamPermissions",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning."
- },
- "getIamPolicy": {
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only",
- "https://www.googleapis.com/auth/service.management",
- "https://www.googleapis.com/auth/service.management.readonly"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^services/[^/]+/consumers/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy",
- "id": "servicemanagement.services.consumers.getIamPolicy",
- "request": {
- "$ref": "GetIamPolicyRequest"
- },
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset."
+ "path": "v1/{+resource}:setIamPolicy"
}
}
},
@@ -460,14 +661,20 @@
"methods": {
"get": {
"description": "Gets a service configuration rollout.",
- "response": {
- "$ref": "Rollout"
- },
+ "httpMethod": "GET",
"parameterOrder": [
"serviceName",
"rolloutId"
],
- "httpMethod": "GET",
+ "response": {
+ "$ref": "Rollout"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-platform.read-only",
+ "https://www.googleapis.com/auth/service.management",
+ "https://www.googleapis.com/auth/service.management.readonly"
+ ],
"parameters": {
"serviceName": {
"location": "path",
@@ -482,306 +689,91 @@
"location": "path"
}
},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only",
- "https://www.googleapis.com/auth/service.management",
- "https://www.googleapis.com/auth/service.management.readonly"
- ],
"flatPath": "v1/services/{serviceName}/rollouts/{rolloutId}",
- "id": "servicemanagement.services.rollouts.get",
- "path": "v1/services/{serviceName}/rollouts/{rolloutId}"
+ "path": "v1/services/{serviceName}/rollouts/{rolloutId}",
+ "id": "servicemanagement.services.rollouts.get"
},
"list": {
- "response": {
- "$ref": "ListServiceRolloutsResponse"
- },
+ "flatPath": "v1/services/{serviceName}/rollouts",
+ "path": "v1/services/{serviceName}/rollouts",
+ "id": "servicemanagement.services.rollouts.list",
+ "description": "Lists the history of the service configuration rollouts for a managed\nservice, from the newest to the oldest.",
+ "httpMethod": "GET",
"parameterOrder": [
"serviceName"
],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only",
- "https://www.googleapis.com/auth/service.management",
- "https://www.googleapis.com/auth/service.management.readonly"
- ],
+ "response": {
+ "$ref": "ListServiceRolloutsResponse"
+ },
"parameters": {
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "The max number of items to include in the response list.",
+ "type": "integer"
+ },
"filter": {
"location": "query",
"description": "Use `filter` to return subset of rollouts.\nThe following filters are supported:\n -- To limit the results to only those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'SUCCESS',\n use filter='status=SUCCESS'\n -- To limit the results to those in\n [status](google.api.servicemanagement.v1.RolloutStatus) 'CANCELLED'\n or 'FAILED', use filter='status=CANCELLED OR status=FAILED'",
"type": "string"
},
"serviceName": {
- "location": "path",
"description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
"type": "string",
- "required": true
+ "required": true,
+ "location": "path"
},
"pageToken": {
+ "location": "query",
"description": "The token of the page to retrieve.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "type": "integer",
- "location": "query",
- "format": "int32",
- "description": "The max number of items to include in the response list."
- }
- },
- "flatPath": "v1/services/{serviceName}/rollouts",
- "id": "servicemanagement.services.rollouts.list",
- "path": "v1/services/{serviceName}/rollouts",
- "description": "Lists the history of the service configuration rollouts for a managed\nservice, from the newest to the oldest."
- },
- "create": {
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "POST",
- "parameters": {
- "serviceName": {
- "location": "path",
- "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "flatPath": "v1/services/{serviceName}/rollouts",
- "id": "servicemanagement.services.rollouts.create",
- "path": "v1/services/{serviceName}/rollouts",
- "description": "Creates a new service configuration rollout. Based on rollout, the\nGoogle Service Management will roll out the service configurations to\ndifferent backend services. For example, the logging configuration will be\npushed to Google Cloud Logging.\n\nPlease note that any previous pending and running Rollouts and associated\nOperations will be automatically cancelled so that the latest Rollout will\nnot be blocked by previous Rollouts.\n\nOperation\u003cresponse: Rollout\u003e",
- "request": {
- "$ref": "Rollout"
- }
- }
- }
- },
- "configs": {
- "methods": {
- "get": {
- "description": "Gets a service configuration (version) for a managed service.",
- "httpMethod": "GET",
- "response": {
- "$ref": "Service"
- },
- "parameterOrder": [
- "serviceName",
- "configId"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/cloud-platform.read-only",
- "https://www.googleapis.com/auth/service.management",
- "https://www.googleapis.com/auth/service.management.readonly"
- ],
- "parameters": {
- "serviceName": {
- "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "configId": {
- "description": "The id of the service configuration resource.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "view": {
- "location": "query",
- "enum": [
- "BASIC",
- "FULL"
- ],
- "description": "Specifies which parts of the Service Config should be returned in the\nresponse.",
"type": "string"
}
},
- "flatPath": "v1/services/{serviceName}/configs/{configId}",
- "path": "v1/services/{serviceName}/configs/{configId}",
- "id": "servicemanagement.services.configs.get"
- },
- "list": {
- "flatPath": "v1/services/{serviceName}/configs",
- "id": "servicemanagement.services.configs.list",
- "path": "v1/services/{serviceName}/configs",
- "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest.",
- "response": {
- "$ref": "ListServiceConfigsResponse"
- },
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/cloud-platform.read-only",
"https://www.googleapis.com/auth/service.management",
"https://www.googleapis.com/auth/service.management.readonly"
- ],
- "parameters": {
- "serviceName": {
- "location": "path",
- "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
- "type": "string",
- "required": true
- },
- "pageToken": {
- "description": "The token of the page to retrieve.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "format": "int32",
- "description": "The max number of items to include in the response list.",
- "type": "integer",
- "location": "query"
- }
- }
+ ]
},
"create": {
- "response": {
- "$ref": "Service"
+ "request": {
+ "$ref": "Rollout"
},
+ "description": "Creates a new service configuration rollout. Based on rollout, the\nGoogle Service Management will roll out the service configurations to\ndifferent backend services. For example, the logging configuration will be\npushed to Google Cloud Logging.\n\nPlease note that any previous pending and running Rollouts and associated\nOperations will be automatically cancelled so that the latest Rollout will\nnot be blocked by previous Rollouts.\n\nOperation\u003cresponse: Rollout\u003e",
+ "httpMethod": "POST",
"parameterOrder": [
"serviceName"
],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "parameters": {
- "serviceName": {
- "location": "path",
- "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/services/{serviceName}/configs",
- "id": "servicemanagement.services.configs.create",
- "path": "v1/services/{serviceName}/configs",
- "request": {
- "$ref": "Service"
- },
- "description": "Creates a new service configuration (version) for a managed service.\nThis method only stores the service configuration. To roll out the service\nconfiguration to backend systems please call\nCreateServiceRollout."
- },
- "submit": {
"response": {
"$ref": "Operation"
},
- "parameterOrder": [
- "serviceName"
- ],
- "httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/service.management"
],
"parameters": {
"serviceName": {
- "type": "string",
- "required": true,
"location": "path",
- "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`."
+ "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.",
+ "type": "string",
+ "required": true
}
},
- "flatPath": "v1/services/{serviceName}/configs:submit",
- "id": "servicemanagement.services.configs.submit",
- "path": "v1/services/{serviceName}/configs:submit",
- "request": {
- "$ref": "SubmitConfigSourceRequest"
- },
- "description": "Creates a new service configuration (version) for a managed service based\non\nuser-supplied configuration source files (for example: OpenAPI\nSpecification). This method stores the source configurations as well as the\ngenerated service configuration. To rollout the service configuration to\nother services,\nplease call CreateServiceRollout.\n\nOperation\u003cresponse: SubmitConfigSourceResponse\u003e"
+ "flatPath": "v1/services/{serviceName}/rollouts",
+ "path": "v1/services/{serviceName}/rollouts",
+ "id": "servicemanagement.services.rollouts.create"
}
}
}
}
- },
- "operations": {
- "methods": {
- "get": {
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^operations/.+$",
- "location": "path",
- "description": "The name of the operation resource."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "flatPath": "v1/operations/{operationsId}",
- "id": "servicemanagement.operations.get",
- "path": "v1/{+name}",
- "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET"
- },
- "list": {
- "path": "v1/operations",
- "id": "servicemanagement.operations.list",
- "description": "Lists service operations that match the specified filter in the request.",
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "ListOperationsResponse"
- },
- "parameters": {
- "filter": {
- "location": "query",
- "description": "A string for filtering Operations.\n The following filter fields are supported:\n\n * serviceName: Required. Only `=` operator is allowed.\n * startTime: The time this job was started, in ISO 8601 format.\n Allowed operators are `\u003e=`, `\u003e`, `\u003c=`, and `\u003c`.\n * status: Can be `done`, `in_progress`, or `failed`. Allowed\n operators are `=`, and `!=`.\n\n Filter expression supports conjunction (AND) and disjunction (OR)\n logical operators. However, the serviceName restriction must be at the\n top-level and can only be combined with other restrictions via the AND\n logical operator.\n\n Examples:\n\n * `serviceName={some-service}.googleapis.com`\n * `serviceName={some-service}.googleapis.com AND startTime\u003e=\"2017-02-01\"`\n * `serviceName={some-service}.googleapis.com AND status=done`\n * `serviceName={some-service}.googleapis.com AND (status=done OR startTime\u003e=\"2017-02-01\")`",
- "type": "string"
- },
- "pageToken": {
- "type": "string",
- "location": "query",
- "description": "The standard list page token."
- },
- "name": {
- "location": "query",
- "description": "Not used.",
- "type": "string"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "The maximum number of operations to return. If unspecified, defaults to\n50. The maximum value is 100.",
- "type": "integer"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "flatPath": "v1/operations"
- }
- }
}
},
"parameters": {
"quotaUser": {
+ "location": "query",
"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.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"pp": {
"location": "query",
@@ -790,29 +782,24 @@
"type": "boolean"
},
"oauth_token": {
- "location": "query",
"description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string",
"location": "query"
},
- "prettyPrint": {
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
+ "location": "query"
+ },
+ "upload_protocol": {
"location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string"
+ },
+ "prettyPrint": {
"description": "Returns response with indentations and line breaks.",
"default": "true",
- "type": "boolean"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
+ "type": "boolean",
"location": "query"
},
"fields": {
@@ -820,10 +807,15 @@
"description": "Selector specifying which fields to include in a partial response.",
"type": "string"
},
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
"callback": {
- "location": "query",
"description": "JSONP",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"$.xgafv": {
"enumDescriptions": [
@@ -839,8 +831,6 @@
"type": "string"
},
"alt": {
- "description": "Data format for response.",
- "default": "json",
"enum": [
"json",
"media",
@@ -852,39 +842,1072 @@
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
- "location": "query"
+ "location": "query",
+ "description": "Data format for response.",
+ "default": "json"
},
"access_token": {
+ "location": "query",
"description": "OAuth access token.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"key": {
- "location": "query",
"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.",
- "type": "string"
+ "type": "string",
+ "location": "query"
}
},
+ "version": "v1",
+ "baseUrl": "https://servicemanagement.googleapis.com/",
+ "kind": "discovery#restDescription",
+ "description": "Google Service Management allows service producers to publish their services on Google Cloud Platform so that they can be discovered and used by service consumers.",
+ "servicePath": "",
+ "basePath": "",
+ "id": "servicemanagement:v1",
+ "documentationLink": "https://cloud.google.com/service-management/",
+ "revision": "20170819",
+ "discoveryVersion": "v1",
"schemas": {
+ "AuditLogConfig": {
+ "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.",
+ "type": "object",
+ "properties": {
+ "logType": {
+ "description": "The log type that this config enables.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default case. Should never be this.",
+ "Admin reads. Example: CloudIAM getIamPolicy",
+ "Data writes. Example: CloudSQL Users create",
+ "Data reads. Example: CloudSQL Users list"
+ ],
+ "enum": [
+ "LOG_TYPE_UNSPECIFIED",
+ "ADMIN_READ",
+ "DATA_WRITE",
+ "DATA_READ"
+ ]
+ },
+ "exemptedMembers": {
+ "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "AuditLogConfig"
+ },
+ "ConfigSource": {
+ "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.",
+ "type": "string"
+ },
+ "files": {
+ "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).",
+ "items": {
+ "$ref": "ConfigFile"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ConfigSource"
+ },
+ "BackendRule": {
+ "description": "A backend rule provides configuration for an individual API element.",
+ "type": "object",
+ "properties": {
+ "minDeadline": {
+ "format": "double",
+ "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.",
+ "type": "number"
+ },
+ "address": {
+ "description": "The address of the API backend.",
+ "type": "string"
+ },
+ "selector": {
+ "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ },
+ "deadline": {
+ "format": "double",
+ "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context.",
+ "type": "number"
+ }
+ },
+ "id": "BackendRule"
+ },
+ "AuthenticationRule": {
+ "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.",
+ "type": "object",
+ "properties": {
+ "customAuth": {
+ "description": "Configuration for custom authentication.",
+ "$ref": "CustomAuthRequirements"
+ },
+ "oauth": {
+ "description": "The requirements for OAuth credentials.",
+ "$ref": "OAuthRequirements"
+ },
+ "requirements": {
+ "description": "Requirements for additional authentication providers.",
+ "items": {
+ "$ref": "AuthRequirement"
+ },
+ "type": "array"
+ },
+ "allowWithoutCredential": {
+ "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.",
+ "type": "boolean"
+ },
+ "selector": {
+ "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ }
+ },
+ "id": "AuthenticationRule"
+ },
+ "UndeleteServiceResponse": {
+ "description": "Response message for UndeleteService method.",
+ "type": "object",
+ "properties": {
+ "service": {
+ "$ref": "ManagedService",
+ "description": "Revived service resource."
+ }
+ },
+ "id": "UndeleteServiceResponse"
+ },
+ "Policy": {
+ "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
+ "type": "object",
+ "properties": {
+ "iamOwned": {
+ "type": "boolean"
+ },
+ "rules": {
+ "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.",
+ "items": {
+ "$ref": "Rule"
+ },
+ "type": "array"
+ },
+ "version": {
+ "format": "int32",
+ "description": "Version of the `Policy`. The default version is 0.",
+ "type": "integer"
+ },
+ "auditConfigs": {
+ "description": "Specifies cloud audit logging configuration for this policy.",
+ "items": {
+ "$ref": "AuditConfig"
+ },
+ "type": "array"
+ },
+ "bindings": {
+ "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
+ "items": {
+ "$ref": "Binding"
+ },
+ "type": "array"
+ },
+ "etag": {
+ "format": "byte",
+ "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
+ "type": "string"
+ }
+ },
+ "id": "Policy"
+ },
+ "Api": {
+ "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.",
+ "type": "object",
+ "properties": {
+ "options": {
+ "description": "Any metadata attached to the interface.",
+ "items": {
+ "$ref": "Option"
+ },
+ "type": "array"
+ },
+ "methods": {
+ "description": "The methods of this interface, in unspecified order.",
+ "items": {
+ "$ref": "Method"
+ },
+ "type": "array"
+ },
+ "name": {
+ "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.",
+ "type": "string"
+ },
+ "sourceContext": {
+ "description": "Source context for the protocol buffer service represented by this\nmessage.",
+ "$ref": "SourceContext"
+ },
+ "syntax": {
+ "description": "The source syntax of the service.",
+ "type": "string",
+ "enumDescriptions": [
+ "Syntax `proto2`.",
+ "Syntax `proto3`."
+ ],
+ "enum": [
+ "SYNTAX_PROTO2",
+ "SYNTAX_PROTO3"
+ ]
+ },
+ "version": {
+ "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n",
+ "type": "string"
+ },
+ "mixins": {
+ "description": "Included interfaces. See Mixin.",
+ "items": {
+ "$ref": "Mixin"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Api"
+ },
+ "MetricRule": {
+ "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.",
+ "type": "object",
+ "properties": {
+ "metricCosts": {
+ "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.",
+ "type": "object",
+ "additionalProperties": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "selector": {
+ "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ }
+ },
+ "id": "MetricRule"
+ },
+ "DataAccessOptions": {
+ "description": "Write a Data Access (Gin) log",
+ "type": "object",
+ "properties": {
+ "logMode": {
+ "enumDescriptions": [
+ "Client is not required to write a partial Gin log immediately after\nthe authorization check. If client chooses to write one and it fails,\nclient may either fail open (allow the operation to continue) or\nfail closed (handle as a DENY outcome).",
+ "The application's operation in the context of which this authorization\ncheck is being made may only be performed if it is successfully logged\nto Gin. For instance, the authorization library may satisfy this\nobligation by emitting a partial log entry at authorization check time\nand only returning ALLOW to the application if it succeeds.\n\nIf a matching Rule has this directive, but the client has not indicated\nthat it will honor such requirements, then the IAM check will result in\nauthorization failure by setting CheckPolicyResponse.success=false."
+ ],
+ "enum": [
+ "LOG_MODE_UNSPECIFIED",
+ "LOG_FAIL_CLOSED"
+ ],
+ "description": "Whether Gin logging should happen in a fail-closed manner at the caller.\nThis is relevant only in the LocalIAM implementation, for now.",
+ "type": "string"
+ }
+ },
+ "id": "DataAccessOptions"
+ },
+ "Authentication": {
+ "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth",
+ "type": "object",
+ "properties": {
+ "providers": {
+ "description": "Defines a set of authentication providers that a service supports.",
+ "items": {
+ "$ref": "AuthProvider"
+ },
+ "type": "array"
+ },
+ "rules": {
+ "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "AuthenticationRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Authentication"
+ },
+ "Operation": {
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "description": "The error result of the operation in case of failure or cancellation.",
+ "$ref": "Status"
+ },
+ "metadata": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
+ "type": "object"
+ },
+ "done": {
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
+ "type": "boolean"
+ },
+ "response": {
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "type": "string"
+ }
+ },
+ "id": "Operation"
+ },
+ "Page": {
+ "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.",
+ "type": "object",
+ "properties": {
+ "content": {
+ "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.",
+ "type": "string"
+ },
+ "subpages": {
+ "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.",
+ "items": {
+ "$ref": "Page"
+ },
+ "type": "array"
+ },
+ "name": {
+ "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.",
+ "type": "string"
+ }
+ },
+ "id": "Page"
+ },
+ "Status": {
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
+ },
+ "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"
+ }
+ },
+ "id": "Status"
+ },
+ "Binding": {
+ "description": "Associates `members` with a `role`.",
+ "type": "object",
+ "properties": {
+ "condition": {
+ "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL.",
+ "$ref": "Expr"
+ },
+ "members": {
+ "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "role": {
+ "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
+ "type": "string"
+ }
+ },
+ "id": "Binding"
+ },
+ "AuthProvider": {
+ "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).",
+ "type": "object",
+ "properties": {
+ "jwksUri": {
+ "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs",
+ "type": "string"
+ },
+ "audiences": {
+ "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com",
+ "type": "string"
+ },
+ "authorizationUrl": {
+ "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.",
+ "type": "string"
+ },
+ "issuer": {
+ "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com",
+ "type": "string"
+ },
+ "id": {
+ "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".",
+ "type": "string"
+ }
+ },
+ "id": "AuthProvider"
+ },
+ "EnumValue": {
+ "description": "Enum value definition.",
+ "type": "object",
+ "properties": {
+ "options": {
+ "description": "Protocol buffer options.",
+ "items": {
+ "$ref": "Option"
+ },
+ "type": "array"
+ },
+ "number": {
+ "format": "int32",
+ "description": "Enum value number.",
+ "type": "integer"
+ },
+ "name": {
+ "description": "Enum value name.",
+ "type": "string"
+ }
+ },
+ "id": "EnumValue"
+ },
+ "Service": {
+ "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth",
+ "type": "object",
+ "properties": {
+ "metrics": {
+ "description": "Defines the metrics used by this service.",
+ "items": {
+ "$ref": "MetricDescriptor"
+ },
+ "type": "array"
+ },
+ "authentication": {
+ "$ref": "Authentication",
+ "description": "Auth configuration."
+ },
+ "experimental": {
+ "$ref": "Experimental",
+ "description": "Experimental configuration."
+ },
+ "control": {
+ "description": "Configuration for the service control plane.",
+ "$ref": "Control"
+ },
+ "configVersion": {
+ "format": "uint32",
+ "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.",
+ "type": "integer"
+ },
+ "monitoring": {
+ "$ref": "Monitoring",
+ "description": "Monitoring configuration."
+ },
+ "systemTypes": {
+ "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.",
+ "items": {
+ "$ref": "Type"
+ },
+ "type": "array"
+ },
+ "producerProjectId": {
+ "description": "The Google project that owns this service.",
+ "type": "string"
+ },
+ "visibility": {
+ "$ref": "Visibility",
+ "description": "API visibility configuration."
+ },
+ "quota": {
+ "description": "Quota configuration.",
+ "$ref": "Quota"
+ },
+ "name": {
+ "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.",
+ "type": "string"
+ },
+ "customError": {
+ "$ref": "CustomError",
+ "description": "Custom error configuration."
+ },
+ "title": {
+ "description": "The product title for this service.",
+ "type": "string"
+ },
+ "endpoints": {
+ "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.",
+ "items": {
+ "$ref": "Endpoint"
+ },
+ "type": "array"
+ },
+ "apis": {
+ "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.",
+ "items": {
+ "$ref": "Api"
+ },
+ "type": "array"
+ },
+ "logs": {
+ "description": "Defines the logs used by this service.",
+ "items": {
+ "$ref": "LogDescriptor"
+ },
+ "type": "array"
+ },
+ "types": {
+ "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32",
+ "items": {
+ "$ref": "Type"
+ },
+ "type": "array"
+ },
+ "sourceInfo": {
+ "$ref": "SourceInfo",
+ "description": "Output only. The source information for this configuration if available."
+ },
+ "http": {
+ "$ref": "Http",
+ "description": "HTTP configuration."
+ },
+ "systemParameters": {
+ "$ref": "SystemParameters",
+ "description": "System parameter configuration."
+ },
+ "backend": {
+ "$ref": "Backend",
+ "description": "API backend configuration."
+ },
+ "documentation": {
+ "description": "Additional API documentation.",
+ "$ref": "Documentation"
+ },
+ "logging": {
+ "$ref": "Logging",
+ "description": "Logging configuration."
+ },
+ "monitoredResources": {
+ "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.",
+ "items": {
+ "$ref": "MonitoredResourceDescriptor"
+ },
+ "type": "array"
+ },
+ "enums": {
+ "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum",
+ "items": {
+ "$ref": "Enum"
+ },
+ "type": "array"
+ },
+ "context": {
+ "description": "Context configuration.",
+ "$ref": "Context"
+ },
+ "id": {
+ "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.",
+ "type": "string"
+ },
+ "usage": {
+ "$ref": "Usage",
+ "description": "Configuration controlling usage of this service."
+ }
+ },
+ "id": "Service"
+ },
+ "ListOperationsResponse": {
+ "description": "The response message for Operations.ListOperations.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "The standard List next-page token.",
+ "type": "string"
+ },
+ "operations": {
+ "description": "A list of operations that matches the specified filter in the request.",
+ "items": {
+ "$ref": "Operation"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListOperationsResponse"
+ },
+ "OperationMetadata": {
+ "description": "The metadata associated with a long running operation resource.",
+ "type": "object",
+ "properties": {
+ "startTime": {
+ "format": "google-datetime",
+ "description": "The start time of the operation.",
+ "type": "string"
+ },
+ "steps": {
+ "description": "Detailed status information for each step. The order is undetermined.",
+ "items": {
+ "$ref": "Step"
+ },
+ "type": "array"
+ },
+ "resourceNames": {
+ "description": "The full name of the resources that this operation is directly\nassociated with.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "progressPercentage": {
+ "format": "int32",
+ "description": "Percentage of completion of this operation, ranging from 0 to 100.",
+ "type": "integer"
+ }
+ },
+ "id": "OperationMetadata"
+ },
+ "CustomHttpPattern": {
+ "description": "A custom pattern is used for defining custom HTTP verb.",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "The name of this custom HTTP verb.",
+ "type": "string"
+ },
+ "path": {
+ "description": "The path matched by this custom verb.",
+ "type": "string"
+ }
+ },
+ "id": "CustomHttpPattern"
+ },
+ "SystemParameterRule": {
+ "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.",
+ "type": "object",
+ "properties": {
+ "parameters": {
+ "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.",
+ "items": {
+ "$ref": "SystemParameter"
+ },
+ "type": "array"
+ },
+ "selector": {
+ "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ }
+ },
+ "id": "SystemParameterRule"
+ },
+ "VisibilityRule": {
+ "description": "A visibility rule provides visibility configuration for an individual API\nelement.",
+ "type": "object",
+ "properties": {
+ "restriction": {
+ "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.",
+ "type": "string"
+ },
+ "selector": {
+ "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ }
+ },
+ "id": "VisibilityRule"
+ },
+ "HttpRule": {
+ "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.",
+ "type": "object",
+ "properties": {
+ "post": {
+ "description": "Used for creating a resource.",
+ "type": "string"
+ },
+ "mediaDownload": {
+ "$ref": "MediaDownload",
+ "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration."
+ },
+ "additionalBindings": {
+ "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).",
+ "items": {
+ "$ref": "HttpRule"
+ },
+ "type": "array"
+ },
+ "responseBody": {
+ "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type.",
+ "type": "string"
+ },
+ "mediaUpload": {
+ "$ref": "MediaUpload",
+ "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods."
+ },
+ "selector": {
+ "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ },
+ "custom": {
+ "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients.",
+ "$ref": "CustomHttpPattern"
+ },
+ "patch": {
+ "description": "Used for updating a resource.",
+ "type": "string"
+ },
+ "get": {
+ "description": "Used for listing and getting information about resources.",
+ "type": "string"
+ },
+ "put": {
+ "description": "Used for updating a resource.",
+ "type": "string"
+ },
+ "delete": {
+ "description": "Used for deleting a resource.",
+ "type": "string"
+ },
+ "body": {
+ "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.",
+ "type": "string"
+ }
+ },
+ "id": "HttpRule"
+ },
+ "MonitoringDestination": {
+ "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).",
+ "type": "object",
+ "properties": {
+ "monitoredResource": {
+ "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.",
+ "type": "string"
+ },
+ "metrics": {
+ "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "MonitoringDestination"
+ },
+ "Visibility": {
+ "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.",
+ "type": "object",
+ "properties": {
+ "rules": {
+ "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "VisibilityRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Visibility"
+ },
+ "SystemParameters": {
+ "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.",
+ "type": "object",
+ "properties": {
+ "rules": {
+ "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "SystemParameterRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "SystemParameters"
+ },
+ "ConfigChange": {
+ "description": "Output generated from semantically comparing two versions of a service\nconfiguration.\n\nIncludes detailed information about a field that have changed with\napplicable advice about potential consequences for the change, such as\nbackwards-incompatibility.",
+ "type": "object",
+ "properties": {
+ "newValue": {
+ "description": "Value of the changed object in the new Service configuration,\nin JSON format. This field will not be populated if ChangeType == REMOVED.",
+ "type": "string"
+ },
+ "changeType": {
+ "enumDescriptions": [
+ "No value was provided.",
+ "The changed object exists in the 'new' service configuration, but not\nin the 'old' service configuration.",
+ "The changed object exists in the 'old' service configuration, but not\nin the 'new' service configuration.",
+ "The changed object exists in both service configurations, but its value\nis different."
+ ],
+ "enum": [
+ "CHANGE_TYPE_UNSPECIFIED",
+ "ADDED",
+ "REMOVED",
+ "MODIFIED"
+ ],
+ "description": "The type for this change, either ADDED, REMOVED, or MODIFIED.",
+ "type": "string"
+ },
+ "element": {
+ "description": "Object hierarchy path to the change, with levels separated by a '.'\ncharacter. For repeated fields, an applicable unique identifier field is\nused for the index (usually selector, name, or id). For maps, the term\n'key' is used. If the field has no unique identifier, the numeric index\nis used.\nExamples:\n- visibility.rules[selector==\"google.LibraryService.CreateBook\"].restriction\n- quota.metric_rules[selector==\"google\"].metric_costs[key==\"reads\"].value\n- logging.producer_destinations[0]",
+ "type": "string"
+ },
+ "advices": {
+ "description": "Collection of advice provided for this change, useful for determining the\npossible impact of this change.",
+ "items": {
+ "$ref": "Advice"
+ },
+ "type": "array"
+ },
+ "oldValue": {
+ "description": "Value of the changed object in the old Service configuration,\nin JSON format. This field will not be populated if ChangeType == ADDED.",
+ "type": "string"
+ }
+ },
+ "id": "ConfigChange"
+ },
+ "Quota": {
+ "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64",
+ "type": "object",
+ "properties": {
+ "limits": {
+ "description": "List of `QuotaLimit` definitions for the service.",
+ "items": {
+ "$ref": "QuotaLimit"
+ },
+ "type": "array"
+ },
+ "metricRules": {
+ "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.",
+ "items": {
+ "$ref": "MetricRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Quota"
+ },
+ "Rollout": {
+ "description": "A rollout resource that defines how service configuration versions are pushed\nto control plane systems. Typically, you create a new version of the\nservice config, and then create a Rollout to push the service config.",
+ "type": "object",
+ "properties": {
+ "createdBy": {
+ "description": "The user who created the Rollout. Readonly.",
+ "type": "string"
+ },
+ "trafficPercentStrategy": {
+ "$ref": "TrafficPercentStrategy",
+ "description": "Google Service Control selects service configurations based on\ntraffic percentage."
+ },
+ "rolloutId": {
+ "description": "Optional unique identifier of this Rollout. Only lower case letters, digits\n and '-' are allowed.\n\nIf not specified by client, the server will generate one. The generated id\nwill have the form of \u003cdate\u003e\u003crevision number\u003e, where \"date\" is the create\ndate in ISO 8601 format. \"revision number\" is a monotonically increasing\npositive number that is reset every day for each service.\nAn example of the generated rollout_id is '2016-02-16r1'",
+ "type": "string"
+ },
+ "deleteServiceStrategy": {
+ "$ref": "DeleteServiceStrategy",
+ "description": "The strategy associated with a rollout to delete a `ManagedService`.\nReadonly."
+ },
+ "createTime": {
+ "format": "google-datetime",
+ "description": "Creation time of the rollout. Readonly.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of this rollout. Readonly. In case of a failed rollout,\nthe system will automatically rollback to the current Rollout\nversion. Readonly.",
+ "type": "string",
+ "enumDescriptions": [
+ "No status specified.",
+ "The Rollout is in progress.",
+ "The Rollout has completed successfully.",
+ "The Rollout has been cancelled. This can happen if you have overlapping\nRollout pushes, and the previous ones will be cancelled.",
+ "The Rollout has failed and the rollback attempt has failed too.",
+ "The Rollout has not started yet and is pending for execution.",
+ "The Rollout has failed and rolled back to the previous successful\nRollout."
+ ],
+ "enum": [
+ "ROLLOUT_STATUS_UNSPECIFIED",
+ "IN_PROGRESS",
+ "SUCCESS",
+ "CANCELLED",
+ "FAILED",
+ "PENDING",
+ "FAILED_ROLLED_BACK"
+ ]
+ },
+ "serviceName": {
+ "description": "The name of the service associated with this Rollout.",
+ "type": "string"
+ }
+ },
+ "id": "Rollout"
+ },
+ "GenerateConfigReportRequest": {
+ "description": "Request message for GenerateConfigReport method.",
+ "type": "object",
+ "properties": {
+ "oldConfig": {
+ "description": "Service configuration against which the comparison will be done.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service",
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "newConfig": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "Service configuration for which we want to generate the report.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service",
+ "type": "object"
+ }
+ },
+ "id": "GenerateConfigReportRequest"
+ },
+ "SetIamPolicyRequest": {
+ "description": "Request message for `SetIamPolicy` method.",
+ "type": "object",
+ "properties": {
+ "policy": {
+ "$ref": "Policy",
+ "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
+ },
+ "updateMask": {
+ "format": "google-fieldmask",
+ "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.",
+ "type": "string"
+ }
+ },
+ "id": "SetIamPolicyRequest"
+ },
+ "DeleteServiceStrategy": {
+ "description": "Strategy used to delete a service. This strategy is a placeholder only\nused by the system generated rollout to delete a service.",
+ "type": "object",
+ "properties": {},
+ "id": "DeleteServiceStrategy"
+ },
+ "Step": {
+ "description": "Represents the status of one operation step.",
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The short description of the step.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status code.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecifed code.",
+ "The operation or step has completed without errors.",
+ "The operation or step has not started yet.",
+ "The operation or step is in progress.",
+ "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.",
+ "The operation or step has completed with cancellation."
+ ],
+ "enum": [
+ "STATUS_UNSPECIFIED",
+ "DONE",
+ "NOT_STARTED",
+ "IN_PROGRESS",
+ "FAILED",
+ "CANCELLED"
+ ]
+ }
+ },
+ "id": "Step"
+ },
+ "LoggingDestination": {
+ "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).",
+ "type": "object",
+ "properties": {
+ "logs": {
+ "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "monitoredResource": {
+ "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.",
+ "type": "string"
+ }
+ },
+ "id": "LoggingDestination"
+ },
+ "Option": {
+ "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.",
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "name": {
+ "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.",
+ "type": "string"
+ }
+ },
+ "id": "Option"
+ },
+ "Logging": {
+ "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history",
+ "type": "object",
+ "properties": {
+ "consumerDestinations": {
+ "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.",
+ "items": {
+ "$ref": "LoggingDestination"
+ },
+ "type": "array"
+ },
+ "producerDestinations": {
+ "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.",
+ "items": {
+ "$ref": "LoggingDestination"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Logging"
+ },
"QuotaLimit": {
- "id": "QuotaLimit",
"description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.",
"type": "object",
"properties": {
+ "duration": {
+ "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.",
+ "type": "string"
+ },
"freeTier": {
"format": "int64",
"description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.",
"type": "string"
},
- "duration": {
- "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.",
- "type": "string"
- },
"defaultLimit": {
"format": "int64",
"description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.",
"type": "string"
},
+ "metric": {
+ "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.\n\nUsed by metric-based quotas only.",
+ "type": "string"
+ },
"description": {
"description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).",
"type": "string"
@@ -893,10 +1916,6 @@
"description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.",
"type": "string"
},
- "metric": {
- "description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.\n\nUsed by metric-based quotas only.",
- "type": "string"
- },
"values": {
"additionalProperties": {
"format": "int64",
@@ -918,19 +1937,13 @@
"description": "Name of the quota limit. The name is used to refer to the limit when\noverriding the default limit on per-consumer basis.\n\nFor metric-based quota limits, the name must be provided, and it must be\nunique within the service. The name can only include alphanumeric\ncharacters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.\n\nThe name of a limit is used as a unique identifier for this limit.\nTherefore, once a limit has been put into use, its name should be\nimmutable. You can use the display_name field to provide a user-friendly\nname for the limit. The display name can be evolved over time without\naffecting the identity of the limit.",
"type": "string"
}
- }
+ },
+ "id": "QuotaLimit"
},
"Method": {
- "description": "Method represents a method of an api.",
+ "description": "Method represents a method of an API interface.",
"type": "object",
"properties": {
- "options": {
- "description": "Any metadata attached to the method.",
- "items": {
- "$ref": "Option"
- },
- "type": "array"
- },
"responseStreaming": {
"description": "If true, the response is streamed.",
"type": "boolean"
@@ -962,53 +1975,60 @@
"responseTypeUrl": {
"description": "The URL of the output message type.",
"type": "string"
+ },
+ "options": {
+ "description": "Any metadata attached to the method.",
+ "items": {
+ "$ref": "Option"
+ },
+ "type": "array"
}
},
"id": "Method"
},
- "ConfigRef": {
- "properties": {
- "name": {
- "description": "Resource name of a service config. It must have the following\nformat: \"services/{service name}/configs/{config id}\".",
- "type": "string"
- }
- },
- "id": "ConfigRef",
- "description": "Represents a service configuration with its name and id.",
- "type": "object"
- },
"ListServiceRolloutsResponse": {
"description": "Response message for ListServiceRollouts method.",
"type": "object",
"properties": {
- "nextPageToken": {
- "description": "The token of the next page of results.",
- "type": "string"
- },
"rollouts": {
"description": "The list of rollout resources.",
"items": {
"$ref": "Rollout"
},
"type": "array"
+ },
+ "nextPageToken": {
+ "description": "The token of the next page of results.",
+ "type": "string"
}
},
"id": "ListServiceRolloutsResponse"
},
- "Mixin": {
- "id": "Mixin",
- "description": "Declares an API to be included in this API. The including API must\nredeclare all the methods from the included API, but documentation\nand options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including API plus the root path if specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }",
+ "ConfigRef": {
+ "description": "Represents a service configuration with its name and id.",
"type": "object",
"properties": {
"name": {
- "description": "The fully qualified name of the API which is included.",
+ "description": "Resource name of a service config. It must have the following\nformat: \"services/{service name}/configs/{config id}\".",
"type": "string"
- },
+ }
+ },
+ "id": "ConfigRef"
+ },
+ "Mixin": {
+ "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }",
+ "type": "object",
+ "properties": {
"root": {
"description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.",
"type": "string"
+ },
+ "name": {
+ "description": "The fully qualified name of the interface which is included.",
+ "type": "string"
}
- }
+ },
+ "id": "Mixin"
},
"FlowOperationMetadata": {
"description": "The metadata associated with a long running operation resource.",
@@ -1074,6 +2094,7 @@
"id": "CustomError"
},
"CounterOptions": {
+ "description": "Increment a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1",
"type": "object",
"properties": {
"field": {
@@ -1085,8 +2106,7 @@
"type": "string"
}
},
- "id": "CounterOptions",
- "description": "Options for counters"
+ "id": "CounterOptions"
},
"Http": {
"description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.",
@@ -1113,11 +2133,11 @@
"sourceFiles": {
"description": "All files used during config generation.",
"items": {
- "type": "object",
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
- }
+ },
+ "type": "object"
},
"type": "array"
}
@@ -1139,6 +2159,10 @@
"description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.",
"type": "object",
"properties": {
+ "httpHeader": {
+ "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.",
+ "type": "string"
+ },
"name": {
"description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.",
"type": "string"
@@ -1146,10 +2170,6 @@
"urlQueryParameter": {
"description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.",
"type": "string"
- },
- "httpHeader": {
- "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.",
- "type": "string"
}
},
"id": "SystemParameter"
@@ -1158,10 +2178,6 @@
"description": "A single field of a message type.",
"type": "object",
"properties": {
- "name": {
- "description": "The field name.",
- "type": "string"
- },
"typeUrl": {
"description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.",
"type": "string"
@@ -1171,12 +2187,7 @@
"description": "The field number.",
"type": "integer"
},
- "jsonName": {
- "type": "string",
- "description": "The field JSON name."
- },
"kind": {
- "type": "string",
"enumDescriptions": [
"Field type unknown.",
"Field type double.",
@@ -1219,7 +2230,12 @@
"TYPE_SINT32",
"TYPE_SINT64"
],
- "description": "The field type."
+ "description": "The field type.",
+ "type": "string"
+ },
+ "jsonName": {
+ "description": "The field JSON name.",
+ "type": "string"
},
"options": {
"description": "The protocol buffer options.",
@@ -1238,12 +2254,6 @@
"type": "boolean"
},
"cardinality": {
- "enum": [
- "CARDINALITY_UNKNOWN",
- "CARDINALITY_OPTIONAL",
- "CARDINALITY_REQUIRED",
- "CARDINALITY_REPEATED"
- ],
"description": "The field cardinality.",
"type": "string",
"enumDescriptions": [
@@ -1251,16 +2261,27 @@
"For optional fields.",
"For required fields. Proto2 syntax only.",
"For repeated fields."
+ ],
+ "enum": [
+ "CARDINALITY_UNKNOWN",
+ "CARDINALITY_OPTIONAL",
+ "CARDINALITY_REQUIRED",
+ "CARDINALITY_REPEATED"
]
},
"defaultValue": {
"description": "The string value of the default value of this field. Proto2 syntax only.",
"type": "string"
+ },
+ "name": {
+ "description": "The field name.",
+ "type": "string"
}
},
"id": "Field"
},
"Monitoring": {
+ "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count",
"type": "object",
"properties": {
"consumerDestinations": {
@@ -1271,17 +2292,17 @@
"type": "array"
},
"producerDestinations": {
+ "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.",
"items": {
"$ref": "MonitoringDestination"
},
- "type": "array",
- "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination."
+ "type": "array"
}
},
- "id": "Monitoring",
- "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count"
+ "id": "Monitoring"
},
"TestIamPermissionsRequest": {
+ "description": "Request message for `TestIamPermissions` method.",
"type": "object",
"properties": {
"permissions": {
@@ -1292,8 +2313,7 @@
"type": "array"
}
},
- "id": "TestIamPermissionsRequest",
- "description": "Request message for `TestIamPermissions` method."
+ "id": "TestIamPermissionsRequest"
},
"Enum": {
"description": "Enum type definition.",
@@ -1318,8 +2338,6 @@
"type": "array"
},
"syntax": {
- "description": "The source syntax.",
- "type": "string",
"enumDescriptions": [
"Syntax `proto2`.",
"Syntax `proto3`."
@@ -1327,23 +2345,59 @@
"enum": [
"SYNTAX_PROTO2",
"SYNTAX_PROTO3"
- ]
+ ],
+ "description": "The source syntax.",
+ "type": "string"
},
"sourceContext": {
- "description": "The source context.",
- "$ref": "SourceContext"
+ "$ref": "SourceContext",
+ "description": "The source context."
}
},
"id": "Enum"
},
+ "Diagnostic": {
+ "description": "Represents a diagnostic message (error or warning)",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "enumDescriptions": [
+ "Warnings and errors",
+ "Only errors"
+ ],
+ "enum": [
+ "WARNING",
+ "ERROR"
+ ],
+ "description": "The kind of diagnostic information provided.",
+ "type": "string"
+ },
+ "message": {
+ "description": "Message describing the error or warning.",
+ "type": "string"
+ },
+ "location": {
+ "description": "File name and line number of the error or warning.",
+ "type": "string"
+ }
+ },
+ "id": "Diagnostic"
+ },
+ "EnableServiceRequest": {
+ "description": "Request message for EnableService method.",
+ "type": "object",
+ "properties": {
+ "consumerId": {
+ "description": "The identity of consumer resource which service enablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.",
+ "type": "string"
+ }
+ },
+ "id": "EnableServiceRequest"
+ },
"LabelDescriptor": {
"description": "A description of a label.",
"type": "object",
"properties": {
- "key": {
- "description": "The label key.",
- "type": "string"
- },
"description": {
"description": "A human-readable description for the label.",
"type": "string"
@@ -1361,52 +2415,58 @@
],
"description": "The type of data that can be assigned to the label.",
"type": "string"
+ },
+ "key": {
+ "description": "The label key.",
+ "type": "string"
}
},
"id": "LabelDescriptor"
},
- "Diagnostic": {
- "id": "Diagnostic",
- "description": "Represents a diagnostic message (error or warning)",
+ "GenerateConfigReportResponse": {
+ "description": "Response message for GenerateConfigReport method.",
"type": "object",
"properties": {
- "location": {
- "description": "File name and line number of the error or warning.",
+ "diagnostics": {
+ "description": "Errors / Linter warnings associated with the service definition this\nreport\nbelongs to.",
+ "items": {
+ "$ref": "Diagnostic"
+ },
+ "type": "array"
+ },
+ "serviceName": {
+ "description": "Name of the service this report belongs to.",
"type": "string"
},
- "kind": {
- "type": "string",
- "enumDescriptions": [
- "Warnings and errors",
- "Only errors"
- ],
- "enum": [
- "WARNING",
- "ERROR"
- ],
- "description": "The kind of diagnostic information provided."
+ "changeReports": {
+ "description": "list of ChangeReport, each corresponding to comparison between two\nservice configurations.",
+ "items": {
+ "$ref": "ChangeReport"
+ },
+ "type": "array"
},
- "message": {
- "description": "Message describing the error or warning.",
- "type": "string"
- }
- }
- },
- "EnableServiceRequest": {
- "description": "Request message for EnableService method.",
- "type": "object",
- "properties": {
- "consumerId": {
- "description": "The identity of consumer resource which service enablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.",
+ "id": {
+ "description": "ID of the service configuration this report belongs to.",
"type": "string"
}
},
- "id": "EnableServiceRequest"
+ "id": "GenerateConfigReportResponse"
},
"Type": {
"description": "A protocol buffer message type.",
"type": "object",
"properties": {
+ "oneofs": {
+ "description": "The list of types appearing in `oneof` definitions in this type.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "sourceContext": {
+ "description": "The source context.",
+ "$ref": "SourceContext"
+ },
"syntax": {
"enumDescriptions": [
"Syntax `proto2`.",
@@ -1419,10 +2479,6 @@
"description": "The source syntax.",
"type": "string"
},
- "sourceContext": {
- "description": "The source context.",
- "$ref": "SourceContext"
- },
"options": {
"description": "The protocol buffer options.",
"items": {
@@ -1440,45 +2496,20 @@
"name": {
"description": "The fully qualified message name.",
"type": "string"
- },
- "oneofs": {
- "description": "The list of types appearing in `oneof` definitions in this type.",
- "items": {
- "type": "string"
- },
- "type": "array"
}
},
"id": "Type"
},
- "GenerateConfigReportResponse": {
- "description": "Response message for GenerateConfigReport method.",
+ "Experimental": {
+ "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.",
"type": "object",
"properties": {
- "serviceName": {
- "description": "Name of the service this report belongs to.",
- "type": "string"
- },
- "changeReports": {
- "description": "list of ChangeReport, each corresponding to comparison between two\nservice configurations.",
- "items": {
- "$ref": "ChangeReport"
- },
- "type": "array"
- },
- "id": {
- "description": "ID of the service configuration this report belongs to.",
- "type": "string"
- },
- "diagnostics": {
- "description": "Errors / Linter warnings associated with the service definition this\nreport\nbelongs to.",
- "items": {
- "$ref": "Diagnostic"
- },
- "type": "array"
+ "authorization": {
+ "description": "Authorization configuration.",
+ "$ref": "AuthorizationConfig"
}
},
- "id": "GenerateConfigReportResponse"
+ "id": "Experimental"
},
"ListServiceConfigsResponse": {
"description": "Response message for ListServiceConfigs method.",
@@ -1498,32 +2529,9 @@
},
"id": "ListServiceConfigsResponse"
},
- "Experimental": {
- "id": "Experimental",
- "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.",
- "type": "object",
- "properties": {
- "authorization": {
- "$ref": "AuthorizationConfig",
- "description": "Authorization configuration."
- }
- }
- },
- "Backend": {
- "type": "object",
- "properties": {
- "rules": {
- "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "BackendRule"
- },
- "type": "array"
- }
- },
- "id": "Backend",
- "description": "`Backend` defines the backend configuration for a service."
- },
"AuditConfig": {
+ "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.",
+ "type": "object",
"properties": {
"service": {
"description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.",
@@ -1543,24 +2551,36 @@
"type": "array"
}
},
- "id": "AuditConfig",
- "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.",
- "type": "object"
+ "id": "AuditConfig"
+ },
+ "Backend": {
+ "description": "`Backend` defines the backend configuration for a service.",
+ "type": "object",
+ "properties": {
+ "rules": {
+ "description": "A list of API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "BackendRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Backend"
},
"SubmitConfigSourceRequest": {
+ "description": "Request message for SubmitConfigSource method.",
+ "type": "object",
"properties": {
- "validateOnly": {
- "description": "Optional. If set, this will result in the generation of a\n`google.api.Service` configuration based on the `ConfigSource` provided,\nbut the generated config and the sources will NOT be persisted.",
- "type": "boolean"
- },
"configSource": {
"$ref": "ConfigSource",
"description": "The source configuration for the service."
+ },
+ "validateOnly": {
+ "description": "Optional. If set, this will result in the generation of a\n`google.api.Service` configuration based on the `ConfigSource` provided,\nbut the generated config and the sources will NOT be persisted.",
+ "type": "boolean"
}
},
- "id": "SubmitConfigSourceRequest",
- "description": "Request message for SubmitConfigSource method.",
- "type": "object"
+ "id": "SubmitConfigSourceRequest"
},
"AuthorizationConfig": {
"description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com",
@@ -1574,6 +2594,7 @@
"id": "AuthorizationConfig"
},
"DocumentationRule": {
+ "description": "A documentation rule provides information about individual API elements.",
"type": "object",
"properties": {
"description": {
@@ -1589,14 +2610,15 @@
"type": "string"
}
},
- "id": "DocumentationRule",
- "description": "A documentation rule provides information about individual API elements."
+ "id": "DocumentationRule"
},
"CloudAuditOptions": {
"description": "Write a Cloud Audit log",
"type": "object",
"properties": {
"logName": {
+ "description": "The log_name to populate in the Cloud Audit Record.",
+ "type": "string",
"enumDescriptions": [
"Default. Should not be used.",
"Corresponds to \"cloudaudit.googleapis.com/activity\"",
@@ -1606,21 +2628,18 @@
"UNSPECIFIED_LOG_NAME",
"ADMIN_ACTIVITY",
"DATA_ACCESS"
- ],
- "description": "The log_name to populate in the Cloud Audit Record.",
- "type": "string"
+ ]
}
},
"id": "CloudAuditOptions"
},
"ContextRule": {
- "id": "ContextRule",
"description": "A context rule provides information about the context for an individual API\nelement.",
"type": "object",
"properties": {
"selector": {
- "type": "string",
- "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details."
+ "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
},
"provided": {
"description": "A list of full type names of provided contexts.",
@@ -1630,18 +2649,54 @@
"type": "array"
},
"requested": {
+ "description": "A list of full type names of requested contexts.",
"items": {
"type": "string"
},
- "type": "array",
- "description": "A list of full type names of requested contexts."
+ "type": "array"
}
- }
+ },
+ "id": "ContextRule"
+ },
+ "SourceContext": {
+ "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.",
+ "type": "object",
+ "properties": {
+ "fileName": {
+ "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.",
+ "type": "string"
+ }
+ },
+ "id": "SourceContext"
},
"MetricDescriptor": {
"description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.",
"type": "object",
"properties": {
+ "metricKind": {
+ "enumDescriptions": [
+ "Do not use this default value.",
+ "An instantaneous measurement of a value.",
+ "The change in a value during a time interval.",
+ "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints."
+ ],
+ "enum": [
+ "METRIC_KIND_UNSPECIFIED",
+ "GAUGE",
+ "DELTA",
+ "CUMULATIVE"
+ ],
+ "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".",
+ "type": "string"
+ },
+ "description": {
+ "description": "A detailed description of the metric, which can be used in documentation.",
+ "type": "string"
+ },
"unit": {
"description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar includes the dimensionless unit `1`, such as `1/s`.\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.",
"type": "string"
@@ -1662,6 +2717,15 @@
"type": "string"
},
"valueType": {
+ "enumDescriptions": [
+ "Do not use this default value.",
+ "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.",
+ "The value is a signed 64-bit integer.",
+ "The value is a double precision floating point number.",
+ "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.",
+ "The value is a `Distribution`.",
+ "The value is money."
+ ],
"enum": [
"VALUE_TYPE_UNSPECIFIED",
"BOOL",
@@ -1672,55 +2736,11 @@
"MONEY"
],
"description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.",
- "type": "string",
- "enumDescriptions": [
- "Do not use this default value.",
- "The value is a boolean.\nThis value type can be used only if the metric kind is `GAUGE`.",
- "The value is a signed 64-bit integer.",
- "The value is a double precision floating point number.",
- "The value is a text string.\nThis value type can be used only if the metric kind is `GAUGE`.",
- "The value is a `Distribution`.",
- "The value is money."
- ]
- },
- "metricKind": {
- "enum": [
- "METRIC_KIND_UNSPECIFIED",
- "GAUGE",
- "DELTA",
- "CUMULATIVE"
- ],
- "description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.",
- "type": "string",
- "enumDescriptions": [
- "Do not use this default value.",
- "An instantaneous measurement of a value.",
- "The change in a value during a time interval.",
- "A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints."
- ]
- },
- "description": {
- "description": "A detailed description of the metric, which can be used in documentation.",
"type": "string"
- },
- "displayName": {
- "type": "string",
- "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\"."
}
},
"id": "MetricDescriptor"
},
- "SourceContext": {
- "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.",
- "type": "object",
- "properties": {
- "fileName": {
- "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.",
- "type": "string"
- }
- },
- "id": "SourceContext"
- },
"Expr": {
"description": "Represents an expression text. Example:\n\n title: \"User account presence\"\n description: \"Determines whether the request has a user account\"\n expression: \"size(request.user) \u003e 0\"",
"type": "object",
@@ -1813,6 +2833,37 @@
},
"id": "OAuthRequirements"
},
+ "Usage": {
+ "description": "Configuration controlling usage of a service.",
+ "type": "object",
+ "properties": {
+ "requirements": {
+ "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "producerNotificationChannel": {
+ "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.",
+ "type": "string"
+ },
+ "rules": {
+ "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "UsageRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Usage"
+ },
+ "GetIamPolicyRequest": {
+ "description": "Request message for `GetIamPolicy` method.",
+ "type": "object",
+ "properties": {},
+ "id": "GetIamPolicyRequest"
+ },
"TestIamPermissionsResponse": {
"description": "Response message for `TestIamPermissions` method.",
"type": "object",
@@ -1827,74 +2878,24 @@
},
"id": "TestIamPermissionsResponse"
},
- "GetIamPolicyRequest": {
- "description": "Request message for `GetIamPolicy` method.",
- "type": "object",
- "properties": {},
- "id": "GetIamPolicyRequest"
- },
- "Usage": {
- "description": "Configuration controlling usage of a service.",
- "type": "object",
- "properties": {
- "producerNotificationChannel": {
- "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.",
- "type": "string"
- },
- "rules": {
- "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "UsageRule"
- },
- "type": "array"
- },
- "requirements": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'."
- }
- },
- "id": "Usage"
- },
"Context": {
+ "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.",
"type": "object",
"properties": {
"rules": {
+ "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
"items": {
"$ref": "ContextRule"
},
- "type": "array",
- "description": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order."
+ "type": "array"
}
},
- "id": "Context",
- "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`."
+ "id": "Context"
},
"Rule": {
+ "description": "A rule to be applied in a Policy.",
"type": "object",
"properties": {
- "action": {
- "enumDescriptions": [
- "Default no action.",
- "Matching 'Entries' grant access.",
- "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.",
- "Matching 'Entries' deny access.",
- "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.",
- "Matching 'Entries' tell IAM.Check callers to generate logs."
- ],
- "enum": [
- "NO_ACTION",
- "ALLOW",
- "ALLOW_WITH_LOG",
- "DENY",
- "DENY_WITH_LOG",
- "LOG"
- ],
- "description": "Required",
- "type": "string"
- },
"notIn": {
"description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).",
"items": {
@@ -1921,11 +2922,11 @@
"type": "array"
},
"in": {
+ "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.",
"items": {
"type": "string"
},
- "type": "array",
- "description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries."
+ "type": "array"
},
"permissions": {
"description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.",
@@ -1933,12 +2934,32 @@
"type": "string"
},
"type": "array"
+ },
+ "action": {
+ "enumDescriptions": [
+ "Default no action.",
+ "Matching 'Entries' grant access.",
+ "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.",
+ "Matching 'Entries' deny access.",
+ "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.",
+ "Matching 'Entries' tell IAM.Check callers to generate logs."
+ ],
+ "enum": [
+ "NO_ACTION",
+ "ALLOW",
+ "ALLOW_WITH_LOG",
+ "DENY",
+ "DENY_WITH_LOG",
+ "LOG"
+ ],
+ "description": "Required",
+ "type": "string"
}
},
- "id": "Rule",
- "description": "A rule to be applied in a Policy."
+ "id": "Rule"
},
"LogConfig": {
+ "description": "Specifies what kind of log the caller must write",
"type": "object",
"properties": {
"counter": {
@@ -1946,21 +2967,28 @@
"$ref": "CounterOptions"
},
"dataAccess": {
- "$ref": "DataAccessOptions",
- "description": "Data access options."
+ "description": "Data access options.",
+ "$ref": "DataAccessOptions"
},
"cloudAudit": {
- "description": "Cloud audit options.",
- "$ref": "CloudAuditOptions"
+ "$ref": "CloudAuditOptions",
+ "description": "Cloud audit options."
}
},
- "id": "LogConfig",
- "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1"
+ "id": "LogConfig"
},
"LogDescriptor": {
"description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer",
"type": "object",
"properties": {
+ "displayName": {
+ "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.",
+ "type": "string"
+ },
+ "description": {
+ "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.",
+ "type": "string"
+ },
"labels": {
"description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.",
"items": {
@@ -1971,19 +2999,13 @@
"name": {
"description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].",
"type": "string"
- },
- "displayName": {
- "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.",
- "type": "string"
- },
- "description": {
- "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.",
- "type": "string"
}
},
"id": "LogDescriptor"
},
"ConfigFile": {
+ "description": "Generic specification of a source configuration file",
+ "type": "object",
"properties": {
"fileContents": {
"format": "byte",
@@ -1995,8 +3017,6 @@
"type": "string"
},
"fileType": {
- "description": "The type of configuration file this represents.",
- "type": "string",
"enumDescriptions": [
"Unknown file type.",
"YAML-specification of service.",
@@ -2010,42 +3030,12 @@
"OPEN_API_JSON",
"OPEN_API_YAML",
"FILE_DESCRIPTOR_SET_PROTO"
- ]
- }
- },
- "id": "ConfigFile",
- "description": "Generic specification of a source configuration file",
- "type": "object"
- },
- "MonitoredResourceDescriptor": {
- "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.",
- "type": "object",
- "properties": {
- "description": {
- "type": "string",
- "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation."
- },
- "displayName": {
- "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.",
- "type": "string"
- },
- "type": {
- "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.",
- "type": "string"
- },
- "labels": {
- "items": {
- "$ref": "LabelDescriptor"
- },
- "type": "array",
- "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`."
- },
- "name": {
- "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.",
+ ],
+ "description": "The type of configuration file this represents.",
"type": "string"
}
},
- "id": "MonitoredResourceDescriptor"
+ "id": "ConfigFile"
},
"CustomErrorRule": {
"description": "A custom error rule.",
@@ -2062,11 +3052,55 @@
},
"id": "CustomErrorRule"
},
+ "MonitoredResourceDescriptor": {
+ "description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.",
+ "type": "object",
+ "properties": {
+ "labels": {
+ "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.",
+ "items": {
+ "$ref": "LabelDescriptor"
+ },
+ "type": "array"
+ },
+ "name": {
+ "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.",
+ "type": "string"
+ }
+ },
+ "id": "MonitoredResourceDescriptor"
+ },
+ "CustomAuthRequirements": {
+ "description": "Configuration for a custom authentication provider.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).",
+ "type": "string"
+ }
+ },
+ "id": "CustomAuthRequirements"
+ },
"MediaDownload": {
- "id": "MediaDownload",
"description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.",
"type": "object",
"properties": {
+ "useDirectDownload": {
+ "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.",
+ "type": "boolean"
+ },
"enabled": {
"description": "Whether download is enabled.",
"type": "boolean"
@@ -2079,31 +3113,17 @@
"description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.",
"type": "boolean"
},
- "dropzone": {
- "description": "Name of the Scotty dropzone to use for the current API.",
- "type": "string"
- },
"maxDirectDownloadSize": {
"format": "int64",
"description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.",
"type": "string"
},
- "useDirectDownload": {
- "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.",
- "type": "boolean"
- }
- }
- },
- "CustomAuthRequirements": {
- "description": "Configuration for a custom authentication provider.",
- "type": "object",
- "properties": {
- "provider": {
- "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).",
+ "dropzone": {
+ "description": "Name of the Scotty dropzone to use for the current API.",
"type": "string"
}
},
- "id": "CustomAuthRequirements"
+ "id": "MediaDownload"
},
"ChangeReport": {
"description": "Change report associated with a particular service configuration.\n\nIt contains a list of ConfigChanges based on the comparison between\ntwo service configurations.",
@@ -2120,15 +3140,15 @@
"id": "ChangeReport"
},
"DisableServiceRequest": {
+ "description": "Request message for DisableService method.",
+ "type": "object",
"properties": {
"consumerId": {
"description": "The identity of consumer resource which service disablement will be\napplied to.\n\nThe Google Service Management implementation accepts the following\nforms:\n- \"project:\u003cproject_id\u003e\"\n\nNote: this is made compatible with\ngoogle.api.servicecontrol.v1.Operation.consumer_id.",
"type": "string"
}
},
- "id": "DisableServiceRequest",
- "description": "Request message for DisableService method.",
- "type": "object"
+ "id": "DisableServiceRequest"
},
"SubmitConfigSourceResponse": {
"description": "Response message for SubmitConfigSource method.",
@@ -2142,8 +3162,29 @@
"id": "SubmitConfigSourceResponse"
},
"MediaUpload": {
+ "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.",
"type": "object",
"properties": {
+ "startNotification": {
+ "description": "Whether to receive a notification on the start of media upload.",
+ "type": "boolean"
+ },
+ "uploadService": {
+ "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.",
+ "type": "string"
+ },
+ "mimeTypes": {
+ "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "maxSize": {
+ "format": "int64",
+ "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.",
+ "type": "string"
+ },
"enabled": {
"description": "Whether upload is enabled.",
"type": "boolean"
@@ -2159,30 +3200,9 @@
"dropzone": {
"description": "Name of the Scotty dropzone to use for the current API.",
"type": "string"
- },
- "startNotification": {
- "description": "Whether to receive a notification on the start of media upload.",
- "type": "boolean"
- },
- "uploadService": {
- "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.",
- "type": "string"
- },
- "maxSize": {
- "format": "int64",
- "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.",
- "type": "string"
- },
- "mimeTypes": {
- "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.",
- "items": {
- "type": "string"
- },
- "type": "array"
}
},
- "id": "MediaUpload",
- "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods."
+ "id": "MediaUpload"
},
"Advice": {
"description": "Generated advice about this change, used for providing more\ninformation about how a change will affect the existing service.",
@@ -2214,10 +3234,6 @@
"description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true",
"type": "object",
"properties": {
- "selector": {
- "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.",
- "type": "string"
- },
"skipServiceControl": {
"description": "True, if the method should skip service control. If so, no control plane\nfeature (like quota and billing) will be enabled.",
"type": "boolean"
@@ -2225,6 +3241,10 @@
"allowUnregisteredCalls": {
"description": "True, if the method allows unregistered calls; false otherwise.",
"type": "boolean"
+ },
+ "selector": {
+ "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.",
+ "type": "string"
}
},
"id": "UsageRule"
@@ -2234,12 +3254,12 @@
"type": "object",
"properties": {
"percentages": {
+ "description": "Maps service configuration IDs to their corresponding traffic percentage.\nKey is the service configuration ID, Value is the traffic percentage\nwhich must be greater than 0.0 and the sum must equal to 100.0.",
"type": "object",
"additionalProperties": {
"format": "double",
"type": "number"
- },
- "description": "Maps service configuration IDs to their corresponding traffic percentage.\nKey is the service configuration ID, Value is the traffic percentage\nwhich must be greater than 0.0 and the sum must equal to 100.0."
+ }
}
},
"id": "TrafficPercentStrategy"
@@ -2259,10 +3279,99 @@
},
"id": "AuthRequirement"
},
+ "Condition": {
+ "description": "A condition to be met.",
+ "type": "object",
+ "properties": {
+ "values": {
+ "description": "The objects of the condition. This is mutually exclusive with 'value'.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "iam": {
+ "description": "Trusted attributes supplied by the IAM system.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default non-attribute.",
+ "Either principal or (if present) authority selector.",
+ "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.",
+ "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).",
+ "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported."
+ ],
+ "enum": [
+ "NO_ATTR",
+ "AUTHORITY",
+ "ATTRIBUTION",
+ "APPROVER",
+ "JUSTIFICATION_TYPE"
+ ]
+ },
+ "op": {
+ "enumDescriptions": [
+ "Default no-op.",
+ "DEPRECATED. Use IN instead.",
+ "DEPRECATED. Use NOT_IN instead.",
+ "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.",
+ "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.",
+ "Subject is discharged"
+ ],
+ "enum": [
+ "NO_OP",
+ "EQUALS",
+ "NOT_EQUALS",
+ "IN",
+ "NOT_IN",
+ "DISCHARGED"
+ ],
+ "description": "An operator to apply the subject with.",
+ "type": "string"
+ },
+ "svc": {
+ "description": "Trusted attributes discharged by the service.",
+ "type": "string"
+ },
+ "value": {
+ "description": "DEPRECATED. Use 'values' instead.",
+ "type": "string"
+ },
+ "sys": {
+ "enumDescriptions": [
+ "Default non-attribute type",
+ "Region of the resource",
+ "Service name",
+ "Resource name",
+ "IP address of the caller"
+ ],
+ "enum": [
+ "NO_ATTR",
+ "REGION",
+ "SERVICE",
+ "NAME",
+ "IP"
+ ],
+ "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.",
+ "type": "string"
+ }
+ },
+ "id": "Condition"
+ },
"Documentation": {
"description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.",
"type": "object",
"properties": {
+ "pages": {
+ "description": "The top level pages for the documentation set.",
+ "items": {
+ "$ref": "Page"
+ },
+ "type": "array"
+ },
+ "summary": {
+ "description": "A short summary of what the service does. Can only be provided by\nplain text.",
+ "type": "string"
+ },
"documentationRootUrl": {
"description": "The URL to the root of documentation.",
"type": "string"
@@ -2277,1107 +3386,9 @@
"$ref": "DocumentationRule"
},
"type": "array"
- },
- "pages": {
- "items": {
- "$ref": "Page"
- },
- "type": "array",
- "description": "The top level pages for the documentation set."
- },
- "summary": {
- "description": "A short summary of what the service does. Can only be provided by\nplain text.",
- "type": "string"
}
},
"id": "Documentation"
- },
- "Condition": {
- "description": "A condition to be met.",
- "type": "object",
- "properties": {
- "values": {
- "description": "The objects of the condition. This is mutually exclusive with 'value'.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "iam": {
- "enumDescriptions": [
- "Default non-attribute.",
- "Either principal or (if present) authority selector.",
- "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.",
- "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).",
- "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported."
- ],
- "enum": [
- "NO_ATTR",
- "AUTHORITY",
- "ATTRIBUTION",
- "APPROVER",
- "JUSTIFICATION_TYPE"
- ],
- "description": "Trusted attributes supplied by the IAM system.",
- "type": "string"
- },
- "op": {
- "enum": [
- "NO_OP",
- "EQUALS",
- "NOT_EQUALS",
- "IN",
- "NOT_IN",
- "DISCHARGED"
- ],
- "description": "An operator to apply the subject with.",
- "type": "string",
- "enumDescriptions": [
- "Default no-op.",
- "DEPRECATED. Use IN instead.",
- "DEPRECATED. Use NOT_IN instead.",
- "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.",
- "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.",
- "Subject is discharged"
- ]
- },
- "svc": {
- "type": "string",
- "description": "Trusted attributes discharged by the service."
- },
- "sys": {
- "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.",
- "type": "string",
- "enumDescriptions": [
- "Default non-attribute type",
- "Region of the resource",
- "Service name",
- "Resource name",
- "IP address of the caller"
- ],
- "enum": [
- "NO_ATTR",
- "REGION",
- "SERVICE",
- "NAME",
- "IP"
- ]
- },
- "value": {
- "description": "DEPRECATED. Use 'values' instead.",
- "type": "string"
- }
- },
- "id": "Condition"
- },
- "AuditLogConfig": {
- "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.",
- "type": "object",
- "properties": {
- "exemptedMembers": {
- "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "logType": {
- "enum": [
- "LOG_TYPE_UNSPECIFIED",
- "ADMIN_READ",
- "DATA_WRITE",
- "DATA_READ"
- ],
- "description": "The log type that this config enables.",
- "type": "string",
- "enumDescriptions": [
- "Default case. Should never be this.",
- "Admin reads. Example: CloudIAM getIamPolicy",
- "Data writes. Example: CloudSQL Users create",
- "Data reads. Example: CloudSQL Users list"
- ]
- }
- },
- "id": "AuditLogConfig"
- },
- "ConfigSource": {
- "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`.",
- "type": "object",
- "properties": {
- "id": {
- "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.",
- "type": "string"
- },
- "files": {
- "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).",
- "items": {
- "$ref": "ConfigFile"
- },
- "type": "array"
- }
- },
- "id": "ConfigSource"
- },
- "AuthenticationRule": {
- "id": "AuthenticationRule",
- "description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.",
- "type": "object",
- "properties": {
- "customAuth": {
- "description": "Configuration for custom authentication.",
- "$ref": "CustomAuthRequirements"
- },
- "oauth": {
- "description": "The requirements for OAuth credentials.",
- "$ref": "OAuthRequirements"
- },
- "requirements": {
- "description": "Requirements for additional authentication providers.",
- "items": {
- "$ref": "AuthRequirement"
- },
- "type": "array"
- },
- "allowWithoutCredential": {
- "type": "boolean",
- "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject."
- },
- "selector": {
- "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- }
- },
- "BackendRule": {
- "id": "BackendRule",
- "description": "A backend rule provides configuration for an individual API element.",
- "type": "object",
- "properties": {
- "deadline": {
- "type": "number",
- "format": "double",
- "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context."
- },
- "minDeadline": {
- "format": "double",
- "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.",
- "type": "number"
- },
- "address": {
- "type": "string",
- "description": "The address of the API backend."
- },
- "selector": {
- "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- }
- },
- "UndeleteServiceResponse": {
- "description": "Response message for UndeleteService method.",
- "type": "object",
- "properties": {
- "service": {
- "description": "Revived service resource.",
- "$ref": "ManagedService"
- }
- },
- "id": "UndeleteServiceResponse"
- },
- "Policy": {
- "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
- "type": "object",
- "properties": {
- "version": {
- "format": "int32",
- "description": "Version of the `Policy`. The default version is 0.",
- "type": "integer"
- },
- "auditConfigs": {
- "description": "Specifies cloud audit logging configuration for this policy.",
- "items": {
- "$ref": "AuditConfig"
- },
- "type": "array"
- },
- "bindings": {
- "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.",
- "items": {
- "$ref": "Binding"
- },
- "type": "array"
- },
- "etag": {
- "type": "string",
- "format": "byte",
- "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly."
- },
- "iamOwned": {
- "type": "boolean"
- },
- "rules": {
- "items": {
- "$ref": "Rule"
- },
- "type": "array",
- "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied."
- }
- },
- "id": "Policy"
- },
- "Api": {
- "type": "object",
- "properties": {
- "version": {
- "description": "A version string for this api. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version\nis omitted, it defaults to zero. If the entire version field is\nempty, the major version is derived from the package name, as\noutlined below. If the field is not empty, the version in the\npackage name will be verified to be consistent with what is\nprovided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\nAPI, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, none-GA apis.\n",
- "type": "string"
- },
- "mixins": {
- "description": "Included APIs. See Mixin.",
- "items": {
- "$ref": "Mixin"
- },
- "type": "array"
- },
- "options": {
- "description": "Any metadata attached to the API.",
- "items": {
- "$ref": "Option"
- },
- "type": "array"
- },
- "methods": {
- "description": "The methods of this api, in unspecified order.",
- "items": {
- "$ref": "Method"
- },
- "type": "array"
- },
- "name": {
- "description": "The fully qualified name of this api, including package name\nfollowed by the api's simple name.",
- "type": "string"
- },
- "sourceContext": {
- "$ref": "SourceContext",
- "description": "Source context for the protocol buffer service represented by this\nmessage."
- },
- "syntax": {
- "description": "The source syntax of the service.",
- "type": "string",
- "enumDescriptions": [
- "Syntax `proto2`.",
- "Syntax `proto3`."
- ],
- "enum": [
- "SYNTAX_PROTO2",
- "SYNTAX_PROTO3"
- ]
- }
- },
- "id": "Api",
- "description": "Api is a light-weight descriptor for a protocol buffer service."
- },
- "DataAccessOptions": {
- "description": "Write a Data Access (Gin) log",
- "type": "object",
- "properties": {},
- "id": "DataAccessOptions"
- },
- "MetricRule": {
- "properties": {
- "metricCosts": {
- "additionalProperties": {
- "format": "int64",
- "type": "string"
- },
- "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.",
- "type": "object"
- },
- "selector": {
- "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- },
- "id": "MetricRule",
- "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.",
- "type": "object"
- },
- "Authentication": {
- "type": "object",
- "properties": {
- "rules": {
- "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "AuthenticationRule"
- },
- "type": "array"
- },
- "providers": {
- "description": "Defines a set of authentication providers that a service supports.",
- "items": {
- "$ref": "AuthProvider"
- },
- "type": "array"
- }
- },
- "id": "Authentication",
- "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth"
- },
- "Operation": {
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
- "type": "object",
- "properties": {
- "response": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`."
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
- "type": "string"
- },
- "error": {
- "$ref": "Status",
- "description": "The error result of the operation in case of failure or cancellation."
- },
- "metadata": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
- "type": "object"
- },
- "done": {
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
- "type": "boolean"
- }
- },
- "id": "Operation"
- },
- "Page": {
- "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.",
- "type": "object",
- "properties": {
- "subpages": {
- "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.",
- "items": {
- "$ref": "Page"
- },
- "type": "array"
- },
- "name": {
- "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.",
- "type": "string"
- },
- "content": {
- "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.",
- "type": "string"
- }
- },
- "id": "Page"
- },
- "Status": {
- "properties": {
- "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"
- },
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "items": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "type": "object"
- },
- "type": "array"
- },
- "code": {
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "type": "integer"
- }
- },
- "id": "Status",
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object"
- },
- "Binding": {
- "id": "Binding",
- "description": "Associates `members` with a `role`.",
- "type": "object",
- "properties": {
- "condition": {
- "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL.",
- "$ref": "Expr"
- },
- "members": {
- "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "role": {
- "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
- "type": "string"
- }
- }
- },
- "AuthProvider": {
- "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).",
- "type": "object",
- "properties": {
- "jwksUri": {
- "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs",
- "type": "string"
- },
- "audiences": {
- "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com",
- "type": "string"
- },
- "issuer": {
- "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com",
- "type": "string"
- },
- "id": {
- "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".",
- "type": "string"
- }
- },
- "id": "AuthProvider"
- },
- "EnumValue": {
- "properties": {
- "number": {
- "format": "int32",
- "description": "Enum value number.",
- "type": "integer"
- },
- "name": {
- "description": "Enum value name.",
- "type": "string"
- },
- "options": {
- "description": "Protocol buffer options.",
- "items": {
- "$ref": "Option"
- },
- "type": "array"
- }
- },
- "id": "EnumValue",
- "description": "Enum value definition.",
- "type": "object"
- },
- "Service": {
- "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth",
- "type": "object",
- "properties": {
- "name": {
- "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.",
- "type": "string"
- },
- "customError": {
- "$ref": "CustomError",
- "description": "Custom error configuration."
- },
- "title": {
- "description": "The product title for this service.",
- "type": "string"
- },
- "endpoints": {
- "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.",
- "items": {
- "$ref": "Endpoint"
- },
- "type": "array"
- },
- "apis": {
- "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.",
- "items": {
- "$ref": "Api"
- },
- "type": "array"
- },
- "logs": {
- "description": "Defines the logs used by this service.",
- "items": {
- "$ref": "LogDescriptor"
- },
- "type": "array"
- },
- "types": {
- "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32",
- "items": {
- "$ref": "Type"
- },
- "type": "array"
- },
- "sourceInfo": {
- "$ref": "SourceInfo",
- "description": "Output only. The source information for this configuration if available."
- },
- "http": {
- "description": "HTTP configuration.",
- "$ref": "Http"
- },
- "systemParameters": {
- "$ref": "SystemParameters",
- "description": "System parameter configuration."
- },
- "backend": {
- "$ref": "Backend",
- "description": "API backend configuration."
- },
- "documentation": {
- "$ref": "Documentation",
- "description": "Additional API documentation."
- },
- "logging": {
- "description": "Logging configuration.",
- "$ref": "Logging"
- },
- "monitoredResources": {
- "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.",
- "items": {
- "$ref": "MonitoredResourceDescriptor"
- },
- "type": "array"
- },
- "enums": {
- "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum",
- "items": {
- "$ref": "Enum"
- },
- "type": "array"
- },
- "context": {
- "description": "Context configuration.",
- "$ref": "Context"
- },
- "id": {
- "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.",
- "type": "string"
- },
- "usage": {
- "description": "Configuration controlling usage of this service.",
- "$ref": "Usage"
- },
- "metrics": {
- "description": "Defines the metrics used by this service.",
- "items": {
- "$ref": "MetricDescriptor"
- },
- "type": "array"
- },
- "authentication": {
- "description": "Auth configuration.",
- "$ref": "Authentication"
- },
- "experimental": {
- "$ref": "Experimental",
- "description": "Experimental configuration."
- },
- "control": {
- "$ref": "Control",
- "description": "Configuration for the service control plane."
- },
- "configVersion": {
- "format": "uint32",
- "description": "The version of the service configuration. The config version may\ninfluence interpretation of the configuration, for example, to\ndetermine defaults. This is documented together with applicable\noptions. The current default for the config version itself is `3`.",
- "type": "integer"
- },
- "monitoring": {
- "description": "Monitoring configuration.",
- "$ref": "Monitoring"
- },
- "systemTypes": {
- "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.",
- "items": {
- "$ref": "Type"
- },
- "type": "array"
- },
- "producerProjectId": {
- "description": "The Google project that owns this service.",
- "type": "string"
- },
- "visibility": {
- "$ref": "Visibility",
- "description": "API visibility configuration."
- },
- "quota": {
- "$ref": "Quota",
- "description": "Quota configuration."
- }
- },
- "id": "Service"
- },
- "ListOperationsResponse": {
- "description": "The response message for Operations.ListOperations.",
- "type": "object",
- "properties": {
- "operations": {
- "description": "A list of operations that matches the specified filter in the request.",
- "items": {
- "$ref": "Operation"
- },
- "type": "array"
- },
- "nextPageToken": {
- "description": "The standard List next-page token.",
- "type": "string"
- }
- },
- "id": "ListOperationsResponse"
- },
- "CustomHttpPattern": {
- "description": "A custom pattern is used for defining custom HTTP verb.",
- "type": "object",
- "properties": {
- "path": {
- "description": "The path matched by this custom verb.",
- "type": "string"
- },
- "kind": {
- "type": "string",
- "description": "The name of this custom HTTP verb."
- }
- },
- "id": "CustomHttpPattern"
- },
- "OperationMetadata": {
- "description": "The metadata associated with a long running operation resource.",
- "type": "object",
- "properties": {
- "startTime": {
- "format": "google-datetime",
- "description": "The start time of the operation.",
- "type": "string"
- },
- "steps": {
- "description": "Detailed status information for each step. The order is undetermined.",
- "items": {
- "$ref": "Step"
- },
- "type": "array"
- },
- "resourceNames": {
- "description": "The full name of the resources that this operation is directly\nassociated with.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "progressPercentage": {
- "format": "int32",
- "description": "Percentage of completion of this operation, ranging from 0 to 100.",
- "type": "integer"
- }
- },
- "id": "OperationMetadata"
- },
- "SystemParameterRule": {
- "type": "object",
- "properties": {
- "parameters": {
- "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.",
- "items": {
- "$ref": "SystemParameter"
- },
- "type": "array"
- },
- "selector": {
- "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- },
- "id": "SystemParameterRule",
- "description": "Define a system parameter rule mapping system parameter definitions to\nmethods."
- },
- "VisibilityRule": {
- "type": "object",
- "properties": {
- "restriction": {
- "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.",
- "type": "string"
- },
- "selector": {
- "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- },
- "id": "VisibilityRule",
- "description": "A visibility rule provides visibility configuration for an individual API\nelement."
- },
- "HttpRule": {
- "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields.",
- "type": "object",
- "properties": {
- "restMethodName": {
- "description": "Optional. The rest method name is by default derived from the URL\npattern. If specified, this field overrides the default method name.\nExample:\n\n rpc CreateResource(CreateResourceRequest)\n returns (CreateResourceResponse) {\n option (google.api.http) = {\n post: \"/v1/resources\",\n body: \"resource\",\n rest_method_name: \"insert\"\n };\n }\n\nThis method has the automatically derived rest method name \"create\", but\n for backwards compatability with apiary, it is specified as insert.",
- "type": "string"
- },
- "additionalBindings": {
- "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).",
- "items": {
- "$ref": "HttpRule"
- },
- "type": "array"
- },
- "restCollection": {
- "type": "string",
- "description": "Optional. The REST collection name is by default derived from the URL\npattern. If specified, this field overrides the default collection name.\nExample:\n\n rpc AddressesAggregatedList(AddressesAggregatedListRequest)\n returns (AddressesAggregatedListResponse) {\n option (google.api.http) = {\n get: \"/v1/projects/{project_id}/aggregated/addresses\"\n rest_collection: \"projects.addresses\"\n };\n }\n\nThis method has the automatically derived collection name\n\"projects.aggregated\". Because, semantically, this rpc is actually an\noperation on the \"projects.addresses\" collection, the `rest_collection`\nfield is configured to override the derived collection name."
- },
- "responseBody": {
- "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type.",
- "type": "string"
- },
- "mediaUpload": {
- "$ref": "MediaUpload",
- "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods."
- },
- "selector": {
- "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- },
- "custom": {
- "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients.",
- "$ref": "CustomHttpPattern"
- },
- "patch": {
- "description": "Used for updating a resource.",
- "type": "string"
- },
- "get": {
- "description": "Used for listing and getting information about resources.",
- "type": "string"
- },
- "put": {
- "description": "Used for updating a resource.",
- "type": "string"
- },
- "delete": {
- "description": "Used for deleting a resource.",
- "type": "string"
- },
- "body": {
- "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.",
- "type": "string"
- },
- "mediaDownload": {
- "$ref": "MediaDownload",
- "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration."
- },
- "post": {
- "description": "Used for creating a resource.",
- "type": "string"
- }
- },
- "id": "HttpRule"
- },
- "MonitoringDestination": {
- "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).",
- "type": "object",
- "properties": {
- "monitoredResource": {
- "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.",
- "type": "string"
- },
- "metrics": {
- "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "MonitoringDestination"
- },
- "Visibility": {
- "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.",
- "type": "object",
- "properties": {
- "rules": {
- "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "VisibilityRule"
- },
- "type": "array"
- }
- },
- "id": "Visibility"
- },
- "SystemParameters": {
- "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.",
- "type": "object",
- "properties": {
- "rules": {
- "items": {
- "$ref": "SystemParameterRule"
- },
- "type": "array",
- "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order."
- }
- },
- "id": "SystemParameters"
- },
- "ConfigChange": {
- "type": "object",
- "properties": {
- "newValue": {
- "description": "Value of the changed object in the new Service configuration,\nin JSON format. This field will not be populated if ChangeType == REMOVED.",
- "type": "string"
- },
- "changeType": {
- "type": "string",
- "enumDescriptions": [
- "No value was provided.",
- "The changed object exists in the 'new' service configuration, but not\nin the 'old' service configuration.",
- "The changed object exists in the 'old' service configuration, but not\nin the 'new' service configuration.",
- "The changed object exists in both service configurations, but its value\nis different."
- ],
- "enum": [
- "CHANGE_TYPE_UNSPECIFIED",
- "ADDED",
- "REMOVED",
- "MODIFIED"
- ],
- "description": "The type for this change, either ADDED, REMOVED, or MODIFIED."
- },
- "element": {
- "description": "Object hierarchy path to the change, with levels separated by a '.'\ncharacter. For repeated fields, an applicable unique identifier field is\nused for the index (usually selector, name, or id). For maps, the term\n'key' is used. If the field has no unique identifier, the numeric index\nis used.\nExamples:\n- visibility.rules[selector==\"google.LibraryService.CreateBook\"].restriction\n- quota.metric_rules[selector==\"google\"].metric_costs[key==\"reads\"].value\n- logging.producer_destinations[0]",
- "type": "string"
- },
- "advices": {
- "description": "Collection of advice provided for this change, useful for determining the\npossible impact of this change.",
- "items": {
- "$ref": "Advice"
- },
- "type": "array"
- },
- "oldValue": {
- "description": "Value of the changed object in the old Service configuration,\nin JSON format. This field will not be populated if ChangeType == ADDED.",
- "type": "string"
- }
- },
- "id": "ConfigChange",
- "description": "Output generated from semantically comparing two versions of a service\nconfiguration.\n\nIncludes detailed information about a field that have changed with\napplicable advice about potential consequences for the change, such as\nbackwards-incompatibility."
- },
- "Quota": {
- "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64",
- "type": "object",
- "properties": {
- "limits": {
- "description": "List of `QuotaLimit` definitions for the service.",
- "items": {
- "$ref": "QuotaLimit"
- },
- "type": "array"
- },
- "metricRules": {
- "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.",
- "items": {
- "$ref": "MetricRule"
- },
- "type": "array"
- }
- },
- "id": "Quota"
- },
- "Rollout": {
- "description": "A rollout resource that defines how service configuration versions are pushed\nto control plane systems. Typically, you create a new version of the\nservice config, and then create a Rollout to push the service config.",
- "type": "object",
- "properties": {
- "rolloutId": {
- "description": "Optional unique identifier of this Rollout. Only lower case letters, digits\n and '-' are allowed.\n\nIf not specified by client, the server will generate one. The generated id\nwill have the form of \u003cdate\u003e\u003crevision number\u003e, where \"date\" is the create\ndate in ISO 8601 format. \"revision number\" is a monotonically increasing\npositive number that is reset every day for each service.\nAn example of the generated rollout_id is '2016-02-16r1'",
- "type": "string"
- },
- "deleteServiceStrategy": {
- "description": "The strategy associated with a rollout to delete a `ManagedService`.\nReadonly.",
- "$ref": "DeleteServiceStrategy"
- },
- "createTime": {
- "format": "google-datetime",
- "description": "Creation time of the rollout. Readonly.",
- "type": "string"
- },
- "status": {
- "enumDescriptions": [
- "No status specified.",
- "The Rollout is in progress.",
- "The Rollout has completed successfully.",
- "The Rollout has been cancelled. This can happen if you have overlapping\nRollout pushes, and the previous ones will be cancelled.",
- "The Rollout has failed and the rollback attempt has failed too.",
- "The Rollout has not started yet and is pending for execution.",
- "The Rollout has failed and rolled back to the previous successful\nRollout."
- ],
- "enum": [
- "ROLLOUT_STATUS_UNSPECIFIED",
- "IN_PROGRESS",
- "SUCCESS",
- "CANCELLED",
- "FAILED",
- "PENDING",
- "FAILED_ROLLED_BACK"
- ],
- "description": "The status of this rollout. Readonly. In case of a failed rollout,\nthe system will automatically rollback to the current Rollout\nversion. Readonly.",
- "type": "string"
- },
- "serviceName": {
- "description": "The name of the service associated with this Rollout.",
- "type": "string"
- },
- "trafficPercentStrategy": {
- "$ref": "TrafficPercentStrategy",
- "description": "Google Service Control selects service configurations based on\ntraffic percentage."
- },
- "createdBy": {
- "description": "The user who created the Rollout. Readonly.",
- "type": "string"
- }
- },
- "id": "Rollout"
- },
- "GenerateConfigReportRequest": {
- "description": "Request message for GenerateConfigReport method.",
- "type": "object",
- "properties": {
- "oldConfig": {
- "description": "Service configuration against which the comparison will be done.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service",
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "newConfig": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "Service configuration for which we want to generate the report.\nFor this version of API, the supported types are\ngoogle.api.servicemanagement.v1.ConfigRef,\ngoogle.api.servicemanagement.v1.ConfigSource,\nand google.api.Service",
- "type": "object"
- }
- },
- "id": "GenerateConfigReportRequest"
- },
- "SetIamPolicyRequest": {
- "type": "object",
- "properties": {
- "updateMask": {
- "format": "google-fieldmask",
- "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.",
- "type": "string"
- },
- "policy": {
- "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.",
- "$ref": "Policy"
- }
- },
- "id": "SetIamPolicyRequest",
- "description": "Request message for `SetIamPolicy` method."
- },
- "DeleteServiceStrategy": {
- "description": "Strategy used to delete a service. This strategy is a placeholder only\nused by the system generated rollout to delete a service.",
- "type": "object",
- "properties": {},
- "id": "DeleteServiceStrategy"
- },
- "Step": {
- "description": "Represents the status of one operation step.",
- "type": "object",
- "properties": {
- "status": {
- "enum": [
- "STATUS_UNSPECIFIED",
- "DONE",
- "NOT_STARTED",
- "IN_PROGRESS",
- "FAILED",
- "CANCELLED"
- ],
- "description": "The status code.",
- "type": "string",
- "enumDescriptions": [
- "Unspecifed code.",
- "The operation or step has completed without errors.",
- "The operation or step has not started yet.",
- "The operation or step is in progress.",
- "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.",
- "The operation or step has completed with cancellation."
- ]
- },
- "description": {
- "description": "The short description of the step.",
- "type": "string"
- }
- },
- "id": "Step"
- },
- "LoggingDestination": {
- "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).",
- "type": "object",
- "properties": {
- "monitoredResource": {
- "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.",
- "type": "string"
- },
- "logs": {
- "description": "Names of the logs to be sent to this destination. Each name must\nbe defined in the Service.logs section. If the log name is\nnot a domain scoped name, it will be automatically prefixed with\nthe service name followed by \"/\".",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "LoggingDestination"
- },
- "Option": {
- "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.",
- "type": "object",
- "properties": {
- "value": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.",
- "type": "object"
- },
- "name": {
- "description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.",
- "type": "string"
- }
- },
- "id": "Option"
- },
- "Logging": {
- "properties": {
- "consumerDestinations": {
- "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.",
- "items": {
- "$ref": "LoggingDestination"
- },
- "type": "array"
- },
- "producerDestinations": {
- "items": {
- "$ref": "LoggingDestination"
- },
- "type": "array",
- "description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination."
- }
- },
- "id": "Logging",
- "description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history",
- "type": "object"
}
},
"icons": {
@@ -3385,25 +3396,24 @@
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
"protocol": "rest",
- "version": "v1",
- "baseUrl": "https://servicemanagement.googleapis.com/",
"canonicalName": "Service Management",
"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/service.management": {
- "description": "Manage your Google API service configuration"
- },
"https://www.googleapis.com/auth/service.management.readonly": {
"description": "View your Google API service configuration"
},
"https://www.googleapis.com/auth/cloud-platform.read-only": {
"description": "View your data across Google Cloud Platform services"
+ },
+ "https://www.googleapis.com/auth/cloud-platform": {
+ "description": "View and manage your data across Google Cloud Platform services"
+ },
+ "https://www.googleapis.com/auth/service.management": {
+ "description": "Manage your Google API service configuration"
}
}
}
- }
+ },
+ "rootUrl": "https://servicemanagement.googleapis.com/"
}
diff --git a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go
index 4f8ec89..49c13e7 100644
--- a/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go
+++ b/vendor/google.golang.org/api/servicemanagement/v1/servicemanagement-gen.go
@@ -173,20 +173,35 @@ func (s *Advice) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// Api: Api is a light-weight descriptor for a protocol buffer service.
+// Api: Api is a light-weight descriptor for an API
+// Interface.
+//
+// Interfaces are also described as "protocol buffer services" in some
+// contexts,
+// such as by the "service" keyword in a .proto file, but they are
+// different
+// from API Services, which represent a concrete implementation of an
+// interface
+// as opposed to simply a description of methods and bindings. They are
+// also
+// sometimes simply referred to as "APIs" in other contexts, such as the
+// name of
+// this message itself. See
+// https://cloud.google.com/apis/design/glossary for
+// detailed terminology.
type Api struct {
- // Methods: The methods of this api, in unspecified order.
+ // Methods: The methods of this interface, in unspecified order.
Methods []*Method `json:"methods,omitempty"`
- // Mixins: Included APIs. See Mixin.
+ // Mixins: Included interfaces. See Mixin.
Mixins []*Mixin `json:"mixins,omitempty"`
- // Name: The fully qualified name of this api, including package
+ // Name: The fully qualified name of this interface, including package
// name
- // followed by the api's simple name.
+ // followed by the interface's simple name.
Name string `json:"name,omitempty"`
- // Options: Any metadata attached to the API.
+ // Options: Any metadata attached to the interface.
Options []*Option `json:"options,omitempty"`
// SourceContext: Source context for the protocol buffer service
@@ -201,16 +216,17 @@ type Api struct {
// "SYNTAX_PROTO3" - Syntax `proto3`.
Syntax string `json:"syntax,omitempty"`
- // Version: A version string for this api. If specified, must have the
- // form
+ // Version: A version string for this interface. If specified, must have
+ // the form
// `major-version.minor-version`, as in `1.10`. If the minor version
- // is omitted, it defaults to zero. If the entire version field
// is
- // empty, the major version is derived from the package name,
- // as
- // outlined below. If the field is not empty, the version in the
- // package name will be verified to be consistent with what is
- // provided here.
+ // omitted, it defaults to zero. If the entire version field is empty,
+ // the
+ // major version is derived from the package name, as outlined below. If
+ // the
+ // field is not empty, the version in the package name will be verified
+ // to be
+ // consistent with what is provided here.
//
// The versioning schema uses [semantic
// versioning](http://semver.org) where the major version
@@ -222,11 +238,13 @@ type Api struct {
// carefully
// chosen based on the product plan.
//
- // The major version is also reflected in the package name of the
- // API, which must end in `v`, as in
+ // The major version is also reflected in the package name of
+ // the
+ // interface, which must end in `v`, as
+ // in
// `google.feature.v1`. For major versions 0 and 1, the suffix can
// be omitted. Zero major versions must only be used for
- // experimental, none-GA apis.
+ // experimental, non-GA interfaces.
//
Version string `json:"version,omitempty"`
@@ -438,6 +456,11 @@ type AuthProvider struct {
// bookstore_web.apps.googleusercontent.com
Audiences string `json:"audiences,omitempty"`
+ // AuthorizationUrl: Redirect URL if JWT token is required but no
+ // present or is expired.
+ // Implement authorizationUrl of securityDefinitions in OpenAPI spec.
+ AuthorizationUrl string `json:"authorizationUrl,omitempty"`
+
// Id: The unique identifier of the auth provider. It will be referred
// to by
// `AuthRequirement.provider_id`.
@@ -1380,7 +1403,35 @@ func (s *Control) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// CounterOptions: Options for counters
+// CounterOptions: Increment a streamz counter with the specified metric
+// and field names.
+//
+// Metric names should start with a '/', generally be
+// lowercase-only,
+// and end in "_count". Field names should not contain an initial
+// slash.
+// The actual exported metric names will have "/iam/policy"
+// prepended.
+//
+// Field names correspond to IAM request parameters and field values
+// are
+// their respective values.
+//
+// At present the only supported field names are
+// - "iam_principal", corresponding to IAMContext.principal;
+// - "" (empty string), resulting in one aggretated counter with no
+// field.
+//
+// Examples:
+// counter { metric: "/debug_access_count" field: "iam_principal" }
+// ==> increment counter /iam/policy/backend_debug_access_count
+// {iam_principal=[value of
+// IAMContext.principal]}
+//
+// At this time we do not support:
+// * multiple field names (though this may be supported in the future)
+// * decrementing the counter
+// * incrementing it by anything other than 1
type CounterOptions struct {
// Field: The field value to attribute.
Field string `json:"field,omitempty"`
@@ -1561,6 +1612,55 @@ func (s *CustomHttpPattern) MarshalJSON() ([]byte, error) {
// DataAccessOptions: Write a Data Access (Gin) log
type DataAccessOptions struct {
+ // LogMode: Whether Gin logging should happen in a fail-closed manner at
+ // the caller.
+ // This is relevant only in the LocalIAM implementation, for now.
+ //
+ // Possible values:
+ // "LOG_MODE_UNSPECIFIED" - Client is not required to write a partial
+ // Gin log immediately after
+ // the authorization check. If client chooses to write one and it
+ // fails,
+ // client may either fail open (allow the operation to continue) or
+ // fail closed (handle as a DENY outcome).
+ // "LOG_FAIL_CLOSED" - The application's operation in the context of
+ // which this authorization
+ // check is being made may only be performed if it is successfully
+ // logged
+ // to Gin. For instance, the authorization library may satisfy
+ // this
+ // obligation by emitting a partial log entry at authorization check
+ // time
+ // and only returning ALLOW to the application if it succeeds.
+ //
+ // If a matching Rule has this directive, but the client has not
+ // indicated
+ // that it will honor such requirements, then the IAM check will result
+ // in
+ // authorization failure by setting CheckPolicyResponse.success=false.
+ LogMode string `json:"logMode,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "LogMode") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "LogMode") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *DataAccessOptions) MarshalJSON() ([]byte, error) {
+ type noMethod DataAccessOptions
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DeleteServiceStrategy: Strategy used to delete a service. This
@@ -2750,49 +2850,6 @@ type HttpRule struct {
// at the top-level of response message type.
ResponseBody string `json:"responseBody,omitempty"`
- // RestCollection: Optional. The REST collection name is by default
- // derived from the URL
- // pattern. If specified, this field overrides the default collection
- // name.
- // Example:
- //
- // rpc AddressesAggregatedList(AddressesAggregatedListRequest)
- // returns (AddressesAggregatedListResponse) {
- // option (google.api.http) = {
- // get: "/v1/projects/{project_id}/aggregated/addresses"
- // rest_collection: "projects.addresses"
- // };
- // }
- //
- // This method has the automatically derived collection
- // name
- // "projects.aggregated". Because, semantically, this rpc is actually
- // an
- // operation on the "projects.addresses" collection, the
- // `rest_collection`
- // field is configured to override the derived collection name.
- RestCollection string `json:"restCollection,omitempty"`
-
- // RestMethodName: Optional. The rest method name is by default derived
- // from the URL
- // pattern. If specified, this field overrides the default method
- // name.
- // Example:
- //
- // rpc CreateResource(CreateResourceRequest)
- // returns (CreateResourceResponse) {
- // option (google.api.http) = {
- // post: "/v1/resources",
- // body: "resource",
- // rest_method_name: "insert"
- // };
- // }
- //
- // This method has the automatically derived rest method name "create",
- // but
- // for backwards compatability with apiary, it is specified as insert.
- RestMethodName string `json:"restMethodName,omitempty"`
-
// Selector: Selects methods to which this rule applies.
//
// Refer to selector for syntax details.
@@ -3007,35 +3064,6 @@ func (s *ListServicesResponse) MarshalJSON() ([]byte, error) {
}
// LogConfig: Specifies what kind of log the caller must write
-// Increment a streamz counter with the specified metric and field
-// names.
-//
-// Metric names should start with a '/', generally be
-// lowercase-only,
-// and end in "_count". Field names should not contain an initial
-// slash.
-// The actual exported metric names will have "/iam/policy"
-// prepended.
-//
-// Field names correspond to IAM request parameters and field values
-// are
-// their respective values.
-//
-// At present the only supported field names are
-// - "iam_principal", corresponding to IAMContext.principal;
-// - "" (empty string), resulting in one aggretated counter with no
-// field.
-//
-// Examples:
-// counter { metric: "/debug_access_count" field: "iam_principal" }
-// ==> increment counter /iam/policy/backend_debug_access_count
-// {iam_principal=[value of
-// IAMContext.principal]}
-//
-// At this time we do not support:
-// * multiple field names (though this may be supported in the future)
-// * decrementing the counter
-// * incrementing it by anything other than 1
type LogConfig struct {
// CloudAudit: Cloud audit options.
CloudAudit *CloudAuditOptions `json:"cloudAudit,omitempty"`
@@ -3411,7 +3439,7 @@ func (s *MediaUpload) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// Method: Method represents a method of an api.
+// Method: Method represents a method of an API interface.
type Method struct {
// Name: The simple name of this method.
Name string `json:"name,omitempty"`
@@ -3685,11 +3713,11 @@ func (s *MetricRule) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// Mixin: Declares an API to be included in this API. The including API
-// must
-// redeclare all the methods from the included API, but
-// documentation
-// and options are inherited as follows:
+// Mixin: Declares an API Interface to be included in this interface.
+// The including
+// interface must redeclare all the methods from the included interface,
+// but
+// documentation and options are inherited as follows:
//
// - If after comment and whitespace stripping, the documentation
// string of the redeclared method is empty, it will be inherited
@@ -3701,8 +3729,8 @@ func (s *MetricRule) MarshalJSON() ([]byte, error) {
//
// - If an http annotation is inherited, the path pattern will be
// modified as follows. Any version prefix will be replaced by the
-// version of the including API plus the root path if
-// specified.
+// version of the including interface plus the root path if
+// specified.
//
// Example of a simple mixin:
//
@@ -3771,7 +3799,7 @@ func (s *MetricRule) MarshalJSON() ([]byte, error) {
// ...
// }
type Mixin struct {
- // Name: The fully qualified name of the API which is included.
+ // Name: The fully qualified name of the interface which is included.
Name string `json:"name,omitempty"`
// Root: If non-empty specifies a path under which inherited HTTP
@@ -4856,13 +4884,13 @@ type Service struct {
// Backend: API backend configuration.
Backend *Backend `json:"backend,omitempty"`
- // ConfigVersion: The version of the service configuration. The config
- // version may
- // influence interpretation of the configuration, for example,
- // to
- // determine defaults. This is documented together with
- // applicable
- // options. The current default for the config version itself is `3`.
+ // ConfigVersion: The semantic version of the service configuration. The
+ // config version
+ // affects the interpretation of the service configuration. For
+ // example,
+ // certain features are enabled by default for certain config
+ // versions.
+ // The latest config version is `3`.
ConfigVersion int64 `json:"configVersion,omitempty"`
// Context: Context configuration.
@@ -5190,9 +5218,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
diff --git a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json
index 6e6253e..1a16567 100644
--- a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json
+++ b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-api.json
@@ -1,36 +1,38 @@
{
+ "name": "serviceuser",
+ "batchPath": "batch",
"title": "Google Service User API",
"ownerName": "Google",
"resources": {
"services": {
"methods": {
"search": {
- "path": "v1/services:search",
- "id": "serviceuser.services.search",
- "description": "Search available services.\n\nWhen no filter is specified, returns all accessible services. For\nauthenticated users, also returns all services the calling user has\n\"servicemanagement.services.bind\" permission for.",
"httpMethod": "GET",
+ "parameterOrder": [],
"response": {
"$ref": "SearchServicesResponse"
},
- "parameterOrder": [],
+ "parameters": {
+ "pageToken": {
+ "location": "query",
+ "description": "Token identifying which result to start with; returned by a previous list\ncall.",
+ "type": "string"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "Requested size of the next page of data.",
+ "type": "integer",
+ "location": "query"
+ }
+ },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/cloud-platform.read-only"
],
- "parameters": {
- "pageToken": {
- "description": "Token identifying which result to start with; returned by a previous list\ncall.",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "Requested size of the next page of data.",
- "type": "integer"
- }
- },
- "flatPath": "v1/services:search"
+ "flatPath": "v1/services:search",
+ "path": "v1/services:search",
+ "id": "serviceuser.services.search",
+ "description": "Search available services.\n\nWhen no filter is specified, returns all accessible services. For\nauthenticated users, also returns all services the calling user has\n\"servicemanagement.services.bind\" permission for."
}
}
},
@@ -40,19 +42,23 @@
"methods": {
"disable": {
"flatPath": "v1/projects/{projectsId}/services/{servicesId}:disable",
- "id": "serviceuser.projects.services.disable",
"path": "v1/{+name}:disable",
- "description": "Disable a service so it can no longer be used with a\nproject. This prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e",
+ "id": "serviceuser.projects.services.disable",
"request": {
"$ref": "DisableServiceRequest"
},
- "response": {
- "$ref": "Operation"
- },
+ "description": "Disable a service so it can no longer be used with a\nproject. This prevents unintended usage that may cause unexpected billing\ncharges or security leaks.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e",
+ "httpMethod": "POST",
"parameterOrder": [
"name"
],
- "httpMethod": "POST",
+ "response": {
+ "$ref": "Operation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
"parameters": {
"name": {
"description": "Name of the consumer and the service to disable for that consumer.\n\nThe Service User implementation accepts the following forms for consumer:\n- \"project:\u003cproject_id\u003e\"\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:disable",
@@ -61,68 +67,63 @@
"pattern": "^projects/[^/]+/services/[^/]+$",
"location": "path"
}
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ]
+ }
},
"enable": {
- "parameters": {
- "name": {
- "location": "path",
- "description": "Name of the consumer and the service to enable for that consumer.\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:enable",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/services/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/service.management"
- ],
- "flatPath": "v1/projects/{projectsId}/services/{servicesId}:enable",
- "path": "v1/{+name}:enable",
- "id": "serviceuser.projects.services.enable",
- "description": "Enable a service so it can be used with a project.\nSee [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e",
- "request": {
- "$ref": "EnableServiceRequest"
- },
"httpMethod": "POST",
"parameterOrder": [
"name"
],
"response": {
"$ref": "Operation"
- }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/service.management"
+ ],
+ "parameters": {
+ "name": {
+ "description": "Name of the consumer and the service to enable for that consumer.\n\nA valid path would be:\n- /v1/projects/my-project/services/servicemanagement.googleapis.com:enable",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/services/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/services/{servicesId}:enable",
+ "path": "v1/{+name}:enable",
+ "id": "serviceuser.projects.services.enable",
+ "request": {
+ "$ref": "EnableServiceRequest"
+ },
+ "description": "Enable a service so it can be used with a project.\nSee [Cloud Auth Guide](https://cloud.google.com/docs/authentication) for\nmore information.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e"
},
"list": {
- "description": "List enabled services for the specified consumer.",
- "httpMethod": "GET",
- "parameterOrder": [
- "parent"
- ],
"response": {
"$ref": "ListEnabledServicesResponse"
},
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "GET",
"parameters": {
+ "pageToken": {
+ "location": "query",
+ "description": "Token identifying which result to start with; returned by a previous list\ncall.",
+ "type": "string"
+ },
"pageSize": {
+ "type": "integer",
"location": "query",
"format": "int32",
- "description": "Requested size of the next page of data.",
- "type": "integer"
+ "description": "Requested size of the next page of data."
},
"parent": {
- "pattern": "^projects/[^/]+$",
- "location": "path",
"description": "List enabled services for the specified parent.\n\nAn example valid parent would be:\n- projects/my-project",
"type": "string",
- "required": true
- },
- "pageToken": {
- "description": "Token identifying which result to start with; returned by a previous list\ncall.",
- "type": "string",
- "location": "query"
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
}
},
"scopes": [
@@ -130,8 +131,9 @@
"https://www.googleapis.com/auth/cloud-platform.read-only"
],
"flatPath": "v1/projects/{projectsId}/services",
+ "id": "serviceuser.projects.services.list",
"path": "v1/{+parent}/services",
- "id": "serviceuser.projects.services.list"
+ "description": "List enabled services for the specified consumer."
}
}
}
@@ -139,36 +141,15 @@
}
},
"parameters": {
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "quotaUser": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "pp": {
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean",
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
"location": "query"
},
"oauth_token": {
- "location": "query",
"description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"upload_protocol": {
"location": "query",
@@ -176,25 +157,20 @@
"type": "string"
},
"prettyPrint": {
+ "location": "query",
"description": "Returns response with indentations and line breaks.",
"default": "true",
- "type": "boolean",
- "location": "query"
+ "type": "boolean"
},
"uploadType": {
- "location": "query",
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
"type": "string",
"location": "query"
},
- "callback": {
- "type": "string",
+ "fields": {
"location": "query",
- "description": "JSONP"
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
},
"$.xgafv": {
"enumDescriptions": [
@@ -209,9 +185,12 @@
"description": "V1 error format.",
"type": "string"
},
+ "callback": {
+ "type": "string",
+ "location": "query",
+ "description": "JSONP"
+ },
"alt": {
- "description": "Data format for response.",
- "default": "json",
"enum": [
"json",
"media",
@@ -223,619 +202,60 @@
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
+ "location": "query",
+ "description": "Data format for response.",
+ "default": "json"
+ },
+ "access_token": {
+ "location": "query",
+ "description": "OAuth access token.",
+ "type": "string"
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "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.",
+ "type": "string",
"location": "query"
+ },
+ "pp": {
+ "location": "query",
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean"
}
},
"version": "v1",
"baseUrl": "https://serviceuser.googleapis.com/",
"servicePath": "",
- "kind": "discovery#restDescription",
"description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.",
+ "kind": "discovery#restDescription",
"basePath": "",
+ "revision": "20170819",
"id": "serviceuser:v1",
"documentationLink": "https://cloud.google.com/service-management/",
- "revision": "20170626",
"discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
- "Api": {
- "description": "Api is a light-weight descriptor for a protocol buffer service.",
- "type": "object",
- "properties": {
- "mixins": {
- "description": "Included APIs. See Mixin.",
- "items": {
- "$ref": "Mixin"
- },
- "type": "array"
- },
- "options": {
- "items": {
- "$ref": "Option"
- },
- "type": "array",
- "description": "Any metadata attached to the API."
- },
- "methods": {
- "items": {
- "$ref": "Method"
- },
- "type": "array",
- "description": "The methods of this api, in unspecified order."
- },
- "name": {
- "description": "The fully qualified name of this api, including package name\nfollowed by the api's simple name.",
- "type": "string"
- },
- "sourceContext": {
- "description": "Source context for the protocol buffer service represented by this\nmessage.",
- "$ref": "SourceContext"
- },
- "syntax": {
- "description": "The source syntax of the service.",
- "type": "string",
- "enumDescriptions": [
- "Syntax `proto2`.",
- "Syntax `proto3`."
- ],
- "enum": [
- "SYNTAX_PROTO2",
- "SYNTAX_PROTO3"
- ]
- },
- "version": {
- "description": "A version string for this api. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version\nis omitted, it defaults to zero. If the entire version field is\nempty, the major version is derived from the package name, as\noutlined below. If the field is not empty, the version in the\npackage name will be verified to be consistent with what is\nprovided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\nAPI, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, none-GA apis.\n",
- "type": "string"
- }
- },
- "id": "Api"
- },
- "MetricRule": {
- "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call.",
- "type": "object",
- "properties": {
- "metricCosts": {
- "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.",
- "type": "object",
- "additionalProperties": {
- "format": "int64",
- "type": "string"
- }
- },
- "selector": {
- "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- },
- "id": "MetricRule"
- },
- "Authentication": {
- "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth",
- "type": "object",
- "properties": {
- "rules": {
- "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "AuthenticationRule"
- },
- "type": "array"
- },
- "providers": {
- "items": {
- "$ref": "AuthProvider"
- },
- "type": "array",
- "description": "Defines a set of authentication providers that a service supports."
- }
- },
- "id": "Authentication"
- },
- "Operation": {
- "type": "object",
- "properties": {
- "done": {
- "type": "boolean",
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable."
- },
- "response": {
- "type": "object",
- "additionalProperties": {
- "type": "any",
- "description": "Properties of the object. Contains field @type with type URL."
- },
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`."
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
- "type": "string"
- },
- "error": {
- "description": "The error result of the operation in case of failure or cancellation.",
- "$ref": "Status"
- },
- "metadata": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any."
- }
- },
- "id": "Operation",
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call."
- },
- "Page": {
- "properties": {
- "content": {
- "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.",
- "type": "string"
- },
- "subpages": {
- "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.",
- "items": {
- "$ref": "Page"
- },
- "type": "array"
- },
- "name": {
- "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.",
- "type": "string"
- }
- },
- "id": "Page",
- "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.",
- "type": "object"
- },
- "Status": {
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object",
- "properties": {
- "code": {
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "type": "integer"
- },
- "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"
- },
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "items": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "type": "array"
- }
- },
- "id": "Status"
- },
- "AuthProvider": {
- "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).",
- "type": "object",
- "properties": {
- "audiences": {
- "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com",
- "type": "string"
- },
- "issuer": {
- "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com",
- "type": "string"
- },
- "id": {
- "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".",
- "type": "string"
- },
- "jwksUri": {
- "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs",
- "type": "string"
- }
- },
- "id": "AuthProvider"
- },
- "EnumValue": {
- "description": "Enum value definition.",
- "type": "object",
- "properties": {
- "options": {
- "description": "Protocol buffer options.",
- "items": {
- "$ref": "Option"
- },
- "type": "array"
- },
- "number": {
- "format": "int32",
- "description": "Enum value number.",
- "type": "integer"
- },
- "name": {
- "type": "string",
- "description": "Enum value name."
- }
- },
- "id": "EnumValue"
- },
- "Service": {
- "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth",
- "type": "object",
- "properties": {
- "title": {
- "description": "The product title for this service.",
- "type": "string"
- },
- "endpoints": {
- "items": {
- "$ref": "Endpoint"
- },
- "type": "array",
- "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs."
- },
- "apis": {
- "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.",
- "items": {
- "$ref": "Api"
- },
- "type": "array"
- },
- "logs": {
- "items": {
- "$ref": "LogDescriptor"
- },
- "type": "array",
- "description": "Defines the logs used by this service."
- },
- "types": {
- "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32",
- "items": {
- "$ref": "Type"
- },
- "type": "array"
- },
- "sourceInfo": {
- "$ref": "SourceInfo",
- "description": "Output only. The source information for this configuration if available."
- },
- "http": {
- "$ref": "Http",
- "description": "HTTP configuration."
- },
- "systemParameters": {
- "description": "System parameter configuration.",
- "$ref": "SystemParameters"
- },
- "backend": {
- "$ref": "Backend",
- "description": "API backend configuration."
- },
- "documentation": {
- "$ref": "Documentation",
- "description": "Additional API documentation."
- },
- "logging": {
- "$ref": "Logging",
- "description": "Logging configuration."
- },
- "monitoredResources": {
- "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.",
- "items": {
- "$ref": "MonitoredResourceDescriptor"
- },
- "type": "array"
- },
- "enums": {
- "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum",
- "items": {
- "$ref": "Enum"
- },
- "type": "array"
- },
- "context": {
- "description": "Context configuration.",
- "$ref": "Context"
- },
- "id": {
- "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.",
- "type": "string"
- },
- "usage": {
- "$ref": "Usage",
- "description": "Configuration controlling usage of this service."
- },
- "metrics": {
- "description": "Defines the metrics used by this service.",
- "items": {
- "$ref": "MetricDescriptor"
- },
- "type": "array"
- },
- "authentication": {
- "description": "Auth configuration.",
- "$ref": "Authentication"
- },
- "experimental": {
- "$ref": "Experimental",
- "description": "Experimental configuration."
- },
- "control": {
- "$ref": "Control",
- "description": "Configuration for the service control plane."
- },
- "configVersion": {
- "format": "uint32",
- "description": "The version of the service configuration. The config version may\ninfluence interpretation of the configuration, for example, to\ndetermine defaults. This is documented together with applicable\noptions. The current default for the config version itself is `3`.",
- "type": "integer"
- },
- "monitoring": {
- "$ref": "Monitoring",
- "description": "Monitoring configuration."
- },
- "systemTypes": {
- "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.",
- "items": {
- "$ref": "Type"
- },
- "type": "array"
- },
- "producerProjectId": {
- "description": "The Google project that owns this service.",
- "type": "string"
- },
- "visibility": {
- "$ref": "Visibility",
- "description": "API visibility configuration."
- },
- "quota": {
- "$ref": "Quota",
- "description": "Quota configuration."
- },
- "name": {
- "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.",
- "type": "string"
- },
- "customError": {
- "$ref": "CustomError",
- "description": "Custom error configuration."
- }
- },
- "id": "Service"
- },
- "OperationMetadata": {
- "properties": {
- "startTime": {
- "format": "google-datetime",
- "description": "The start time of the operation.",
- "type": "string"
- },
- "steps": {
- "description": "Detailed status information for each step. The order is undetermined.",
- "items": {
- "$ref": "Step"
- },
- "type": "array"
- },
- "resourceNames": {
- "description": "The full name of the resources that this operation is directly\nassociated with.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "progressPercentage": {
- "type": "integer",
- "format": "int32",
- "description": "Percentage of completion of this operation, ranging from 0 to 100."
- }
- },
- "id": "OperationMetadata",
- "description": "The metadata associated with a long running operation resource.",
- "type": "object"
- },
- "CustomHttpPattern": {
- "description": "A custom pattern is used for defining custom HTTP verb.",
- "type": "object",
- "properties": {
- "kind": {
- "description": "The name of this custom HTTP verb.",
- "type": "string"
- },
- "path": {
- "description": "The path matched by this custom verb.",
- "type": "string"
- }
- },
- "id": "CustomHttpPattern"
- },
- "PublishedService": {
- "description": "The published version of a Service that is managed by\nGoogle Service Management.",
- "type": "object",
- "properties": {
- "service": {
- "$ref": "Service",
- "description": "The service's published configuration."
- },
- "name": {
- "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com",
- "type": "string"
- }
- },
- "id": "PublishedService"
- },
- "SystemParameterRule": {
- "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.",
- "type": "object",
- "properties": {
- "parameters": {
- "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent.",
- "items": {
- "$ref": "SystemParameter"
- },
- "type": "array"
- },
- "selector": {
- "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- },
- "id": "SystemParameterRule"
- },
- "VisibilityRule": {
- "description": "A visibility rule provides visibility configuration for an individual API\nelement.",
- "type": "object",
- "properties": {
- "restriction": {
- "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.",
- "type": "string"
- },
- "selector": {
- "type": "string",
- "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details."
- }
- },
- "id": "VisibilityRule"
- },
- "HttpRule": {
- "type": "object",
- "properties": {
- "custom": {
- "$ref": "CustomHttpPattern",
- "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients."
- },
- "patch": {
- "description": "Used for updating a resource.",
- "type": "string"
- },
- "get": {
- "description": "Used for listing and getting information about resources.",
- "type": "string"
- },
- "put": {
- "description": "Used for updating a resource.",
- "type": "string"
- },
- "delete": {
- "description": "Used for deleting a resource.",
- "type": "string"
- },
- "body": {
- "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.",
- "type": "string"
- },
- "mediaDownload": {
- "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration.",
- "$ref": "MediaDownload"
- },
- "post": {
- "description": "Used for creating a resource.",
- "type": "string"
- },
- "restMethodName": {
- "description": "Optional. The rest method name is by default derived from the URL\npattern. If specified, this field overrides the default method name.\nExample:\n\n rpc CreateResource(CreateResourceRequest)\n returns (CreateResourceResponse) {\n option (google.api.http) = {\n post: \"/v1/resources\",\n body: \"resource\",\n rest_method_name: \"insert\"\n };\n }\n\nThis method has the automatically derived rest method name \"create\", but\n for backwards compatability with apiary, it is specified as insert.",
- "type": "string"
- },
- "additionalBindings": {
- "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).",
- "items": {
- "$ref": "HttpRule"
- },
- "type": "array"
- },
- "restCollection": {
- "description": "Optional. The REST collection name is by default derived from the URL\npattern. If specified, this field overrides the default collection name.\nExample:\n\n rpc AddressesAggregatedList(AddressesAggregatedListRequest)\n returns (AddressesAggregatedListResponse) {\n option (google.api.http) = {\n get: \"/v1/projects/{project_id}/aggregated/addresses\"\n rest_collection: \"projects.addresses\"\n };\n }\n\nThis method has the automatically derived collection name\n\"projects.aggregated\". Because, semantically, this rpc is actually an\noperation on the \"projects.addresses\" collection, the `rest_collection`\nfield is configured to override the derived collection name.",
- "type": "string"
- },
- "responseBody": {
- "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type.",
- "type": "string"
- },
- "mediaUpload": {
- "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods.",
- "$ref": "MediaUpload"
- },
- "selector": {
- "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- }
- },
- "id": "HttpRule",
- "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields."
- },
- "MonitoringDestination": {
- "id": "MonitoringDestination",
- "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).",
- "type": "object",
- "properties": {
- "metrics": {
- "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "monitoredResource": {
- "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.",
- "type": "string"
- }
- }
- },
- "Visibility": {
- "properties": {
- "rules": {
- "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "VisibilityRule"
- },
- "type": "array"
- }
- },
- "id": "Visibility",
- "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.",
- "type": "object"
- },
- "SystemParameters": {
- "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.",
- "type": "object",
- "properties": {
- "rules": {
- "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "SystemParameterRule"
- },
- "type": "array"
- }
- },
- "id": "SystemParameters"
- },
- "Quota": {
- "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64",
- "type": "object",
- "properties": {
- "limits": {
- "description": "List of `QuotaLimit` definitions for the service.",
- "items": {
- "$ref": "QuotaLimit"
- },
- "type": "array"
- },
- "metricRules": {
- "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.",
- "items": {
- "$ref": "MetricRule"
- },
- "type": "array"
- }
- },
- "id": "Quota"
- },
"Step": {
- "description": "Represents the status of one operation step.",
"type": "object",
"properties": {
+ "description": {
+ "description": "The short description of the step.",
+ "type": "string"
+ },
"status": {
+ "enumDescriptions": [
+ "Unspecifed code.",
+ "The operation or step has completed without errors.",
+ "The operation or step has not started yet.",
+ "The operation or step is in progress.",
+ "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.",
+ "The operation or step has completed with cancellation."
+ ],
"enum": [
"STATUS_UNSPECIFIED",
"DONE",
@@ -845,22 +265,11 @@
"CANCELLED"
],
"description": "The status code.",
- "type": "string",
- "enumDescriptions": [
- "Unspecifed code.",
- "The operation or step has completed without errors.",
- "The operation or step has not started yet.",
- "The operation or step is in progress.",
- "The operation or step has completed with errors. If the operation is\nrollbackable, the rollback completed with errors too.",
- "The operation or step has completed with cancellation."
- ]
- },
- "description": {
- "type": "string",
- "description": "The short description of the step."
+ "type": "string"
}
},
- "id": "Step"
+ "id": "Step",
+ "description": "Represents the status of one operation step."
},
"LoggingDestination": {
"description": "Configuration of a specific logging destination (the producer project\nor the consumer project).",
@@ -881,34 +290,34 @@
"id": "LoggingDestination"
},
"Option": {
- "id": "Option",
"description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.",
"type": "object",
"properties": {
"value": {
+ "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.",
+ "type": "object",
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
- },
- "description": "The option's value packed in an Any message. If the value is a primitive,\nthe corresponding wrapper type defined in google/protobuf/wrappers.proto\nshould be used. If the value is an enum, it should be stored as an int32\nvalue using the google.protobuf.Int32Value type.",
- "type": "object"
+ }
},
"name": {
"description": "The option's name. For protobuf built-in options (options defined in\ndescriptor.proto), this is the short name. For example, `\"map_entry\"`.\nFor custom options, it should be the fully-qualified name. For example,\n`\"google.api.http\"`.",
"type": "string"
}
- }
+ },
+ "id": "Option"
},
"Logging": {
"description": "Logging configuration of the service.\n\nThe following example shows how to configure logs to be sent to the\nproducer and consumer projects. In the example, the `activity_history`\nlog is sent to both the producer and consumer projects, whereas the\n`purchase_history` log is only sent to the producer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n logs:\n - name: activity_history\n labels:\n - key: /customer_id\n - name: purchase_history\n logging:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history\n - purchase_history\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n logs:\n - activity_history",
"type": "object",
"properties": {
"consumerDestinations": {
+ "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination.",
"items": {
"$ref": "LoggingDestination"
},
- "type": "array",
- "description": "Logging configurations for sending logs to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none consumer destination."
+ "type": "array"
},
"producerDestinations": {
"description": "Logging configurations for sending logs to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A log can be used in at most\none producer destination.",
@@ -924,30 +333,16 @@
"description": "`QuotaLimit` defines a specific limit that applies over a specified duration\nfor a limit type. There can be at most one limit for a duration and limit\ntype combination defined within a `QuotaGroup`.",
"type": "object",
"properties": {
- "duration": {
- "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.",
- "type": "string"
- },
- "freeTier": {
- "format": "int64",
- "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.",
- "type": "string"
- },
- "defaultLimit": {
- "format": "int64",
- "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.",
- "type": "string"
- },
- "displayName": {
+ "description": {
"type": "string",
- "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration."
+ "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`)."
},
"metric": {
"description": "The name of the metric this quota limit applies to. The quota limits with\nthe same metric will be checked together during runtime. The metric must be\ndefined within the service config.\n\nUsed by metric-based quotas only.",
"type": "string"
},
- "description": {
- "description": "Optional. User-visible, extended description for this quota limit.\nShould be used only when more context is needed to understand this limit\nthan provided by the limit's display name (see: `display_name`).",
+ "displayName": {
+ "description": "User-visible display name for this limit.\nOptional. If not set, the UI will provide a default display name based on\nthe quota configuration. This field can be used to override the default\ndisplay name generated from the configuration.",
"type": "string"
},
"values": {
@@ -959,8 +354,8 @@
"type": "object"
},
"unit": {
- "type": "string",
- "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nThe [Google Service Control](https://cloud.google.com/service-control)\nsupports the following unit components:\n* One of the time intevals:\n * \"/min\" for quota every minute.\n * \"/d\" for quota every 24 hours, starting 00:00 US Pacific Time.\n * Otherwise the quota won't be reset by time, such as storage limit.\n* One and only one of the granted containers:\n * \"/{project}\" quota for a project\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.\n\nUsed by metric-based quotas only."
+ "description": "Specify the unit of the quota limit. It uses the same syntax as\nMetric.unit. The supported unit kinds are determined by the quota\nbackend system.\n\nThe [Google Service Control](https://cloud.google.com/service-control)\nsupports the following unit components:\n* One of the time intevals:\n * \"/min\" for quota every minute.\n * \"/d\" for quota every 24 hours, starting 00:00 US Pacific Time.\n * Otherwise the quota won't be reset by time, such as storage limit.\n* One and only one of the granted containers:\n * \"/{project}\" quota for a project\n\nHere are some examples:\n* \"1/min/{project}\" for quota per minute per project.\n\nNote: the order of unit components is insignificant.\nThe \"1\" at the beginning is required to follow the metric unit syntax.\n\nUsed by metric-based quotas only.",
+ "type": "string"
},
"maxLimit": {
"format": "int64",
@@ -970,12 +365,26 @@
"name": {
"description": "Name of the quota limit. The name is used to refer to the limit when\noverriding the default limit on per-consumer basis.\n\nFor metric-based quota limits, the name must be provided, and it must be\nunique within the service. The name can only include alphanumeric\ncharacters as well as '-'.\n\nThe maximum length of the limit name is 64 characters.\n\nThe name of a limit is used as a unique identifier for this limit.\nTherefore, once a limit has been put into use, its name should be\nimmutable. You can use the display_name field to provide a user-friendly\nname for the limit. The display name can be evolved over time without\naffecting the identity of the limit.",
"type": "string"
+ },
+ "freeTier": {
+ "format": "int64",
+ "description": "Free tier value displayed in the Developers Console for this limit.\nThe free tier is the number of tokens that will be subtracted from the\nbilled amount when billing is enabled.\nThis field can only be set on a limit with duration \"1d\", in a billable\ngroup; it is invalid on any other limit. If this field is not set, it\ndefaults to 0, indicating that there is no free tier for this service.\n\nUsed by group-based quotas only.",
+ "type": "string"
+ },
+ "duration": {
+ "description": "Duration of this limit in textual notation. Example: \"100s\", \"24h\", \"1d\".\nFor duration longer than a day, only multiple of days is supported. We\nsupport only \"100s\" and \"1d\" for now. Additional support will be added in\nthe future. \"0\" indicates indefinite duration.\n\nUsed by group-based quotas only.",
+ "type": "string"
+ },
+ "defaultLimit": {
+ "format": "int64",
+ "description": "Default number of tokens that can be consumed during the specified\nduration. This is the number of tokens assigned when a client\napplication developer activates the service for his/her project.\n\nSpecifying a value of 0 will block all requests. This can be used if you\nare provisioning quota to selected consumers and blocking others.\nSimilarly, a value of -1 will indicate an unlimited quota. No other\nnegative values are allowed.\n\nUsed by group-based quotas only.",
+ "type": "string"
}
},
"id": "QuotaLimit"
},
"Method": {
- "description": "Method represents a method of an api.",
+ "description": "Method represents a method of an API interface.",
"type": "object",
"properties": {
"responseTypeUrl": {
@@ -1006,6 +415,8 @@
"type": "boolean"
},
"syntax": {
+ "description": "The source syntax of this method.",
+ "type": "string",
"enumDescriptions": [
"Syntax `proto2`.",
"Syntax `proto3`."
@@ -1013,44 +424,42 @@
"enum": [
"SYNTAX_PROTO2",
"SYNTAX_PROTO3"
- ],
- "description": "The source syntax of this method.",
- "type": "string"
+ ]
}
},
"id": "Method"
},
"Mixin": {
+ "description": "Declares an API Interface to be included in this interface. The including\ninterface must redeclare all the methods from the included interface, but\ndocumentation and options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including interface plus the root path if\n specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }",
+ "type": "object",
"properties": {
"name": {
- "description": "The fully qualified name of the API which is included.",
- "type": "string"
+ "type": "string",
+ "description": "The fully qualified name of the interface which is included."
},
"root": {
"description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.",
"type": "string"
}
},
- "id": "Mixin",
- "description": "Declares an API to be included in this API. The including API must\nredeclare all the methods from the included API, but documentation\nand options are inherited as follows:\n\n- If after comment and whitespace stripping, the documentation\n string of the redeclared method is empty, it will be inherited\n from the original method.\n\n- Each annotation belonging to the service config (http,\n visibility) which is not set in the redeclared method will be\n inherited.\n\n- If an http annotation is inherited, the path pattern will be\n modified as follows. Any version prefix will be replaced by the\n version of the including API plus the root path if specified.\n\nExample of a simple mixin:\n\n package google.acl.v1;\n service AccessControl {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v1/{resource=**}:getAcl\";\n }\n }\n\n package google.storage.v2;\n service Storage {\n // rpc GetAcl(GetAclRequest) returns (Acl);\n\n // Get a data record.\n rpc GetData(GetDataRequest) returns (Data) {\n option (google.api.http).get = \"/v2/{resource=**}\";\n }\n }\n\nExample of a mixin configuration:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n\nThe mixin construct implies that all methods in `AccessControl` are\nalso declared with same name and request/response types in\n`Storage`. A documentation generator or annotation processor will\nsee the effective `Storage.GetAcl` method after inherting\ndocumentation and annotations as follows:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/{resource=**}:getAcl\";\n }\n ...\n }\n\nNote how the version in the path pattern changed from `v1` to `v2`.\n\nIf the `root` field in the mixin is specified, it should be a\nrelative path under which inherited HTTP paths are placed. Example:\n\n apis:\n - name: google.storage.v2.Storage\n mixins:\n - name: google.acl.v1.AccessControl\n root: acls\n\nThis implies the following inherited HTTP annotation:\n\n service Storage {\n // Get the underlying ACL object.\n rpc GetAcl(GetAclRequest) returns (Acl) {\n option (google.api.http).get = \"/v2/acls/{resource=**}:getAcl\";\n }\n ...\n }",
- "type": "object"
+ "id": "Mixin"
},
"CustomError": {
"type": "object",
"properties": {
- "types": {
- "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
"rules": {
+ "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
"items": {
"$ref": "CustomErrorRule"
},
+ "type": "array"
+ },
+ "types": {
+ "items": {
+ "type": "string"
+ },
"type": "array",
- "description": "The list of custom error rules that apply to individual API messages.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order."
+ "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'."
}
},
"id": "CustomError",
@@ -1060,16 +469,16 @@
"description": "Defines the HTTP configuration for an API service. It contains a list of\nHttpRule, each specifying the mapping of an RPC method\nto one or more HTTP REST API methods.",
"type": "object",
"properties": {
- "rules": {
- "items": {
- "$ref": "HttpRule"
- },
- "type": "array",
- "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order."
- },
"fullyDecodeReservedExpansion": {
"description": "When set to true, URL path parmeters will be fully URI-decoded except in\ncases of single segment matches in reserved expansion, where \"%2F\" will be\nleft encoded.\n\nThe default behavior is to not decode RFC 6570 reserved characters in multi\nsegment matches.",
"type": "boolean"
+ },
+ "rules": {
+ "description": "A list of HTTP configuration rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "HttpRule"
+ },
+ "type": "array"
}
},
"id": "Http"
@@ -1079,15 +488,15 @@
"type": "object",
"properties": {
"sourceFiles": {
- "description": "All files used during config generation.",
"items": {
"type": "object",
"additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
+ "type": "any",
+ "description": "Properties of the object. Contains field @type with type URL."
}
},
- "type": "array"
+ "type": "array",
+ "description": "All files used during config generation."
}
},
"id": "SourceInfo"
@@ -1104,14 +513,9 @@
}
},
"SystemParameter": {
- "id": "SystemParameter",
"description": "Define a parameter's name and location. The parameter may be passed as either\nan HTTP header or a URL query parameter, and if both are passed the behavior\nis implementation-dependent.",
"type": "object",
"properties": {
- "urlQueryParameter": {
- "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.",
- "type": "string"
- },
"httpHeader": {
"description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.",
"type": "string"
@@ -1119,46 +523,18 @@
"name": {
"description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.",
"type": "string"
- }
- }
- },
- "Monitoring": {
- "id": "Monitoring",
- "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count",
- "type": "object",
- "properties": {
- "consumerDestinations": {
- "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.",
- "items": {
- "$ref": "MonitoringDestination"
- },
- "type": "array"
},
- "producerDestinations": {
- "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.",
- "items": {
- "$ref": "MonitoringDestination"
- },
- "type": "array"
+ "urlQueryParameter": {
+ "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.",
+ "type": "string"
}
- }
+ },
+ "id": "SystemParameter"
},
"Field": {
"description": "A single field of a message type.",
"type": "object",
"properties": {
- "defaultValue": {
- "description": "The string value of the default value of this field. Proto2 syntax only.",
- "type": "string"
- },
- "name": {
- "description": "The field name.",
- "type": "string"
- },
- "typeUrl": {
- "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.",
- "type": "string"
- },
"number": {
"format": "int32",
"description": "The field number.",
@@ -1231,34 +607,67 @@
"type": "boolean"
},
"cardinality": {
- "type": "string",
- "enumDescriptions": [
- "For fields with unknown cardinality.",
- "For optional fields.",
- "For required fields. Proto2 syntax only.",
- "For repeated fields."
- ],
"enum": [
"CARDINALITY_UNKNOWN",
"CARDINALITY_OPTIONAL",
"CARDINALITY_REQUIRED",
"CARDINALITY_REPEATED"
],
- "description": "The field cardinality."
+ "description": "The field cardinality.",
+ "type": "string",
+ "enumDescriptions": [
+ "For fields with unknown cardinality.",
+ "For optional fields.",
+ "For required fields. Proto2 syntax only.",
+ "For repeated fields."
+ ]
+ },
+ "defaultValue": {
+ "description": "The string value of the default value of this field. Proto2 syntax only.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The field name.",
+ "type": "string"
+ },
+ "typeUrl": {
+ "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.",
+ "type": "string"
}
},
"id": "Field"
},
+ "Monitoring": {
+ "description": "Monitoring configuration of the service.\n\nThe example below shows how to configure monitored resources and metrics\nfor monitoring. In the example, a monitored resource and two metrics are\ndefined. The `library.googleapis.com/book/returned_count` metric is sent\nto both producer and consumer projects, whereas the\n`library.googleapis.com/book/overdue_count` metric is only sent to the\nconsumer project.\n\n monitored_resources:\n - type: library.googleapis.com/branch\n labels:\n - key: /city\n description: The city where the library branch is located in.\n - key: /name\n description: The name of the branch.\n metrics:\n - name: library.googleapis.com/book/returned_count\n metric_kind: DELTA\n value_type: INT64\n labels:\n - key: /customer_id\n - name: library.googleapis.com/book/overdue_count\n metric_kind: GAUGE\n value_type: INT64\n labels:\n - key: /customer_id\n monitoring:\n producer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n consumer_destinations:\n - monitored_resource: library.googleapis.com/branch\n metrics:\n - library.googleapis.com/book/returned_count\n - library.googleapis.com/book/overdue_count",
+ "type": "object",
+ "properties": {
+ "consumerDestinations": {
+ "description": "Monitoring configurations for sending metrics to the consumer project.\nThere can be multiple consumer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none consumer destination.",
+ "items": {
+ "$ref": "MonitoringDestination"
+ },
+ "type": "array"
+ },
+ "producerDestinations": {
+ "description": "Monitoring configurations for sending metrics to the producer project.\nThere can be multiple producer destinations, each one must have a\ndifferent monitored resource type. A metric can be used in at most\none producer destination.",
+ "items": {
+ "$ref": "MonitoringDestination"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Monitoring"
+ },
"Enum": {
"description": "Enum type definition.",
"type": "object",
"properties": {
"enumvalue": {
- "description": "Enum value definitions.",
"items": {
"$ref": "EnumValue"
},
- "type": "array"
+ "type": "array",
+ "description": "Enum value definitions."
},
"name": {
"description": "Enum type name.",
@@ -1272,8 +681,6 @@
"type": "array"
},
"syntax": {
- "description": "The source syntax.",
- "type": "string",
"enumDescriptions": [
"Syntax `proto2`.",
"Syntax `proto3`."
@@ -1281,49 +688,51 @@
"enum": [
"SYNTAX_PROTO2",
"SYNTAX_PROTO3"
- ]
+ ],
+ "description": "The source syntax.",
+ "type": "string"
},
"sourceContext": {
- "description": "The source context.",
- "$ref": "SourceContext"
+ "$ref": "SourceContext",
+ "description": "The source context."
}
},
"id": "Enum"
},
- "EnableServiceRequest": {
- "description": "Request message for EnableService method.",
- "type": "object",
- "properties": {},
- "id": "EnableServiceRequest"
- },
"LabelDescriptor": {
- "type": "object",
"properties": {
+ "key": {
+ "description": "The label key.",
+ "type": "string"
+ },
+ "description": {
+ "description": "A human-readable description for the label.",
+ "type": "string"
+ },
"valueType": {
- "enum": [
- "STRING",
- "BOOL",
- "INT64"
- ],
"description": "The type of data that can be assigned to the label.",
"type": "string",
"enumDescriptions": [
"A variable-length string. This is the default.",
"Boolean; true or false.",
"A 64-bit signed integer."
+ ],
+ "enum": [
+ "STRING",
+ "BOOL",
+ "INT64"
]
- },
- "key": {
- "type": "string",
- "description": "The label key."
- },
- "description": {
- "description": "A human-readable description for the label.",
- "type": "string"
}
},
"id": "LabelDescriptor",
- "description": "A description of a label."
+ "description": "A description of a label.",
+ "type": "object"
+ },
+ "EnableServiceRequest": {
+ "description": "Request message for EnableService method.",
+ "type": "object",
+ "properties": {},
+ "id": "EnableServiceRequest"
},
"Type": {
"description": "A protocol buffer message type.",
@@ -1336,6 +745,10 @@
"type": "array",
"description": "The list of types appearing in `oneof` definitions in this type."
},
+ "sourceContext": {
+ "description": "The source context.",
+ "$ref": "SourceContext"
+ },
"syntax": {
"enumDescriptions": [
"Syntax `proto2`.",
@@ -1348,10 +761,6 @@
"description": "The source syntax.",
"type": "string"
},
- "sourceContext": {
- "description": "The source context.",
- "$ref": "SourceContext"
- },
"options": {
"description": "The protocol buffer options.",
"items": {
@@ -1374,17 +783,18 @@
"id": "Type"
},
"Experimental": {
- "id": "Experimental",
"description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.",
"type": "object",
"properties": {
"authorization": {
- "description": "Authorization configuration.",
- "$ref": "AuthorizationConfig"
+ "$ref": "AuthorizationConfig",
+ "description": "Authorization configuration."
}
- }
+ },
+ "id": "Experimental"
},
"Backend": {
+ "description": "`Backend` defines the backend configuration for a service.",
"type": "object",
"properties": {
"rules": {
@@ -1395,11 +805,9 @@
"type": "array"
}
},
- "id": "Backend",
- "description": "`Backend` defines the backend configuration for a service."
+ "id": "Backend"
},
"AuthorizationConfig": {
- "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com",
"type": "object",
"properties": {
"provider": {
@@ -1407,31 +815,39 @@
"type": "string"
}
},
- "id": "AuthorizationConfig"
+ "id": "AuthorizationConfig",
+ "description": "Configuration of authorization.\n\nThis section determines the authorization provider, if unspecified, then no\nauthorization check will be done.\n\nExample:\n\n experimental:\n authorization:\n provider: firebaserules.googleapis.com"
},
"DocumentationRule": {
- "description": "A documentation rule provides information about individual API elements.",
- "type": "object",
"properties": {
- "description": {
- "description": "Description of the selected API(s).",
- "type": "string"
- },
"deprecationDescription": {
"description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.",
"type": "string"
},
"selector": {
+ "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used.",
+ "type": "string"
+ },
+ "description": {
"type": "string",
- "description": "The selector is a comma-separated list of patterns. Each pattern is a\nqualified name of the element which may end in \"*\", indicating a wildcard.\nWildcards are only allowed at the end and for a whole component of the\nqualified name, i.e. \"foo.*\" is ok, but not \"foo.b*\" or \"foo.*.bar\". To\nspecify a default for all applicable elements, the whole pattern \"*\"\nis used."
+ "description": "Description of the selected API(s)."
}
},
- "id": "DocumentationRule"
+ "id": "DocumentationRule",
+ "description": "A documentation rule provides information about individual API elements.",
+ "type": "object"
},
"ContextRule": {
"description": "A context rule provides information about the context for an individual API\nelement.",
"type": "object",
"properties": {
+ "provided": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "description": "A list of full type names of provided contexts."
+ },
"requested": {
"description": "A list of full type names of requested contexts.",
"items": {
@@ -1442,19 +858,11 @@
"selector": {
"description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
"type": "string"
- },
- "provided": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "A list of full type names of provided contexts."
}
},
"id": "ContextRule"
},
"SourceContext": {
- "id": "SourceContext",
"description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.",
"type": "object",
"properties": {
@@ -1462,12 +870,21 @@
"description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.",
"type": "string"
}
- }
+ },
+ "id": "SourceContext"
},
"MetricDescriptor": {
"description": "Defines a metric type and its schema. Once a metric descriptor is created,\ndeleting or altering it stops data collection and makes the metric type's\nexisting data unusable.",
"type": "object",
"properties": {
+ "description": {
+ "type": "string",
+ "description": "A detailed description of the metric, which can be used in documentation."
+ },
+ "displayName": {
+ "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".",
+ "type": "string"
+ },
"unit": {
"description": "The unit in which the metric value is reported. It is only applicable\nif the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The\nsupported units are a subset of [The Unified Code for Units of\nMeasure](http://unitsofmeasure.org/ucum.html) standard:\n\n**Basic units (UNIT)**\n\n* `bit` bit\n* `By` byte\n* `s` second\n* `min` minute\n* `h` hour\n* `d` day\n\n**Prefixes (PREFIX)**\n\n* `k` kilo (10**3)\n* `M` mega (10**6)\n* `G` giga (10**9)\n* `T` tera (10**12)\n* `P` peta (10**15)\n* `E` exa (10**18)\n* `Z` zetta (10**21)\n* `Y` yotta (10**24)\n* `m` milli (10**-3)\n* `u` micro (10**-6)\n* `n` nano (10**-9)\n* `p` pico (10**-12)\n* `f` femto (10**-15)\n* `a` atto (10**-18)\n* `z` zepto (10**-21)\n* `y` yocto (10**-24)\n* `Ki` kibi (2**10)\n* `Mi` mebi (2**20)\n* `Gi` gibi (2**30)\n* `Ti` tebi (2**40)\n\n**Grammar**\n\nThe grammar includes the dimensionless unit `1`, such as `1/s`.\n\nThe grammar also includes these connectors:\n\n* `/` division (as an infix operator, e.g. `1/s`).\n* `.` multiplication (as an infix operator, e.g. `GBy.d`)\n\nThe grammar for a unit is as follows:\n\n Expression = Component { \".\" Component } { \"/\" Component } ;\n\n Component = [ PREFIX ] UNIT [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\n Annotation = \"{\" NAME \"}\" ;\n\nNotes:\n\n* `Annotation` is just a comment if it follows a `UNIT` and is\n equivalent to `1` if it is used alone. For examples,\n `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.\n* `NAME` is a sequence of non-blank printable ASCII characters not\n containing '{' or '}'.",
"type": "string"
@@ -1484,8 +901,8 @@
"type": "string"
},
"type": {
- "type": "string",
- "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\""
+ "description": "The metric type, including its DNS name prefix. The type is not\nURL-encoded. All user-defined custom metric types have the DNS name\n`custom.googleapis.com`. Metric types should use a natural hierarchical\ngrouping. For example:\n\n \"custom.googleapis.com/invoice/paid/amount\"\n \"appengine.googleapis.com/http/server/response_latencies\"",
+ "type": "string"
},
"valueType": {
"description": "Whether the measurement is an integer, a floating-point number, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.",
@@ -1510,12 +927,6 @@
]
},
"metricKind": {
- "enum": [
- "METRIC_KIND_UNSPECIFIED",
- "GAUGE",
- "DELTA",
- "CUMULATIVE"
- ],
"description": "Whether the metric records instantaneous values, changes to a value, etc.\nSome combinations of `metric_kind` and `value_type` might not be supported.",
"type": "string",
"enumDescriptions": [
@@ -1523,19 +934,35 @@
"An instantaneous measurement of a value.",
"The change in a value during a time interval.",
"A value accumulated over a time interval. Cumulative\nmeasurements in a time series should have the same start time\nand increasing end times, until an event resets the cumulative\nvalue to zero and sets a new start time for the following\npoints."
+ ],
+ "enum": [
+ "METRIC_KIND_UNSPECIFIED",
+ "GAUGE",
+ "DELTA",
+ "CUMULATIVE"
]
- },
- "description": {
- "description": "A detailed description of the metric, which can be used in documentation.",
- "type": "string"
- },
- "displayName": {
- "description": "A concise name for the metric, which can be displayed in user interfaces.\nUse sentence case without an ending period, for example \"Request count\".",
- "type": "string"
}
},
"id": "MetricDescriptor"
},
+ "ListEnabledServicesResponse": {
+ "description": "Response message for `ListEnabledServices` method.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.",
+ "type": "string"
+ },
+ "services": {
+ "description": "Services enabled for the specified parent.",
+ "items": {
+ "$ref": "PublishedService"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListEnabledServicesResponse"
+ },
"Endpoint": {
"description": "`Endpoint` describes a network endpoint that serves a set of APIs.\nA service may expose any number of endpoints, and all endpoints share the\nsame service configuration, such as quota configuration and monitoring\nconfiguration.\n\nExample service configuration:\n\n name: library-example.googleapis.com\n endpoints:\n # Below entry makes 'google.example.library.v1.Library'\n # API be served from endpoint address library-example.googleapis.com.\n # It also allows HTTP OPTIONS calls to be passed to the backend, for\n # it to decide whether the subsequent cross-origin request is\n # allowed to proceed.\n - name: library-example.googleapis.com\n allow_cors: true",
"type": "object",
@@ -1576,24 +1003,6 @@
},
"id": "Endpoint"
},
- "ListEnabledServicesResponse": {
- "description": "Response message for `ListEnabledServices` method.",
- "type": "object",
- "properties": {
- "nextPageToken": {
- "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.",
- "type": "string"
- },
- "services": {
- "items": {
- "$ref": "PublishedService"
- },
- "type": "array",
- "description": "Services enabled for the specified parent."
- }
- },
- "id": "ListEnabledServicesResponse"
- },
"OAuthRequirements": {
"description": "OAuth scopes are a way to define data and permissions on data. For example,\nthere are scopes defined for \"Read-only access to Google Calendar\" and\n\"Access to Cloud Platform\". Users can consent to a scope for an application,\ngiving it permission to access that data on their behalf.\n\nOAuth scope specifications should be fairly coarse grained; a user will need\nto see and understand the text description of what your scope means.\n\nIn most cases: use one or at most two OAuth scopes for an entire family of\nproducts. If your product has multiple APIs, you should probably be sharing\nthe OAuth scope across all of those APIs.\n\nWhen you need finer grained OAuth consent screens: talk with your product\nmanagement about how developers will use them in practice.\n\nPlease note that even though each of the canonical scopes is enough for a\nrequest to be accepted and passed to the backend, a request can still fail\ndue to the backend requiring additional scopes or permissions.",
"type": "object",
@@ -1606,31 +1015,32 @@
"id": "OAuthRequirements"
},
"Usage": {
+ "type": "object",
"properties": {
- "producerNotificationChannel": {
- "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.",
- "type": "string"
- },
- "rules": {
- "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
- "items": {
- "$ref": "UsageRule"
- },
- "type": "array"
- },
"requirements": {
"description": "Requirements that must be satisfied before a consumer project can use the\nservice. Each requirement is of the form \u003cservice.name\u003e/\u003crequirement-id\u003e;\nfor example 'serviceusage.googleapis.com/billing-enabled'.",
"items": {
"type": "string"
},
"type": "array"
+ },
+ "producerNotificationChannel": {
+ "description": "The full resource name of a channel used for sending notifications to the\nservice producer.\n\nGoogle Service Management currently only supports\n[Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification\nchannel. To use Google Cloud Pub/Sub as the channel, this must be the name\nof a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format\ndocumented in https://cloud.google.com/pubsub/docs/overview.",
+ "type": "string"
+ },
+ "rules": {
+ "items": {
+ "$ref": "UsageRule"
+ },
+ "type": "array",
+ "description": "A list of usage rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order."
}
},
"id": "Usage",
- "description": "Configuration controlling usage of a service.",
- "type": "object"
+ "description": "Configuration controlling usage of a service."
},
"Context": {
+ "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`.",
"type": "object",
"properties": {
"rules": {
@@ -1641,20 +1051,17 @@
"type": "array"
}
},
- "id": "Context",
- "description": "`Context` defines which contexts an API requests.\n\nExample:\n\n context:\n rules:\n - selector: \"*\"\n requested:\n - google.rpc.context.ProjectContext\n - google.rpc.context.OriginContext\n\nThe above specifies that all methods in the API request\n`google.rpc.context.ProjectContext` and\n`google.rpc.context.OriginContext`.\n\nAvailable context types are defined in package\n`google.rpc.context`."
+ "id": "Context"
},
"LogDescriptor": {
- "id": "LogDescriptor",
- "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer",
"type": "object",
"properties": {
"labels": {
+ "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid.",
"items": {
"$ref": "LabelDescriptor"
},
- "type": "array",
- "description": "The set of labels that are available to describe a specific log entry.\nRuntime requests that contain labels not specified here are\nconsidered invalid."
+ "type": "array"
},
"name": {
"description": "The name of the log. It must be less than 512 characters long and can\ninclude the following characters: upper- and lower-case alphanumeric\ncharacters [A-Za-z0-9], and punctuation characters including\nslash, underscore, hyphen, period [/_-.].",
@@ -1668,15 +1075,24 @@
"description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.",
"type": "string"
}
- }
+ },
+ "id": "LogDescriptor",
+ "description": "A description of a log type. Example in YAML format:\n\n - name: library.googleapis.com/activity_history\n description: The history of borrowing and returning library items.\n display_name: Activity\n labels:\n - key: /customer_id\n description: Identifier of a library customer"
},
"MonitoredResourceDescriptor": {
"description": "An object that describes the schema of a MonitoredResource object using a\ntype name and a set of labels. For example, the monitored resource\ndescriptor for Google Compute Engine VM instances has a type of\n`\"gce_instance\"` and specifies the use of the labels `\"instance_id\"` and\n`\"zone\"` to identify particular VM instances.\n\nDifferent APIs can support different monitored resource types. APIs generally\nprovide a `list` method that returns the monitored resource descriptors used\nby the API.",
"type": "object",
"properties": {
+ "labels": {
+ "items": {
+ "$ref": "LabelDescriptor"
+ },
+ "type": "array",
+ "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`."
+ },
"name": {
- "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`.",
- "type": "string"
+ "type": "string",
+ "description": "Optional. The resource name of the monitored resource descriptor:\n`\"projects/{project_id}/monitoredResourceDescriptors/{type}\"` where\n{type} is the value of the `type` field in this object and\n{project_id} is a project ID that provides API-specific context for\naccessing the type. APIs that do not use project information can use the\nresource name format `\"monitoredResourceDescriptors/{type}\"`."
},
"description": {
"description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.",
@@ -1687,24 +1103,18 @@
"description": "Optional. A concise name for the monitored resource type that might be\ndisplayed in user interfaces. It should be a Title Cased Noun Phrase,\nwithout any article or other determiners. For example,\n`\"Google Cloud SQL Database\"`."
},
"type": {
- "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters.",
- "type": "string"
- },
- "labels": {
- "description": "Required. A set of labels used to describe instances of this monitored\nresource type. For example, an individual Google Cloud SQL database is\nidentified by values for the labels `\"database_id\"` and `\"zone\"`.",
- "items": {
- "$ref": "LabelDescriptor"
- },
- "type": "array"
+ "type": "string",
+ "description": "Required. The monitored resource type. For example, the type\n`\"cloudsql_database\"` represents databases in Google Cloud SQL.\nThe maximum length of this value is 256 characters."
}
},
"id": "MonitoredResourceDescriptor"
},
"CustomErrorRule": {
+ "type": "object",
"properties": {
"isErrorType": {
- "type": "boolean",
- "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload."
+ "description": "Mark this message as possible payload in error response. Otherwise,\nobjects of this type will be filtered when they appear in error payload.",
+ "type": "boolean"
},
"selector": {
"description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.",
@@ -1712,22 +1122,20 @@
}
},
"id": "CustomErrorRule",
- "description": "A custom error rule.",
- "type": "object"
+ "description": "A custom error rule."
},
"CustomAuthRequirements": {
"description": "Configuration for a custom authentication provider.",
"type": "object",
"properties": {
"provider": {
- "type": "string",
- "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice)."
+ "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).",
+ "type": "string"
}
},
"id": "CustomAuthRequirements"
},
"MediaDownload": {
- "id": "MediaDownload",
"description": "Defines the Media configuration for a service in case of a download.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.",
"type": "object",
"properties": {
@@ -1736,27 +1144,28 @@
"type": "boolean"
},
"downloadService": {
- "type": "string",
- "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download."
+ "description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the download service if one is used for download.",
+ "type": "string"
},
"completeNotification": {
"description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.",
"type": "boolean"
},
+ "dropzone": {
+ "description": "Name of the Scotty dropzone to use for the current API.",
+ "type": "string"
+ },
"maxDirectDownloadSize": {
"format": "int64",
"description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.",
"type": "string"
},
- "dropzone": {
- "description": "Name of the Scotty dropzone to use for the current API.",
- "type": "string"
- },
"useDirectDownload": {
"description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.",
"type": "boolean"
}
- }
+ },
+ "id": "MediaDownload"
},
"DisableServiceRequest": {
"description": "Request message for DisableService method.",
@@ -1764,7 +1173,24 @@
"properties": {},
"id": "DisableServiceRequest"
},
+ "AuthorizationRule": {
+ "type": "object",
+ "properties": {
+ "selector": {
+ "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ },
+ "permissions": {
+ "description": "The required permissions. The acceptable values vary depend on the\nauthorization system used. For Google APIs, it should be a comma-separated\nGoogle IAM permission values. When multiple permissions are listed, the\nsemantics is not defined by the system. Additional documentation must\nbe provided manually.",
+ "type": "string"
+ }
+ },
+ "id": "AuthorizationRule",
+ "description": "Authorization rule for API services.\n\nIt specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.\n\nFor example:\n\n package google.storage.v1;\n\n message CopyObjectRequest {\n string source = 1 [\n (google.api.authz).permissions = \"storage.objects.get\"];\n\n string destination = 2 [\n (google.api.authz).permissions =\n \"storage.objects.create,storage.objects.update\"];\n }"
+ },
"SearchServicesResponse": {
+ "description": "Response message for SearchServices method.",
+ "type": "object",
"properties": {
"nextPageToken": {
"description": "Token that can be passed to `ListAvailableServices` to resume a paginated\nquery.",
@@ -1778,12 +1204,40 @@
"type": "array"
}
},
- "id": "SearchServicesResponse",
- "description": "Response message for SearchServices method.",
- "type": "object"
+ "id": "SearchServicesResponse"
},
"MediaUpload": {
+ "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.",
+ "type": "object",
"properties": {
+ "mimeTypes": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns."
+ },
+ "maxSize": {
+ "format": "int64",
+ "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.",
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Whether upload is enabled.",
+ "type": "boolean"
+ },
+ "progressNotification": {
+ "description": "Whether to receive a notification for progress changes of media upload.",
+ "type": "boolean"
+ },
+ "completeNotification": {
+ "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.",
+ "type": "boolean"
+ },
+ "dropzone": {
+ "description": "Name of the Scotty dropzone to use for the current API.",
+ "type": "string"
+ },
"startNotification": {
"description": "Whether to receive a notification on the start of media upload.",
"type": "boolean"
@@ -1791,42 +1245,18 @@
"uploadService": {
"description": "DO NOT USE FIELDS BELOW THIS LINE UNTIL THIS WARNING IS REMOVED.\n\nSpecify name of the upload service if one is used for upload.",
"type": "string"
- },
- "maxSize": {
- "type": "string",
- "format": "int64",
- "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes."
- },
- "mimeTypes": {
- "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "completeNotification": {
- "description": "A boolean that determines whether a notification for the completion of an\nupload should be sent to the backend. These notifications will not be seen\nby the client and will not consume quota.",
- "type": "boolean"
- },
- "progressNotification": {
- "description": "Whether to receive a notification for progress changes of media upload.",
- "type": "boolean"
- },
- "enabled": {
- "type": "boolean",
- "description": "Whether upload is enabled."
- },
- "dropzone": {
- "description": "Name of the Scotty dropzone to use for the current API.",
- "type": "string"
}
},
- "id": "MediaUpload",
- "description": "Defines the Media configuration for a service in case of an upload.\nUse this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead [][google.bytestream.RestByteStream] as an API to\nyour configuration for Bytestream methods.",
- "type": "object"
+ "id": "MediaUpload"
},
"UsageRule": {
+ "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true",
+ "type": "object",
"properties": {
+ "allowUnregisteredCalls": {
+ "type": "boolean",
+ "description": "True, if the method allows unregistered calls; false otherwise."
+ },
"selector": {
"description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.",
"type": "string"
@@ -1834,42 +1264,36 @@
"skipServiceControl": {
"description": "True, if the method should skip service control. If so, no control plane\nfeature (like quota and billing) will be enabled.",
"type": "boolean"
- },
- "allowUnregisteredCalls": {
- "description": "True, if the method allows unregistered calls; false otherwise.",
- "type": "boolean"
}
},
- "id": "UsageRule",
- "description": "Usage configuration rules for the service.\n\nNOTE: Under development.\n\n\nUse this rule to configure unregistered calls for the service. Unregistered\ncalls are calls that do not contain consumer project identity.\n(Example: calls that do not contain an API key).\nBy default, API methods do not allow unregistered calls, and each method call\nmust be identified by a consumer project identity. Use this rule to\nallow/disallow unregistered calls.\n\nExample of an API that wants to allow unregistered calls for entire service.\n\n usage:\n rules:\n - selector: \"*\"\n allow_unregistered_calls: true\n\nExample of a method that wants to allow unregistered calls.\n\n usage:\n rules:\n - selector: \"google.example.library.v1.LibraryService.CreateBook\"\n allow_unregistered_calls: true",
- "type": "object"
+ "id": "UsageRule"
},
"AuthRequirement": {
+ "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).",
+ "type": "object",
"properties": {
- "audiences": {
- "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com",
- "type": "string"
- },
"providerId": {
- "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth",
- "type": "string"
+ "type": "string",
+ "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth"
+ },
+ "audiences": {
+ "type": "string",
+ "description": "NOTE: This will be deprecated soon, once AuthProvider.audiences is\nimplemented and accepted in all the runtime components.\n\nThe list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com"
}
},
- "id": "AuthRequirement",
- "description": "User-defined authentication requirements, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).",
- "type": "object"
+ "id": "AuthRequirement"
},
"Documentation": {
"description": "`Documentation` provides the information for describing a service.\n\nExample:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: \u003e\n The Google Calendar API gives access\n to most calendar features.\n pages:\n - name: Overview\n content: (== include google/foo/overview.md ==)\n - name: Tutorial\n content: (== include google/foo/tutorial.md ==)\n subpages;\n - name: Java\n content: (== include google/foo/tutorial_java.md ==)\n rules:\n - selector: google.calendar.Calendar.Get\n description: \u003e\n ...\n - selector: google.calendar.Calendar.Put\n description: \u003e\n ...\n\u003c/code\u003e\u003c/pre\u003e\nDocumentation is provided in markdown syntax. In addition to\nstandard markdown features, definition lists, tables and fenced\ncode blocks are supported. Section headers can be provided and are\ninterpreted relative to the section nesting of the context where\na documentation fragment is embedded.\n\nDocumentation from the IDL is merged with documentation defined\nvia the config at normalization time, where documentation provided\nby config rules overrides IDL provided.\n\nA number of constructs specific to the API platform are supported\nin documentation text.\n\nIn order to reference a proto element, the following\nnotation can be used:\n\u003cpre\u003e\u003ccode\u003e[fully.qualified.proto.name][]\u003c/code\u003e\u003c/pre\u003e\nTo override the display text used for the link, this can be used:\n\u003cpre\u003e\u003ccode\u003e[display text][fully.qualified.proto.name]\u003c/code\u003e\u003c/pre\u003e\nText can be excluded from doc using the following notation:\n\u003cpre\u003e\u003ccode\u003e(-- internal comment --)\u003c/code\u003e\u003c/pre\u003e\nComments can be made conditional using a visibility label. The below\ntext will be only rendered if the `BETA` label is available:\n\u003cpre\u003e\u003ccode\u003e(--BETA: comment for BETA users --)\u003c/code\u003e\u003c/pre\u003e\nA few directives are available in documentation. Note that\ndirectives must appear on a single line to be properly\nidentified. The `include` directive includes a markdown file from\nan external source:\n\u003cpre\u003e\u003ccode\u003e(== include path/to/file ==)\u003c/code\u003e\u003c/pre\u003e\nThe `resource_for` directive marks a message to be the resource of\na collection in REST view. If it is not specified, tools attempt\nto infer the resource from the operations in a collection:\n\u003cpre\u003e\u003ccode\u003e(== resource_for v1.shelves.books ==)\u003c/code\u003e\u003c/pre\u003e\nThe directive `suppress_warning` does not directly affect documentation\nand is documented together with service config validation.",
"type": "object",
"properties": {
"summary": {
- "type": "string",
- "description": "A short summary of what the service does. Can only be provided by\nplain text."
+ "description": "A short summary of what the service does. Can only be provided by\nplain text.",
+ "type": "string"
},
"documentationRootUrl": {
- "description": "The URL to the root of documentation.",
- "type": "string"
+ "type": "string",
+ "description": "The URL to the root of documentation."
},
"overview": {
"description": "Declares a single overview page. For example:\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n overview: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nThis is a shortcut for the following declaration (using pages style):\n\u003cpre\u003e\u003ccode\u003edocumentation:\n summary: ...\n pages:\n - name: Overview\n content: (== include overview.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nNote: you cannot specify both `overview` field and `pages` field.",
@@ -1896,28 +1320,28 @@
"description": "Authentication rules for the service.\n\nBy default, if a method has any authentication requirements, every request\nmust include a valid credential matching one of the requirements.\nIt's an error to include more than one kind of credential in a single\nrequest.\n\nIf a method doesn't have any auth requirements, request credentials will be\nignored.",
"type": "object",
"properties": {
+ "requirements": {
+ "description": "Requirements for additional authentication providers.",
+ "items": {
+ "$ref": "AuthRequirement"
+ },
+ "type": "array"
+ },
"allowWithoutCredential": {
- "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject.",
- "type": "boolean"
+ "type": "boolean",
+ "description": "Whether to allow requests without a credential. The credential can be\nan OAuth token, Google cookies (first-party auth) or EndUserCreds.\n\nFor requests without credentials, if the service control environment is\nspecified, each incoming request **must** be associated with a service\nconsumer. This can be done by passing an API key that belongs to a consumer\nproject."
},
"selector": {
- "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
+ "type": "string",
+ "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details."
},
"customAuth": {
"$ref": "CustomAuthRequirements",
"description": "Configuration for custom authentication."
},
"oauth": {
- "description": "The requirements for OAuth credentials.",
- "$ref": "OAuthRequirements"
- },
- "requirements": {
- "items": {
- "$ref": "AuthRequirement"
- },
- "type": "array",
- "description": "Requirements for additional authentication providers."
+ "$ref": "OAuthRequirements",
+ "description": "The requirements for OAuth credentials."
}
},
"id": "AuthenticationRule"
@@ -1926,6 +1350,11 @@
"description": "A backend rule provides configuration for an individual API element.",
"type": "object",
"properties": {
+ "deadline": {
+ "type": "number",
+ "format": "double",
+ "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context."
+ },
"minDeadline": {
"format": "double",
"description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.",
@@ -1936,41 +1365,638 @@
"type": "string"
},
"selector": {
- "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
- "type": "string"
- },
- "deadline": {
- "format": "double",
- "description": "The number of seconds to wait for a response from a request. The\ndefault depends on the deployment context.",
- "type": "number"
+ "type": "string",
+ "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details."
}
},
"id": "BackendRule"
+ },
+ "Api": {
+ "description": "Api is a light-weight descriptor for an API Interface.\n\nInterfaces are also described as \"protocol buffer services\" in some contexts,\nsuch as by the \"service\" keyword in a .proto file, but they are different\nfrom API Services, which represent a concrete implementation of an interface\nas opposed to simply a description of methods and bindings. They are also\nsometimes simply referred to as \"APIs\" in other contexts, such as the name of\nthis message itself. See https://cloud.google.com/apis/design/glossary for\ndetailed terminology.",
+ "type": "object",
+ "properties": {
+ "methods": {
+ "description": "The methods of this interface, in unspecified order.",
+ "items": {
+ "$ref": "Method"
+ },
+ "type": "array"
+ },
+ "name": {
+ "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.",
+ "type": "string"
+ },
+ "syntax": {
+ "type": "string",
+ "enumDescriptions": [
+ "Syntax `proto2`.",
+ "Syntax `proto3`."
+ ],
+ "enum": [
+ "SYNTAX_PROTO2",
+ "SYNTAX_PROTO3"
+ ],
+ "description": "The source syntax of the service."
+ },
+ "sourceContext": {
+ "description": "Source context for the protocol buffer service represented by this\nmessage.",
+ "$ref": "SourceContext"
+ },
+ "version": {
+ "description": "A version string for this interface. If specified, must have the form\n`major-version.minor-version`, as in `1.10`. If the minor version is\nomitted, it defaults to zero. If the entire version field is empty, the\nmajor version is derived from the package name, as outlined below. If the\nfield is not empty, the version in the package name will be verified to be\nconsistent with what is provided here.\n\nThe versioning schema uses [semantic\nversioning](http://semver.org) where the major version number\nindicates a breaking change and the minor version an additive,\nnon-breaking change. Both version numbers are signals to users\nwhat to expect from different versions, and should be carefully\nchosen based on the product plan.\n\nThe major version is also reflected in the package name of the\ninterface, which must end in `v\u003cmajor-version\u003e`, as in\n`google.feature.v1`. For major versions 0 and 1, the suffix can\nbe omitted. Zero major versions must only be used for\nexperimental, non-GA interfaces.\n",
+ "type": "string"
+ },
+ "mixins": {
+ "items": {
+ "$ref": "Mixin"
+ },
+ "type": "array",
+ "description": "Included interfaces. See Mixin."
+ },
+ "options": {
+ "description": "Any metadata attached to the interface.",
+ "items": {
+ "$ref": "Option"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Api"
+ },
+ "MetricRule": {
+ "type": "object",
+ "properties": {
+ "metricCosts": {
+ "additionalProperties": {
+ "format": "int64",
+ "type": "string"
+ },
+ "description": "Metrics to update when the selected methods are called, and the associated\ncost applied to each metric.\n\nThe key of the map is the metric name, and the values are the amount\nincreased for the metric against which the quota limits are defined.\nThe value must not be negative.",
+ "type": "object"
+ },
+ "selector": {
+ "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ }
+ },
+ "id": "MetricRule",
+ "description": "Bind API methods to metrics. Binding a method to a metric causes that\nmetric's configured quota behaviors to apply to the method call."
+ },
+ "Authentication": {
+ "properties": {
+ "providers": {
+ "description": "Defines a set of authentication providers that a service supports.",
+ "items": {
+ "$ref": "AuthProvider"
+ },
+ "type": "array"
+ },
+ "rules": {
+ "description": "A list of authentication rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "AuthenticationRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Authentication",
+ "description": "`Authentication` defines the authentication configuration for an API.\n\nExample for an API targeted for external use:\n\n name: calendar.googleapis.com\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth",
+ "type": "object"
+ },
+ "Operation": {
+ "id": "Operation",
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "any",
+ "description": "Properties of the object. Contains field @type with type URL."
+ }
+ },
+ "done": {
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
+ "type": "boolean"
+ },
+ "response": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
+ "type": "object"
+ },
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "type": "string"
+ },
+ "error": {
+ "$ref": "Status",
+ "description": "The error result of the operation in case of failure or cancellation."
+ }
+ }
+ },
+ "Page": {
+ "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the page. It will be used as an identity of the page to\ngenerate URI of the page, text of the link to this page in navigation,\netc. The full page name (start from the root page name to this page\nconcatenated with `.`) can be used as reference to the page in your\ndocumentation. For example:\n\u003cpre\u003e\u003ccode\u003epages:\n- name: Tutorial\n content: (== include tutorial.md ==)\n subpages:\n - name: Java\n content: (== include tutorial_java.md ==)\n\u003c/code\u003e\u003c/pre\u003e\nYou can reference `Java` page using Markdown reference link syntax:\n`Java`.",
+ "type": "string"
+ },
+ "content": {
+ "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file.",
+ "type": "string"
+ },
+ "subpages": {
+ "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.",
+ "items": {
+ "$ref": "Page"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Page"
+ },
+ "Status": {
+ "type": "object",
+ "properties": {
+ "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"
+ },
+ "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": {
+ "type": "any",
+ "description": "Properties of the object. Contains field @type with type URL."
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ }
+ },
+ "id": "Status",
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons."
+ },
+ "AuthProvider": {
+ "id": "AuthProvider",
+ "description": "Configuration for an anthentication provider, including support for\n[JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).",
+ "type": "object",
+ "properties": {
+ "audiences": {
+ "description": "The list of JWT\n[audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).\nthat are allowed to access. A JWT containing any of these audiences will\nbe accepted. When this setting is absent, only JWTs with audience\n\"https://Service_name/API_name\"\nwill be accepted. For example, if no audiences are in the setting,\nLibraryService API will only accept JWTs with the following audience\n\"https://library-example.googleapis.com/google.example.library.v1.LibraryService\".\n\nExample:\n\n audiences: bookstore_android.apps.googleusercontent.com,\n bookstore_web.apps.googleusercontent.com",
+ "type": "string"
+ },
+ "authorizationUrl": {
+ "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.",
+ "type": "string"
+ },
+ "issuer": {
+ "description": "Identifies the principal that issued the JWT. See\nhttps://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1\nUsually a URL or an email address.\n\nExample: https://securetoken.google.com\nExample: 1234567-compute@developer.gserviceaccount.com",
+ "type": "string"
+ },
+ "id": {
+ "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\".",
+ "type": "string"
+ },
+ "jwksUri": {
+ "description": "URL of the provider's public key set to validate signature of the JWT. See\n[OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).\nOptional if the key set document:\n - can be retrieved from\n [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html\n of the issuer.\n - can be inferred from the email domain of the issuer (e.g. a Google service account).\n\nExample: https://www.googleapis.com/oauth2/v1/certs",
+ "type": "string"
+ }
+ }
+ },
+ "Service": {
+ "id": "Service",
+ "description": "`Service` is the root object of Google service configuration schema. It\ndescribes basic information about a service, such as the name and the\ntitle, and delegates other aspects to sub-sections. Each sub-section is\neither a proto message or a repeated proto message that configures a\nspecific aspect, such as auth. See each proto message definition for details.\n\nExample:\n\n type: google.api.Service\n config_version: 3\n name: calendar.googleapis.com\n title: Google Calendar API\n apis:\n - name: google.calendar.v3.Calendar\n authentication:\n providers:\n - id: google_calendar_auth\n jwks_uri: https://www.googleapis.com/oauth2/v1/certs\n issuer: https://securetoken.google.com\n rules:\n - selector: \"*\"\n requirements:\n provider_id: google_calendar_auth",
+ "type": "object",
+ "properties": {
+ "usage": {
+ "description": "Configuration controlling usage of this service.",
+ "$ref": "Usage"
+ },
+ "metrics": {
+ "description": "Defines the metrics used by this service.",
+ "items": {
+ "$ref": "MetricDescriptor"
+ },
+ "type": "array"
+ },
+ "authentication": {
+ "$ref": "Authentication",
+ "description": "Auth configuration."
+ },
+ "experimental": {
+ "description": "Experimental configuration.",
+ "$ref": "Experimental"
+ },
+ "control": {
+ "description": "Configuration for the service control plane.",
+ "$ref": "Control"
+ },
+ "configVersion": {
+ "format": "uint32",
+ "description": "The semantic version of the service configuration. The config version\naffects the interpretation of the service configuration. For example,\ncertain features are enabled by default for certain config versions.\nThe latest config version is `3`.",
+ "type": "integer"
+ },
+ "monitoring": {
+ "$ref": "Monitoring",
+ "description": "Monitoring configuration."
+ },
+ "producerProjectId": {
+ "description": "The Google project that owns this service.",
+ "type": "string"
+ },
+ "systemTypes": {
+ "description": "A list of all proto message types included in this API service.\nIt serves similar purpose as [google.api.Service.types], except that\nthese types are not needed by user-defined APIs. Therefore, they will not\nshow up in the generated discovery doc. This field should only be used\nto define system APIs in ESF.",
+ "items": {
+ "$ref": "Type"
+ },
+ "type": "array"
+ },
+ "visibility": {
+ "description": "API visibility configuration.",
+ "$ref": "Visibility"
+ },
+ "quota": {
+ "$ref": "Quota",
+ "description": "Quota configuration."
+ },
+ "name": {
+ "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.",
+ "type": "string"
+ },
+ "customError": {
+ "description": "Custom error configuration.",
+ "$ref": "CustomError"
+ },
+ "title": {
+ "description": "The product title for this service.",
+ "type": "string"
+ },
+ "endpoints": {
+ "description": "Configuration for network endpoints. If this is empty, then an endpoint\nwith the same name as the service is automatically generated to service all\ndefined APIs.",
+ "items": {
+ "$ref": "Endpoint"
+ },
+ "type": "array"
+ },
+ "logs": {
+ "description": "Defines the logs used by this service.",
+ "items": {
+ "$ref": "LogDescriptor"
+ },
+ "type": "array"
+ },
+ "apis": {
+ "description": "A list of API interfaces exported by this service. Only the `name` field\nof the google.protobuf.Api needs to be provided by the configuration\nauthor, as the remaining fields will be derived from the IDL during the\nnormalization process. It is an error to specify an API interface here\nwhich cannot be resolved against the associated IDL files.",
+ "items": {
+ "$ref": "Api"
+ },
+ "type": "array"
+ },
+ "types": {
+ "description": "A list of all proto message types included in this API service.\nTypes referenced directly or indirectly by the `apis` are\nautomatically included. Messages which are not referenced but\nshall be included, such as types used by the `google.protobuf.Any` type,\nshould be listed here by name. Example:\n\n types:\n - name: google.protobuf.Int32",
+ "items": {
+ "$ref": "Type"
+ },
+ "type": "array"
+ },
+ "sourceInfo": {
+ "$ref": "SourceInfo",
+ "description": "Output only. The source information for this configuration if available."
+ },
+ "http": {
+ "description": "HTTP configuration.",
+ "$ref": "Http"
+ },
+ "systemParameters": {
+ "$ref": "SystemParameters",
+ "description": "System parameter configuration."
+ },
+ "backend": {
+ "description": "API backend configuration.",
+ "$ref": "Backend"
+ },
+ "documentation": {
+ "$ref": "Documentation",
+ "description": "Additional API documentation."
+ },
+ "monitoredResources": {
+ "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.",
+ "items": {
+ "$ref": "MonitoredResourceDescriptor"
+ },
+ "type": "array"
+ },
+ "logging": {
+ "$ref": "Logging",
+ "description": "Logging configuration."
+ },
+ "enums": {
+ "description": "A list of all enum types included in this API service. Enums\nreferenced directly or indirectly by the `apis` are automatically\nincluded. Enums which are not referenced but shall be included\nshould be listed here by name. Example:\n\n enums:\n - name: google.someapi.v1.SomeEnum",
+ "items": {
+ "$ref": "Enum"
+ },
+ "type": "array"
+ },
+ "context": {
+ "$ref": "Context",
+ "description": "Context configuration."
+ },
+ "id": {
+ "description": "A unique ID for a specific instance of this message, typically assigned\nby the client for tracking purpose. If empty, the server may choose to\ngenerate one instead.",
+ "type": "string"
+ }
+ }
+ },
+ "EnumValue": {
+ "id": "EnumValue",
+ "description": "Enum value definition.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Enum value name."
+ },
+ "options": {
+ "description": "Protocol buffer options.",
+ "items": {
+ "$ref": "Option"
+ },
+ "type": "array"
+ },
+ "number": {
+ "format": "int32",
+ "description": "Enum value number.",
+ "type": "integer"
+ }
+ }
+ },
+ "OperationMetadata": {
+ "description": "The metadata associated with a long running operation resource.",
+ "type": "object",
+ "properties": {
+ "steps": {
+ "description": "Detailed status information for each step. The order is undetermined.",
+ "items": {
+ "$ref": "Step"
+ },
+ "type": "array"
+ },
+ "resourceNames": {
+ "description": "The full name of the resources that this operation is directly\nassociated with.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "progressPercentage": {
+ "format": "int32",
+ "description": "Percentage of completion of this operation, ranging from 0 to 100.",
+ "type": "integer"
+ },
+ "startTime": {
+ "format": "google-datetime",
+ "description": "The start time of the operation.",
+ "type": "string"
+ }
+ },
+ "id": "OperationMetadata"
+ },
+ "CustomHttpPattern": {
+ "properties": {
+ "kind": {
+ "description": "The name of this custom HTTP verb.",
+ "type": "string"
+ },
+ "path": {
+ "description": "The path matched by this custom verb.",
+ "type": "string"
+ }
+ },
+ "id": "CustomHttpPattern",
+ "description": "A custom pattern is used for defining custom HTTP verb.",
+ "type": "object"
+ },
+ "PublishedService": {
+ "description": "The published version of a Service that is managed by\nGoogle Service Management.",
+ "type": "object",
+ "properties": {
+ "service": {
+ "$ref": "Service",
+ "description": "The service's published configuration."
+ },
+ "name": {
+ "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com",
+ "type": "string"
+ }
+ },
+ "id": "PublishedService"
+ },
+ "SystemParameterRule": {
+ "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.",
+ "type": "object",
+ "properties": {
+ "parameters": {
+ "items": {
+ "$ref": "SystemParameter"
+ },
+ "type": "array",
+ "description": "Define parameters. Multiple names may be defined for a parameter.\nFor a given method call, only one of them should be used. If multiple\nnames are used the behavior is implementation-dependent.\nIf none of the specified names are present the behavior is\nparameter-dependent."
+ },
+ "selector": {
+ "description": "Selects the methods to which this rule applies. Use '*' to indicate all\nmethods in all APIs.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ }
+ },
+ "id": "SystemParameterRule"
+ },
+ "VisibilityRule": {
+ "id": "VisibilityRule",
+ "description": "A visibility rule provides visibility configuration for an individual API\nelement.",
+ "type": "object",
+ "properties": {
+ "restriction": {
+ "description": "A comma-separated list of visibility labels that apply to the `selector`.\nAny of the listed labels can be used to grant the visibility.\n\nIf a rule has multiple labels, removing one of the labels but not all of\nthem can break clients.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: GOOGLE_INTERNAL, TRUSTED_TESTER\n\nRemoving GOOGLE_INTERNAL from this restriction will break clients that\nrely on this method and only had access to it through GOOGLE_INTERNAL.",
+ "type": "string"
+ },
+ "selector": {
+ "description": "Selects methods, messages, fields, enums, etc. to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ }
+ }
+ },
+ "HttpRule": {
+ "type": "object",
+ "properties": {
+ "mediaUpload": {
+ "$ref": "MediaUpload",
+ "description": "Use this only for Scotty Requests. Do not use this for media support using\nBytestream, add instead\n[][google.bytestream.RestByteStream] as an API to your\nconfiguration for Bytestream methods."
+ },
+ "selector": {
+ "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.",
+ "type": "string"
+ },
+ "custom": {
+ "$ref": "CustomHttpPattern",
+ "description": "The custom pattern is used for specifying an HTTP method that is not\nincluded in the `pattern` field, such as HEAD, or \"*\" to leave the\nHTTP method unspecified for this rule. The wild-card rule is useful\nfor services that provide content to Web (HTML) clients."
+ },
+ "get": {
+ "description": "Used for listing and getting information about resources.",
+ "type": "string"
+ },
+ "patch": {
+ "description": "Used for updating a resource.",
+ "type": "string"
+ },
+ "put": {
+ "description": "Used for updating a resource.",
+ "type": "string"
+ },
+ "authorizations": {
+ "description": "Specifies the permission(s) required for an API element for the overall\nAPI request to succeed. It is typically used to mark request message fields\nthat contain the name of the resource and indicates the permissions that\nwill be checked on that resource.",
+ "items": {
+ "$ref": "AuthorizationRule"
+ },
+ "type": "array"
+ },
+ "delete": {
+ "description": "Used for deleting a resource.",
+ "type": "string"
+ },
+ "body": {
+ "description": "The name of the request field whose value is mapped to the HTTP body, or\n`*` for mapping all fields not captured by the path pattern to the HTTP\nbody. NOTE: the referred field must not be a repeated field and must be\npresent at the top-level of request message type.",
+ "type": "string"
+ },
+ "post": {
+ "description": "Used for creating a resource.",
+ "type": "string"
+ },
+ "mediaDownload": {
+ "$ref": "MediaDownload",
+ "description": "Use this only for Scotty Requests. Do not use this for bytestream methods.\nFor media support, add instead [][google.bytestream.RestByteStream] as an\nAPI to your configuration."
+ },
+ "restMethodName": {
+ "description": "DO NOT USE. This is an experimental field.\n\nOptional. The rest method name is by default derived from the URL\npattern. If specified, this field overrides the default method name.\nExample:\n\n rpc CreateResource(CreateResourceRequest)\n returns (CreateResourceResponse) {\n option (google.api.http) = {\n post: \"/v1/resources\",\n body: \"resource\",\n rest_method_name: \"insert\"\n };\n }\n\nThis method has the automatically derived rest method name\n\"create\", but for backwards compatibility with apiary, it is specified as\ninsert.",
+ "type": "string"
+ },
+ "additionalBindings": {
+ "description": "Additional HTTP bindings for the selector. Nested bindings must\nnot contain an `additional_bindings` field themselves (that is,\nthe nesting may only be one level deep).",
+ "items": {
+ "$ref": "HttpRule"
+ },
+ "type": "array"
+ },
+ "responseBody": {
+ "description": "The name of the response field whose value is mapped to the HTTP body of\nresponse. Other response fields are ignored. This field is optional. When\nnot set, the response message will be used as HTTP body of response.\nNOTE: the referred field must be not a repeated field and must be present\nat the top-level of response message type.",
+ "type": "string"
+ },
+ "restCollection": {
+ "description": "DO NOT USE. This is an experimental field.\n\nOptional. The REST collection name is by default derived from the URL\npattern. If specified, this field overrides the default collection name.\nExample:\n\n rpc AddressesAggregatedList(AddressesAggregatedListRequest)\n returns (AddressesAggregatedListResponse) {\n option (google.api.http) = {\n get: \"/v1/projects/{project_id}/aggregated/addresses\"\n rest_collection: \"projects.addresses\"\n };\n }\n\nThis method has the automatically derived collection name\n\"projects.aggregated\". Because, semantically, this rpc is actually an\noperation on the \"projects.addresses\" collection, the `rest_collection`\nfield is configured to override the derived collection name.",
+ "type": "string"
+ }
+ },
+ "id": "HttpRule",
+ "description": "`HttpRule` defines the mapping of an RPC method to one or more HTTP\nREST API methods. The mapping specifies how different portions of the RPC\nrequest message are mapped to URL path, URL query parameters, and\nHTTP request body. The mapping is typically specified as an\n`google.api.http` annotation on the RPC method,\nsee \"google/api/annotations.proto\" for details.\n\nThe mapping consists of a field specifying the path template and\nmethod kind. The path template can refer to fields in the request\nmessage, as in the example below which describes a REST GET\noperation on a resource collection of messages:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}/{sub.subfield}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n SubMessage sub = 2; // `sub.subfield` is url-mapped\n }\n message Message {\n string text = 1; // content of the resource\n }\n\nThe same http annotation can alternatively be expressed inside the\n`GRPC API Configuration` YAML file.\n\n http:\n rules:\n - selector: \u003cproto_package_name\u003e.Messaging.GetMessage\n get: /v1/messages/{message_id}/{sub.subfield}\n\nThis definition enables an automatic, bidrectional mapping of HTTP\nJSON to RPC. Example:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456/foo` | `GetMessage(message_id: \"123456\" sub: SubMessage(subfield: \"foo\"))`\n\nIn general, not only fields but also field paths can be referenced\nfrom a path pattern. Fields mapped to the path pattern cannot be\nrepeated and must have a primitive (non-message) type.\n\nAny fields in the request message which are not bound by the path\npattern automatically become (optional) HTTP query\nparameters. Assume the following definition of the request message:\n\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http).get = \"/v1/messages/{message_id}\";\n }\n }\n message GetMessageRequest {\n message SubMessage {\n string subfield = 1;\n }\n string message_id = 1; // mapped to the URL\n int64 revision = 2; // becomes a parameter\n SubMessage sub = 3; // `sub.subfield` becomes a parameter\n }\n\n\nThis enables a HTTP JSON to RPC mapping as below:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: \"123456\" revision: 2 sub: SubMessage(subfield: \"foo\"))`\n\nNote that fields which are mapped to HTTP parameters must have a\nprimitive type or a repeated primitive type. Message types are not\nallowed. In the case of a repeated type, the parameter can be\nrepeated in the URL, as in `...?param=A¶m=B`.\n\nFor HTTP method kinds which allow a request body, the `body` field\nspecifies the mapping. Consider a REST update method on the\nmessage resource collection:\n\n\n service Messaging {\n rpc UpdateMessage(UpdateMessageRequest) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"message\"\n };\n }\n }\n message UpdateMessageRequest {\n string message_id = 1; // mapped to the URL\n Message message = 2; // mapped to the body\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled, where the\nrepresentation of the JSON in the request body is determined by\nprotos JSON encoding:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" message { text: \"Hi!\" })`\n\nThe special name `*` can be used in the body mapping to define that\nevery field not bound by the path template should be mapped to the\nrequest body. This enables the following alternative definition of\nthe update method:\n\n service Messaging {\n rpc UpdateMessage(Message) returns (Message) {\n option (google.api.http) = {\n put: \"/v1/messages/{message_id}\"\n body: \"*\"\n };\n }\n }\n message Message {\n string message_id = 1;\n string text = 2;\n }\n\n\nThe following HTTP JSON to RPC mapping is enabled:\n\nHTTP | RPC\n-----|-----\n`PUT /v1/messages/123456 { \"text\": \"Hi!\" }` | `UpdateMessage(message_id: \"123456\" text: \"Hi!\")`\n\nNote that when using `*` in the body mapping, it is not possible to\nhave HTTP parameters, as all fields not bound by the path end in\nthe body. This makes this option more rarely used in practice of\ndefining REST APIs. The common usage of `*` is in custom methods\nwhich don't use the URL at all for transferring data.\n\nIt is possible to define multiple HTTP methods for one RPC by using\nthe `additional_bindings` option. Example:\n\n service Messaging {\n rpc GetMessage(GetMessageRequest) returns (Message) {\n option (google.api.http) = {\n get: \"/v1/messages/{message_id}\"\n additional_bindings {\n get: \"/v1/users/{user_id}/messages/{message_id}\"\n }\n };\n }\n }\n message GetMessageRequest {\n string message_id = 1;\n string user_id = 2;\n }\n\n\nThis enables the following two alternative HTTP JSON to RPC\nmappings:\n\nHTTP | RPC\n-----|-----\n`GET /v1/messages/123456` | `GetMessage(message_id: \"123456\")`\n`GET /v1/users/me/messages/123456` | `GetMessage(user_id: \"me\" message_id: \"123456\")`\n\n# Rules for HTTP mapping\n\nThe rules for mapping HTTP path, query parameters, and body fields\nto the request message are as follows:\n\n1. The `body` field specifies either `*` or a field path, or is\n omitted. If omitted, it indicates there is no HTTP request body.\n2. Leaf fields (recursive expansion of nested messages in the\n request) can be classified into three types:\n (a) Matched in the URL template.\n (b) Covered by body (if body is `*`, everything except (a) fields;\n else everything under the body field)\n (c) All other fields.\n3. URL query parameters found in the HTTP request are mapped to (c) fields.\n4. Any body sent with an HTTP request can contain only (b) fields.\n\nThe syntax of the path template is as follows:\n\n Template = \"/\" Segments [ Verb ] ;\n Segments = Segment { \"/\" Segment } ;\n Segment = \"*\" | \"**\" | LITERAL | Variable ;\n Variable = \"{\" FieldPath [ \"=\" Segments ] \"}\" ;\n FieldPath = IDENT { \".\" IDENT } ;\n Verb = \":\" LITERAL ;\n\nThe syntax `*` matches a single path segment. The syntax `**` matches zero\nor more path segments, which must be the last part of the path except the\n`Verb`. The syntax `LITERAL` matches literal text in the path.\n\nThe syntax `Variable` matches part of the URL path as specified by its\ntemplate. A variable template must not contain other variables. If a variable\nmatches a single path segment, its template may be omitted, e.g. `{var}`\nis equivalent to `{var=*}`.\n\nIf a variable contains exactly one path segment, such as `\"{var}\"` or\n`\"{var=*}\"`, when such a variable is expanded into a URL path, all characters\nexcept `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the\nDiscovery Document as `{var}`.\n\nIf a variable contains one or more path segments, such as `\"{var=foo/*}\"`\nor `\"{var=**}\"`, when such a variable is expanded into a URL path, all\ncharacters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables\nshow up in the Discovery Document as `{+var}`.\n\nNOTE: While the single segment variable matches the semantics of\n[RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2\nSimple String Expansion, the multi segment variable **does not** match\nRFC 6570 Reserved Expansion. The reason is that the Reserved Expansion\ndoes not expand special characters like `?` and `#`, which would lead\nto invalid URLs.\n\nNOTE: the field paths in variables and in the `body` must not refer to\nrepeated fields or map fields."
+ },
+ "MonitoringDestination": {
+ "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).",
+ "type": "object",
+ "properties": {
+ "monitoredResource": {
+ "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.",
+ "type": "string"
+ },
+ "metrics": {
+ "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "MonitoringDestination"
+ },
+ "Visibility": {
+ "properties": {
+ "rules": {
+ "description": "A list of visibility rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "VisibilityRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Visibility",
+ "description": "`Visibility` defines restrictions for the visibility of service\nelements. Restrictions are specified using visibility labels\n(e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects.\n\nUsers and projects can have access to more than one visibility label. The\neffective visibility for multiple labels is the union of each label's\nelements, plus any unrestricted elements.\n\nIf an element and its parents have no restrictions, visibility is\nunconditionally granted.\n\nExample:\n\n visibility:\n rules:\n - selector: google.calendar.Calendar.EnhancedSearch\n restriction: TRUSTED_TESTER\n - selector: google.calendar.Calendar.Delegate\n restriction: GOOGLE_INTERNAL\n\nHere, all methods are publicly visible except for the restricted methods\nEnhancedSearch and Delegate.",
+ "type": "object"
+ },
+ "SystemParameters": {
+ "description": "### System parameter configuration\n\nA system parameter is a special kind of parameter defined by the API\nsystem, not by an individual API. It is typically mapped to an HTTP header\nand/or a URL query parameter. This configuration specifies which methods\nchange the names of the system parameters.",
+ "type": "object",
+ "properties": {
+ "rules": {
+ "description": "Define system parameters.\n\nThe parameters defined here will override the default parameters\nimplemented by the system. If this field is missing from the service\nconfig, default system parameters will be used. Default system parameters\nand names is implementation-dependent.\n\nExample: define api key for all methods\n\n system_parameters\n rules:\n - selector: \"*\"\n parameters:\n - name: api_key\n url_query_parameter: api_key\n\n\nExample: define 2 api key names for a specific method.\n\n system_parameters\n rules:\n - selector: \"/ListShelves\"\n parameters:\n - name: api_key\n http_header: Api-Key1\n - name: api_key\n http_header: Api-Key2\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.",
+ "items": {
+ "$ref": "SystemParameterRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "SystemParameters"
+ },
+ "Quota": {
+ "type": "object",
+ "properties": {
+ "limits": {
+ "description": "List of `QuotaLimit` definitions for the service.",
+ "items": {
+ "$ref": "QuotaLimit"
+ },
+ "type": "array"
+ },
+ "metricRules": {
+ "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.",
+ "items": {
+ "$ref": "MetricRule"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Quota",
+ "description": "Quota configuration helps to achieve fairness and budgeting in service\nusage.\n\nThe quota configuration works this way:\n- The service configuration defines a set of metrics.\n- For API calls, the quota.metric_rules maps methods to metrics with\n corresponding costs.\n- The quota.limits defines limits on the metrics, which will be used for\n quota checks at runtime.\n\nAn example quota configuration in yaml format:\n\n quota:\n\n - name: apiWriteQpsPerProject\n metric: library.googleapis.com/write_calls\n unit: \"1/min/{project}\" # rate limit for consumer projects\n values:\n STANDARD: 10000\n\n\n # The metric rules bind all methods to the read_calls metric,\n # except for the UpdateBook and DeleteBook methods. These two methods\n # are mapped to the write_calls metric, with the UpdateBook method\n # consuming at twice rate as the DeleteBook method.\n metric_rules:\n - selector: \"*\"\n metric_costs:\n library.googleapis.com/read_calls: 1\n - selector: google.example.library.v1.LibraryService.UpdateBook\n metric_costs:\n library.googleapis.com/write_calls: 2\n - selector: google.example.library.v1.LibraryService.DeleteBook\n metric_costs:\n library.googleapis.com/write_calls: 1\n\n Corresponding Metric definition:\n\n metrics:\n - name: library.googleapis.com/read_calls\n display_name: Read requests\n metric_kind: DELTA\n value_type: INT64\n\n - name: library.googleapis.com/write_calls\n display_name: Write requests\n metric_kind: DELTA\n value_type: INT64"
}
},
- "protocol": "rest",
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
+ "protocol": "rest",
"canonicalName": "Service User",
"auth": {
"oauth2": {
"scopes": {
- "https://www.googleapis.com/auth/cloud-platform.read-only": {
- "description": "View your data across Google Cloud Platform services"
- },
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
},
"https://www.googleapis.com/auth/service.management": {
"description": "Manage your Google API service configuration"
+ },
+ "https://www.googleapis.com/auth/cloud-platform.read-only": {
+ "description": "View your data across Google Cloud Platform services"
}
}
}
},
"rootUrl": "https://serviceuser.googleapis.com/",
- "ownerDomain": "google.com",
- "name": "serviceuser",
- "batchPath": "batch"
+ "ownerDomain": "google.com"
}
diff --git a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go
index 214bd7b..08f5133 100644
--- a/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go
+++ b/vendor/google.golang.org/api/serviceuser/v1/serviceuser-gen.go
@@ -114,20 +114,35 @@ type ServicesService struct {
s *APIService
}
-// Api: Api is a light-weight descriptor for a protocol buffer service.
+// Api: Api is a light-weight descriptor for an API
+// Interface.
+//
+// Interfaces are also described as "protocol buffer services" in some
+// contexts,
+// such as by the "service" keyword in a .proto file, but they are
+// different
+// from API Services, which represent a concrete implementation of an
+// interface
+// as opposed to simply a description of methods and bindings. They are
+// also
+// sometimes simply referred to as "APIs" in other contexts, such as the
+// name of
+// this message itself. See
+// https://cloud.google.com/apis/design/glossary for
+// detailed terminology.
type Api struct {
- // Methods: The methods of this api, in unspecified order.
+ // Methods: The methods of this interface, in unspecified order.
Methods []*Method `json:"methods,omitempty"`
- // Mixins: Included APIs. See Mixin.
+ // Mixins: Included interfaces. See Mixin.
Mixins []*Mixin `json:"mixins,omitempty"`
- // Name: The fully qualified name of this api, including package
+ // Name: The fully qualified name of this interface, including package
// name
- // followed by the api's simple name.
+ // followed by the interface's simple name.
Name string `json:"name,omitempty"`
- // Options: Any metadata attached to the API.
+ // Options: Any metadata attached to the interface.
Options []*Option `json:"options,omitempty"`
// SourceContext: Source context for the protocol buffer service
@@ -142,16 +157,17 @@ type Api struct {
// "SYNTAX_PROTO3" - Syntax `proto3`.
Syntax string `json:"syntax,omitempty"`
- // Version: A version string for this api. If specified, must have the
- // form
+ // Version: A version string for this interface. If specified, must have
+ // the form
// `major-version.minor-version`, as in `1.10`. If the minor version
- // is omitted, it defaults to zero. If the entire version field
// is
- // empty, the major version is derived from the package name,
- // as
- // outlined below. If the field is not empty, the version in the
- // package name will be verified to be consistent with what is
- // provided here.
+ // omitted, it defaults to zero. If the entire version field is empty,
+ // the
+ // major version is derived from the package name, as outlined below. If
+ // the
+ // field is not empty, the version in the package name will be verified
+ // to be
+ // consistent with what is provided here.
//
// The versioning schema uses [semantic
// versioning](http://semver.org) where the major version
@@ -163,11 +179,13 @@ type Api struct {
// carefully
// chosen based on the product plan.
//
- // The major version is also reflected in the package name of the
- // API, which must end in `v`, as in
+ // The major version is also reflected in the package name of
+ // the
+ // interface, which must end in `v`, as
+ // in
// `google.feature.v1`. For major versions 0 and 1, the suffix can
// be omitted. Zero major versions must only be used for
- // experimental, none-GA apis.
+ // experimental, non-GA interfaces.
//
Version string `json:"version,omitempty"`
@@ -222,6 +240,11 @@ type AuthProvider struct {
// bookstore_web.apps.googleusercontent.com
Audiences string `json:"audiences,omitempty"`
+ // AuthorizationUrl: Redirect URL if JWT token is required but no
+ // present or is expired.
+ // Implement authorizationUrl of securityDefinitions in OpenAPI spec.
+ AuthorizationUrl string `json:"authorizationUrl,omitempty"`
+
// Id: The unique identifier of the auth provider. It will be referred
// to by
// `AuthRequirement.provider_id`.
@@ -498,6 +521,68 @@ func (s *AuthorizationConfig) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+// AuthorizationRule: Authorization rule for API services.
+//
+// It specifies the permission(s) required for an API element for the
+// overall
+// API request to succeed. It is typically used to mark request message
+// fields
+// that contain the name of the resource and indicates the permissions
+// that
+// will be checked on that resource.
+//
+// For example:
+//
+// package google.storage.v1;
+//
+// message CopyObjectRequest {
+// string source = 1 [
+// (google.api.authz).permissions = "storage.objects.get"];
+//
+// string destination = 2 [
+// (google.api.authz).permissions =
+// "storage.objects.create,storage.objects.update"];
+// }
+type AuthorizationRule struct {
+ // Permissions: The required permissions. The acceptable values vary
+ // depend on the
+ // authorization system used. For Google APIs, it should be a
+ // comma-separated
+ // Google IAM permission values. When multiple permissions are listed,
+ // the
+ // semantics is not defined by the system. Additional documentation
+ // must
+ // be provided manually.
+ Permissions string `json:"permissions,omitempty"`
+
+ // Selector: Selects the API elements to which this rule applies.
+ //
+ // Refer to selector for syntax details.
+ Selector string `json:"selector,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Permissions") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Permissions") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AuthorizationRule) MarshalJSON() ([]byte, error) {
+ type noMethod AuthorizationRule
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// Backend: `Backend` defines the backend configuration for a service.
type Backend struct {
// Rules: A list of API backend rules that apply to individual API
@@ -1658,6 +1743,15 @@ type HttpRule struct {
// the nesting may only be one level deep).
AdditionalBindings []*HttpRule `json:"additionalBindings,omitempty"`
+ // Authorizations: Specifies the permission(s) required for an API
+ // element for the overall
+ // API request to succeed. It is typically used to mark request message
+ // fields
+ // that contain the name of the resource and indicates the permissions
+ // that
+ // will be checked on that resource.
+ Authorizations []*AuthorizationRule `json:"authorizations,omitempty"`
+
// Body: The name of the request field whose value is mapped to the HTTP
// body, or
// `*` for mapping all fields not captured by the path pattern to the
@@ -1716,8 +1810,10 @@ type HttpRule struct {
// at the top-level of response message type.
ResponseBody string `json:"responseBody,omitempty"`
- // RestCollection: Optional. The REST collection name is by default
- // derived from the URL
+ // RestCollection: DO NOT USE. This is an experimental field.
+ //
+ // Optional. The REST collection name is by default derived from the
+ // URL
// pattern. If specified, this field overrides the default collection
// name.
// Example:
@@ -1739,8 +1835,10 @@ type HttpRule struct {
// field is configured to override the derived collection name.
RestCollection string `json:"restCollection,omitempty"`
- // RestMethodName: Optional. The rest method name is by default derived
- // from the URL
+ // RestMethodName: DO NOT USE. This is an experimental field.
+ //
+ // Optional. The rest method name is by default derived from the
+ // URL
// pattern. If specified, this field overrides the default method
// name.
// Example:
@@ -1754,9 +1852,10 @@ type HttpRule struct {
// };
// }
//
- // This method has the automatically derived rest method name "create",
- // but
- // for backwards compatability with apiary, it is specified as insert.
+ // This method has the automatically derived rest method name
+ // "create", but for backwards compatibility with apiary, it is
+ // specified as
+ // insert.
RestMethodName string `json:"restMethodName,omitempty"`
// Selector: Selects methods to which this rule applies.
@@ -2166,7 +2265,7 @@ func (s *MediaUpload) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// Method: Method represents a method of an api.
+// Method: Method represents a method of an API interface.
type Method struct {
// Name: The simple name of this method.
Name string `json:"name,omitempty"`
@@ -2440,11 +2539,11 @@ func (s *MetricRule) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// Mixin: Declares an API to be included in this API. The including API
-// must
-// redeclare all the methods from the included API, but
-// documentation
-// and options are inherited as follows:
+// Mixin: Declares an API Interface to be included in this interface.
+// The including
+// interface must redeclare all the methods from the included interface,
+// but
+// documentation and options are inherited as follows:
//
// - If after comment and whitespace stripping, the documentation
// string of the redeclared method is empty, it will be inherited
@@ -2456,8 +2555,8 @@ func (s *MetricRule) MarshalJSON() ([]byte, error) {
//
// - If an http annotation is inherited, the path pattern will be
// modified as follows. Any version prefix will be replaced by the
-// version of the including API plus the root path if
-// specified.
+// version of the including interface plus the root path if
+// specified.
//
// Example of a simple mixin:
//
@@ -2526,7 +2625,7 @@ func (s *MetricRule) MarshalJSON() ([]byte, error) {
// ...
// }
type Mixin struct {
- // Name: The fully qualified name of the API which is included.
+ // Name: The fully qualified name of the interface which is included.
Name string `json:"name,omitempty"`
// Root: If non-empty specifies a path under which inherited HTTP
@@ -3415,13 +3514,13 @@ type Service struct {
// Backend: API backend configuration.
Backend *Backend `json:"backend,omitempty"`
- // ConfigVersion: The version of the service configuration. The config
- // version may
- // influence interpretation of the configuration, for example,
- // to
- // determine defaults. This is documented together with
- // applicable
- // options. The current default for the config version itself is `3`.
+ // ConfigVersion: The semantic version of the service configuration. The
+ // config version
+ // affects the interpretation of the service configuration. For
+ // example,
+ // certain features are enabled by default for certain config
+ // versions.
+ // The latest config version is `3`.
ConfigVersion int64 `json:"configVersion,omitempty"`
// Context: Context configuration.
@@ -3703,9 +3802,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
diff --git a/vendor/google.golang.org/api/sheets/v4/sheets-api.json b/vendor/google.golang.org/api/sheets/v4/sheets-api.json
index 8eea666..76d3d82 100644
--- a/vendor/google.golang.org/api/sheets/v4/sheets-api.json
+++ b/vendor/google.golang.org/api/sheets/v4/sheets-api.json
@@ -1,13 +1,3967 @@
{
+ "canonicalName": "Sheets",
+ "auth": {
+ "oauth2": {
+ "scopes": {
+ "https://www.googleapis.com/auth/drive.file": {
+ "description": "View and manage Google Drive files and folders that you have opened or created with this app"
+ },
+ "https://www.googleapis.com/auth/spreadsheets.readonly": {
+ "description": "View your Google Spreadsheets"
+ },
+ "https://www.googleapis.com/auth/drive.readonly": {
+ "description": "View the files in your Google Drive"
+ },
+ "https://www.googleapis.com/auth/drive": {
+ "description": "View and manage the files in your Google Drive"
+ },
+ "https://www.googleapis.com/auth/spreadsheets": {
+ "description": "View and manage your spreadsheets in Google Drive"
+ }
+ }
+ }
+ },
+ "rootUrl": "https://sheets.googleapis.com/",
+ "ownerDomain": "google.com",
+ "name": "sheets",
+ "batchPath": "batch",
+ "title": "Google Sheets API",
+ "ownerName": "Google",
+ "resources": {
+ "spreadsheets": {
+ "methods": {
+ "batchUpdate": {
+ "description": "Applies one or more updates to the spreadsheet.\n\nEach request is validated before\nbeing applied. If any request is not valid then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how\nthey are applied. The replies will mirror the requests. For example,\nif you applied 4 updates and the 3rd one had a reply, then the\nresponse will have 2 empty replies, the actual reply, and another empty\nreply, in that order.\n\nDue to the collaborative nature of spreadsheets, it is not guaranteed that\nthe spreadsheet will reflect exactly your changes after this completes,\nhowever it is guaranteed that the updates in the request will be\napplied together atomically. Your changes may be altered with respect to\ncollaborator changes. If there are no collaborators, the spreadsheet\nshould reflect your changes.",
+ "request": {
+ "$ref": "BatchUpdateSpreadsheetRequest"
+ },
+ "response": {
+ "$ref": "BatchUpdateSpreadsheetResponse"
+ },
+ "parameterOrder": [
+ "spreadsheetId"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "spreadsheetId": {
+ "description": "The spreadsheet to apply the updates to.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "flatPath": "v4/spreadsheets/{spreadsheetId}:batchUpdate",
+ "id": "sheets.spreadsheets.batchUpdate",
+ "path": "v4/spreadsheets/{spreadsheetId}:batchUpdate"
+ },
+ "create": {
+ "response": {
+ "$ref": "Spreadsheet"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "parameters": {},
+ "flatPath": "v4/spreadsheets",
+ "id": "sheets.spreadsheets.create",
+ "path": "v4/spreadsheets",
+ "request": {
+ "$ref": "Spreadsheet"
+ },
+ "description": "Creates a spreadsheet, returning the newly created spreadsheet."
+ },
+ "get": {
+ "flatPath": "v4/spreadsheets/{spreadsheetId}",
+ "id": "sheets.spreadsheets.get",
+ "path": "v4/spreadsheets/{spreadsheetId}",
+ "description": "Returns the spreadsheet at the given ID.\nThe caller must specify the spreadsheet ID.\n\nBy default, data within grids will not be returned.\nYou can include grid data one of two ways:\n\n* Specify a field mask listing your desired fields using the `fields` URL\nparameter in HTTP\n\n* Set the includeGridData\nURL parameter to true. If a field mask is set, the `includeGridData`\nparameter is ignored\n\nFor large spreadsheets, it is recommended to retrieve only the specific\nfields of the spreadsheet that you want.\n\nTo retrieve only subsets of the spreadsheet, use the\nranges URL parameter.\nMultiple ranges can be specified. Limiting the range will\nreturn only the portions of the spreadsheet that intersect the requested\nranges. Ranges are specified using A1 notation.",
+ "response": {
+ "$ref": "Spreadsheet"
+ },
+ "parameterOrder": [
+ "spreadsheetId"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/drive.readonly",
+ "https://www.googleapis.com/auth/spreadsheets",
+ "https://www.googleapis.com/auth/spreadsheets.readonly"
+ ],
+ "parameters": {
+ "spreadsheetId": {
+ "description": "The spreadsheet to request.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
+ "includeGridData": {
+ "description": "True if grid data should be returned.\nThis parameter is ignored if a field mask was set in the request.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "ranges": {
+ "description": "The ranges to retrieve from the spreadsheet.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ }
+ }
+ }
+ },
+ "resources": {
+ "sheets": {
+ "methods": {
+ "copyTo": {
+ "request": {
+ "$ref": "CopySheetToAnotherSpreadsheetRequest"
+ },
+ "description": "Copies a single sheet from a spreadsheet to another spreadsheet.\nReturns the properties of the newly created sheet.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "spreadsheetId",
+ "sheetId"
+ ],
+ "response": {
+ "$ref": "SheetProperties"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "parameters": {
+ "sheetId": {
+ "location": "path",
+ "format": "int32",
+ "description": "The ID of the sheet to copy.",
+ "type": "integer",
+ "required": true
+ },
+ "spreadsheetId": {
+ "description": "The ID of the spreadsheet containing the sheet to copy.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo",
+ "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo",
+ "id": "sheets.spreadsheets.sheets.copyTo"
+ }
+ }
+ },
+ "values": {
+ "methods": {
+ "get": {
+ "path": "v4/spreadsheets/{spreadsheetId}/values/{range}",
+ "id": "sheets.spreadsheets.values.get",
+ "description": "Returns a range of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and a range.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "spreadsheetId",
+ "range"
+ ],
+ "response": {
+ "$ref": "ValueRange"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/drive.readonly",
+ "https://www.googleapis.com/auth/spreadsheets",
+ "https://www.googleapis.com/auth/spreadsheets.readonly"
+ ],
+ "parameters": {
+ "majorDimension": {
+ "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.",
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ]
+ },
+ "spreadsheetId": {
+ "location": "path",
+ "description": "The ID of the spreadsheet to retrieve data from.",
+ "type": "string",
+ "required": true
+ },
+ "range": {
+ "description": "The A1 notation of the values to retrieve.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
+ "dateTimeRenderOption": {
+ "location": "query",
+ "enum": [
+ "SERIAL_NUMBER",
+ "FORMATTED_STRING"
+ ],
+ "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
+ "type": "string"
+ },
+ "valueRenderOption": {
+ "enum": [
+ "FORMATTED_VALUE",
+ "UNFORMATTED_VALUE",
+ "FORMULA"
+ ],
+ "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}"
+ },
+ "update": {
+ "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption.",
+ "request": {
+ "$ref": "ValueRange"
+ },
+ "response": {
+ "$ref": "UpdateValuesResponse"
+ },
+ "parameterOrder": [
+ "spreadsheetId",
+ "range"
+ ],
+ "httpMethod": "PUT",
+ "parameters": {
+ "spreadsheetId": {
+ "location": "path",
+ "description": "The ID of the spreadsheet to update.",
+ "type": "string",
+ "required": true
+ },
+ "responseValueRenderOption": {
+ "location": "query",
+ "enum": [
+ "FORMATTED_VALUE",
+ "UNFORMATTED_VALUE",
+ "FORMULA"
+ ],
+ "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
+ "type": "string"
+ },
+ "valueInputOption": {
+ "description": "How the input data should be interpreted.",
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "INPUT_VALUE_OPTION_UNSPECIFIED",
+ "RAW",
+ "USER_ENTERED"
+ ]
+ },
+ "responseDateTimeRenderOption": {
+ "location": "query",
+ "enum": [
+ "SERIAL_NUMBER",
+ "FORMATTED_STRING"
+ ],
+ "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
+ "type": "string"
+ },
+ "range": {
+ "type": "string",
+ "required": true,
+ "location": "path",
+ "description": "The A1 notation of the values to update."
+ },
+ "includeValuesInResponse": {
+ "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values.\nIf the range to write was larger than than the range actually written,\nthe response will include all values in the requested range (excluding\ntrailing empty rows and columns).",
+ "type": "boolean",
+ "location": "query"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}",
+ "id": "sheets.spreadsheets.values.update",
+ "path": "v4/spreadsheets/{spreadsheetId}/values/{range}"
+ },
+ "batchUpdate": {
+ "request": {
+ "$ref": "BatchUpdateValuesRequest"
+ },
+ "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nValueRanges.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "spreadsheetId"
+ ],
+ "response": {
+ "$ref": "BatchUpdateValuesResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "parameters": {
+ "spreadsheetId": {
+ "location": "path",
+ "description": "The ID of the spreadsheet to update.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate",
+ "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate",
+ "id": "sheets.spreadsheets.values.batchUpdate"
+ },
+ "clear": {
+ "id": "sheets.spreadsheets.values.clear",
+ "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear",
+ "request": {
+ "$ref": "ClearValuesRequest"
+ },
+ "description": "Clears values from a spreadsheet.\nThe caller must specify the spreadsheet ID and range.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept.",
+ "response": {
+ "$ref": "ClearValuesResponse"
+ },
+ "parameterOrder": [
+ "spreadsheetId",
+ "range"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "parameters": {
+ "spreadsheetId": {
+ "location": "path",
+ "description": "The ID of the spreadsheet to update.",
+ "type": "string",
+ "required": true
+ },
+ "range": {
+ "location": "path",
+ "description": "The A1 notation of the values to clear.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear"
+ },
+ "batchGet": {
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "BatchGetValuesResponse"
+ },
+ "parameterOrder": [
+ "spreadsheetId"
+ ],
+ "parameters": {
+ "majorDimension": {
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ],
+ "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`."
+ },
+ "ranges": {
+ "description": "The A1 notation of the values to retrieve.",
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ },
+ "spreadsheetId": {
+ "location": "path",
+ "description": "The ID of the spreadsheet to retrieve data from.",
+ "type": "string",
+ "required": true
+ },
+ "dateTimeRenderOption": {
+ "location": "query",
+ "enum": [
+ "SERIAL_NUMBER",
+ "FORMATTED_STRING"
+ ],
+ "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
+ "type": "string"
+ },
+ "valueRenderOption": {
+ "location": "query",
+ "enum": [
+ "FORMATTED_VALUE",
+ "UNFORMATTED_VALUE",
+ "FORMULA"
+ ],
+ "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/drive.readonly",
+ "https://www.googleapis.com/auth/spreadsheets",
+ "https://www.googleapis.com/auth/spreadsheets.readonly"
+ ],
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGet",
+ "path": "v4/spreadsheets/{spreadsheetId}/values:batchGet",
+ "id": "sheets.spreadsheets.values.batchGet",
+ "description": "Returns one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges."
+ },
+ "append": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "spreadsheetId",
+ "range"
+ ],
+ "response": {
+ "$ref": "AppendValuesResponse"
+ },
+ "parameters": {
+ "range": {
+ "location": "path",
+ "description": "The A1 notation of a range to search for a logical table of data.\nValues will be appended after the last row of the table.",
+ "type": "string",
+ "required": true
+ },
+ "includeValuesInResponse": {
+ "description": "Determines if the update response should include the values\nof the cells that were appended. By default, responses\ndo not include the updated values.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "spreadsheetId": {
+ "location": "path",
+ "description": "The ID of the spreadsheet to update.",
+ "type": "string",
+ "required": true
+ },
+ "responseValueRenderOption": {
+ "location": "query",
+ "enum": [
+ "FORMATTED_VALUE",
+ "UNFORMATTED_VALUE",
+ "FORMULA"
+ ],
+ "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
+ "type": "string"
+ },
+ "insertDataOption": {
+ "description": "How the input data should be inserted.",
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "OVERWRITE",
+ "INSERT_ROWS"
+ ]
+ },
+ "valueInputOption": {
+ "location": "query",
+ "enum": [
+ "INPUT_VALUE_OPTION_UNSPECIFIED",
+ "RAW",
+ "USER_ENTERED"
+ ],
+ "description": "How the input data should be interpreted.",
+ "type": "string"
+ },
+ "responseDateTimeRenderOption": {
+ "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "SERIAL_NUMBER",
+ "FORMATTED_STRING"
+ ]
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:append",
+ "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:append",
+ "id": "sheets.spreadsheets.values.append",
+ "description": "Appends values to a spreadsheet. The input range is used to search for\nexisting data and find a \"table\" within that range. Values will be\nappended to the next row of the table, starting with the first column of\nthe table. See the\n[guide](/sheets/api/guides/values#appending_values)\nand\n[sample code](/sheets/api/samples/writing#append_values)\nfor specific details of how tables are detected and data is appended.\n\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption. The `valueInputOption` only\ncontrols how the input data will be added to the sheet (column-wise or\nrow-wise), it does not influence what cell the data starts being written\nto.",
+ "request": {
+ "$ref": "ValueRange"
+ }
+ },
+ "batchClear": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "spreadsheetId"
+ ],
+ "response": {
+ "$ref": "BatchClearValuesResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.file",
+ "https://www.googleapis.com/auth/spreadsheets"
+ ],
+ "parameters": {
+ "spreadsheetId": {
+ "location": "path",
+ "description": "The ID of the spreadsheet to update.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClear",
+ "path": "v4/spreadsheets/{spreadsheetId}/values:batchClear",
+ "id": "sheets.spreadsheets.values.batchClear",
+ "request": {
+ "$ref": "BatchClearValuesRequest"
+ },
+ "description": "Clears one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept."
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "quotaUser": {
+ "type": "string",
+ "location": "query",
+ "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."
+ },
+ "pp": {
+ "location": "query",
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ },
+ "oauth_token": {
+ "type": "string",
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user."
+ },
+ "upload_protocol": {
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string"
+ },
+ "prettyPrint": {
+ "default": "true",
+ "type": "boolean",
+ "location": "query",
+ "description": "Returns response with indentations and line breaks."
+ },
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
+ },
+ "$.xgafv": {
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string"
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
+ "type": "string"
+ },
+ "alt": {
+ "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",
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "version": "v4",
+ "baseUrl": "https://sheets.googleapis.com/",
+ "kind": "discovery#restDescription",
+ "description": "Reads and writes Google Sheets.",
+ "servicePath": "",
+ "basePath": "",
+ "revision": "20170822",
+ "documentationLink": "https://developers.google.com/sheets/",
+ "id": "sheets:v4",
+ "discoveryVersion": "v1",
+ "version_module": true,
"schemas": {
+ "SetDataValidationRequest": {
+ "id": "SetDataValidationRequest",
+ "description": "Sets a data validation rule to every cell in the range.\nTo clear validation in a range, call this with no rule specified.",
+ "type": "object",
+ "properties": {
+ "rule": {
+ "description": "The data validation rule to set on each cell in the range,\nor empty to clear the data validation in the range.",
+ "$ref": "DataValidationRule"
+ },
+ "range": {
+ "description": "The range the data validation rule should apply to.",
+ "$ref": "GridRange"
+ }
+ }
+ },
+ "BubbleChartSpec": {
+ "description": "A \u003ca href=\"/chart/interactive/docs/gallery/bubblechart\"\u003ebubble chart\u003c/a\u003e.",
+ "type": "object",
+ "properties": {
+ "bubbleMaxRadiusSize": {
+ "format": "int32",
+ "description": "The max radius size of the bubbles, in pixels.\nIf specified, the field must be a positive value.",
+ "type": "integer"
+ },
+ "series": {
+ "$ref": "ChartData",
+ "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically."
+ },
+ "legendPosition": {
+ "description": "Where the legend of the chart should be drawn.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The legend is rendered on the bottom of the chart.",
+ "The legend is rendered on the left of the chart.",
+ "The legend is rendered on the right of the chart.",
+ "The legend is rendered on the top of the chart.",
+ "No legend is rendered.",
+ "The legend is rendered inside the chart area."
+ ],
+ "enum": [
+ "BUBBLE_CHART_LEGEND_POSITION_UNSPECIFIED",
+ "BOTTOM_LEGEND",
+ "LEFT_LEGEND",
+ "RIGHT_LEGEND",
+ "TOP_LEGEND",
+ "NO_LEGEND",
+ "INSIDE_LEGEND"
+ ]
+ },
+ "bubbleSizes": {
+ "$ref": "ChartData",
+ "description": "The data contianing the bubble sizes. Bubble sizes are used to draw\nthe bubbles at different sizes relative to each other.\nIf specified, group_ids must also be specified. This field is\noptional."
+ },
+ "domain": {
+ "$ref": "ChartData",
+ "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally."
+ },
+ "bubbleOpacity": {
+ "format": "float",
+ "description": "The opacity of the bubbles between 0 and 1.0.\n0 is fully transparent and 1 is fully opaque.",
+ "type": "number"
+ },
+ "bubbleTextStyle": {
+ "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported.",
+ "$ref": "TextFormat"
+ },
+ "bubbleBorderColor": {
+ "description": "The bubble border color.",
+ "$ref": "Color"
+ },
+ "groupIds": {
+ "$ref": "ChartData",
+ "description": "The data containing the bubble group IDs. All bubbles with the same group\nID will be drawn in the same color. If bubble_sizes is specified then\nthis field must also be specified but may contain blank values.\nThis field is optional."
+ },
+ "bubbleLabels": {
+ "description": "The data containing the bubble labels. These do not need to be unique.",
+ "$ref": "ChartData"
+ },
+ "bubbleMinRadiusSize": {
+ "format": "int32",
+ "description": "The minimum radius size of the bubbles, in pixels.\nIf specific, the field must be a positive value.",
+ "type": "integer"
+ }
+ },
+ "id": "BubbleChartSpec"
+ },
+ "CellData": {
+ "description": "Data about a specific cell.",
+ "type": "object",
+ "properties": {
+ "userEnteredFormat": {
+ "$ref": "CellFormat",
+ "description": "The format the user entered for the cell.\n\nWhen writing, the new format will be merged with the existing format."
+ },
+ "note": {
+ "type": "string",
+ "description": "Any note on the cell."
+ },
+ "effectiveFormat": {
+ "description": "The effective format being used by the cell.\nThis includes the results of applying any conditional formatting and,\nif the cell contains a formula, the computed number format.\nIf the effective format is the default format, effective format will\nnot be written.\nThis field is read-only.",
+ "$ref": "CellFormat"
+ },
+ "userEnteredValue": {
+ "$ref": "ExtendedValue",
+ "description": "The value the user entered in the cell. e.g, `1234`, `'Hello'`, or `=NOW()`\nNote: Dates, Times and DateTimes are represented as doubles in\nserial number format."
+ },
+ "dataValidation": {
+ "description": "A data validation rule on the cell, if any.\n\nWhen writing, the new data validation rule will overwrite any prior rule.",
+ "$ref": "DataValidationRule"
+ },
+ "effectiveValue": {
+ "description": "The effective value of the cell. For cells with formulas, this will be\nthe calculated value. For cells with literals, this will be\nthe same as the user_entered_value.\nThis field is read-only.",
+ "$ref": "ExtendedValue"
+ },
+ "textFormatRuns": {
+ "description": "Runs of rich text applied to subsections of the cell. Runs are only valid\non user entered strings, not formulas, bools, or numbers.\nRuns start at specific indexes in the text and continue until the next\nrun. Properties of a run will continue unless explicitly changed\nin a subsequent run (and properties of the first run will continue\nthe properties of the cell unless explicitly changed).\n\nWhen writing, the new runs will overwrite any prior runs. When writing a\nnew user_entered_value, previous runs will be erased.",
+ "items": {
+ "$ref": "TextFormatRun"
+ },
+ "type": "array"
+ },
+ "formattedValue": {
+ "type": "string",
+ "description": "The formatted value of the cell.\nThis is the value as it's shown to the user.\nThis field is read-only."
+ },
+ "hyperlink": {
+ "description": "A hyperlink this cell points to, if any.\nThis field is read-only. (To set it, use a `=HYPERLINK` formula\nin the userEnteredValue.formulaValue\nfield.)",
+ "type": "string"
+ },
+ "pivotTable": {
+ "$ref": "PivotTable",
+ "description": "A pivot table anchored at this cell. The size of pivot table itself\nis computed dynamically based on its data, grouping, filters, values,\netc. Only the top-left cell of the pivot table contains the pivot table\ndefinition. The other cells will contain the calculated values of the\nresults of the pivot in their effective_value fields."
+ }
+ },
+ "id": "CellData"
+ },
+ "BatchUpdateSpreadsheetRequest": {
+ "description": "The request for updating any aspect of a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "responseIncludeGridData": {
+ "description": "True if grid data should be returned. Meaningful only if\nif include_spreadsheet_response is 'true'.\nThis parameter is ignored if a field mask was set in the request.",
+ "type": "boolean"
+ },
+ "responseRanges": {
+ "description": "Limits the ranges included in the response spreadsheet.\nMeaningful only if include_spreadsheet_response is 'true'.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "includeSpreadsheetInResponse": {
+ "description": "Determines if the update response should include the spreadsheet\nresource.",
+ "type": "boolean"
+ },
+ "requests": {
+ "description": "A list of updates to apply to the spreadsheet.\nRequests will be applied in the order they are specified.\nIf any request is not valid, no requests will be applied.",
+ "items": {
+ "$ref": "Request"
+ },
+ "type": "array"
+ }
+ },
+ "id": "BatchUpdateSpreadsheetRequest"
+ },
+ "Padding": {
+ "description": "The amount of padding around the cell, in pixels.\nWhen updating padding, every field must be specified.",
+ "type": "object",
+ "properties": {
+ "right": {
+ "format": "int32",
+ "description": "The right padding of the cell.",
+ "type": "integer"
+ },
+ "bottom": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The bottom padding of the cell."
+ },
+ "top": {
+ "format": "int32",
+ "description": "The top padding of the cell.",
+ "type": "integer"
+ },
+ "left": {
+ "format": "int32",
+ "description": "The left padding of the cell.",
+ "type": "integer"
+ }
+ },
+ "id": "Padding"
+ },
+ "BasicChartAxis": {
+ "description": "An axis of the chart.\nA chart may not have more than one axis per\naxis position.",
+ "type": "object",
+ "properties": {
+ "format": {
+ "$ref": "TextFormat",
+ "description": "The format of the title.\nOnly valid if the axis is not associated with the domain."
+ },
+ "title": {
+ "description": "The title of this axis. If set, this overrides any title inferred\nfrom headers of the data.",
+ "type": "string"
+ },
+ "position": {
+ "enum": [
+ "BASIC_CHART_AXIS_POSITION_UNSPECIFIED",
+ "BOTTOM_AXIS",
+ "LEFT_AXIS",
+ "RIGHT_AXIS"
+ ],
+ "description": "The position of this axis.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.",
+ "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.",
+ "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis."
+ ]
+ }
+ },
+ "id": "BasicChartAxis"
+ },
+ "DeleteDimensionRequest": {
+ "description": "Deletes the dimensions from the sheet.",
+ "type": "object",
+ "properties": {
+ "range": {
+ "$ref": "DimensionRange",
+ "description": "The dimensions to delete from the sheet."
+ }
+ },
+ "id": "DeleteDimensionRequest"
+ },
+ "UpdateChartSpecRequest": {
+ "description": "Updates a chart's specifications.\n(This does not move or resize a chart. To move or resize a chart, use\n UpdateEmbeddedObjectPositionRequest.)",
+ "type": "object",
+ "properties": {
+ "spec": {
+ "$ref": "ChartSpec",
+ "description": "The specification to apply to the chart."
+ },
+ "chartId": {
+ "format": "int32",
+ "description": "The ID of the chart to update.",
+ "type": "integer"
+ }
+ },
+ "id": "UpdateChartSpecRequest"
+ },
+ "DeleteFilterViewRequest": {
+ "description": "Deletes a particular filter view.",
+ "type": "object",
+ "properties": {
+ "filterId": {
+ "format": "int32",
+ "description": "The ID of the filter to delete.",
+ "type": "integer"
+ }
+ },
+ "id": "DeleteFilterViewRequest"
+ },
+ "BatchUpdateValuesResponse": {
+ "description": "The response when updating a range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "totalUpdatedSheets": {
+ "format": "int32",
+ "description": "The total number of sheets where at least one cell in the sheet was\nupdated.",
+ "type": "integer"
+ },
+ "totalUpdatedCells": {
+ "format": "int32",
+ "description": "The total number of cells updated.",
+ "type": "integer"
+ },
+ "totalUpdatedColumns": {
+ "format": "int32",
+ "description": "The total number of columns where at least one cell in the column was\nupdated.",
+ "type": "integer"
+ },
+ "spreadsheetId": {
+ "type": "string",
+ "description": "The spreadsheet the updates were applied to."
+ },
+ "totalUpdatedRows": {
+ "format": "int32",
+ "description": "The total number of rows where at least one cell in the row was updated.",
+ "type": "integer"
+ },
+ "responses": {
+ "description": "One UpdateValuesResponse per requested range, in the same order as\nthe requests appeared.",
+ "items": {
+ "$ref": "UpdateValuesResponse"
+ },
+ "type": "array"
+ }
+ },
+ "id": "BatchUpdateValuesResponse"
+ },
+ "SortRangeRequest": {
+ "description": "Sorts data in rows based on a sort order per column.",
+ "type": "object",
+ "properties": {
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range to sort."
+ },
+ "sortSpecs": {
+ "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.",
+ "items": {
+ "$ref": "SortSpec"
+ },
+ "type": "array"
+ }
+ },
+ "id": "SortRangeRequest"
+ },
+ "MergeCellsRequest": {
+ "properties": {
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range of cells to merge."
+ },
+ "mergeType": {
+ "description": "How the cells should be merged.",
+ "type": "string",
+ "enumDescriptions": [
+ "Create a single merge from the range",
+ "Create a merge for each column in the range",
+ "Create a merge for each row in the range"
+ ],
+ "enum": [
+ "MERGE_ALL",
+ "MERGE_COLUMNS",
+ "MERGE_ROWS"
+ ]
+ }
+ },
+ "id": "MergeCellsRequest",
+ "description": "Merges all cells in the range.",
+ "type": "object"
+ },
+ "AddProtectedRangeRequest": {
+ "description": "Adds a new protected range.",
+ "type": "object",
+ "properties": {
+ "protectedRange": {
+ "$ref": "ProtectedRange",
+ "description": "The protected range to be added. The\nprotectedRangeId field is optional; if\none is not set, an id will be randomly generated. (It is an error to\nspecify the ID of a range that already exists.)"
+ }
+ },
+ "id": "AddProtectedRangeRequest"
+ },
+ "BatchClearValuesRequest": {
+ "description": "The request for clearing more than one range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "ranges": {
+ "description": "The ranges to clear, in A1 notation.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "BatchClearValuesRequest"
+ },
+ "DuplicateFilterViewResponse": {
+ "id": "DuplicateFilterViewResponse",
+ "description": "The result of a filter view being duplicated.",
+ "type": "object",
+ "properties": {
+ "filter": {
+ "description": "The newly created filter.",
+ "$ref": "FilterView"
+ }
+ }
+ },
+ "DuplicateSheetResponse": {
+ "description": "The result of duplicating a sheet.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "SheetProperties",
+ "description": "The properties of the duplicate sheet."
+ }
+ },
+ "id": "DuplicateSheetResponse"
+ },
+ "ClearBasicFilterRequest": {
+ "description": "Clears the basic filter, if any exists on the sheet.",
+ "type": "object",
+ "properties": {
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet ID on which the basic filter should be cleared.",
+ "type": "integer"
+ }
+ },
+ "id": "ClearBasicFilterRequest"
+ },
+ "TextToColumnsRequest": {
+ "id": "TextToColumnsRequest",
+ "description": "Splits a column of text into multiple columns,\nbased on a delimiter in each cell.",
+ "type": "object",
+ "properties": {
+ "delimiterType": {
+ "enumDescriptions": [
+ "Default value. This value must not be used.",
+ "\",\"",
+ "\";\"",
+ "\".\"",
+ "\" \"",
+ "A custom value as defined in delimiter."
+ ],
+ "enum": [
+ "DELIMITER_TYPE_UNSPECIFIED",
+ "COMMA",
+ "SEMICOLON",
+ "PERIOD",
+ "SPACE",
+ "CUSTOM"
+ ],
+ "description": "The delimiter type to use.",
+ "type": "string"
+ },
+ "source": {
+ "$ref": "GridRange",
+ "description": "The source data range. This must span exactly one column."
+ },
+ "delimiter": {
+ "description": "The delimiter to use. Used only if delimiterType is\nCUSTOM.",
+ "type": "string"
+ }
+ }
+ },
+ "DeleteBandingRequest": {
+ "description": "Removes the banded range with the given ID from the spreadsheet.",
+ "type": "object",
+ "properties": {
+ "bandedRangeId": {
+ "format": "int32",
+ "description": "The ID of the banded range to delete.",
+ "type": "integer"
+ }
+ },
+ "id": "DeleteBandingRequest"
+ },
+ "BatchUpdateSpreadsheetResponse": {
+ "description": "The reply for batch updating a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "updatedSpreadsheet": {
+ "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`.",
+ "$ref": "Spreadsheet"
+ },
+ "replies": {
+ "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.",
+ "items": {
+ "$ref": "Response"
+ },
+ "type": "array"
+ },
+ "spreadsheetId": {
+ "type": "string",
+ "description": "The spreadsheet the updates were applied to."
+ }
+ },
+ "id": "BatchUpdateSpreadsheetResponse"
+ },
+ "AppendValuesResponse": {
+ "description": "The response when updating a range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "updates": {
+ "description": "Information about the updates that were applied.",
+ "$ref": "UpdateValuesResponse"
+ },
+ "tableRange": {
+ "description": "The range (in A1 notation) of the table that values are being appended to\n(before the values were appended).\nEmpty if no table was found.",
+ "type": "string"
+ },
+ "spreadsheetId": {
+ "description": "The spreadsheet the updates were applied to.",
+ "type": "string"
+ }
+ },
+ "id": "AppendValuesResponse"
+ },
+ "MoveDimensionRequest": {
+ "description": "Moves one or more rows or columns.",
+ "type": "object",
+ "properties": {
+ "destinationIndex": {
+ "format": "int32",
+ "description": "The zero-based start index of where to move the source data to,\nbased on the coordinates *before* the source data is removed\nfrom the grid. Existing data will be shifted down or right\n(depending on the dimension) to make room for the moved dimensions.\nThe source dimensions are removed from the grid, so the\nthe data may end up in a different index than specified.\n\nFor example, given `A1..A5` of `0, 1, 2, 3, 4` and wanting to move\n`\"1\"` and `\"2\"` to between `\"3\"` and `\"4\"`, the source would be\n`ROWS [1..3)`,and the destination index would be `\"4\"`\n(the zero-based index of row 5).\nThe end result would be `A1..A5` of `0, 3, 1, 2, 4`.",
+ "type": "integer"
+ },
+ "source": {
+ "$ref": "DimensionRange",
+ "description": "The source dimensions to move."
+ }
+ },
+ "id": "MoveDimensionRequest"
+ },
+ "PivotFilterCriteria": {
+ "description": "Criteria for showing/hiding rows in a pivot table.",
+ "type": "object",
+ "properties": {
+ "visibleValues": {
+ "description": "Values that should be included. Values not listed here are excluded.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "PivotFilterCriteria"
+ },
+ "AddFilterViewRequest": {
+ "description": "Adds a filter view.",
+ "type": "object",
+ "properties": {
+ "filter": {
+ "$ref": "FilterView",
+ "description": "The filter to add. The filterViewId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a filter that already exists.)"
+ }
+ },
+ "id": "AddFilterViewRequest"
+ },
+ "AddConditionalFormatRuleRequest": {
+ "description": "Adds a new conditional format rule at the given index.\nAll subsequent rules' indexes are incremented.",
+ "type": "object",
+ "properties": {
+ "rule": {
+ "$ref": "ConditionalFormatRule",
+ "description": "The rule to add."
+ },
+ "index": {
+ "format": "int32",
+ "description": "The zero-based index where the rule should be inserted.",
+ "type": "integer"
+ }
+ },
+ "id": "AddConditionalFormatRuleRequest"
+ },
+ "ChartSpec": {
+ "description": "The specifications of a chart.",
+ "type": "object",
+ "properties": {
+ "candlestickChart": {
+ "description": "A candlestick chart specification.",
+ "$ref": "CandlestickChartSpec"
+ },
+ "bubbleChart": {
+ "description": "A bubble chart specification.",
+ "$ref": "BubbleChartSpec"
+ },
+ "fontName": {
+ "description": "The name of the font to use by default for all chart text (e.g. title,\naxis labels, legend). If a font is specified for a specific part of the\nchart it will override this font name.",
+ "type": "string"
+ },
+ "maximized": {
+ "description": "True to make a chart fill the entire space in which it's rendered with\nminimum padding. False to use the default padding.\n(Not applicable to Geo and Org charts.)",
+ "type": "boolean"
+ },
+ "hiddenDimensionStrategy": {
+ "description": "Determines how the charts will use hidden rows or columns.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "Charts will skip hidden rows and columns.",
+ "Charts will skip hidden rows only.",
+ "Charts will skip hidden columns only.",
+ "Charts will not skip any hidden rows or columns."
+ ],
+ "enum": [
+ "CHART_HIDDEN_DIMENSION_STRATEGY_UNSPECIFIED",
+ "SKIP_HIDDEN_ROWS_AND_COLUMNS",
+ "SKIP_HIDDEN_ROWS",
+ "SKIP_HIDDEN_COLUMNS",
+ "SHOW_ALL"
+ ]
+ },
+ "backgroundColor": {
+ "$ref": "Color",
+ "description": "The background color of the entire chart.\nNot applicable to Org charts."
+ },
+ "basicChart": {
+ "$ref": "BasicChartSpec",
+ "description": "A basic chart specification, can be one of many kinds of charts.\nSee BasicChartType for the list of all\ncharts this supports."
+ },
+ "orgChart": {
+ "$ref": "OrgChartSpec",
+ "description": "An org chart specification."
+ },
+ "pieChart": {
+ "description": "A pie chart specification.",
+ "$ref": "PieChartSpec"
+ },
+ "titleTextFormat": {
+ "description": "The title text format.\nStrikethrough and underline are not supported.",
+ "$ref": "TextFormat"
+ },
+ "title": {
+ "description": "The title of the chart.",
+ "type": "string"
+ },
+ "altText": {
+ "description": "The alternative text that describes the chart. This is often used\nfor accessibility.",
+ "type": "string"
+ },
+ "histogramChart": {
+ "$ref": "HistogramChartSpec",
+ "description": "A histogram chart specification."
+ }
+ },
+ "id": "ChartSpec"
+ },
+ "NumberFormat": {
+ "id": "NumberFormat",
+ "description": "The number format of a cell.",
+ "type": "object",
+ "properties": {
+ "pattern": {
+ "type": "string",
+ "description": "Pattern string used for formatting. If not set, a default pattern based on\nthe user's locale will be used if necessary for the given type.\nSee the [Date and Number Formats guide](/sheets/api/guides/formats) for more\ninformation about the supported patterns."
+ },
+ "type": {
+ "enumDescriptions": [
+ "The number format is not specified\nand is based on the contents of the cell.\nDo not explicitly use this.",
+ "Text formatting, e.g `1000.12`",
+ "Number formatting, e.g, `1,000.12`",
+ "Percent formatting, e.g `10.12%`",
+ "Currency formatting, e.g `$1,000.12`",
+ "Date formatting, e.g `9/26/2008`",
+ "Time formatting, e.g `3:59:00 PM`",
+ "Date+Time formatting, e.g `9/26/08 15:59:00`",
+ "Scientific number formatting, e.g `1.01E+03`"
+ ],
+ "enum": [
+ "NUMBER_FORMAT_TYPE_UNSPECIFIED",
+ "TEXT",
+ "NUMBER",
+ "PERCENT",
+ "CURRENCY",
+ "DATE",
+ "TIME",
+ "DATE_TIME",
+ "SCIENTIFIC"
+ ],
+ "description": "The type of the number format.\nWhen writing, this field must be set.",
+ "type": "string"
+ }
+ }
+ },
+ "CandlestickDomain": {
+ "description": "The domain of a CandlestickChart.",
+ "type": "object",
+ "properties": {
+ "data": {
+ "$ref": "ChartData",
+ "description": "The data of the CandlestickDomain."
+ },
+ "reversed": {
+ "type": "boolean",
+ "description": "True to reverse the order of the domain values (horizontal axis)."
+ }
+ },
+ "id": "CandlestickDomain"
+ },
+ "SheetProperties": {
+ "description": "Properties of a sheet.",
+ "type": "object",
+ "properties": {
+ "title": {
+ "description": "The name of the sheet.",
+ "type": "string"
+ },
+ "index": {
+ "format": "int32",
+ "description": "The index of the sheet within the spreadsheet.\nWhen adding or updating sheet properties, if this field\nis excluded then the sheet will be added or moved to the end\nof the sheet list. When updating sheet indices or inserting\nsheets, movement is considered in \"before the move\" indexes.\nFor example, if there were 3 sheets (S1, S2, S3) in order to\nmove S1 ahead of S2 the index would have to be set to 2. A sheet\nindex update request will be ignored if the requested index is\nidentical to the sheets current index or if the requested new\nindex is equal to the current sheet index + 1.",
+ "type": "integer"
+ },
+ "tabColor": {
+ "description": "The color of the tab in the UI.",
+ "$ref": "Color"
+ },
+ "sheetId": {
+ "format": "int32",
+ "description": "The ID of the sheet. Must be non-negative.\nThis field cannot be changed once set.",
+ "type": "integer"
+ },
+ "rightToLeft": {
+ "description": "True if the sheet is an RTL sheet instead of an LTR sheet.",
+ "type": "boolean"
+ },
+ "hidden": {
+ "description": "True if the sheet is hidden in the UI, false if it's visible.",
+ "type": "boolean"
+ },
+ "gridProperties": {
+ "$ref": "GridProperties",
+ "description": "Additional properties of the sheet if this sheet is a grid.\n(If the sheet is an object sheet, containing a chart or image, then\nthis field will be absent.)\nWhen writing it is an error to set any grid properties on non-grid sheets."
+ },
+ "sheetType": {
+ "description": "The type of sheet. Defaults to GRID.\nThis field cannot be changed once set.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The sheet is a grid.",
+ "The sheet has no grid and instead has an object like a chart or image."
+ ],
+ "enum": [
+ "SHEET_TYPE_UNSPECIFIED",
+ "GRID",
+ "OBJECT"
+ ]
+ }
+ },
+ "id": "SheetProperties"
+ },
+ "UpdateDimensionPropertiesRequest": {
+ "description": "Updates properties of dimensions within the specified range.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "DimensionProperties",
+ "description": "Properties to update."
+ },
+ "range": {
+ "$ref": "DimensionRange",
+ "description": "The rows or columns to update."
+ },
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ }
+ },
+ "id": "UpdateDimensionPropertiesRequest"
+ },
+ "SourceAndDestination": {
+ "description": "A combination of a source range and how to extend that source.",
+ "type": "object",
+ "properties": {
+ "fillLength": {
+ "format": "int32",
+ "description": "The number of rows or columns that data should be filled into.\nPositive numbers expand beyond the last row or last column\nof the source. Negative numbers expand before the first row\nor first column of the source.",
+ "type": "integer"
+ },
+ "source": {
+ "description": "The location of the data to use as the source of the autofill.",
+ "$ref": "GridRange"
+ },
+ "dimension": {
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ],
+ "description": "The dimension that data should be filled into.",
+ "type": "string",
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "Operates on the rows of a sheet.",
+ "Operates on the columns of a sheet."
+ ]
+ }
+ },
+ "id": "SourceAndDestination"
+ },
+ "OrgChartSpec": {
+ "type": "object",
+ "properties": {
+ "nodeColor": {
+ "$ref": "Color",
+ "description": "The color of the org chart nodes."
+ },
+ "tooltips": {
+ "description": "The data containing the tooltip for the corresponding node. A blank value\nresults in no tooltip being displayed for the node.\nThis field is optional.",
+ "$ref": "ChartData"
+ },
+ "selectedNodeColor": {
+ "description": "The color of the selected org chart nodes.",
+ "$ref": "Color"
+ },
+ "parentLabels": {
+ "$ref": "ChartData",
+ "description": "The data containing the label of the parent for the corresponding node.\nA blank value indicates that the node has no parent and is a top-level\nnode.\nThis field is optional."
+ },
+ "nodeSize": {
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The small org chart node size.",
+ "The medium org chart node size.",
+ "The large org chart node size."
+ ],
+ "enum": [
+ "ORG_CHART_LABEL_SIZE_UNSPECIFIED",
+ "SMALL",
+ "MEDIUM",
+ "LARGE"
+ ],
+ "description": "The size of the org chart nodes.",
+ "type": "string"
+ },
+ "labels": {
+ "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique.",
+ "$ref": "ChartData"
+ }
+ },
+ "id": "OrgChartSpec",
+ "description": "An \u003ca href=\"/chart/interactive/docs/gallery/orgchart\"\u003eorg chart\u003c/a\u003e.\nOrg charts require a unique set of labels in labels and may\noptionally include parent_labels and tooltips.\nparent_labels contain, for each node, the label identifying the parent\nnode. tooltips contain, for each node, an optional tooltip.\n\nFor example, to describe an OrgChart with Alice as the CEO, Bob as the\nPresident (reporting to Alice) and Cathy as VP of Sales (also reporting to\nAlice), have labels contain \"Alice\", \"Bob\", \"Cathy\",\nparent_labels contain \"\", \"Alice\", \"Alice\" and tooltips contain\n\"CEO\", \"President\", \"VP Sales\"."
+ },
+ "FilterView": {
+ "description": "A filter view.",
+ "type": "object",
+ "properties": {
+ "filterViewId": {
+ "format": "int32",
+ "description": "The ID of the filter view.",
+ "type": "integer"
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range this filter view covers.\n\nWhen writing, only one of range or named_range_id\nmay be set."
+ },
+ "criteria": {
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "FilterCriteria"
+ },
+ "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column."
+ },
+ "title": {
+ "description": "The name of the filter view.",
+ "type": "string"
+ },
+ "sortSpecs": {
+ "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.",
+ "items": {
+ "$ref": "SortSpec"
+ },
+ "type": "array"
+ },
+ "namedRangeId": {
+ "description": "The named range this filter view is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.",
+ "type": "string"
+ }
+ },
+ "id": "FilterView"
+ },
+ "BandingProperties": {
+ "description": "Properties referring a single dimension (either row or column). If both\nBandedRange.row_properties and BandedRange.column_properties are\nset, the fill colors are applied to cells according to the following rules:\n\n* header_color and footer_color take priority over band colors.\n* first_band_color takes priority over second_band_color.\n* row_properties takes priority over column_properties.\n\nFor example, the first row color takes priority over the first column\ncolor, but the first column color takes priority over the second row color.\nSimilarly, the row header takes priority over the column header in the\ntop left cell, but the column header takes priority over the first row\ncolor if the row header is not set.",
+ "type": "object",
+ "properties": {
+ "footerColor": {
+ "$ref": "Color",
+ "description": "The color of the last row or column. If this field is not set, the last\nrow or column will be filled with either first_band_color or\nsecond_band_color, depending on the color of the previous row or\ncolumn."
+ },
+ "headerColor": {
+ "$ref": "Color",
+ "description": "The color of the first row or column. If this field is set, the first\nrow or column will be filled with this color and the colors will\nalternate between first_band_color and second_band_color starting\nfrom the second row or column. Otherwise, the first row or column will be\nfilled with first_band_color and the colors will proceed to alternate\nas they normally would."
+ },
+ "firstBandColor": {
+ "$ref": "Color",
+ "description": "The first color that is alternating. (Required)"
+ },
+ "secondBandColor": {
+ "$ref": "Color",
+ "description": "The second color that is alternating. (Required)"
+ }
+ },
+ "id": "BandingProperties"
+ },
+ "CandlestickSeries": {
+ "properties": {
+ "data": {
+ "$ref": "ChartData",
+ "description": "The data of the CandlestickSeries."
+ }
+ },
+ "id": "CandlestickSeries",
+ "description": "The series of a CandlestickData.",
+ "type": "object"
+ },
+ "BasicFilter": {
+ "description": "The default filter associated with a sheet.",
+ "type": "object",
+ "properties": {
+ "criteria": {
+ "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "FilterCriteria"
+ }
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range the filter covers."
+ },
+ "sortSpecs": {
+ "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.",
+ "items": {
+ "$ref": "SortSpec"
+ },
+ "type": "array"
+ }
+ },
+ "id": "BasicFilter"
+ },
+ "AddProtectedRangeResponse": {
+ "properties": {
+ "protectedRange": {
+ "$ref": "ProtectedRange",
+ "description": "The newly added protected range."
+ }
+ },
+ "id": "AddProtectedRangeResponse",
+ "description": "The result of adding a new protected range.",
+ "type": "object"
+ },
+ "HistogramChartSpec": {
+ "description": "A \u003ca href=\"/chart/interactive/docs/gallery/histogram\"\u003ehistogram chart\u003c/a\u003e.\nA histogram chart groups data items into bins, displaying each bin as a\ncolumn of stacked items. Histograms are used to display the distribution\nof a dataset. Each column of items represents a range into which those\nitems fall. The number of bins can be chosen automatically or specified\nexplicitly.",
+ "type": "object",
+ "properties": {
+ "legendPosition": {
+ "enum": [
+ "HISTOGRAM_CHART_LEGEND_POSITION_UNSPECIFIED",
+ "BOTTOM_LEGEND",
+ "LEFT_LEGEND",
+ "RIGHT_LEGEND",
+ "TOP_LEGEND",
+ "NO_LEGEND",
+ "INSIDE_LEGEND"
+ ],
+ "description": "The position of the chart legend.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The legend is rendered on the bottom of the chart.",
+ "The legend is rendered on the left of the chart.",
+ "The legend is rendered on the right of the chart.",
+ "The legend is rendered on the top of the chart.",
+ "No legend is rendered.",
+ "The legend is rendered inside the chart area."
+ ]
+ },
+ "bucketSize": {
+ "format": "double",
+ "description": "By default the bucket size (the range of values stacked in a single\ncolumn) is chosen automatically, but it may be overridden here.\nE.g., A bucket size of 1.5 results in buckets from 0 - 1.5, 1.5 - 3.0, etc.\nCannot be negative.\nThis field is optional.",
+ "type": "number"
+ },
+ "outlierPercentile": {
+ "format": "double",
+ "description": "The outlier percentile is used to ensure that outliers do not adversely\naffect the calculation of bucket sizes. For example, setting an outlier\npercentile of 0.05 indicates that the top and bottom 5% of values when\ncalculating buckets. The values are still included in the chart, they will\nbe added to the first or last buckets instead of their own buckets.\nMust be between 0.0 and 0.5.",
+ "type": "number"
+ },
+ "showItemDividers": {
+ "description": "Whether horizontal divider lines should be displayed between items in each\ncolumn.",
+ "type": "boolean"
+ },
+ "series": {
+ "description": "The series for a histogram may be either a single series of values to be\nbucketed or multiple series, each of the same length, containing the name\nof the series followed by the values to be bucketed for that series.",
+ "items": {
+ "$ref": "HistogramSeries"
+ },
+ "type": "array"
+ }
+ },
+ "id": "HistogramChartSpec"
+ },
+ "UpdateValuesResponse": {
+ "id": "UpdateValuesResponse",
+ "description": "The response when updating a range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "spreadsheetId": {
+ "description": "The spreadsheet the updates were applied to.",
+ "type": "string"
+ },
+ "updatedRange": {
+ "description": "The range (in A1 notation) that updates were applied to.",
+ "type": "string"
+ },
+ "updatedCells": {
+ "format": "int32",
+ "description": "The number of cells updated.",
+ "type": "integer"
+ },
+ "updatedData": {
+ "$ref": "ValueRange",
+ "description": "The values of the cells after updates were applied.\nThis is only included if the request's `includeValuesInResponse` field\nwas `true`."
+ },
+ "updatedRows": {
+ "format": "int32",
+ "description": "The number of rows where at least one cell in the row was updated.",
+ "type": "integer"
+ },
+ "updatedColumns": {
+ "format": "int32",
+ "description": "The number of columns where at least one cell in the column was updated.",
+ "type": "integer"
+ }
+ }
+ },
+ "ErrorValue": {
+ "description": "An error in a cell.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "enumDescriptions": [
+ "The default error type, do not use this.",
+ "Corresponds to the `#ERROR!` error.",
+ "Corresponds to the `#NULL!` error.",
+ "Corresponds to the `#DIV/0` error.",
+ "Corresponds to the `#VALUE!` error.",
+ "Corresponds to the `#REF!` error.",
+ "Corresponds to the `#NAME?` error.",
+ "Corresponds to the `#NUM`! error.",
+ "Corresponds to the `#N/A` error.",
+ "Corresponds to the `Loading...` state."
+ ],
+ "enum": [
+ "ERROR_TYPE_UNSPECIFIED",
+ "ERROR",
+ "NULL_VALUE",
+ "DIVIDE_BY_ZERO",
+ "VALUE",
+ "REF",
+ "NAME",
+ "NUM",
+ "N_A",
+ "LOADING"
+ ],
+ "description": "The type of error.",
+ "type": "string"
+ },
+ "message": {
+ "description": "A message with more information about the error\n(in the spreadsheet's locale).",
+ "type": "string"
+ }
+ },
+ "id": "ErrorValue"
+ },
+ "PivotValue": {
+ "properties": {
+ "formula": {
+ "description": "A custom formula to calculate the value. The formula must start\nwith an `=` character.",
+ "type": "string"
+ },
+ "summarizeFunction": {
+ "description": "A function to summarize the value.\nIf formula is set, the only supported values are\nSUM and\nCUSTOM.\nIf sourceColumnOffset is set, then `CUSTOM`\nis not supported.",
+ "type": "string",
+ "enumDescriptions": [
+ "The default, do not use.",
+ "Corresponds to the `SUM` function.",
+ "Corresponds to the `COUNTA` function.",
+ "Corresponds to the `COUNT` function.",
+ "Corresponds to the `COUNTUNIQUE` function.",
+ "Corresponds to the `AVERAGE` function.",
+ "Corresponds to the `MAX` function.",
+ "Corresponds to the `MIN` function.",
+ "Corresponds to the `MEDIAN` function.",
+ "Corresponds to the `PRODUCT` function.",
+ "Corresponds to the `STDEV` function.",
+ "Corresponds to the `STDEVP` function.",
+ "Corresponds to the `VAR` function.",
+ "Corresponds to the `VARP` function.",
+ "Indicates the formula should be used as-is.\nOnly valid if PivotValue.formula was set."
+ ],
+ "enum": [
+ "PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED",
+ "SUM",
+ "COUNTA",
+ "COUNT",
+ "COUNTUNIQUE",
+ "AVERAGE",
+ "MAX",
+ "MIN",
+ "MEDIAN",
+ "PRODUCT",
+ "STDEV",
+ "STDEVP",
+ "VAR",
+ "VARP",
+ "CUSTOM"
+ ]
+ },
+ "sourceColumnOffset": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The column offset of the source range that this value reads from.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this value refers to column `C`, whereas the offset `1` would\nrefer to column `D`."
+ },
+ "name": {
+ "description": "A name to use for the value. This is only used if formula was set.\nOtherwise, the column name is used.",
+ "type": "string"
+ }
+ },
+ "id": "PivotValue",
+ "description": "The definition of how a value in a pivot table should be calculated.",
+ "type": "object"
+ },
+ "CopySheetToAnotherSpreadsheetRequest": {
+ "description": "The request to copy a sheet across spreadsheets.",
+ "type": "object",
+ "properties": {
+ "destinationSpreadsheetId": {
+ "description": "The ID of the spreadsheet to copy the sheet to.",
+ "type": "string"
+ }
+ },
+ "id": "CopySheetToAnotherSpreadsheetRequest"
+ },
+ "PivotGroupSortValueBucket": {
+ "description": "Information about which values in a pivot group should be used for sorting.",
+ "type": "object",
+ "properties": {
+ "buckets": {
+ "description": "Determines the bucket from which values are chosen to sort.\n\nFor example, in a pivot table with one row group & two column groups,\nthe row group can list up to two values. The first value corresponds\nto a value within the first column group, and the second value\ncorresponds to a value in the second column group. If no values\nare listed, this would indicate that the row should be sorted according\nto the \"Grand Total\" over the column groups. If a single value is listed,\nthis would correspond to using the \"Total\" of that bucket.",
+ "items": {
+ "$ref": "ExtendedValue"
+ },
+ "type": "array"
+ },
+ "valuesIndex": {
+ "format": "int32",
+ "description": "The offset in the PivotTable.values list which the values in this\ngrouping should be sorted by.",
+ "type": "integer"
+ }
+ },
+ "id": "PivotGroupSortValueBucket"
+ },
+ "CandlestickChartSpec": {
+ "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.",
+ "type": "object",
+ "properties": {
+ "data": {
+ "description": "The Candlestick chart data.\nOnly one CandlestickData is supported.",
+ "items": {
+ "$ref": "CandlestickData"
+ },
+ "type": "array"
+ },
+ "domain": {
+ "$ref": "CandlestickDomain",
+ "description": "The domain data (horizontal axis) for the candlestick chart. String data\nwill be treated as discrete labels, other data will be treated as\ncontinuous values."
+ }
+ },
+ "id": "CandlestickChartSpec"
+ },
+ "CandlestickData": {
+ "id": "CandlestickData",
+ "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.",
+ "type": "object",
+ "properties": {
+ "openSeries": {
+ "$ref": "CandlestickSeries",
+ "description": "The range data (vertical axis) for the open/initial value for each\ncandle. This is the bottom of the candle body. If less than the close\nvalue the candle will be filled. Otherwise the candle will be hollow."
+ },
+ "highSeries": {
+ "$ref": "CandlestickSeries",
+ "description": "The range data (vertical axis) for the high/maximum value for each\ncandle. This is the top of the candle's center line."
+ },
+ "closeSeries": {
+ "$ref": "CandlestickSeries",
+ "description": "The range data (vertical axis) for the close/final value for each candle.\nThis is the top of the candle body. If greater than the open value the\ncandle will be filled. Otherwise the candle will be hollow."
+ },
+ "lowSeries": {
+ "description": "The range data (vertical axis) for the low/minimum value for each candle.\nThis is the bottom of the candle's center line.",
+ "$ref": "CandlestickSeries"
+ }
+ }
+ },
+ "EmbeddedObjectPosition": {
+ "type": "object",
+ "properties": {
+ "newSheet": {
+ "description": "If true, the embedded object will be put on a new sheet whose ID\nis chosen for you. Used only when writing.",
+ "type": "boolean"
+ },
+ "overlayPosition": {
+ "$ref": "OverlayPosition",
+ "description": "The position at which the object is overlaid on top of a grid."
+ },
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet this is on. Set only if the embedded object\nis on its own sheet. Must be non-negative.",
+ "type": "integer"
+ }
+ },
+ "id": "EmbeddedObjectPosition",
+ "description": "The position of an embedded object such as a chart."
+ },
+ "DeleteProtectedRangeRequest": {
+ "description": "Deletes the protected range with the given ID.",
+ "type": "object",
+ "properties": {
+ "protectedRangeId": {
+ "format": "int32",
+ "description": "The ID of the protected range to delete.",
+ "type": "integer"
+ }
+ },
+ "id": "DeleteProtectedRangeRequest"
+ },
+ "AutoFillRequest": {
+ "id": "AutoFillRequest",
+ "description": "Fills in more data based on existing data.",
+ "type": "object",
+ "properties": {
+ "useAlternateSeries": {
+ "description": "True if we should generate data with the \"alternate\" series.\nThis differs based on the type and amount of source data.",
+ "type": "boolean"
+ },
+ "sourceAndDestination": {
+ "$ref": "SourceAndDestination",
+ "description": "The source and destination areas to autofill.\nThis explicitly lists the source of the autofill and where to\nextend that data."
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range to autofill. This will examine the range and detect\nthe location that has data and automatically fill that data\nin to the rest of the range."
+ }
+ }
+ },
+ "GradientRule": {
+ "description": "A rule that applies a gradient color scale format, based on\nthe interpolation points listed. The format of a cell will vary\nbased on its contents as compared to the values of the interpolation\npoints.",
+ "type": "object",
+ "properties": {
+ "maxpoint": {
+ "description": "The final interpolation point.",
+ "$ref": "InterpolationPoint"
+ },
+ "minpoint": {
+ "description": "The starting interpolation point.",
+ "$ref": "InterpolationPoint"
+ },
+ "midpoint": {
+ "$ref": "InterpolationPoint",
+ "description": "An optional midway interpolation point."
+ }
+ },
+ "id": "GradientRule"
+ },
+ "ClearValuesRequest": {
+ "description": "The request for clearing a range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {},
+ "id": "ClearValuesRequest"
+ },
+ "SetBasicFilterRequest": {
+ "description": "Sets the basic filter associated with a sheet.",
+ "type": "object",
+ "properties": {
+ "filter": {
+ "$ref": "BasicFilter",
+ "description": "The filter to set."
+ }
+ },
+ "id": "SetBasicFilterRequest"
+ },
+ "InterpolationPoint": {
+ "type": "object",
+ "properties": {
+ "color": {
+ "$ref": "Color",
+ "description": "The color this interpolation point should use."
+ },
+ "type": {
+ "enum": [
+ "INTERPOLATION_POINT_TYPE_UNSPECIFIED",
+ "MIN",
+ "MAX",
+ "NUMBER",
+ "PERCENT",
+ "PERCENTILE"
+ ],
+ "description": "How the value should be interpreted.",
+ "type": "string",
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "The interpolation point will use the minimum value in the\ncells over the range of the conditional format.",
+ "The interpolation point will use the maximum value in the\ncells over the range of the conditional format.",
+ "The interpolation point will use exactly the value in\nInterpolationPoint.value.",
+ "The interpolation point will be the given percentage over\nall the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=(MAX(FLATTEN(range)) * (value / 100))\n + (MIN(FLATTEN(range)) * (1 - (value / 100)))`\n(where errors in the range are ignored when flattening).",
+ "The interpolation point will be the given percentile\nover all the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=PERCENTILE(FLATTEN(range), value / 100)`\n(where errors in the range are ignored when flattening)."
+ ]
+ },
+ "value": {
+ "type": "string",
+ "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX."
+ }
+ },
+ "id": "InterpolationPoint",
+ "description": "A single interpolation point on a gradient conditional format.\nThese pin the gradient color scale according to the color,\ntype and value chosen."
+ },
+ "DeleteEmbeddedObjectRequest": {
+ "properties": {
+ "objectId": {
+ "format": "int32",
+ "description": "The ID of the embedded object to delete.",
+ "type": "integer"
+ }
+ },
+ "id": "DeleteEmbeddedObjectRequest",
+ "description": "Deletes the embedded object with the given ID.",
+ "type": "object"
+ },
+ "FindReplaceResponse": {
+ "id": "FindReplaceResponse",
+ "description": "The result of the find/replace.",
+ "type": "object",
+ "properties": {
+ "valuesChanged": {
+ "format": "int32",
+ "description": "The number of non-formula cells changed.",
+ "type": "integer"
+ },
+ "occurrencesChanged": {
+ "format": "int32",
+ "description": "The number of occurrences (possibly multiple within a cell) changed.\nFor example, if replacing `\"e\"` with `\"o\"` in `\"Google Sheets\"`, this would\nbe `\"3\"` because `\"Google Sheets\"` -\u003e `\"Googlo Shoots\"`.",
+ "type": "integer"
+ },
+ "rowsChanged": {
+ "format": "int32",
+ "description": "The number of rows changed.",
+ "type": "integer"
+ },
+ "sheetsChanged": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of sheets changed."
+ },
+ "formulasChanged": {
+ "format": "int32",
+ "description": "The number of formula cells changed.",
+ "type": "integer"
+ }
+ }
+ },
+ "DeleteSheetRequest": {
+ "description": "Deletes the requested sheet.",
+ "type": "object",
+ "properties": {
+ "sheetId": {
+ "format": "int32",
+ "description": "The ID of the sheet to delete.",
+ "type": "integer"
+ }
+ },
+ "id": "DeleteSheetRequest"
+ },
+ "DuplicateFilterViewRequest": {
+ "properties": {
+ "filterId": {
+ "format": "int32",
+ "description": "The ID of the filter being duplicated.",
+ "type": "integer"
+ }
+ },
+ "id": "DuplicateFilterViewRequest",
+ "description": "Duplicates a particular filter view.",
+ "type": "object"
+ },
+ "UpdateConditionalFormatRuleResponse": {
+ "id": "UpdateConditionalFormatRuleResponse",
+ "description": "The result of updating a conditional format rule.",
+ "type": "object",
+ "properties": {
+ "newIndex": {
+ "format": "int32",
+ "description": "The index of the new rule.",
+ "type": "integer"
+ },
+ "newRule": {
+ "$ref": "ConditionalFormatRule",
+ "description": "The new rule that replaced the old rule (if replacing),\nor the rule that was moved (if moved)"
+ },
+ "oldIndex": {
+ "format": "int32",
+ "description": "The old index of the rule. Not set if a rule was replaced\n(because it is the same as new_index).",
+ "type": "integer"
+ },
+ "oldRule": {
+ "description": "The old (deleted) rule. Not set if a rule was moved\n(because it is the same as new_rule).",
+ "$ref": "ConditionalFormatRule"
+ }
+ }
+ },
+ "ConditionValue": {
+ "description": "The value of the condition.",
+ "type": "object",
+ "properties": {
+ "userEnteredValue": {
+ "description": "A value the condition is based on.\nThe value will be parsed as if the user typed into a cell.\nFormulas are supported (and must begin with an `=`).",
+ "type": "string"
+ },
+ "relativeDate": {
+ "description": "A relative date (based on the current date).\nValid only if the type is\nDATE_BEFORE,\nDATE_AFTER,\nDATE_ON_OR_BEFORE or\nDATE_ON_OR_AFTER.\n\nRelative dates are not supported in data validation.\nThey are supported only in conditional formatting and\nconditional filters.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The value is one year before today.",
+ "The value is one month before today.",
+ "The value is one week before today.",
+ "The value is yesterday.",
+ "The value is today.",
+ "The value is tomorrow."
+ ],
+ "enum": [
+ "RELATIVE_DATE_UNSPECIFIED",
+ "PAST_YEAR",
+ "PAST_MONTH",
+ "PAST_WEEK",
+ "YESTERDAY",
+ "TODAY",
+ "TOMORROW"
+ ]
+ }
+ },
+ "id": "ConditionValue"
+ },
+ "DuplicateSheetRequest": {
+ "type": "object",
+ "properties": {
+ "insertSheetIndex": {
+ "format": "int32",
+ "description": "The zero-based index where the new sheet should be inserted.\nThe index of all sheets after this are incremented.",
+ "type": "integer"
+ },
+ "newSheetName": {
+ "description": "The name of the new sheet. If empty, a new name is chosen for you.",
+ "type": "string"
+ },
+ "sourceSheetId": {
+ "format": "int32",
+ "description": "The sheet to duplicate.",
+ "type": "integer"
+ },
+ "newSheetId": {
+ "format": "int32",
+ "description": "If set, the ID of the new sheet. If not set, an ID is chosen.\nIf set, the ID must not conflict with any existing sheet ID.\nIf set, it must be non-negative.",
+ "type": "integer"
+ }
+ },
+ "id": "DuplicateSheetRequest",
+ "description": "Duplicates the contents of a sheet."
+ },
+ "ExtendedValue": {
+ "description": "The kinds of value that a cell in a spreadsheet can have.",
+ "type": "object",
+ "properties": {
+ "errorValue": {
+ "description": "Represents an error.\nThis field is read-only.",
+ "$ref": "ErrorValue"
+ },
+ "formulaValue": {
+ "description": "Represents a formula.",
+ "type": "string"
+ },
+ "boolValue": {
+ "description": "Represents a boolean value.",
+ "type": "boolean"
+ },
+ "stringValue": {
+ "description": "Represents a string value.\nLeading single quotes are not included. For example, if the user typed\n`'123` into the UI, this would be represented as a `stringValue` of\n`\"123\"`.",
+ "type": "string"
+ },
+ "numberValue": {
+ "format": "double",
+ "description": "Represents a double value.\nNote: Dates, Times and DateTimes are represented as doubles in\n\"serial number\" format.",
+ "type": "number"
+ }
+ },
+ "id": "ExtendedValue"
+ },
+ "BandedRange": {
+ "description": "A banded (alternating colors) range in a sheet.",
+ "type": "object",
+ "properties": {
+ "bandedRangeId": {
+ "format": "int32",
+ "description": "The id of the banded range.",
+ "type": "integer"
+ },
+ "columnProperties": {
+ "description": "Properties for column bands. These properties will be applied on a column-\nby-column basis throughout all the columns in the range. At least one of\nrow_properties or column_properties must be specified.",
+ "$ref": "BandingProperties"
+ },
+ "rowProperties": {
+ "description": "Properties for row bands. These properties will be applied on a row-by-row\nbasis throughout all the rows in the range. At least one of\nrow_properties or column_properties must be specified.",
+ "$ref": "BandingProperties"
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range over which these properties are applied."
+ }
+ },
+ "id": "BandedRange"
+ },
+ "HistogramSeries": {
+ "properties": {
+ "barColor": {
+ "$ref": "Color",
+ "description": "The color of the column representing this series in each bucket.\nThis field is optional."
+ },
+ "data": {
+ "description": "The data for this histogram series.",
+ "$ref": "ChartData"
+ }
+ },
+ "id": "HistogramSeries",
+ "description": "A histogram series containing the series color and data.",
+ "type": "object"
+ },
+ "BatchClearValuesResponse": {
+ "description": "The response when clearing a range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "clearedRanges": {
+ "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "spreadsheetId": {
+ "description": "The spreadsheet the updates were applied to.",
+ "type": "string"
+ }
+ },
+ "id": "BatchClearValuesResponse"
+ },
+ "Spreadsheet": {
+ "id": "Spreadsheet",
+ "description": "Resource that represents a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "SpreadsheetProperties",
+ "description": "Overall properties of a spreadsheet."
+ },
+ "namedRanges": {
+ "description": "The named ranges defined in a spreadsheet.",
+ "items": {
+ "$ref": "NamedRange"
+ },
+ "type": "array"
+ },
+ "sheets": {
+ "description": "The sheets that are part of a spreadsheet.",
+ "items": {
+ "$ref": "Sheet"
+ },
+ "type": "array"
+ },
+ "spreadsheetId": {
+ "description": "The ID of the spreadsheet.\nThis field is read-only.",
+ "type": "string"
+ },
+ "spreadsheetUrl": {
+ "description": "The url of the spreadsheet.\nThis field is read-only.",
+ "type": "string"
+ }
+ }
+ },
+ "AddChartRequest": {
+ "description": "Adds a chart to a sheet in the spreadsheet.",
+ "type": "object",
+ "properties": {
+ "chart": {
+ "description": "The chart that should be added to the spreadsheet, including the position\nwhere it should be placed. The chartId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a chart that already exists.)",
+ "$ref": "EmbeddedChart"
+ }
+ },
+ "id": "AddChartRequest"
+ },
+ "UpdateProtectedRangeRequest": {
+ "description": "Updates an existing protected range with the specified\nprotectedRangeId.",
+ "type": "object",
+ "properties": {
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated. At least one field must be specified.\nThe root `protectedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ },
+ "protectedRange": {
+ "$ref": "ProtectedRange",
+ "description": "The protected range to update with the new properties."
+ }
+ },
+ "id": "UpdateProtectedRangeRequest"
+ },
+ "TextFormat": {
+ "description": "The format of a run of text in a cell.\nAbsent values indicate that the field isn't specified.",
+ "type": "object",
+ "properties": {
+ "underline": {
+ "description": "True if the text is underlined.",
+ "type": "boolean"
+ },
+ "bold": {
+ "description": "True if the text is bold.",
+ "type": "boolean"
+ },
+ "foregroundColor": {
+ "description": "The foreground color of the text.",
+ "$ref": "Color"
+ },
+ "fontFamily": {
+ "description": "The font family.",
+ "type": "string"
+ },
+ "strikethrough": {
+ "type": "boolean",
+ "description": "True if the text has a strikethrough."
+ },
+ "italic": {
+ "description": "True if the text is italicized.",
+ "type": "boolean"
+ },
+ "fontSize": {
+ "format": "int32",
+ "description": "The size of the font.",
+ "type": "integer"
+ }
+ },
+ "id": "TextFormat"
+ },
+ "AddSheetResponse": {
+ "description": "The result of adding a sheet.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "SheetProperties",
+ "description": "The properties of the newly added sheet."
+ }
+ },
+ "id": "AddSheetResponse"
+ },
+ "AddFilterViewResponse": {
+ "description": "The result of adding a filter view.",
+ "type": "object",
+ "properties": {
+ "filter": {
+ "description": "The newly added filter view.",
+ "$ref": "FilterView"
+ }
+ },
+ "id": "AddFilterViewResponse"
+ },
+ "IterativeCalculationSettings": {
+ "description": "Settings to control how circular dependencies are resolved with iterative\ncalculation.",
+ "type": "object",
+ "properties": {
+ "convergenceThreshold": {
+ "format": "double",
+ "description": "When iterative calculation is enabled and successive results differ by\nless than this threshold value, the calculation rounds stop.",
+ "type": "number"
+ },
+ "maxIterations": {
+ "format": "int32",
+ "description": "When iterative calculation is enabled, the maximum number of calculation\nrounds to perform.",
+ "type": "integer"
+ }
+ },
+ "id": "IterativeCalculationSettings"
+ },
+ "SpreadsheetProperties": {
+ "properties": {
+ "locale": {
+ "description": "The locale of the spreadsheet in one of the following formats:\n\n* an ISO 639-1 language code such as `en`\n\n* an ISO 639-2 language code such as `fil`, if no 639-1 code exists\n\n* a combination of the ISO language code and country code, such as `en_US`\n\nNote: when updating this field, not all locales/languages are supported.",
+ "type": "string"
+ },
+ "iterativeCalculationSettings": {
+ "description": "Determines whether and how circular references are resolved with iterative\ncalculation. Absence of this field means that circular references will\nresult in calculation errors.",
+ "$ref": "IterativeCalculationSettings"
+ },
+ "autoRecalc": {
+ "enumDescriptions": [
+ "Default value. This value must not be used.",
+ "Volatile functions are updated on every change.",
+ "Volatile functions are updated on every change and every minute.",
+ "Volatile functions are updated on every change and hourly."
+ ],
+ "enum": [
+ "RECALCULATION_INTERVAL_UNSPECIFIED",
+ "ON_CHANGE",
+ "MINUTE",
+ "HOUR"
+ ],
+ "description": "The amount of time to wait before volatile functions are recalculated.",
+ "type": "string"
+ },
+ "defaultFormat": {
+ "description": "The default format of all cells in the spreadsheet.\nCellData.effectiveFormat will not be set if the\ncell's format is equal to this default format.\nThis field is read-only.",
+ "$ref": "CellFormat"
+ },
+ "title": {
+ "type": "string",
+ "description": "The title of the spreadsheet."
+ },
+ "timeZone": {
+ "description": "The time zone of the spreadsheet, in CLDR format such as\n`America/New_York`. If the time zone isn't recognized, this may\nbe a custom time zone such as `GMT-07:00`.",
+ "type": "string"
+ }
+ },
+ "id": "SpreadsheetProperties",
+ "description": "Properties of a spreadsheet.",
+ "type": "object"
+ },
+ "OverlayPosition": {
+ "description": "The location an object is overlaid on top of a grid.",
+ "type": "object",
+ "properties": {
+ "offsetXPixels": {
+ "format": "int32",
+ "description": "The horizontal offset, in pixels, that the object is offset\nfrom the anchor cell.",
+ "type": "integer"
+ },
+ "anchorCell": {
+ "$ref": "GridCoordinate",
+ "description": "The cell the object is anchored to."
+ },
+ "heightPixels": {
+ "format": "int32",
+ "description": "The height of the object, in pixels. Defaults to 371.",
+ "type": "integer"
+ },
+ "offsetYPixels": {
+ "format": "int32",
+ "description": "The vertical offset, in pixels, that the object is offset\nfrom the anchor cell.",
+ "type": "integer"
+ },
+ "widthPixels": {
+ "format": "int32",
+ "description": "The width of the object, in pixels. Defaults to 600.",
+ "type": "integer"
+ }
+ },
+ "id": "OverlayPosition"
+ },
+ "RepeatCellRequest": {
+ "properties": {
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range to repeat the cell in."
+ },
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated. At least one field must be specified.\nThe root `cell` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ },
+ "cell": {
+ "description": "The data to write.",
+ "$ref": "CellData"
+ }
+ },
+ "id": "RepeatCellRequest",
+ "description": "Updates all cells in the range to the values in the given Cell object.\nOnly the fields listed in the fields field are updated; others are\nunchanged.\n\nIf writing a cell with a formula, the formula's ranges will automatically\nincrement for each field in the range.\nFor example, if writing a cell with formula `=A1` into range B2:C4,\nB2 would be `=A1`, B3 would be `=A2`, B4 would be `=A3`,\nC2 would be `=B1`, C3 would be `=B2`, C4 would be `=B3`.\n\nTo keep the formula's ranges static, use the `$` indicator.\nFor example, use the formula `=$A$1` to prevent both the row and the\ncolumn from incrementing.",
+ "type": "object"
+ },
+ "AddChartResponse": {
+ "description": "The result of adding a chart to a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "chart": {
+ "$ref": "EmbeddedChart",
+ "description": "The newly added chart."
+ }
+ },
+ "id": "AddChartResponse"
+ },
+ "InsertDimensionRequest": {
+ "description": "Inserts rows or columns in a sheet at a particular index.",
+ "type": "object",
+ "properties": {
+ "range": {
+ "$ref": "DimensionRange",
+ "description": "The dimensions to insert. Both the start and end indexes must be bounded."
+ },
+ "inheritFromBefore": {
+ "type": "boolean",
+ "description": "Whether dimension properties should be extended from the dimensions\nbefore or after the newly inserted dimensions.\nTrue to inherit from the dimensions before (in which case the start\nindex must be greater than 0), and false to inherit from the dimensions\nafter.\n\nFor example, if row index 0 has red background and row index 1\nhas a green background, then inserting 2 rows at index 1 can inherit\neither the green or red background. If `inheritFromBefore` is true,\nthe two new rows will be red (because the row before the insertion point\nwas red), whereas if `inheritFromBefore` is false, the two new rows will\nbe green (because the row after the insertion point was green)."
+ }
+ },
+ "id": "InsertDimensionRequest"
+ },
+ "UpdateSpreadsheetPropertiesRequest": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "The properties to update.",
+ "$ref": "SpreadsheetProperties"
+ },
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated. At least one field must be specified.\nThe root 'properties' is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ }
+ },
+ "id": "UpdateSpreadsheetPropertiesRequest",
+ "description": "Updates properties of a spreadsheet."
+ },
+ "ProtectedRange": {
+ "id": "ProtectedRange",
+ "description": "A protected range.",
+ "type": "object",
+ "properties": {
+ "unprotectedRanges": {
+ "description": "The list of unprotected ranges within a protected sheet.\nUnprotected ranges are only supported on protected sheets.",
+ "items": {
+ "$ref": "GridRange"
+ },
+ "type": "array"
+ },
+ "namedRangeId": {
+ "description": "The named range this protected range is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.",
+ "type": "string"
+ },
+ "protectedRangeId": {
+ "format": "int32",
+ "description": "The ID of the protected range.\nThis field is read-only.",
+ "type": "integer"
+ },
+ "warningOnly": {
+ "type": "boolean",
+ "description": "True if this protected range will show a warning when editing.\nWarning-based protection means that every user can edit data in the\nprotected range, except editing will prompt a warning asking the user\nto confirm the edit.\n\nWhen writing: if this field is true, then editors is ignored.\nAdditionally, if this field is changed from true to false and the\n`editors` field is not set (nor included in the field mask), then\nthe editors will be set to all the editors in the document."
+ },
+ "requestingUserCanEdit": {
+ "description": "True if the user who requested this protected range can edit the\nprotected area.\nThis field is read-only.",
+ "type": "boolean"
+ },
+ "range": {
+ "description": "The range that is being protected.\nThe range may be fully unbounded, in which case this is considered\na protected sheet.\n\nWhen writing, only one of range or named_range_id\nmay be set.",
+ "$ref": "GridRange"
+ },
+ "editors": {
+ "description": "The users and groups with edit access to the protected range.\nThis field is only visible to users with edit access to the protected\nrange and the document.\nEditors are not supported with warning_only protection.",
+ "$ref": "Editors"
+ },
+ "description": {
+ "type": "string",
+ "description": "The description of this protected range."
+ }
+ }
+ },
+ "BatchUpdateValuesRequest": {
+ "description": "The request for updating more than one range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "includeValuesInResponse": {
+ "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values. The `updatedData` field within\neach of the BatchUpdateValuesResponse.responses will contain\nthe updated values. If the range to write was larger than than the range\nactually written, the response will include all values in the requested\nrange (excluding trailing empty rows and columns).",
+ "type": "boolean"
+ },
+ "data": {
+ "description": "The new values to apply to the spreadsheet.",
+ "items": {
+ "$ref": "ValueRange"
+ },
+ "type": "array"
+ },
+ "valueInputOption": {
+ "description": "How the input data should be interpreted.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default input value. This value must not be used.",
+ "The values the user has entered will not be parsed and will be stored\nas-is.",
+ "The values will be parsed as if the user typed them into the UI.\nNumbers will stay as numbers, but strings may be converted to numbers,\ndates, etc. following the same rules that are applied when entering\ntext into a cell via the Google Sheets UI."
+ ],
+ "enum": [
+ "INPUT_VALUE_OPTION_UNSPECIFIED",
+ "RAW",
+ "USER_ENTERED"
+ ]
+ },
+ "responseDateTimeRenderOption": {
+ "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is\nDateTimeRenderOption.SERIAL_NUMBER.",
+ "type": "string",
+ "enumDescriptions": [
+ "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.",
+ "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)."
+ ],
+ "enum": [
+ "SERIAL_NUMBER",
+ "FORMATTED_STRING"
+ ]
+ },
+ "responseValueRenderOption": {
+ "type": "string",
+ "enumDescriptions": [
+ "Values will be calculated & formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.",
+ "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.",
+ "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`."
+ ],
+ "enum": [
+ "FORMATTED_VALUE",
+ "UNFORMATTED_VALUE",
+ "FORMULA"
+ ],
+ "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE."
+ }
+ },
+ "id": "BatchUpdateValuesRequest"
+ },
+ "DimensionProperties": {
+ "description": "Properties about a dimension.",
+ "type": "object",
+ "properties": {
+ "pixelSize": {
+ "format": "int32",
+ "description": "The height (if a row) or width (if a column) of the dimension in pixels.",
+ "type": "integer"
+ },
+ "hiddenByUser": {
+ "description": "True if this dimension is explicitly hidden.",
+ "type": "boolean"
+ },
+ "hiddenByFilter": {
+ "description": "True if this dimension is being filtered.\nThis field is read-only.",
+ "type": "boolean"
+ }
+ },
+ "id": "DimensionProperties"
+ },
+ "DimensionRange": {
+ "type": "object",
+ "properties": {
+ "endIndex": {
+ "format": "int32",
+ "description": "The end (exclusive) of the span, or not set if unbounded.",
+ "type": "integer"
+ },
+ "startIndex": {
+ "format": "int32",
+ "description": "The start (inclusive) of the span, or not set if unbounded.",
+ "type": "integer"
+ },
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet this span is on.",
+ "type": "integer"
+ },
+ "dimension": {
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "Operates on the rows of a sheet.",
+ "Operates on the columns of a sheet."
+ ],
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ],
+ "description": "The dimension of the span.",
+ "type": "string"
+ }
+ },
+ "id": "DimensionRange",
+ "description": "A range along a single dimension on a sheet.\nAll indexes are zero-based.\nIndexes are half open: the start index is inclusive\nand the end index is exclusive.\nMissing indexes indicate the range is unbounded on that side."
+ },
+ "NamedRange": {
+ "description": "A named range.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the named range.",
+ "type": "string"
+ },
+ "namedRangeId": {
+ "description": "The ID of the named range.",
+ "type": "string"
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range this represents."
+ }
+ },
+ "id": "NamedRange"
+ },
+ "CutPasteRequest": {
+ "id": "CutPasteRequest",
+ "description": "Moves data from the source to the destination.",
+ "type": "object",
+ "properties": {
+ "pasteType": {
+ "type": "string",
+ "enumDescriptions": [
+ "Paste values, formulas, formats, and merges.",
+ "Paste the values ONLY without formats, formulas, or merges.",
+ "Paste the format and data validation only.",
+ "Like PASTE_NORMAL but without borders.",
+ "Paste the formulas only.",
+ "Paste the data validation only.",
+ "Paste the conditional formatting rules only."
+ ],
+ "enum": [
+ "PASTE_NORMAL",
+ "PASTE_VALUES",
+ "PASTE_FORMAT",
+ "PASTE_NO_BORDERS",
+ "PASTE_FORMULA",
+ "PASTE_DATA_VALIDATION",
+ "PASTE_CONDITIONAL_FORMATTING"
+ ],
+ "description": "What kind of data to paste. All the source data will be cut, regardless\nof what is pasted."
+ },
+ "source": {
+ "$ref": "GridRange",
+ "description": "The source data to cut."
+ },
+ "destination": {
+ "description": "The top-left coordinate where the data should be pasted.",
+ "$ref": "GridCoordinate"
+ }
+ }
+ },
+ "BasicChartSeries": {
+ "description": "A single series of data in a chart.\nFor example, if charting stock prices over time, multiple series may exist,\none for the \"Open Price\", \"High Price\", \"Low Price\" and \"Close Price\".",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of this series. Valid only if the\nchartType is\nCOMBO.\nDifferent types will change the way the series is visualized.\nOnly LINE, AREA,\nand COLUMN are supported.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.",
+ "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.",
+ "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.",
+ "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.",
+ "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.",
+ "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.",
+ "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e."
+ ],
+ "enum": [
+ "BASIC_CHART_TYPE_UNSPECIFIED",
+ "BAR",
+ "LINE",
+ "AREA",
+ "COLUMN",
+ "SCATTER",
+ "COMBO",
+ "STEPPED_AREA"
+ ]
+ },
+ "series": {
+ "$ref": "ChartData",
+ "description": "The data being visualized in this chart series."
+ },
+ "targetAxis": {
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.",
+ "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.",
+ "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis."
+ ],
+ "enum": [
+ "BASIC_CHART_AXIS_POSITION_UNSPECIFIED",
+ "BOTTOM_AXIS",
+ "LEFT_AXIS",
+ "RIGHT_AXIS"
+ ],
+ "description": "The minor axis that will specify the range of values for this series.\nFor example, if charting stocks over time, the \"Volume\" series\nmay want to be pinned to the right with the prices pinned to the left,\nbecause the scale of trading volume is different than the scale of\nprices.\nIt is an error to specify an axis that isn't a valid minor axis\nfor the chart's type.",
+ "type": "string"
+ }
+ },
+ "id": "BasicChartSeries"
+ },
+ "Borders": {
+ "id": "Borders",
+ "description": "The borders of the cell.",
+ "type": "object",
+ "properties": {
+ "bottom": {
+ "$ref": "Border",
+ "description": "The bottom border of the cell."
+ },
+ "top": {
+ "$ref": "Border",
+ "description": "The top border of the cell."
+ },
+ "left": {
+ "description": "The left border of the cell.",
+ "$ref": "Border"
+ },
+ "right": {
+ "$ref": "Border",
+ "description": "The right border of the cell."
+ }
+ }
+ },
+ "AutoResizeDimensionsRequest": {
+ "properties": {
+ "dimensions": {
+ "$ref": "DimensionRange",
+ "description": "The dimensions to automatically resize."
+ }
+ },
+ "id": "AutoResizeDimensionsRequest",
+ "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.",
+ "type": "object"
+ },
+ "UpdateBordersRequest": {
+ "description": "Updates the borders of a range.\nIf a field is not set in the request, that means the border remains as-is.\nFor example, with two subsequent UpdateBordersRequest:\n\n 1. range: A1:A5 `{ top: RED, bottom: WHITE }`\n 2. range: A1:A5 `{ left: BLUE }`\n\nThat would result in A1:A5 having a borders of\n`{ top: RED, bottom: WHITE, left: BLUE }`.\nIf you want to clear a border, explicitly set the style to\nNONE.",
+ "type": "object",
+ "properties": {
+ "bottom": {
+ "$ref": "Border",
+ "description": "The border to put at the bottom of the range."
+ },
+ "innerVertical": {
+ "$ref": "Border",
+ "description": "The vertical border to put within the range."
+ },
+ "right": {
+ "description": "The border to put at the right of the range.",
+ "$ref": "Border"
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range whose borders should be updated."
+ },
+ "innerHorizontal": {
+ "$ref": "Border",
+ "description": "The horizontal border to put within the range."
+ },
+ "top": {
+ "$ref": "Border",
+ "description": "The border to put at the top of the range."
+ },
+ "left": {
+ "description": "The border to put at the left of the range.",
+ "$ref": "Border"
+ }
+ },
+ "id": "UpdateBordersRequest"
+ },
+ "CellFormat": {
+ "description": "The format of a cell.",
+ "type": "object",
+ "properties": {
+ "textRotation": {
+ "$ref": "TextRotation",
+ "description": "The rotation applied to text in a cell"
+ },
+ "wrapStrategy": {
+ "enum": [
+ "WRAP_STRATEGY_UNSPECIFIED",
+ "OVERFLOW_CELL",
+ "LEGACY_WRAP",
+ "CLIP",
+ "WRAP"
+ ],
+ "description": "The wrap strategy for the value in the cell.",
+ "type": "string",
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "Lines that are longer than the cell width will be written in the next\ncell over, so long as that cell is empty. If the next cell over is\nnon-empty, this behaves the same as CLIP. The text will never wrap\nto the next line unless the user manually inserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline that is very long. \u003c- Text continues into next cell\n | Next newline. |",
+ "This wrap strategy represents the old Google Sheets wrap strategy where\nwords that are longer than a line are clipped rather than broken. This\nstrategy is not supported on all platforms and is being phased out.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is clipped.\n | word. |",
+ "Lines that are longer than the cell width will be clipped.\nThe text will never wrap to the next line unless the user manually\ninserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline t| \u003c- Text is clipped\n | Next newline. |",
+ "Words that are longer than a line are wrapped at the character level\nrather than clipped.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is broken.\n | ong word. |"
+ ]
+ },
+ "numberFormat": {
+ "$ref": "NumberFormat",
+ "description": "A format describing how number values should be represented to the user."
+ },
+ "hyperlinkDisplayType": {
+ "description": "How a hyperlink, if it exists, should be displayed in the cell.",
+ "type": "string",
+ "enumDescriptions": [
+ "The default value: the hyperlink is rendered. Do not use this.",
+ "A hyperlink should be explicitly rendered.",
+ "A hyperlink should not be rendered."
+ ],
+ "enum": [
+ "HYPERLINK_DISPLAY_TYPE_UNSPECIFIED",
+ "LINKED",
+ "PLAIN_TEXT"
+ ]
+ },
+ "horizontalAlignment": {
+ "enum": [
+ "HORIZONTAL_ALIGN_UNSPECIFIED",
+ "LEFT",
+ "CENTER",
+ "RIGHT"
+ ],
+ "description": "The horizontal alignment of the value in the cell.",
+ "type": "string",
+ "enumDescriptions": [
+ "The horizontal alignment is not specified. Do not use this.",
+ "The text is explicitly aligned to the left of the cell.",
+ "The text is explicitly aligned to the center of the cell.",
+ "The text is explicitly aligned to the right of the cell."
+ ]
+ },
+ "textFormat": {
+ "description": "The format of the text in the cell (unless overridden by a format run).",
+ "$ref": "TextFormat"
+ },
+ "backgroundColor": {
+ "description": "The background color of the cell.",
+ "$ref": "Color"
+ },
+ "verticalAlignment": {
+ "type": "string",
+ "enumDescriptions": [
+ "The vertical alignment is not specified. Do not use this.",
+ "The text is explicitly aligned to the top of the cell.",
+ "The text is explicitly aligned to the middle of the cell.",
+ "The text is explicitly aligned to the bottom of the cell."
+ ],
+ "enum": [
+ "VERTICAL_ALIGN_UNSPECIFIED",
+ "TOP",
+ "MIDDLE",
+ "BOTTOM"
+ ],
+ "description": "The vertical alignment of the value in the cell."
+ },
+ "padding": {
+ "$ref": "Padding",
+ "description": "The padding of the cell."
+ },
+ "textDirection": {
+ "enumDescriptions": [
+ "The text direction is not specified. Do not use this.",
+ "The text direction of left-to-right was set by the user.",
+ "The text direction of right-to-left was set by the user."
+ ],
+ "enum": [
+ "TEXT_DIRECTION_UNSPECIFIED",
+ "LEFT_TO_RIGHT",
+ "RIGHT_TO_LEFT"
+ ],
+ "description": "The direction of the text in the cell.",
+ "type": "string"
+ },
+ "borders": {
+ "$ref": "Borders",
+ "description": "The borders of the cell."
+ }
+ },
+ "id": "CellFormat"
+ },
+ "ClearValuesResponse": {
+ "type": "object",
+ "properties": {
+ "spreadsheetId": {
+ "type": "string",
+ "description": "The spreadsheet the updates were applied to."
+ },
+ "clearedRange": {
+ "description": "The range (in A1 notation) that was cleared.\n(If the request was for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual range\n that was cleared, bounded to the sheet's limits.)",
+ "type": "string"
+ }
+ },
+ "id": "ClearValuesResponse",
+ "description": "The response when clearing a range of values in a spreadsheet."
+ },
+ "DeleteConditionalFormatRuleRequest": {
+ "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.",
+ "type": "object",
+ "properties": {
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet the rule is being deleted from.",
+ "type": "integer"
+ },
+ "index": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The zero-based index of the rule to be deleted."
+ }
+ },
+ "id": "DeleteConditionalFormatRuleRequest"
+ },
+ "DeleteNamedRangeRequest": {
+ "description": "Removes the named range with the given ID from the spreadsheet.",
+ "type": "object",
+ "properties": {
+ "namedRangeId": {
+ "description": "The ID of the named range to delete.",
+ "type": "string"
+ }
+ },
+ "id": "DeleteNamedRangeRequest"
+ },
+ "AddBandingResponse": {
+ "id": "AddBandingResponse",
+ "description": "The result of adding a banded range.",
+ "type": "object",
+ "properties": {
+ "bandedRange": {
+ "description": "The banded range that was added.",
+ "$ref": "BandedRange"
+ }
+ }
+ },
+ "ChartData": {
+ "id": "ChartData",
+ "description": "The data included in a domain or series.",
+ "type": "object",
+ "properties": {
+ "sourceRange": {
+ "$ref": "ChartSourceRange",
+ "description": "The source ranges of the data."
+ }
+ }
+ },
+ "BatchGetValuesResponse": {
+ "description": "The response when retrieving more than one range of values in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "valueRanges": {
+ "description": "The requested values. The order of the ValueRanges is the same as the\norder of the requested ranges.",
+ "items": {
+ "$ref": "ValueRange"
+ },
+ "type": "array"
+ },
+ "spreadsheetId": {
+ "description": "The ID of the spreadsheet the data was retrieved from.",
+ "type": "string"
+ }
+ },
+ "id": "BatchGetValuesResponse"
+ },
+ "UpdateBandingRequest": {
+ "description": "Updates properties of the supplied banded range.",
+ "type": "object",
+ "properties": {
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated. At least one field must be specified.\nThe root `bandedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ },
+ "bandedRange": {
+ "$ref": "BandedRange",
+ "description": "The banded range to update with the new properties."
+ }
+ },
+ "id": "UpdateBandingRequest"
+ },
+ "Color": {
+ "id": "Color",
+ "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...",
+ "type": "object",
+ "properties": {
+ "red": {
+ "format": "float",
+ "description": "The amount of red in the color as a value in the interval [0, 1].",
+ "type": "number"
+ },
+ "alpha": {
+ "format": "float",
+ "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).",
+ "type": "number"
+ },
+ "blue": {
+ "format": "float",
+ "description": "The amount of blue in the color as a value in the interval [0, 1].",
+ "type": "number"
+ },
+ "green": {
+ "format": "float",
+ "description": "The amount of green in the color as a value in the interval [0, 1].",
+ "type": "number"
+ }
+ }
+ },
+ "PivotGroup": {
+ "description": "A single grouping (either row or column) in a pivot table.",
+ "type": "object",
+ "properties": {
+ "sortOrder": {
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use this.",
+ "Sort ascending.",
+ "Sort descending."
+ ],
+ "enum": [
+ "SORT_ORDER_UNSPECIFIED",
+ "ASCENDING",
+ "DESCENDING"
+ ],
+ "description": "The order the values in this group should be sorted."
+ },
+ "valueBucket": {
+ "description": "The bucket of the opposite pivot group to sort by.\nIf not specified, sorting is alphabetical by this group's values.",
+ "$ref": "PivotGroupSortValueBucket"
+ },
+ "valueMetadata": {
+ "description": "Metadata about values in the grouping.",
+ "items": {
+ "$ref": "PivotGroupValueMetadata"
+ },
+ "type": "array"
+ },
+ "showTotals": {
+ "description": "True if the pivot table should include the totals for this grouping.",
+ "type": "boolean"
+ },
+ "sourceColumnOffset": {
+ "format": "int32",
+ "description": "The column offset of the source range that this grouping is based on.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this group refers to column `C`, whereas the offset `1` would refer\nto column `D`.",
+ "type": "integer"
+ }
+ },
+ "id": "PivotGroup"
+ },
+ "PivotTable": {
+ "description": "A pivot table.",
+ "type": "object",
+ "properties": {
+ "columns": {
+ "description": "Each column grouping in the pivot table.",
+ "items": {
+ "$ref": "PivotGroup"
+ },
+ "type": "array"
+ },
+ "values": {
+ "description": "A list of values to include in the pivot table.",
+ "items": {
+ "$ref": "PivotValue"
+ },
+ "type": "array"
+ },
+ "source": {
+ "$ref": "GridRange",
+ "description": "The range the pivot table is reading data from."
+ },
+ "criteria": {
+ "description": "An optional mapping of filters per source column offset.\n\nThe filters will be applied before aggregating data into the pivot table.\nThe map's key is the column offset of the source range that you want to\nfilter, and the value is the criteria for that column.\n\nFor example, if the source was `C10:E15`, a key of `0` will have the filter\nfor column `C`, whereas the key `1` is for column `D`.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "PivotFilterCriteria"
+ }
+ },
+ "rows": {
+ "items": {
+ "$ref": "PivotGroup"
+ },
+ "type": "array",
+ "description": "Each row grouping in the pivot table."
+ },
+ "valueLayout": {
+ "enumDescriptions": [
+ "Values are laid out horizontally (as columns).",
+ "Values are laid out vertically (as rows)."
+ ],
+ "enum": [
+ "HORIZONTAL",
+ "VERTICAL"
+ ],
+ "description": "Whether values should be listed horizontally (as columns)\nor vertically (as rows).",
+ "type": "string"
+ }
+ },
+ "id": "PivotTable"
+ },
+ "ChartSourceRange": {
+ "description": "Source ranges for a chart.",
+ "type": "object",
+ "properties": {
+ "sources": {
+ "description": "The ranges of data for a series or domain.\nExactly one dimension must have a length of 1,\nand all sources in the list must have the same dimension\nwith length 1.\nThe domain (if it exists) & all series must have the same number\nof source ranges. If using more than one source range, then the source\nrange at a given offset must be contiguous across the domain and series.\n\nFor example, these are valid configurations:\n\n domain sources: A1:A5\n series1 sources: B1:B5\n series2 sources: D6:D10\n\n domain sources: A1:A5, C10:C12\n series1 sources: B1:B5, D10:D12\n series2 sources: C1:C5, E10:E12",
+ "items": {
+ "$ref": "GridRange"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ChartSourceRange"
+ },
+ "AppendCellsRequest": {
+ "properties": {
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields of CellData that should be updated.\nAt least one field must be specified.\nThe root is the CellData; 'row.values.' should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ },
+ "rows": {
+ "description": "The data to append.",
+ "items": {
+ "$ref": "RowData"
+ },
+ "type": "array"
+ },
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet ID to append the data to.",
+ "type": "integer"
+ }
+ },
+ "id": "AppendCellsRequest",
+ "description": "Adds new cells after the last row with data in a sheet,\ninserting new rows into the sheet if necessary.",
+ "type": "object"
+ },
+ "ValueRange": {
+ "description": "Data within a range of the spreadsheet.",
+ "type": "object",
+ "properties": {
+ "range": {
+ "description": "The range the values cover, in A1 notation.\nFor output, this range indicates the entire requested range,\neven though the values will exclude trailing rows and columns.\nWhen appending values, this field represents the range to search for a\ntable, after which values will be appended.",
+ "type": "string"
+ },
+ "values": {
+ "description": "The data that was read or to be written. This is an array of arrays,\nthe outer array representing all the data and each inner array\nrepresenting a major dimension. Each item in the inner array\ncorresponds with one cell.\n\nFor output, empty trailing rows and columns will not be included.\n\nFor input, supported value types are: bool, string, and double.\nNull values will be skipped.\nTo set a cell to an empty value, set the string value to an empty string.",
+ "items": {
+ "items": {
+ "type": "any"
+ },
+ "type": "array"
+ },
+ "type": "array"
+ },
+ "majorDimension": {
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "Operates on the rows of a sheet.",
+ "Operates on the columns of a sheet."
+ ],
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ],
+ "description": "The major dimension of the values.\n\nFor output, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.\n\nFor input, with `range=A1:B2,majorDimension=ROWS` then `[[1,2],[3,4]]`\nwill set `A1=1,B1=2,A2=3,B2=4`. With `range=A1:B2,majorDimension=COLUMNS`\nthen `[[1,2],[3,4]]` will set `A1=1,B1=3,A2=2,B2=4`.\n\nWhen writing, if this field is not set, it defaults to ROWS.",
+ "type": "string"
+ }
+ },
+ "id": "ValueRange"
+ },
+ "AddBandingRequest": {
+ "id": "AddBandingRequest",
+ "description": "Adds a new banded range to the spreadsheet.",
+ "type": "object",
+ "properties": {
+ "bandedRange": {
+ "description": "The banded range to add. The bandedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)",
+ "$ref": "BandedRange"
+ }
+ }
+ },
+ "Response": {
+ "id": "Response",
+ "description": "A single response from an update.",
+ "type": "object",
+ "properties": {
+ "addFilterView": {
+ "description": "A reply from adding a filter view.",
+ "$ref": "AddFilterViewResponse"
+ },
+ "addBanding": {
+ "$ref": "AddBandingResponse",
+ "description": "A reply from adding a banded range."
+ },
+ "addProtectedRange": {
+ "description": "A reply from adding a protected range.",
+ "$ref": "AddProtectedRangeResponse"
+ },
+ "duplicateSheet": {
+ "$ref": "DuplicateSheetResponse",
+ "description": "A reply from duplicating a sheet."
+ },
+ "updateEmbeddedObjectPosition": {
+ "$ref": "UpdateEmbeddedObjectPositionResponse",
+ "description": "A reply from updating an embedded object's position."
+ },
+ "deleteConditionalFormatRule": {
+ "description": "A reply from deleting a conditional format rule.",
+ "$ref": "DeleteConditionalFormatRuleResponse"
+ },
+ "duplicateFilterView": {
+ "description": "A reply from duplicating a filter view.",
+ "$ref": "DuplicateFilterViewResponse"
+ },
+ "addChart": {
+ "$ref": "AddChartResponse",
+ "description": "A reply from adding a chart."
+ },
+ "findReplace": {
+ "$ref": "FindReplaceResponse",
+ "description": "A reply from doing a find/replace."
+ },
+ "addSheet": {
+ "$ref": "AddSheetResponse",
+ "description": "A reply from adding a sheet."
+ },
+ "updateConditionalFormatRule": {
+ "$ref": "UpdateConditionalFormatRuleResponse",
+ "description": "A reply from updating a conditional format rule."
+ },
+ "addNamedRange": {
+ "description": "A reply from adding a named range.",
+ "$ref": "AddNamedRangeResponse"
+ }
+ }
+ },
+ "InsertRangeRequest": {
+ "description": "Inserts cells into a range, shifting the existing cells over or down.",
+ "type": "object",
+ "properties": {
+ "shiftDimension": {
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "Operates on the rows of a sheet.",
+ "Operates on the columns of a sheet."
+ ],
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ],
+ "description": "The dimension which will be shifted when inserting cells.\nIf ROWS, existing cells will be shifted down.\nIf COLUMNS, existing cells will be shifted right.",
+ "type": "string"
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range to insert new cells into."
+ }
+ },
+ "id": "InsertRangeRequest"
+ },
+ "TextFormatRun": {
+ "description": "A run of a text format. The format of this run continues until the start\nindex of the next run.\nWhen updating, all fields must be set.",
+ "type": "object",
+ "properties": {
+ "startIndex": {
+ "format": "int32",
+ "description": "The character index where this run starts.",
+ "type": "integer"
+ },
+ "format": {
+ "$ref": "TextFormat",
+ "description": "The format of this run. Absent values inherit the cell's format."
+ }
+ },
+ "id": "TextFormatRun"
+ },
+ "EmbeddedChart": {
+ "description": "A chart embedded in a sheet.",
+ "type": "object",
+ "properties": {
+ "position": {
+ "description": "The position of the chart.",
+ "$ref": "EmbeddedObjectPosition"
+ },
+ "spec": {
+ "$ref": "ChartSpec",
+ "description": "The specification of the chart."
+ },
+ "chartId": {
+ "format": "int32",
+ "description": "The ID of the chart.",
+ "type": "integer"
+ }
+ },
+ "id": "EmbeddedChart"
+ },
+ "AddNamedRangeResponse": {
+ "description": "The result of adding a named range.",
+ "type": "object",
+ "properties": {
+ "namedRange": {
+ "$ref": "NamedRange",
+ "description": "The named range to add."
+ }
+ },
+ "id": "AddNamedRangeResponse"
+ },
+ "RowData": {
+ "description": "Data about each cell in a row.",
+ "type": "object",
+ "properties": {
+ "values": {
+ "items": {
+ "$ref": "CellData"
+ },
+ "type": "array",
+ "description": "The values in the row, one per column."
+ }
+ },
+ "id": "RowData"
+ },
+ "GridData": {
+ "properties": {
+ "startRow": {
+ "format": "int32",
+ "description": "The first row this GridData refers to, zero-based.",
+ "type": "integer"
+ },
+ "columnMetadata": {
+ "description": "Metadata about the requested columns in the grid, starting with the column\nin start_column.",
+ "items": {
+ "$ref": "DimensionProperties"
+ },
+ "type": "array"
+ },
+ "startColumn": {
+ "format": "int32",
+ "description": "The first column this GridData refers to, zero-based.",
+ "type": "integer"
+ },
+ "rowMetadata": {
+ "description": "Metadata about the requested rows in the grid, starting with the row\nin start_row.",
+ "items": {
+ "$ref": "DimensionProperties"
+ },
+ "type": "array"
+ },
+ "rowData": {
+ "description": "The data in the grid, one entry per row,\nstarting with the row in startRow.\nThe values in RowData will correspond to columns starting\nat start_column.",
+ "items": {
+ "$ref": "RowData"
+ },
+ "type": "array"
+ }
+ },
+ "id": "GridData",
+ "description": "Data in the grid, as well as metadata about the dimensions.",
+ "type": "object"
+ },
+ "Border": {
+ "description": "A border along a cell.",
+ "type": "object",
+ "properties": {
+ "color": {
+ "$ref": "Color",
+ "description": "The color of the border."
+ },
+ "width": {
+ "format": "int32",
+ "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.",
+ "type": "integer"
+ },
+ "style": {
+ "type": "string",
+ "enumDescriptions": [
+ "The style is not specified. Do not use this.",
+ "The border is dotted.",
+ "The border is dashed.",
+ "The border is a thin solid line.",
+ "The border is a medium solid line.",
+ "The border is a thick solid line.",
+ "No border.\nUsed only when updating a border in order to erase it.",
+ "The border is two solid lines."
+ ],
+ "enum": [
+ "STYLE_UNSPECIFIED",
+ "DOTTED",
+ "DASHED",
+ "SOLID",
+ "SOLID_MEDIUM",
+ "SOLID_THICK",
+ "NONE",
+ "DOUBLE"
+ ],
+ "description": "The style of the border."
+ }
+ },
+ "id": "Border"
+ },
+ "FindReplaceRequest": {
+ "description": "Finds and replaces data in cells over a range, sheet, or all sheets.",
+ "type": "object",
+ "properties": {
+ "searchByRegex": {
+ "description": "True if the find value is a regex.\nThe regular expression and replacement should follow Java regex rules\nat https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html.\nThe replacement string is allowed to refer to capturing groups.\nFor example, if one cell has the contents `\"Google Sheets\"` and another\nhas `\"Google Docs\"`, then searching for `\"o.* (.*)\"` with a replacement of\n`\"$1 Rocks\"` would change the contents of the cells to\n`\"GSheets Rocks\"` and `\"GDocs Rocks\"` respectively.",
+ "type": "boolean"
+ },
+ "find": {
+ "description": "The value to search.",
+ "type": "string"
+ },
+ "replacement": {
+ "description": "The value to use as the replacement.",
+ "type": "string"
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range to find/replace over."
+ },
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet to find/replace over.",
+ "type": "integer"
+ },
+ "matchCase": {
+ "description": "True if the search is case sensitive.",
+ "type": "boolean"
+ },
+ "allSheets": {
+ "description": "True to find/replace over all sheets.",
+ "type": "boolean"
+ },
+ "includeFormulas": {
+ "description": "True if the search should include cells with formulas.\nFalse to skip cells with formulas.",
+ "type": "boolean"
+ },
+ "matchEntireCell": {
+ "description": "True if the find value should match the entire cell.",
+ "type": "boolean"
+ }
+ },
+ "id": "FindReplaceRequest"
+ },
+ "UpdateNamedRangeRequest": {
+ "id": "UpdateNamedRangeRequest",
+ "description": "Updates properties of the named range with the specified\nnamedRangeId.",
+ "type": "object",
+ "properties": {
+ "namedRange": {
+ "$ref": "NamedRange",
+ "description": "The named range to update with the new properties."
+ },
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated. At least one field must be specified.\nThe root `namedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ }
+ }
+ },
+ "AddSheetRequest": {
+ "description": "Adds a new sheet.\nWhen a sheet is added at a given index,\nall subsequent sheets' indexes are incremented.\nTo add an object sheet, use AddChartRequest instead and specify\nEmbeddedObjectPosition.sheetId or\nEmbeddedObjectPosition.newSheet.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "SheetProperties",
+ "description": "The properties the new sheet should have.\nAll properties are optional.\nThe sheetId field is optional; if one is not\nset, an id will be randomly generated. (It is an error to specify the ID\nof a sheet that already exists.)"
+ }
+ },
+ "id": "AddSheetRequest"
+ },
+ "UpdateCellsRequest": {
+ "description": "Updates all cells in a range with new data.",
+ "type": "object",
+ "properties": {
+ "start": {
+ "$ref": "GridCoordinate",
+ "description": "The coordinate to start writing data at.\nAny number of rows and columns (including a different number of\ncolumns per row) may be written."
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range to write data to.\n\nIf the data in rows does not cover the entire requested range,\nthe fields matching those set in fields will be cleared."
+ },
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields of CellData that should be updated.\nAt least one field must be specified.\nThe root is the CellData; 'row.values.' should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ },
+ "rows": {
+ "description": "The data to write.",
+ "items": {
+ "$ref": "RowData"
+ },
+ "type": "array"
+ }
+ },
+ "id": "UpdateCellsRequest"
+ },
+ "DeleteConditionalFormatRuleResponse": {
+ "description": "The result of deleting a conditional format rule.",
+ "type": "object",
+ "properties": {
+ "rule": {
+ "description": "The rule that was deleted.",
+ "$ref": "ConditionalFormatRule"
+ }
+ },
+ "id": "DeleteConditionalFormatRuleResponse"
+ },
+ "RandomizeRangeRequest": {
+ "description": "Randomizes the order of the rows in a range.",
+ "type": "object",
+ "properties": {
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range to randomize."
+ }
+ },
+ "id": "RandomizeRangeRequest"
+ },
+ "DeleteRangeRequest": {
+ "type": "object",
+ "properties": {
+ "shiftDimension": {
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "Operates on the rows of a sheet.",
+ "Operates on the columns of a sheet."
+ ],
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ],
+ "description": "The dimension from which deleted cells will be replaced with.\nIf ROWS, existing cells will be shifted upward to\nreplace the deleted cells. If COLUMNS, existing cells\nwill be shifted left to replace the deleted cells.",
+ "type": "string"
+ },
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range of cells to delete."
+ }
+ },
+ "id": "DeleteRangeRequest",
+ "description": "Deletes a range of cells, shifting other cells into the deleted area."
+ },
+ "GridCoordinate": {
+ "description": "A coordinate in a sheet.\nAll indexes are zero-based.",
+ "type": "object",
+ "properties": {
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet this coordinate is on.",
+ "type": "integer"
+ },
+ "columnIndex": {
+ "format": "int32",
+ "description": "The column index of the coordinate.",
+ "type": "integer"
+ },
+ "rowIndex": {
+ "format": "int32",
+ "description": "The row index of the coordinate.",
+ "type": "integer"
+ }
+ },
+ "id": "GridCoordinate"
+ },
+ "UpdateSheetPropertiesRequest": {
+ "type": "object",
+ "properties": {
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "SheetProperties",
+ "description": "The properties to update."
+ }
+ },
+ "id": "UpdateSheetPropertiesRequest",
+ "description": "Updates properties of the sheet with the specified\nsheetId."
+ },
+ "UnmergeCellsRequest": {
+ "description": "Unmerges cells in the given range.",
+ "type": "object",
+ "properties": {
+ "range": {
+ "$ref": "GridRange",
+ "description": "The range within which all cells should be unmerged.\nIf the range spans multiple merges, all will be unmerged.\nThe range must not partially span any merge."
+ }
+ },
+ "id": "UnmergeCellsRequest"
+ },
+ "GridProperties": {
+ "description": "Properties of a grid.",
+ "type": "object",
+ "properties": {
+ "rowCount": {
+ "format": "int32",
+ "description": "The number of rows in the grid.",
+ "type": "integer"
+ },
+ "hideGridlines": {
+ "description": "True if the grid isn't showing gridlines in the UI.",
+ "type": "boolean"
+ },
+ "frozenRowCount": {
+ "format": "int32",
+ "description": "The number of rows that are frozen in the grid.",
+ "type": "integer"
+ },
+ "frozenColumnCount": {
+ "format": "int32",
+ "description": "The number of columns that are frozen in the grid.",
+ "type": "integer"
+ },
+ "columnCount": {
+ "format": "int32",
+ "description": "The number of columns in the grid.",
+ "type": "integer"
+ }
+ },
+ "id": "GridProperties"
+ },
+ "Sheet": {
+ "description": "A sheet in a spreadsheet.",
+ "type": "object",
+ "properties": {
+ "conditionalFormats": {
+ "description": "The conditional format rules in this sheet.",
+ "items": {
+ "$ref": "ConditionalFormatRule"
+ },
+ "type": "array"
+ },
+ "protectedRanges": {
+ "description": "The protected ranges in this sheet.",
+ "items": {
+ "$ref": "ProtectedRange"
+ },
+ "type": "array"
+ },
+ "basicFilter": {
+ "$ref": "BasicFilter",
+ "description": "The filter on this sheet, if any."
+ },
+ "merges": {
+ "description": "The ranges that are merged together.",
+ "items": {
+ "$ref": "GridRange"
+ },
+ "type": "array"
+ },
+ "data": {
+ "description": "Data in the grid, if this is a grid sheet.\nThe number of GridData objects returned is dependent on the number of\nranges requested on this sheet. For example, if this is representing\n`Sheet1`, and the spreadsheet was requested with ranges\n`Sheet1!A1:C10` and `Sheet1!D15:E20`, then the first GridData will have a\nstartRow/startColumn of `0`,\nwhile the second one will have `startRow 14` (zero-based row 15),\nand `startColumn 3` (zero-based column D).",
+ "items": {
+ "$ref": "GridData"
+ },
+ "type": "array"
+ },
+ "bandedRanges": {
+ "items": {
+ "$ref": "BandedRange"
+ },
+ "type": "array",
+ "description": "The banded (i.e. alternating colors) ranges on this sheet."
+ },
+ "properties": {
+ "$ref": "SheetProperties",
+ "description": "The properties of the sheet."
+ },
+ "charts": {
+ "items": {
+ "$ref": "EmbeddedChart"
+ },
+ "type": "array",
+ "description": "The specifications of every chart on this sheet."
+ },
+ "filterViews": {
+ "description": "The filter views in this sheet.",
+ "items": {
+ "$ref": "FilterView"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Sheet"
+ },
+ "SortSpec": {
+ "description": "A sort order associated with a specific column or row.",
+ "type": "object",
+ "properties": {
+ "dimensionIndex": {
+ "format": "int32",
+ "description": "The dimension the sort should be applied to.",
+ "type": "integer"
+ },
+ "sortOrder": {
+ "description": "The order data should be sorted.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use this.",
+ "Sort ascending.",
+ "Sort descending."
+ ],
+ "enum": [
+ "SORT_ORDER_UNSPECIFIED",
+ "ASCENDING",
+ "DESCENDING"
+ ]
+ }
+ },
+ "id": "SortSpec"
+ },
+ "UpdateEmbeddedObjectPositionResponse": {
+ "description": "The result of updating an embedded object's position.",
+ "type": "object",
+ "properties": {
+ "position": {
+ "description": "The new position of the embedded object.",
+ "$ref": "EmbeddedObjectPosition"
+ }
+ },
+ "id": "UpdateEmbeddedObjectPositionResponse"
+ },
+ "BooleanRule": {
+ "description": "A rule that may or may not match, depending on the condition.",
+ "type": "object",
+ "properties": {
+ "format": {
+ "$ref": "CellFormat",
+ "description": "The format to apply.\nConditional formatting can only apply a subset of formatting:\nbold, italic,\nstrikethrough,\nforeground color &\nbackground color."
+ },
+ "condition": {
+ "$ref": "BooleanCondition",
+ "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied."
+ }
+ },
+ "id": "BooleanRule"
+ },
+ "FilterCriteria": {
+ "description": "Criteria for showing/hiding rows in a filter or filter view.",
+ "type": "object",
+ "properties": {
+ "condition": {
+ "$ref": "BooleanCondition",
+ "description": "A condition that must be true for values to be shown.\n(This does not override hiddenValues -- if a value is listed there,\n it will still be hidden.)"
+ },
+ "hiddenValues": {
+ "description": "Values that should be hidden.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "FilterCriteria"
+ },
+ "PivotGroupValueMetadata": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The calculated value the metadata corresponds to.\n(Note that formulaValue is not valid,\n because the values will be calculated.)",
+ "$ref": "ExtendedValue"
+ },
+ "collapsed": {
+ "description": "True if the data corresponding to the value is collapsed.",
+ "type": "boolean"
+ }
+ },
+ "id": "PivotGroupValueMetadata",
+ "description": "Metadata about a value in a pivot grouping."
+ },
+ "Editors": {
+ "description": "The editors of a protected range.",
+ "type": "object",
+ "properties": {
+ "users": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "description": "The email addresses of users with edit access to the protected range."
+ },
+ "domainUsersCanEdit": {
+ "type": "boolean",
+ "description": "True if anyone in the document's domain has edit access to the protected\nrange. Domain protection is only supported on documents within a domain."
+ },
+ "groups": {
+ "description": "The email addresses of groups with edit access to the protected range.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Editors"
+ },
+ "UpdateConditionalFormatRuleRequest": {
+ "id": "UpdateConditionalFormatRuleRequest",
+ "description": "Updates a conditional format rule at the given index,\nor moves a conditional format rule to another index.",
+ "type": "object",
+ "properties": {
+ "rule": {
+ "$ref": "ConditionalFormatRule",
+ "description": "The rule that should replace the rule at the given index."
+ },
+ "index": {
+ "format": "int32",
+ "description": "The zero-based index of the rule that should be replaced or moved.",
+ "type": "integer"
+ },
+ "sheetId": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The sheet of the rule to move. Required if new_index is set,\nunused otherwise."
+ },
+ "newIndex": {
+ "format": "int32",
+ "description": "The zero-based new index the rule should end up at.",
+ "type": "integer"
+ }
+ }
+ },
+ "DataValidationRule": {
+ "id": "DataValidationRule",
+ "description": "A data validation rule.",
+ "type": "object",
+ "properties": {
+ "showCustomUi": {
+ "description": "True if the UI should be customized based on the kind of condition.\nIf true, \"List\" conditions will show a dropdown.",
+ "type": "boolean"
+ },
+ "strict": {
+ "description": "True if invalid data should be rejected.",
+ "type": "boolean"
+ },
+ "inputMessage": {
+ "description": "A message to show the user when adding data to the cell.",
+ "type": "string"
+ },
+ "condition": {
+ "$ref": "BooleanCondition",
+ "description": "The condition that data in the cell must match."
+ }
+ }
+ },
+ "BasicChartDomain": {
+ "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.",
+ "type": "object",
+ "properties": {
+ "reversed": {
+ "description": "True to reverse the order of the domain values (horizontal axis).",
+ "type": "boolean"
+ },
+ "domain": {
+ "$ref": "ChartData",
+ "description": "The data of the domain. For example, if charting stock prices over time,\nthis is the data representing the dates."
+ }
+ },
+ "id": "BasicChartDomain"
+ },
+ "PasteDataRequest": {
+ "description": "Inserts data into the spreadsheet starting at the specified coordinate.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "enum": [
+ "PASTE_NORMAL",
+ "PASTE_VALUES",
+ "PASTE_FORMAT",
+ "PASTE_NO_BORDERS",
+ "PASTE_FORMULA",
+ "PASTE_DATA_VALIDATION",
+ "PASTE_CONDITIONAL_FORMATTING"
+ ],
+ "description": "How the data should be pasted.",
+ "type": "string",
+ "enumDescriptions": [
+ "Paste values, formulas, formats, and merges.",
+ "Paste the values ONLY without formats, formulas, or merges.",
+ "Paste the format and data validation only.",
+ "Like PASTE_NORMAL but without borders.",
+ "Paste the formulas only.",
+ "Paste the data validation only.",
+ "Paste the conditional formatting rules only."
+ ]
+ },
+ "html": {
+ "description": "True if the data is HTML.",
+ "type": "boolean"
+ },
+ "coordinate": {
+ "description": "The coordinate at which the data should start being inserted.",
+ "$ref": "GridCoordinate"
+ },
+ "delimiter": {
+ "description": "The delimiter in the data.",
+ "type": "string"
+ },
+ "data": {
+ "description": "The data to insert.",
+ "type": "string"
+ }
+ },
+ "id": "PasteDataRequest"
+ },
+ "AppendDimensionRequest": {
+ "description": "Appends rows or columns to the end of a sheet.",
+ "type": "object",
+ "properties": {
+ "sheetId": {
+ "format": "int32",
+ "description": "The sheet to append rows or columns to.",
+ "type": "integer"
+ },
+ "dimension": {
+ "enum": [
+ "DIMENSION_UNSPECIFIED",
+ "ROWS",
+ "COLUMNS"
+ ],
+ "description": "Whether rows or columns should be appended.",
+ "type": "string",
+ "enumDescriptions": [
+ "The default value, do not use.",
+ "Operates on the rows of a sheet.",
+ "Operates on the columns of a sheet."
+ ]
+ },
+ "length": {
+ "format": "int32",
+ "description": "The number of rows or columns to append.",
+ "type": "integer"
+ }
+ },
+ "id": "AppendDimensionRequest"
+ },
+ "AddNamedRangeRequest": {
+ "properties": {
+ "namedRange": {
+ "$ref": "NamedRange",
+ "description": "The named range to add. The namedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)"
+ }
+ },
+ "id": "AddNamedRangeRequest",
+ "description": "Adds a named range to the spreadsheet.",
+ "type": "object"
+ },
"UpdateEmbeddedObjectPositionRequest": {
"description": "Update an embedded object's position (such as a moving or resizing a\nchart or image).",
"type": "object",
"properties": {
- "newPosition": {
- "$ref": "EmbeddedObjectPosition",
- "description": "An explicit position to move the embedded object to.\nIf newPosition.sheetId is set,\na new sheet with that ID will be created.\nIf newPosition.newSheet is set to true,\na new sheet will be created with an ID that will be chosen for you."
- },
"fields": {
"format": "google-fieldmask",
"description": "The fields of OverlayPosition\nthat should be updated when setting a new position. Used only if\nnewPosition.overlayPosition\nis set, in which case at least one field must\nbe specified. The root `newPosition.overlayPosition` is implied and\nshould not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
@@ -17,11 +3971,17 @@
"format": "int32",
"description": "The ID of the object to moved.",
"type": "integer"
+ },
+ "newPosition": {
+ "$ref": "EmbeddedObjectPosition",
+ "description": "An explicit position to move the embedded object to.\nIf newPosition.sheetId is set,\na new sheet with that ID will be created.\nIf newPosition.newSheet is set to true,\na new sheet will be created with an ID that will be chosen for you."
}
},
"id": "UpdateEmbeddedObjectPositionRequest"
},
"TextRotation": {
+ "description": "The rotation applied to text in a cell.",
+ "type": "object",
"properties": {
"angle": {
"format": "int32",
@@ -33,11 +3993,10 @@
"type": "boolean"
}
},
- "id": "TextRotation",
- "description": "The rotation applied to text in a cell.",
- "type": "object"
+ "id": "TextRotation"
},
"PieChartSpec": {
+ "id": "PieChartSpec",
"description": "A \u003ca href=\"/chart/interactive/docs/gallery/piechart\"\u003epie chart\u003c/a\u003e.",
"type": "object",
"properties": {
@@ -46,20 +4005,11 @@
"$ref": "ChartData"
},
"pieHole": {
+ "type": "number",
"format": "double",
- "description": "The size of the hole in the pie chart.",
- "type": "number"
+ "description": "The size of the hole in the pie chart."
},
"legendPosition": {
- "enumDescriptions": [
- "Default value, do not use.",
- "The legend is rendered on the bottom of the chart.",
- "The legend is rendered on the left of the chart.",
- "The legend is rendered on the right of the chart.",
- "The legend is rendered on the top of the chart.",
- "No legend is rendered.",
- "Each pie slice has a label attached to it."
- ],
"enum": [
"PIE_CHART_LEGEND_POSITION_UNSPECIFIED",
"BOTTOM_LEGEND",
@@ -70,7 +4020,16 @@
"LABELED_LEGEND"
],
"description": "Where the legend of the pie chart should be drawn.",
- "type": "string"
+ "type": "string",
+ "enumDescriptions": [
+ "Default value, do not use.",
+ "The legend is rendered on the bottom of the chart.",
+ "The legend is rendered on the left of the chart.",
+ "The legend is rendered on the right of the chart.",
+ "The legend is rendered on the top of the chart.",
+ "No legend is rendered.",
+ "Each pie slice has a label attached to it."
+ ]
},
"threeDimensional": {
"description": "True if the pie is three dimensional.",
@@ -80,14 +4039,15 @@
"$ref": "ChartData",
"description": "The data that covers the domain of the pie chart."
}
- },
- "id": "PieChartSpec"
+ }
},
"UpdateFilterViewRequest": {
+ "description": "Updates properties of the filter view.",
+ "type": "object",
"properties": {
"filter": {
- "description": "The new properties of the filter view.",
- "$ref": "FilterView"
+ "$ref": "FilterView",
+ "description": "The new properties of the filter view."
},
"fields": {
"format": "google-fieldmask",
@@ -95,14 +4055,16 @@
"type": "string"
}
},
- "id": "UpdateFilterViewRequest",
- "description": "Updates properties of the filter view.",
- "type": "object"
+ "id": "UpdateFilterViewRequest"
},
"ConditionalFormatRule": {
"description": "A rule describing a conditional format.",
"type": "object",
"properties": {
+ "booleanRule": {
+ "description": "The formatting is either \"on\" or \"off\" according to the rule.",
+ "$ref": "BooleanRule"
+ },
"ranges": {
"description": "The ranges that will be formatted if the condition is true.\nAll the ranges must be on the same grid.",
"items": {
@@ -113,16 +4075,29 @@
"gradientRule": {
"$ref": "GradientRule",
"description": "The formatting will vary based on the gradients in the rule."
- },
- "booleanRule": {
- "$ref": "BooleanRule",
- "description": "The formatting is either \"on\" or \"off\" according to the rule."
}
},
"id": "ConditionalFormatRule"
},
"CopyPasteRequest": {
+ "type": "object",
"properties": {
+ "destination": {
+ "$ref": "GridRange",
+ "description": "The location to paste to. If the range covers a span that's\na multiple of the source's height or width, then the\ndata will be repeated to fill in the destination range.\nIf the range is smaller than the source range, the entire\nsource data will still be copied (beyond the end of the destination range)."
+ },
+ "pasteOrientation": {
+ "enumDescriptions": [
+ "Paste normally.",
+ "Paste transposed, where all rows become columns and vice versa."
+ ],
+ "enum": [
+ "NORMAL",
+ "TRANSPOSE"
+ ],
+ "description": "How that data should be oriented when pasting.",
+ "type": "string"
+ },
"pasteType": {
"enumDescriptions": [
"Paste values, formulas, formats, and merges.",
@@ -148,245 +4123,23 @@
"source": {
"description": "The source range to copy.",
"$ref": "GridRange"
- },
- "destination": {
- "description": "The location to paste to. If the range covers a span that's\na multiple of the source's height or width, then the\ndata will be repeated to fill in the destination range.\nIf the range is smaller than the source range, the entire\nsource data will still be copied (beyond the end of the destination range).",
- "$ref": "GridRange"
- },
- "pasteOrientation": {
- "description": "How that data should be oriented when pasting.",
- "type": "string",
- "enumDescriptions": [
- "Paste normally.",
- "Paste transposed, where all rows become columns and vice versa."
- ],
- "enum": [
- "NORMAL",
- "TRANSPOSE"
- ]
}
},
"id": "CopyPasteRequest",
- "description": "Copies data from the source to the destination.",
- "type": "object"
- },
- "Request": {
- "description": "A single kind of update to apply to a spreadsheet.",
- "type": "object",
- "properties": {
- "addFilterView": {
- "description": "Adds a filter view.",
- "$ref": "AddFilterViewRequest"
- },
- "updateBorders": {
- "$ref": "UpdateBordersRequest",
- "description": "Updates the borders in a range of cells."
- },
- "setDataValidation": {
- "$ref": "SetDataValidationRequest",
- "description": "Sets data validation for one or more cells."
- },
- "deleteConditionalFormatRule": {
- "description": "Deletes an existing conditional format rule.",
- "$ref": "DeleteConditionalFormatRuleRequest"
- },
- "repeatCell": {
- "$ref": "RepeatCellRequest",
- "description": "Repeats a single cell across a range."
- },
- "clearBasicFilter": {
- "description": "Clears the basic filter on a sheet.",
- "$ref": "ClearBasicFilterRequest"
- },
- "appendDimension": {
- "description": "Appends dimensions to the end of a sheet.",
- "$ref": "AppendDimensionRequest"
- },
- "updateConditionalFormatRule": {
- "$ref": "UpdateConditionalFormatRuleRequest",
- "description": "Updates an existing conditional format rule."
- },
- "insertRange": {
- "description": "Inserts new cells in a sheet, shifting the existing cells.",
- "$ref": "InsertRangeRequest"
- },
- "moveDimension": {
- "description": "Moves rows or columns to another location in a sheet.",
- "$ref": "MoveDimensionRequest"
- },
- "updateBanding": {
- "$ref": "UpdateBandingRequest",
- "description": "Updates a banded range"
- },
- "deleteNamedRange": {
- "$ref": "DeleteNamedRangeRequest",
- "description": "Deletes a named range."
- },
- "addProtectedRange": {
- "description": "Adds a protected range.",
- "$ref": "AddProtectedRangeRequest"
- },
- "duplicateSheet": {
- "description": "Duplicates a sheet.",
- "$ref": "DuplicateSheetRequest"
- },
- "deleteSheet": {
- "description": "Deletes a sheet.",
- "$ref": "DeleteSheetRequest"
- },
- "unmergeCells": {
- "description": "Unmerges merged cells.",
- "$ref": "UnmergeCellsRequest"
- },
- "updateEmbeddedObjectPosition": {
- "description": "Updates an embedded object's (e.g. chart, image) position.",
- "$ref": "UpdateEmbeddedObjectPositionRequest"
- },
- "updateDimensionProperties": {
- "$ref": "UpdateDimensionPropertiesRequest",
- "description": "Updates dimensions' properties."
- },
- "pasteData": {
- "$ref": "PasteDataRequest",
- "description": "Pastes data (HTML or delimited) into a sheet."
- },
- "setBasicFilter": {
- "$ref": "SetBasicFilterRequest",
- "description": "Sets the basic filter on a sheet."
- },
- "addConditionalFormatRule": {
- "description": "Adds a new conditional format rule.",
- "$ref": "AddConditionalFormatRuleRequest"
- },
- "updateCells": {
- "description": "Updates many cells at once.",
- "$ref": "UpdateCellsRequest"
- },
- "addNamedRange": {
- "$ref": "AddNamedRangeRequest",
- "description": "Adds a named range."
- },
- "updateSpreadsheetProperties": {
- "description": "Updates the spreadsheet's properties.",
- "$ref": "UpdateSpreadsheetPropertiesRequest"
- },
- "deleteEmbeddedObject": {
- "$ref": "DeleteEmbeddedObjectRequest",
- "description": "Deletes an embedded object (e.g, chart, image) in a sheet."
- },
- "updateFilterView": {
- "description": "Updates the properties of a filter view.",
- "$ref": "UpdateFilterViewRequest"
- },
- "addBanding": {
- "$ref": "AddBandingRequest",
- "description": "Adds a new banded range"
- },
- "appendCells": {
- "description": "Appends cells after the last row with data in a sheet.",
- "$ref": "AppendCellsRequest"
- },
- "autoResizeDimensions": {
- "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.",
- "$ref": "AutoResizeDimensionsRequest"
- },
- "cutPaste": {
- "$ref": "CutPasteRequest",
- "description": "Cuts data from one area and pastes it to another."
- },
- "mergeCells": {
- "description": "Merges cells together.",
- "$ref": "MergeCellsRequest"
- },
- "updateNamedRange": {
- "$ref": "UpdateNamedRangeRequest",
- "description": "Updates a named range."
- },
- "updateSheetProperties": {
- "description": "Updates a sheet's properties.",
- "$ref": "UpdateSheetPropertiesRequest"
- },
- "deleteDimension": {
- "description": "Deletes rows or columns in a sheet.",
- "$ref": "DeleteDimensionRequest"
- },
- "autoFill": {
- "$ref": "AutoFillRequest",
- "description": "Automatically fills in more data based on existing data."
- },
- "sortRange": {
- "description": "Sorts data in a range.",
- "$ref": "SortRangeRequest"
- },
- "deleteProtectedRange": {
- "description": "Deletes a protected range.",
- "$ref": "DeleteProtectedRangeRequest"
- },
- "duplicateFilterView": {
- "$ref": "DuplicateFilterViewRequest",
- "description": "Duplicates a filter view."
- },
- "addChart": {
- "$ref": "AddChartRequest",
- "description": "Adds a chart."
- },
- "findReplace": {
- "$ref": "FindReplaceRequest",
- "description": "Finds and replaces occurrences of some text with other text."
- },
- "updateChartSpec": {
- "$ref": "UpdateChartSpecRequest",
- "description": "Updates a chart's specifications."
- },
- "textToColumns": {
- "description": "Converts a column of text into many columns of text.",
- "$ref": "TextToColumnsRequest"
- },
- "updateProtectedRange": {
- "description": "Updates a protected range.",
- "$ref": "UpdateProtectedRangeRequest"
- },
- "addSheet": {
- "$ref": "AddSheetRequest",
- "description": "Adds a sheet."
- },
- "copyPaste": {
- "$ref": "CopyPasteRequest",
- "description": "Copies data from one area and pastes it to another."
- },
- "deleteFilterView": {
- "description": "Deletes a filter view from a sheet.",
- "$ref": "DeleteFilterViewRequest"
- },
- "insertDimension": {
- "description": "Inserts new rows or columns in a sheet.",
- "$ref": "InsertDimensionRequest"
- },
- "deleteRange": {
- "$ref": "DeleteRangeRequest",
- "description": "Deletes a range of cells from a sheet, shifting the remaining cells."
- },
- "deleteBanding": {
- "$ref": "DeleteBandingRequest",
- "description": "Removes a banded range"
- }
- },
- "id": "Request"
+ "description": "Copies data from the source to the destination."
},
"BooleanCondition": {
"description": "A condition that can evaluate to true or false.\nBooleanConditions are used by conditional formatting,\ndata validation, and the criteria in filters.",
"type": "object",
"properties": {
"values": {
- "description": "The values of the condition. The number of supported values depends\non the condition type. Some support zero values,\nothers one or two values,\nand ConditionType.ONE_OF_LIST supports an arbitrary number of values.",
"items": {
"$ref": "ConditionValue"
},
- "type": "array"
+ "type": "array",
+ "description": "The values of the condition. The number of supported values depends\non the condition type. Some support zero values,\nothers one or two values,\nand ConditionType.ONE_OF_LIST supports an arbitrary number of values."
},
"type": {
- "description": "The type of condition.",
- "type": "string",
"enumDescriptions": [
"The default value, do not use.",
"The cell's value must be greater than the condition's value.\nSupported by data validation, conditional formatting and filters.\nRequires a single ConditionValue.",
@@ -448,25 +4201,222 @@
"BLANK",
"NOT_BLANK",
"CUSTOM_FORMULA"
- ]
+ ],
+ "description": "The type of condition.",
+ "type": "string"
}
},
"id": "BooleanCondition"
},
- "GridRange": {
- "description": "A range on a sheet.\nAll indexes are zero-based.\nIndexes are half open, e.g the start index is inclusive\nand the end index is exclusive -- [start_index, end_index).\nMissing indexes indicate the range is unbounded on that side.\n\nFor example, if `\"Sheet1\"` is sheet ID 0, then:\n\n `Sheet1!A1:A1 == sheet_id: 0,\n start_row_index: 0, end_row_index: 1,\n start_column_index: 0, end_column_index: 1`\n\n `Sheet1!A3:B4 == sheet_id: 0,\n start_row_index: 2, end_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A:B == sheet_id: 0,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A5:B == sheet_id: 0,\n start_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1 == sheet_id:0`\n\nThe start index must always be less than or equal to the end index.\nIf the start index equals the end index, then the range is empty.\nEmpty ranges are typically not meaningful and are usually rendered in the\nUI as `#REF!`.",
+ "Request": {
"type": "object",
"properties": {
- "endColumnIndex": {
- "format": "int32",
- "description": "The end column (exclusive) of the range, or not set if unbounded.",
- "type": "integer"
+ "updateDimensionProperties": {
+ "description": "Updates dimensions' properties.",
+ "$ref": "UpdateDimensionPropertiesRequest"
},
- "endRowIndex": {
- "format": "int32",
- "description": "The end row (exclusive) of the range, or not set if unbounded.",
- "type": "integer"
+ "pasteData": {
+ "description": "Pastes data (HTML or delimited) into a sheet.",
+ "$ref": "PasteDataRequest"
},
+ "setBasicFilter": {
+ "$ref": "SetBasicFilterRequest",
+ "description": "Sets the basic filter on a sheet."
+ },
+ "addConditionalFormatRule": {
+ "description": "Adds a new conditional format rule.",
+ "$ref": "AddConditionalFormatRuleRequest"
+ },
+ "addNamedRange": {
+ "description": "Adds a named range.",
+ "$ref": "AddNamedRangeRequest"
+ },
+ "updateCells": {
+ "$ref": "UpdateCellsRequest",
+ "description": "Updates many cells at once."
+ },
+ "updateSpreadsheetProperties": {
+ "$ref": "UpdateSpreadsheetPropertiesRequest",
+ "description": "Updates the spreadsheet's properties."
+ },
+ "deleteEmbeddedObject": {
+ "description": "Deletes an embedded object (e.g, chart, image) in a sheet.",
+ "$ref": "DeleteEmbeddedObjectRequest"
+ },
+ "updateFilterView": {
+ "$ref": "UpdateFilterViewRequest",
+ "description": "Updates the properties of a filter view."
+ },
+ "addBanding": {
+ "description": "Adds a new banded range",
+ "$ref": "AddBandingRequest"
+ },
+ "appendCells": {
+ "description": "Appends cells after the last row with data in a sheet.",
+ "$ref": "AppendCellsRequest"
+ },
+ "autoResizeDimensions": {
+ "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.",
+ "$ref": "AutoResizeDimensionsRequest"
+ },
+ "cutPaste": {
+ "$ref": "CutPasteRequest",
+ "description": "Cuts data from one area and pastes it to another."
+ },
+ "mergeCells": {
+ "description": "Merges cells together.",
+ "$ref": "MergeCellsRequest"
+ },
+ "updateNamedRange": {
+ "$ref": "UpdateNamedRangeRequest",
+ "description": "Updates a named range."
+ },
+ "updateSheetProperties": {
+ "$ref": "UpdateSheetPropertiesRequest",
+ "description": "Updates a sheet's properties."
+ },
+ "autoFill": {
+ "description": "Automatically fills in more data based on existing data.",
+ "$ref": "AutoFillRequest"
+ },
+ "deleteDimension": {
+ "description": "Deletes rows or columns in a sheet.",
+ "$ref": "DeleteDimensionRequest"
+ },
+ "sortRange": {
+ "$ref": "SortRangeRequest",
+ "description": "Sorts data in a range."
+ },
+ "deleteProtectedRange": {
+ "description": "Deletes a protected range.",
+ "$ref": "DeleteProtectedRangeRequest"
+ },
+ "duplicateFilterView": {
+ "$ref": "DuplicateFilterViewRequest",
+ "description": "Duplicates a filter view."
+ },
+ "addChart": {
+ "$ref": "AddChartRequest",
+ "description": "Adds a chart."
+ },
+ "findReplace": {
+ "description": "Finds and replaces occurrences of some text with other text.",
+ "$ref": "FindReplaceRequest"
+ },
+ "textToColumns": {
+ "description": "Converts a column of text into many columns of text.",
+ "$ref": "TextToColumnsRequest"
+ },
+ "updateChartSpec": {
+ "$ref": "UpdateChartSpecRequest",
+ "description": "Updates a chart's specifications."
+ },
+ "updateProtectedRange": {
+ "$ref": "UpdateProtectedRangeRequest",
+ "description": "Updates a protected range."
+ },
+ "addSheet": {
+ "$ref": "AddSheetRequest",
+ "description": "Adds a sheet."
+ },
+ "copyPaste": {
+ "$ref": "CopyPasteRequest",
+ "description": "Copies data from one area and pastes it to another."
+ },
+ "deleteFilterView": {
+ "description": "Deletes a filter view from a sheet.",
+ "$ref": "DeleteFilterViewRequest"
+ },
+ "insertDimension": {
+ "$ref": "InsertDimensionRequest",
+ "description": "Inserts new rows or columns in a sheet."
+ },
+ "deleteRange": {
+ "$ref": "DeleteRangeRequest",
+ "description": "Deletes a range of cells from a sheet, shifting the remaining cells."
+ },
+ "deleteBanding": {
+ "$ref": "DeleteBandingRequest",
+ "description": "Removes a banded range"
+ },
+ "addFilterView": {
+ "description": "Adds a filter view.",
+ "$ref": "AddFilterViewRequest"
+ },
+ "setDataValidation": {
+ "description": "Sets data validation for one or more cells.",
+ "$ref": "SetDataValidationRequest"
+ },
+ "updateBorders": {
+ "description": "Updates the borders in a range of cells.",
+ "$ref": "UpdateBordersRequest"
+ },
+ "deleteConditionalFormatRule": {
+ "description": "Deletes an existing conditional format rule.",
+ "$ref": "DeleteConditionalFormatRuleRequest"
+ },
+ "clearBasicFilter": {
+ "description": "Clears the basic filter on a sheet.",
+ "$ref": "ClearBasicFilterRequest"
+ },
+ "repeatCell": {
+ "description": "Repeats a single cell across a range.",
+ "$ref": "RepeatCellRequest"
+ },
+ "appendDimension": {
+ "$ref": "AppendDimensionRequest",
+ "description": "Appends dimensions to the end of a sheet."
+ },
+ "updateConditionalFormatRule": {
+ "$ref": "UpdateConditionalFormatRuleRequest",
+ "description": "Updates an existing conditional format rule."
+ },
+ "insertRange": {
+ "$ref": "InsertRangeRequest",
+ "description": "Inserts new cells in a sheet, shifting the existing cells."
+ },
+ "moveDimension": {
+ "description": "Moves rows or columns to another location in a sheet.",
+ "$ref": "MoveDimensionRequest"
+ },
+ "randomizeRange": {
+ "$ref": "RandomizeRangeRequest",
+ "description": "Randomizes the order of the rows in a range."
+ },
+ "updateBanding": {
+ "$ref": "UpdateBandingRequest",
+ "description": "Updates a banded range"
+ },
+ "addProtectedRange": {
+ "$ref": "AddProtectedRangeRequest",
+ "description": "Adds a protected range."
+ },
+ "deleteNamedRange": {
+ "$ref": "DeleteNamedRangeRequest",
+ "description": "Deletes a named range."
+ },
+ "duplicateSheet": {
+ "$ref": "DuplicateSheetRequest",
+ "description": "Duplicates a sheet."
+ },
+ "unmergeCells": {
+ "$ref": "UnmergeCellsRequest",
+ "description": "Unmerges merged cells."
+ },
+ "deleteSheet": {
+ "$ref": "DeleteSheetRequest",
+ "description": "Deletes a sheet."
+ },
+ "updateEmbeddedObjectPosition": {
+ "$ref": "UpdateEmbeddedObjectPositionRequest",
+ "description": "Updates an embedded object's (e.g. chart, image) position."
+ }
+ },
+ "id": "Request",
+ "description": "A single kind of update to apply to a spreadsheet."
+ },
+ "GridRange": {
+ "properties": {
"startRowIndex": {
"format": "int32",
"description": "The start row (inclusive) of the range, or not set if unbounded.",
@@ -481,21 +4431,27 @@
"format": "int32",
"description": "The sheet this range is on.",
"type": "integer"
+ },
+ "endColumnIndex": {
+ "format": "int32",
+ "description": "The end column (exclusive) of the range, or not set if unbounded.",
+ "type": "integer"
+ },
+ "endRowIndex": {
+ "format": "int32",
+ "description": "The end row (exclusive) of the range, or not set if unbounded.",
+ "type": "integer"
}
},
- "id": "GridRange"
+ "id": "GridRange",
+ "description": "A range on a sheet.\nAll indexes are zero-based.\nIndexes are half open, e.g the start index is inclusive\nand the end index is exclusive -- [start_index, end_index).\nMissing indexes indicate the range is unbounded on that side.\n\nFor example, if `\"Sheet1\"` is sheet ID 0, then:\n\n `Sheet1!A1:A1 == sheet_id: 0,\n start_row_index: 0, end_row_index: 1,\n start_column_index: 0, end_column_index: 1`\n\n `Sheet1!A3:B4 == sheet_id: 0,\n start_row_index: 2, end_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A:B == sheet_id: 0,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1!A5:B == sheet_id: 0,\n start_row_index: 4,\n start_column_index: 0, end_column_index: 2`\n\n `Sheet1 == sheet_id:0`\n\nThe start index must always be less than or equal to the end index.\nIf the start index equals the end index, then the range is empty.\nEmpty ranges are typically not meaningful and are usually rendered in the\nUI as `#REF!`.",
+ "type": "object"
},
"BasicChartSpec": {
+ "id": "BasicChartSpec",
"description": "The specification for a basic chart. See BasicChartType for the list\nof charts this supports.",
"type": "object",
"properties": {
- "domains": {
- "description": "The domain of data this is charting.\nOnly a single domain is supported.",
- "items": {
- "$ref": "BasicChartDomain"
- },
- "type": "array"
- },
"lineSmoothing": {
"description": "Gets whether all lines should be rendered smooth or straight by default.\nApplies to Line charts.",
"type": "boolean"
@@ -506,24 +4462,20 @@
"type": "integer"
},
"stackedType": {
- "enum": [
- "BASIC_CHART_STACKED_TYPE_UNSPECIFIED",
- "NOT_STACKED",
- "STACKED",
- "PERCENT_STACKED"
- ],
- "description": "The stacked type for charts that support vertical stacking.\nApplies to Area, Bar, Column, and Stepped Area charts.",
"type": "string",
"enumDescriptions": [
"Default value, do not use.",
"Series are not stacked.",
"Series values are stacked, each value is rendered vertically beginning\nfrom the top of the value below it.",
"Vertical stacks are stretched to reach the top of the chart, with\nvalues laid out as percentages of each other."
- ]
- },
- "threeDimensional": {
- "description": "True to make the chart 3D.\nApplies to Bar and Column charts.",
- "type": "boolean"
+ ],
+ "enum": [
+ "BASIC_CHART_STACKED_TYPE_UNSPECIFIED",
+ "NOT_STACKED",
+ "STACKED",
+ "PERCENT_STACKED"
+ ],
+ "description": "The stacked type for charts that support vertical stacking.\nApplies to Area, Bar, Column, and Stepped Area charts."
},
"axis": {
"description": "The axis on the chart.",
@@ -532,9 +4484,9 @@
},
"type": "array"
},
- "interpolateNulls": {
- "description": "If some values in a series are missing, gaps may appear in the chart (e.g,\nsegments of lines in a line chart will be missing). To eliminate these\ngaps set this to true.\nApplies to Line, Area, and Combo charts.",
- "type": "boolean"
+ "threeDimensional": {
+ "type": "boolean",
+ "description": "True to make the chart 3D.\nApplies to Bar and Column charts."
},
"chartType": {
"enumDescriptions": [
@@ -560,6 +4512,10 @@
"description": "The type of the chart.",
"type": "string"
},
+ "interpolateNulls": {
+ "description": "If some values in a series are missing, gaps may appear in the chart (e.g,\nsegments of lines in a line chart will be missing). To eliminate these\ngaps set this to true.\nApplies to Line, Area, and Combo charts.",
+ "type": "boolean"
+ },
"series": {
"description": "The data this chart is visualizing.",
"items": {
@@ -568,14 +4524,6 @@
"type": "array"
},
"legendPosition": {
- "enum": [
- "BASIC_CHART_LEGEND_POSITION_UNSPECIFIED",
- "BOTTOM_LEGEND",
- "LEFT_LEGEND",
- "RIGHT_LEGEND",
- "TOP_LEGEND",
- "NO_LEGEND"
- ],
"description": "The position of the chart legend.",
"type": "string",
"enumDescriptions": [
@@ -585,3954 +4533,29 @@
"The legend is rendered on the right of the chart.",
"The legend is rendered on the top of the chart.",
"No legend is rendered."
- ]
- }
- },
- "id": "BasicChartSpec"
- },
- "BubbleChartSpec": {
- "properties": {
- "bubbleLabels": {
- "description": "The data containing the bubble labels. These do not need to be unique.",
- "$ref": "ChartData"
- },
- "bubbleMinRadiusSize": {
- "format": "int32",
- "description": "The minimum radius size of the bubbles, in pixels.\nIf specific, the field must be a positive value.",
- "type": "integer"
- },
- "bubbleMaxRadiusSize": {
- "format": "int32",
- "description": "The max radius size of the bubbles, in pixels.\nIf specified, the field must be a positive value.",
- "type": "integer"
- },
- "series": {
- "$ref": "ChartData",
- "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically."
- },
- "legendPosition": {
- "enumDescriptions": [
- "Default value, do not use.",
- "The legend is rendered on the bottom of the chart.",
- "The legend is rendered on the left of the chart.",
- "The legend is rendered on the right of the chart.",
- "The legend is rendered on the top of the chart.",
- "No legend is rendered.",
- "The legend is rendered inside the chart area."
],
"enum": [
- "BUBBLE_CHART_LEGEND_POSITION_UNSPECIFIED",
+ "BASIC_CHART_LEGEND_POSITION_UNSPECIFIED",
"BOTTOM_LEGEND",
"LEFT_LEGEND",
"RIGHT_LEGEND",
"TOP_LEGEND",
- "NO_LEGEND",
- "INSIDE_LEGEND"
- ],
- "description": "Where the legend of the chart should be drawn.",
- "type": "string"
- },
- "bubbleOpacity": {
- "format": "float",
- "description": "The opacity of the bubbles between 0 and 1.0.\n0 is fully transparent and 1 is fully opaque.",
- "type": "number"
- },
- "bubbleSizes": {
- "description": "The data contianing the bubble sizes. Bubble sizes are used to draw\nthe bubbles at different sizes relative to each other.\nIf specified, group_ids must also be specified. This field is\noptional.",
- "$ref": "ChartData"
- },
- "domain": {
- "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally.",
- "$ref": "ChartData"
- },
- "bubbleBorderColor": {
- "$ref": "Color",
- "description": "The bubble border color."
- },
- "bubbleTextStyle": {
- "$ref": "TextFormat",
- "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported."
- },
- "groupIds": {
- "$ref": "ChartData",
- "description": "The data containing the bubble group IDs. All bubbles with the same group\nID will be drawn in the same color. If bubble_sizes is specified then\nthis field must also be specified but may contain blank values.\nThis field is optional."
- }
- },
- "id": "BubbleChartSpec",
- "description": "A \u003ca href=\"/chart/interactive/docs/gallery/bubblechart\"\u003ebubble chart\u003c/a\u003e.",
- "type": "object"
- },
- "SetDataValidationRequest": {
- "description": "Sets a data validation rule to every cell in the range.\nTo clear validation in a range, call this with no rule specified.",
- "type": "object",
- "properties": {
- "rule": {
- "description": "The data validation rule to set on each cell in the range,\nor empty to clear the data validation in the range.",
- "$ref": "DataValidationRule"
- },
- "range": {
- "description": "The range the data validation rule should apply to.",
- "$ref": "GridRange"
- }
- },
- "id": "SetDataValidationRequest"
- },
- "CellData": {
- "description": "Data about a specific cell.",
- "type": "object",
- "properties": {
- "pivotTable": {
- "description": "A pivot table anchored at this cell. The size of pivot table itself\nis computed dynamically based on its data, grouping, filters, values,\netc. Only the top-left cell of the pivot table contains the pivot table\ndefinition. The other cells will contain the calculated values of the\nresults of the pivot in their effective_value fields.",
- "$ref": "PivotTable"
- },
- "userEnteredFormat": {
- "description": "The format the user entered for the cell.\n\nWhen writing, the new format will be merged with the existing format.",
- "$ref": "CellFormat"
- },
- "effectiveFormat": {
- "$ref": "CellFormat",
- "description": "The effective format being used by the cell.\nThis includes the results of applying any conditional formatting and,\nif the cell contains a formula, the computed number format.\nIf the effective format is the default format, effective format will\nnot be written.\nThis field is read-only."
- },
- "note": {
- "description": "Any note on the cell.",
- "type": "string"
- },
- "dataValidation": {
- "$ref": "DataValidationRule",
- "description": "A data validation rule on the cell, if any.\n\nWhen writing, the new data validation rule will overwrite any prior rule."
- },
- "userEnteredValue": {
- "$ref": "ExtendedValue",
- "description": "The value the user entered in the cell. e.g, `1234`, `'Hello'`, or `=NOW()`\nNote: Dates, Times and DateTimes are represented as doubles in\nserial number format."
- },
- "effectiveValue": {
- "$ref": "ExtendedValue",
- "description": "The effective value of the cell. For cells with formulas, this will be\nthe calculated value. For cells with literals, this will be\nthe same as the user_entered_value.\nThis field is read-only."
- },
- "formattedValue": {
- "description": "The formatted value of the cell.\nThis is the value as it's shown to the user.\nThis field is read-only.",
- "type": "string"
- },
- "textFormatRuns": {
- "description": "Runs of rich text applied to subsections of the cell. Runs are only valid\non user entered strings, not formulas, bools, or numbers.\nRuns start at specific indexes in the text and continue until the next\nrun. Properties of a run will continue unless explicitly changed\nin a subsequent run (and properties of the first run will continue\nthe properties of the cell unless explicitly changed).\n\nWhen writing, the new runs will overwrite any prior runs. When writing a\nnew user_entered_value, previous runs will be erased.",
- "items": {
- "$ref": "TextFormatRun"
- },
- "type": "array"
- },
- "hyperlink": {
- "description": "A hyperlink this cell points to, if any.\nThis field is read-only. (To set it, use a `=HYPERLINK` formula\nin the userEnteredValue.formulaValue\nfield.)",
- "type": "string"
- }
- },
- "id": "CellData"
- },
- "BatchUpdateSpreadsheetRequest": {
- "description": "The request for updating any aspect of a spreadsheet.",
- "type": "object",
- "properties": {
- "requests": {
- "description": "A list of updates to apply to the spreadsheet.\nRequests will be applied in the order they are specified.\nIf any request is not valid, no requests will be applied.",
- "items": {
- "$ref": "Request"
- },
- "type": "array"
- },
- "responseIncludeGridData": {
- "description": "True if grid data should be returned. Meaningful only if\nif include_spreadsheet_response is 'true'.\nThis parameter is ignored if a field mask was set in the request.",
- "type": "boolean"
- },
- "responseRanges": {
- "description": "Limits the ranges included in the response spreadsheet.\nMeaningful only if include_spreadsheet_response is 'true'.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "includeSpreadsheetInResponse": {
- "description": "Determines if the update response should include the spreadsheet\nresource.",
- "type": "boolean"
- }
- },
- "id": "BatchUpdateSpreadsheetRequest"
- },
- "BasicChartAxis": {
- "description": "An axis of the chart.\nA chart may not have more than one axis per\naxis position.",
- "type": "object",
- "properties": {
- "format": {
- "$ref": "TextFormat",
- "description": "The format of the title.\nOnly valid if the axis is not associated with the domain."
- },
- "title": {
- "description": "The title of this axis. If set, this overrides any title inferred\nfrom headers of the data.",
- "type": "string"
- },
- "position": {
- "enumDescriptions": [
- "Default value, do not use.",
- "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.",
- "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.",
- "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis."
- ],
- "enum": [
- "BASIC_CHART_AXIS_POSITION_UNSPECIFIED",
- "BOTTOM_AXIS",
- "LEFT_AXIS",
- "RIGHT_AXIS"
- ],
- "description": "The position of this axis.",
- "type": "string"
- }
- },
- "id": "BasicChartAxis"
- },
- "Padding": {
- "description": "The amount of padding around the cell, in pixels.\nWhen updating padding, every field must be specified.",
- "type": "object",
- "properties": {
- "top": {
- "format": "int32",
- "description": "The top padding of the cell.",
- "type": "integer"
- },
- "left": {
- "format": "int32",
- "description": "The left padding of the cell.",
- "type": "integer"
- },
- "right": {
- "format": "int32",
- "description": "The right padding of the cell.",
- "type": "integer"
- },
- "bottom": {
- "format": "int32",
- "description": "The bottom padding of the cell.",
- "type": "integer"
- }
- },
- "id": "Padding"
- },
- "DeleteDimensionRequest": {
- "properties": {
- "range": {
- "description": "The dimensions to delete from the sheet.",
- "$ref": "DimensionRange"
- }
- },
- "id": "DeleteDimensionRequest",
- "description": "Deletes the dimensions from the sheet.",
- "type": "object"
- },
- "UpdateChartSpecRequest": {
- "description": "Updates a chart's specifications.\n(This does not move or resize a chart. To move or resize a chart, use\n UpdateEmbeddedObjectPositionRequest.)",
- "type": "object",
- "properties": {
- "chartId": {
- "format": "int32",
- "description": "The ID of the chart to update.",
- "type": "integer"
- },
- "spec": {
- "description": "The specification to apply to the chart.",
- "$ref": "ChartSpec"
- }
- },
- "id": "UpdateChartSpecRequest"
- },
- "DeleteFilterViewRequest": {
- "description": "Deletes a particular filter view.",
- "type": "object",
- "properties": {
- "filterId": {
- "format": "int32",
- "description": "The ID of the filter to delete.",
- "type": "integer"
- }
- },
- "id": "DeleteFilterViewRequest"
- },
- "BatchUpdateValuesResponse": {
- "description": "The response when updating a range of values in a spreadsheet.",
- "type": "object",
- "properties": {
- "totalUpdatedRows": {
- "format": "int32",
- "description": "The total number of rows where at least one cell in the row was updated.",
- "type": "integer"
- },
- "responses": {
- "description": "One UpdateValuesResponse per requested range, in the same order as\nthe requests appeared.",
- "items": {
- "$ref": "UpdateValuesResponse"
- },
- "type": "array"
- },
- "totalUpdatedSheets": {
- "format": "int32",
- "description": "The total number of sheets where at least one cell in the sheet was\nupdated.",
- "type": "integer"
- },
- "totalUpdatedCells": {
- "format": "int32",
- "description": "The total number of cells updated.",
- "type": "integer"
- },
- "totalUpdatedColumns": {
- "format": "int32",
- "description": "The total number of columns where at least one cell in the column was\nupdated.",
- "type": "integer"
- },
- "spreadsheetId": {
- "description": "The spreadsheet the updates were applied to.",
- "type": "string"
- }
- },
- "id": "BatchUpdateValuesResponse"
- },
- "SortRangeRequest": {
- "properties": {
- "sortSpecs": {
- "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.",
- "items": {
- "$ref": "SortSpec"
- },
- "type": "array"
- },
- "range": {
- "$ref": "GridRange",
- "description": "The range to sort."
- }
- },
- "id": "SortRangeRequest",
- "description": "Sorts data in rows based on a sort order per column.",
- "type": "object"
- },
- "MergeCellsRequest": {
- "properties": {
- "range": {
- "description": "The range of cells to merge.",
- "$ref": "GridRange"
- },
- "mergeType": {
- "enumDescriptions": [
- "Create a single merge from the range",
- "Create a merge for each column in the range",
- "Create a merge for each row in the range"
- ],
- "enum": [
- "MERGE_ALL",
- "MERGE_COLUMNS",
- "MERGE_ROWS"
- ],
- "description": "How the cells should be merged.",
- "type": "string"
- }
- },
- "id": "MergeCellsRequest",
- "description": "Merges all cells in the range.",
- "type": "object"
- },
- "AddProtectedRangeRequest": {
- "description": "Adds a new protected range.",
- "type": "object",
- "properties": {
- "protectedRange": {
- "$ref": "ProtectedRange",
- "description": "The protected range to be added. The\nprotectedRangeId field is optional; if\none is not set, an id will be randomly generated. (It is an error to\nspecify the ID of a range that already exists.)"
- }
- },
- "id": "AddProtectedRangeRequest"
- },
- "BatchClearValuesRequest": {
- "description": "The request for clearing more than one range of values in a spreadsheet.",
- "type": "object",
- "properties": {
- "ranges": {
- "description": "The ranges to clear, in A1 notation.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "BatchClearValuesRequest"
- },
- "DuplicateFilterViewResponse": {
- "description": "The result of a filter view being duplicated.",
- "type": "object",
- "properties": {
- "filter": {
- "description": "The newly created filter.",
- "$ref": "FilterView"
- }
- },
- "id": "DuplicateFilterViewResponse"
- },
- "DuplicateSheetResponse": {
- "description": "The result of duplicating a sheet.",
- "type": "object",
- "properties": {
- "properties": {
- "description": "The properties of the duplicate sheet.",
- "$ref": "SheetProperties"
- }
- },
- "id": "DuplicateSheetResponse"
- },
- "ClearBasicFilterRequest": {
- "description": "Clears the basic filter, if any exists on the sheet.",
- "type": "object",
- "properties": {
- "sheetId": {
- "format": "int32",
- "description": "The sheet ID on which the basic filter should be cleared.",
- "type": "integer"
- }
- },
- "id": "ClearBasicFilterRequest"
- },
- "TextToColumnsRequest": {
- "properties": {
- "delimiter": {
- "description": "The delimiter to use. Used only if delimiterType is\nCUSTOM.",
- "type": "string"
- },
- "delimiterType": {
- "enumDescriptions": [
- "Default value. This value must not be used.",
- "\",\"",
- "\";\"",
- "\".\"",
- "\" \"",
- "A custom value as defined in delimiter."
- ],
- "enum": [
- "DELIMITER_TYPE_UNSPECIFIED",
- "COMMA",
- "SEMICOLON",
- "PERIOD",
- "SPACE",
- "CUSTOM"
- ],
- "description": "The delimiter type to use.",
- "type": "string"
- },
- "source": {
- "description": "The source data range. This must span exactly one column.",
- "$ref": "GridRange"
- }
- },
- "id": "TextToColumnsRequest",
- "description": "Splits a column of text into multiple columns,\nbased on a delimiter in each cell.",
- "type": "object"
- },
- "DeleteBandingRequest": {
- "properties": {
- "bandedRangeId": {
- "format": "int32",
- "description": "The ID of the banded range to delete.",
- "type": "integer"
- }
- },
- "id": "DeleteBandingRequest",
- "description": "Removes the banded range with the given ID from the spreadsheet.",
- "type": "object"
- },
- "BatchUpdateSpreadsheetResponse": {
- "description": "The reply for batch updating a spreadsheet.",
- "type": "object",
- "properties": {
- "updatedSpreadsheet": {
- "$ref": "Spreadsheet",
- "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`."
- },
- "replies": {
- "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.",
- "items": {
- "$ref": "Response"
- },
- "type": "array"
- },
- "spreadsheetId": {
- "description": "The spreadsheet the updates were applied to.",
- "type": "string"
- }
- },
- "id": "BatchUpdateSpreadsheetResponse"
- },
- "AppendValuesResponse": {
- "description": "The response when updating a range of values in a spreadsheet.",
- "type": "object",
- "properties": {
- "updates": {
- "$ref": "UpdateValuesResponse",
- "description": "Information about the updates that were applied."
- },
- "tableRange": {
- "description": "The range (in A1 notation) of the table that values are being appended to\n(before the values were appended).\nEmpty if no table was found.",
- "type": "string"
- },
- "spreadsheetId": {
- "description": "The spreadsheet the updates were applied to.",
- "type": "string"
- }
- },
- "id": "AppendValuesResponse"
- },
- "AddFilterViewRequest": {
- "description": "Adds a filter view.",
- "type": "object",
- "properties": {
- "filter": {
- "description": "The filter to add. The filterViewId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a filter that already exists.)",
- "$ref": "FilterView"
- }
- },
- "id": "AddFilterViewRequest"
- },
- "PivotFilterCriteria": {
- "description": "Criteria for showing/hiding rows in a pivot table.",
- "type": "object",
- "properties": {
- "visibleValues": {
- "description": "Values that should be included. Values not listed here are excluded.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "PivotFilterCriteria"
- },
- "MoveDimensionRequest": {
- "description": "Moves one or more rows or columns.",
- "type": "object",
- "properties": {
- "destinationIndex": {
- "format": "int32",
- "description": "The zero-based start index of where to move the source data to,\nbased on the coordinates *before* the source data is removed\nfrom the grid. Existing data will be shifted down or right\n(depending on the dimension) to make room for the moved dimensions.\nThe source dimensions are removed from the grid, so the\nthe data may end up in a different index than specified.\n\nFor example, given `A1..A5` of `0, 1, 2, 3, 4` and wanting to move\n`\"1\"` and `\"2\"` to between `\"3\"` and `\"4\"`, the source would be\n`ROWS [1..3)`,and the destination index would be `\"4\"`\n(the zero-based index of row 5).\nThe end result would be `A1..A5` of `0, 3, 1, 2, 4`.",
- "type": "integer"
- },
- "source": {
- "description": "The source dimensions to move.",
- "$ref": "DimensionRange"
- }
- },
- "id": "MoveDimensionRequest"
- },
- "AddConditionalFormatRuleRequest": {
- "description": "Adds a new conditional format rule at the given index.\nAll subsequent rules' indexes are incremented.",
- "type": "object",
- "properties": {
- "index": {
- "format": "int32",
- "description": "The zero-based index where the rule should be inserted.",
- "type": "integer"
- },
- "rule": {
- "description": "The rule to add.",
- "$ref": "ConditionalFormatRule"
- }
- },
- "id": "AddConditionalFormatRuleRequest"
- },
- "ChartSpec": {
- "description": "The specifications of a chart.",
- "type": "object",
- "properties": {
- "pieChart": {
- "description": "A pie chart specification.",
- "$ref": "PieChartSpec"
- },
- "titleTextFormat": {
- "$ref": "TextFormat",
- "description": "The title text format.\nStrikethrough and underline are not supported."
- },
- "title": {
- "description": "The title of the chart.",
- "type": "string"
- },
- "histogramChart": {
- "description": "A histogram chart specification.",
- "$ref": "HistogramChartSpec"
- },
- "candlestickChart": {
- "description": "A candlestick chart specification.",
- "$ref": "CandlestickChartSpec"
- },
- "bubbleChart": {
- "description": "A bubble chart specification.",
- "$ref": "BubbleChartSpec"
- },
- "fontName": {
- "description": "The name of the font to use by default for all chart text (e.g. title,\naxis labels, legend). If a font is specified for a specific part of the\nchart it will override this font name.",
- "type": "string"
- },
- "maximized": {
- "description": "True to make a chart fill the entire space in which it's rendered with\nminimum padding. False to use the default padding.\n(Not applicable to Geo and Org charts.)",
- "type": "boolean"
- },
- "hiddenDimensionStrategy": {
- "enumDescriptions": [
- "Default value, do not use.",
- "Charts will skip hidden rows and columns.",
- "Charts will skip hidden rows only.",
- "Charts will skip hidden columns only.",
- "Charts will not skip any hidden rows or columns."
- ],
- "enum": [
- "CHART_HIDDEN_DIMENSION_STRATEGY_UNSPECIFIED",
- "SKIP_HIDDEN_ROWS_AND_COLUMNS",
- "SKIP_HIDDEN_ROWS",
- "SKIP_HIDDEN_COLUMNS",
- "SHOW_ALL"
- ],
- "description": "Determines how the charts will use hidden rows or columns.",
- "type": "string"
- },
- "backgroundColor": {
- "$ref": "Color",
- "description": "The background color of the entire chart.\nNot applicable to Org charts."
- },
- "basicChart": {
- "$ref": "BasicChartSpec",
- "description": "A basic chart specification, can be one of many kinds of charts.\nSee BasicChartType for the list of all\ncharts this supports."
- },
- "orgChart": {
- "$ref": "OrgChartSpec",
- "description": "An org chart specification."
- }
- },
- "id": "ChartSpec"
- },
- "NumberFormat": {
- "description": "The number format of a cell.",
- "type": "object",
- "properties": {
- "pattern": {
- "description": "Pattern string used for formatting. If not set, a default pattern based on\nthe user's locale will be used if necessary for the given type.\nSee the [Date and Number Formats guide](/sheets/api/guides/formats) for more\ninformation about the supported patterns.",
- "type": "string"
- },
- "type": {
- "description": "The type of the number format.\nWhen writing, this field must be set.",
- "type": "string",
- "enumDescriptions": [
- "The number format is not specified\nand is based on the contents of the cell.\nDo not explicitly use this.",
- "Text formatting, e.g `1000.12`",
- "Number formatting, e.g, `1,000.12`",
- "Percent formatting, e.g `10.12%`",
- "Currency formatting, e.g `$1,000.12`",
- "Date formatting, e.g `9/26/2008`",
- "Time formatting, e.g `3:59:00 PM`",
- "Date+Time formatting, e.g `9/26/08 15:59:00`",
- "Scientific number formatting, e.g `1.01E+03`"
- ],
- "enum": [
- "NUMBER_FORMAT_TYPE_UNSPECIFIED",
- "TEXT",
- "NUMBER",
- "PERCENT",
- "CURRENCY",
- "DATE",
- "TIME",
- "DATE_TIME",
- "SCIENTIFIC"
- ]
- }
- },
- "id": "NumberFormat"
- },
- "CandlestickDomain": {
- "description": "The domain of a CandlestickChart.",
- "type": "object",
- "properties": {
- "data": {
- "$ref": "ChartData",
- "description": "The data of the CandlestickDomain."
- }
- },
- "id": "CandlestickDomain"
- },
- "SheetProperties": {
- "properties": {
- "title": {
- "description": "The name of the sheet.",
- "type": "string"
- },
- "index": {
- "format": "int32",
- "description": "The index of the sheet within the spreadsheet.\nWhen adding or updating sheet properties, if this field\nis excluded then the sheet will be added or moved to the end\nof the sheet list. When updating sheet indices or inserting\nsheets, movement is considered in \"before the move\" indexes.\nFor example, if there were 3 sheets (S1, S2, S3) in order to\nmove S1 ahead of S2 the index would have to be set to 2. A sheet\nindex update request will be ignored if the requested index is\nidentical to the sheets current index or if the requested new\nindex is equal to the current sheet index + 1.",
- "type": "integer"
- },
- "tabColor": {
- "$ref": "Color",
- "description": "The color of the tab in the UI."
- },
- "sheetId": {
- "format": "int32",
- "description": "The ID of the sheet. Must be non-negative.\nThis field cannot be changed once set.",
- "type": "integer"
- },
- "rightToLeft": {
- "description": "True if the sheet is an RTL sheet instead of an LTR sheet.",
- "type": "boolean"
- },
- "hidden": {
- "description": "True if the sheet is hidden in the UI, false if it's visible.",
- "type": "boolean"
- },
- "gridProperties": {
- "description": "Additional properties of the sheet if this sheet is a grid.\n(If the sheet is an object sheet, containing a chart or image, then\nthis field will be absent.)\nWhen writing it is an error to set any grid properties on non-grid sheets.",
- "$ref": "GridProperties"
- },
- "sheetType": {
- "description": "The type of sheet. Defaults to GRID.\nThis field cannot be changed once set.",
- "type": "string",
- "enumDescriptions": [
- "Default value, do not use.",
- "The sheet is a grid.",
- "The sheet has no grid and instead has an object like a chart or image."
- ],
- "enum": [
- "SHEET_TYPE_UNSPECIFIED",
- "GRID",
- "OBJECT"
- ]
- }
- },
- "id": "SheetProperties",
- "description": "Properties of a sheet.",
- "type": "object"
- },
- "UpdateDimensionPropertiesRequest": {
- "description": "Updates properties of dimensions within the specified range.",
- "type": "object",
- "properties": {
- "range": {
- "$ref": "DimensionRange",
- "description": "The rows or columns to update."
- },
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- },
- "properties": {
- "$ref": "DimensionProperties",
- "description": "Properties to update."
- }
- },
- "id": "UpdateDimensionPropertiesRequest"
- },
- "SourceAndDestination": {
- "description": "A combination of a source range and how to extend that source.",
- "type": "object",
- "properties": {
- "fillLength": {
- "format": "int32",
- "description": "The number of rows or columns that data should be filled into.\nPositive numbers expand beyond the last row or last column\nof the source. Negative numbers expand before the first row\nor first column of the source.",
- "type": "integer"
- },
- "source": {
- "$ref": "GridRange",
- "description": "The location of the data to use as the source of the autofill."
- },
- "dimension": {
- "enumDescriptions": [
- "The default value, do not use.",
- "Operates on the rows of a sheet.",
- "Operates on the columns of a sheet."
- ],
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ],
- "description": "The dimension that data should be filled into.",
- "type": "string"
- }
- },
- "id": "SourceAndDestination"
- },
- "OrgChartSpec": {
- "description": "An \u003ca href=\"/chart/interactive/docs/gallery/orgchart\"\u003eorg chart\u003c/a\u003e.\nOrg charts require a unique set of labels in labels and may\noptionally include parent_labels and tooltips.\nparent_labels contain, for each node, the label identifying the parent\nnode. tooltips contain, for each node, an optional tooltip.\n\nFor example, to describe an OrgChart with Alice as the CEO, Bob as the\nPresident (reporting to Alice) and Cathy as VP of Sales (also reporting to\nAlice), have labels contain \"Alice\", \"Bob\", \"Cathy\",\nparent_labels contain \"\", \"Alice\", \"Alice\" and tooltips contain\n\"CEO\", \"President\", \"VP Sales\".",
- "type": "object",
- "properties": {
- "tooltips": {
- "$ref": "ChartData",
- "description": "The data containing the tooltip for the corresponding node. A blank value\nresults in no tooltip being displayed for the node.\nThis field is optional."
- },
- "selectedNodeColor": {
- "$ref": "Color",
- "description": "The color of the selected org chart nodes."
- },
- "parentLabels": {
- "description": "The data containing the label of the parent for the corresponding node.\nA blank value indicates that the node has no parent and is a top-level\nnode.\nThis field is optional.",
- "$ref": "ChartData"
- },
- "nodeSize": {
- "description": "The size of the org chart nodes.",
- "type": "string",
- "enumDescriptions": [
- "Default value, do not use.",
- "The small org chart node size.",
- "The medium org chart node size.",
- "The large org chart node size."
- ],
- "enum": [
- "ORG_CHART_LABEL_SIZE_UNSPECIFIED",
- "SMALL",
- "MEDIUM",
- "LARGE"
+ "NO_LEGEND"
]
},
- "labels": {
- "$ref": "ChartData",
- "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique."
- },
- "nodeColor": {
- "description": "The color of the org chart nodes.",
- "$ref": "Color"
- }
- },
- "id": "OrgChartSpec"
- },
- "FilterView": {
- "description": "A filter view.",
- "type": "object",
- "properties": {
- "namedRangeId": {
- "description": "The named range this filter view is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.",
- "type": "string"
- },
- "filterViewId": {
- "format": "int32",
- "description": "The ID of the filter view.",
- "type": "integer"
- },
- "criteria": {
- "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.",
- "type": "object",
- "additionalProperties": {
- "$ref": "FilterCriteria"
- }
- },
- "title": {
- "description": "The name of the filter view.",
- "type": "string"
- },
- "range": {
- "description": "The range this filter view covers.\n\nWhen writing, only one of range or named_range_id\nmay be set.",
- "$ref": "GridRange"
- },
- "sortSpecs": {
- "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.",
+ "domains": {
+ "description": "The domain of data this is charting.\nOnly a single domain is supported.",
"items": {
- "$ref": "SortSpec"
+ "$ref": "BasicChartDomain"
},
"type": "array"
}
- },
- "id": "FilterView"
- },
- "BandingProperties": {
- "description": "Properties referring a single dimension (either row or column). If both\nBandedRange.row_properties and BandedRange.column_properties are\nset, the fill colors are applied to cells according to the following rules:\n\n* header_color and footer_color take priority over band colors.\n* first_band_color takes priority over second_band_color.\n* row_properties takes priority over column_properties.\n\nFor example, the first row color takes priority over the first column\ncolor, but the first column color takes priority over the second row color.\nSimilarly, the row header takes priority over the column header in the\ntop left cell, but the column header takes priority over the first row\ncolor if the row header is not set.",
- "type": "object",
- "properties": {
- "firstBandColor": {
- "$ref": "Color",
- "description": "The first color that is alternating. (Required)"
- },
- "secondBandColor": {
- "$ref": "Color",
- "description": "The second color that is alternating. (Required)"
- },
- "footerColor": {
- "description": "The color of the last row or column. If this field is not set, the last\nrow or column will be filled with either first_band_color or\nsecond_band_color, depending on the color of the previous row or\ncolumn.",
- "$ref": "Color"
- },
- "headerColor": {
- "description": "The color of the first row or column. If this field is set, the first\nrow or column will be filled with this color and the colors will\nalternate between first_band_color and second_band_color starting\nfrom the second row or column. Otherwise, the first row or column will be\nfilled with first_band_color and the colors will proceed to alternate\nas they normally would.",
- "$ref": "Color"
- }
- },
- "id": "BandingProperties"
- },
- "CandlestickSeries": {
- "description": "The series of a CandlestickData.",
- "type": "object",
- "properties": {
- "data": {
- "$ref": "ChartData",
- "description": "The data of the CandlestickSeries."
- }
- },
- "id": "CandlestickSeries"
- },
- "BasicFilter": {
- "properties": {
- "criteria": {
- "additionalProperties": {
- "$ref": "FilterCriteria"
- },
- "description": "The criteria for showing/hiding values per column.\nThe map's key is the column index, and the value is the criteria for\nthat column.",
- "type": "object"
- },
- "range": {
- "description": "The range the filter covers.",
- "$ref": "GridRange"
- },
- "sortSpecs": {
- "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.",
- "items": {
- "$ref": "SortSpec"
- },
- "type": "array"
- }
- },
- "id": "BasicFilter",
- "description": "The default filter associated with a sheet.",
- "type": "object"
- },
- "AddProtectedRangeResponse": {
- "description": "The result of adding a new protected range.",
- "type": "object",
- "properties": {
- "protectedRange": {
- "$ref": "ProtectedRange",
- "description": "The newly added protected range."
- }
- },
- "id": "AddProtectedRangeResponse"
- },
- "HistogramChartSpec": {
- "description": "A \u003ca href=\"/chart/interactive/docs/gallery/histogram\"\u003ehistogram chart\u003c/a\u003e.\nA histogram chart groups data items into bins, displaying each bin as a\ncolumn of stacked items. Histograms are used to display the distribution\nof a dataset. Each column of items represents a range into which those\nitems fall. The number of bins can be chosen automatically or specified\nexplicitly.",
- "type": "object",
- "properties": {
- "outlierPercentile": {
- "format": "double",
- "description": "The outlier percentile is used to ensure that outliers do not adversely\naffect the calculation of bucket sizes. For example, setting an outlier\npercentile of 0.05 indicates that the top and bottom 5% of values when\ncalculating buckets. The values are still included in the chart, they will\nbe added to the first or last buckets instead of their own buckets.\nMust be between 0.0 and 0.5.",
- "type": "number"
- },
- "showItemDividers": {
- "description": "Whether horizontal divider lines should be displayed between items in each\ncolumn.",
- "type": "boolean"
- },
- "series": {
- "description": "The series for a histogram may be either a single series of values to be\nbucketed or multiple series, each of the same length, containing the name\nof the series followed by the values to be bucketed for that series.",
- "items": {
- "$ref": "HistogramSeries"
- },
- "type": "array"
- },
- "legendPosition": {
- "enum": [
- "HISTOGRAM_CHART_LEGEND_POSITION_UNSPECIFIED",
- "BOTTOM_LEGEND",
- "LEFT_LEGEND",
- "RIGHT_LEGEND",
- "TOP_LEGEND",
- "NO_LEGEND",
- "INSIDE_LEGEND"
- ],
- "description": "The position of the chart legend.",
- "type": "string",
- "enumDescriptions": [
- "Default value, do not use.",
- "The legend is rendered on the bottom of the chart.",
- "The legend is rendered on the left of the chart.",
- "The legend is rendered on the right of the chart.",
- "The legend is rendered on the top of the chart.",
- "No legend is rendered.",
- "The legend is rendered inside the chart area."
- ]
- },
- "bucketSize": {
- "format": "double",
- "description": "By default the bucket size (the range of values stacked in a single\ncolumn) is chosen automatically, but it may be overridden here.\nE.g., A bucket size of 1.5 results in buckets from 0 - 1.5, 1.5 - 3.0, etc.\nCannot be negative.\nThis field is optional.",
- "type": "number"
- }
- },
- "id": "HistogramChartSpec"
- },
- "UpdateValuesResponse": {
- "properties": {
- "updatedRows": {
- "format": "int32",
- "description": "The number of rows where at least one cell in the row was updated.",
- "type": "integer"
- },
- "updatedData": {
- "description": "The values of the cells after updates were applied.\nThis is only included if the request's `includeValuesInResponse` field\nwas `true`.",
- "$ref": "ValueRange"
- },
- "updatedColumns": {
- "format": "int32",
- "description": "The number of columns where at least one cell in the column was updated.",
- "type": "integer"
- },
- "spreadsheetId": {
- "description": "The spreadsheet the updates were applied to.",
- "type": "string"
- },
- "updatedRange": {
- "description": "The range (in A1 notation) that updates were applied to.",
- "type": "string"
- },
- "updatedCells": {
- "format": "int32",
- "description": "The number of cells updated.",
- "type": "integer"
- }
- },
- "id": "UpdateValuesResponse",
- "description": "The response when updating a range of values in a spreadsheet.",
- "type": "object"
- },
- "ErrorValue": {
- "description": "An error in a cell.",
- "type": "object",
- "properties": {
- "type": {
- "enumDescriptions": [
- "The default error type, do not use this.",
- "Corresponds to the `#ERROR!` error.",
- "Corresponds to the `#NULL!` error.",
- "Corresponds to the `#DIV/0` error.",
- "Corresponds to the `#VALUE!` error.",
- "Corresponds to the `#REF!` error.",
- "Corresponds to the `#NAME?` error.",
- "Corresponds to the `#NUM`! error.",
- "Corresponds to the `#N/A` error.",
- "Corresponds to the `Loading...` state."
- ],
- "enum": [
- "ERROR_TYPE_UNSPECIFIED",
- "ERROR",
- "NULL_VALUE",
- "DIVIDE_BY_ZERO",
- "VALUE",
- "REF",
- "NAME",
- "NUM",
- "N_A",
- "LOADING"
- ],
- "description": "The type of error.",
- "type": "string"
- },
- "message": {
- "description": "A message with more information about the error\n(in the spreadsheet's locale).",
- "type": "string"
- }
- },
- "id": "ErrorValue"
- },
- "PivotValue": {
- "description": "The definition of how a value in a pivot table should be calculated.",
- "type": "object",
- "properties": {
- "formula": {
- "description": "A custom formula to calculate the value. The formula must start\nwith an `=` character.",
- "type": "string"
- },
- "summarizeFunction": {
- "enum": [
- "PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED",
- "SUM",
- "COUNTA",
- "COUNT",
- "COUNTUNIQUE",
- "AVERAGE",
- "MAX",
- "MIN",
- "MEDIAN",
- "PRODUCT",
- "STDEV",
- "STDEVP",
- "VAR",
- "VARP",
- "CUSTOM"
- ],
- "description": "A function to summarize the value.\nIf formula is set, the only supported values are\nSUM and\nCUSTOM.\nIf sourceColumnOffset is set, then `CUSTOM`\nis not supported.",
- "type": "string",
- "enumDescriptions": [
- "The default, do not use.",
- "Corresponds to the `SUM` function.",
- "Corresponds to the `COUNTA` function.",
- "Corresponds to the `COUNT` function.",
- "Corresponds to the `COUNTUNIQUE` function.",
- "Corresponds to the `AVERAGE` function.",
- "Corresponds to the `MAX` function.",
- "Corresponds to the `MIN` function.",
- "Corresponds to the `MEDIAN` function.",
- "Corresponds to the `PRODUCT` function.",
- "Corresponds to the `STDEV` function.",
- "Corresponds to the `STDEVP` function.",
- "Corresponds to the `VAR` function.",
- "Corresponds to the `VARP` function.",
- "Indicates the formula should be used as-is.\nOnly valid if PivotValue.formula was set."
- ]
- },
- "sourceColumnOffset": {
- "format": "int32",
- "description": "The column offset of the source range that this value reads from.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this value refers to column `C`, whereas the offset `1` would\nrefer to column `D`.",
- "type": "integer"
- },
- "name": {
- "description": "A name to use for the value. This is only used if formula was set.\nOtherwise, the column name is used.",
- "type": "string"
- }
- },
- "id": "PivotValue"
- },
- "CopySheetToAnotherSpreadsheetRequest": {
- "properties": {
- "destinationSpreadsheetId": {
- "description": "The ID of the spreadsheet to copy the sheet to.",
- "type": "string"
- }
- },
- "id": "CopySheetToAnotherSpreadsheetRequest",
- "description": "The request to copy a sheet across spreadsheets.",
- "type": "object"
- },
- "PivotGroupSortValueBucket": {
- "description": "Information about which values in a pivot group should be used for sorting.",
- "type": "object",
- "properties": {
- "valuesIndex": {
- "format": "int32",
- "description": "The offset in the PivotTable.values list which the values in this\ngrouping should be sorted by.",
- "type": "integer"
- },
- "buckets": {
- "description": "Determines the bucket from which values are chosen to sort.\n\nFor example, in a pivot table with one row group & two column groups,\nthe row group can list up to two values. The first value corresponds\nto a value within the first column group, and the second value\ncorresponds to a value in the second column group. If no values\nare listed, this would indicate that the row should be sorted according\nto the \"Grand Total\" over the column groups. If a single value is listed,\nthis would correspond to using the \"Total\" of that bucket.",
- "items": {
- "$ref": "ExtendedValue"
- },
- "type": "array"
- }
- },
- "id": "PivotGroupSortValueBucket"
- },
- "CandlestickChartSpec": {
- "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.",
- "type": "object",
- "properties": {
- "data": {
- "description": "The Candlestick chart data.\nOnly one CandlestickData is supported.",
- "items": {
- "$ref": "CandlestickData"
- },
- "type": "array"
- },
- "domain": {
- "description": "The domain data (horizontal axis) for the candlestick chart. String data\nwill be treated as discrete labels, other data will be treated as\ncontinuous values.",
- "$ref": "CandlestickDomain"
- }
- },
- "id": "CandlestickChartSpec"
- },
- "CandlestickData": {
- "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.",
- "type": "object",
- "properties": {
- "openSeries": {
- "description": "The range data (vertical axis) for the open/initial value for each\ncandle. This is the bottom of the candle body. If less than the close\nvalue the candle will be filled. Otherwise the candle will be hollow.",
- "$ref": "CandlestickSeries"
- },
- "highSeries": {
- "$ref": "CandlestickSeries",
- "description": "The range data (vertical axis) for the high/maximum value for each\ncandle. This is the top of the candle's center line."
- },
- "closeSeries": {
- "description": "The range data (vertical axis) for the close/final value for each candle.\nThis is the top of the candle body. If greater than the open value the\ncandle will be filled. Otherwise the candle will be hollow.",
- "$ref": "CandlestickSeries"
- },
- "lowSeries": {
- "$ref": "CandlestickSeries",
- "description": "The range data (vertical axis) for the low/minimum value for each candle.\nThis is the bottom of the candle's center line."
- }
- },
- "id": "CandlestickData"
- },
- "EmbeddedObjectPosition": {
- "description": "The position of an embedded object such as a chart.",
- "type": "object",
- "properties": {
- "newSheet": {
- "description": "If true, the embedded object will be put on a new sheet whose ID\nis chosen for you. Used only when writing.",
- "type": "boolean"
- },
- "overlayPosition": {
- "$ref": "OverlayPosition",
- "description": "The position at which the object is overlaid on top of a grid."
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet this is on. Set only if the embedded object\nis on its own sheet. Must be non-negative.",
- "type": "integer"
- }
- },
- "id": "EmbeddedObjectPosition"
- },
- "DeleteProtectedRangeRequest": {
- "description": "Deletes the protected range with the given ID.",
- "type": "object",
- "properties": {
- "protectedRangeId": {
- "format": "int32",
- "description": "The ID of the protected range to delete.",
- "type": "integer"
- }
- },
- "id": "DeleteProtectedRangeRequest"
- },
- "AutoFillRequest": {
- "description": "Fills in more data based on existing data.",
- "type": "object",
- "properties": {
- "range": {
- "description": "The range to autofill. This will examine the range and detect\nthe location that has data and automatically fill that data\nin to the rest of the range.",
- "$ref": "GridRange"
- },
- "useAlternateSeries": {
- "description": "True if we should generate data with the \"alternate\" series.\nThis differs based on the type and amount of source data.",
- "type": "boolean"
- },
- "sourceAndDestination": {
- "description": "The source and destination areas to autofill.\nThis explicitly lists the source of the autofill and where to\nextend that data.",
- "$ref": "SourceAndDestination"
- }
- },
- "id": "AutoFillRequest"
- },
- "GradientRule": {
- "description": "A rule that applies a gradient color scale format, based on\nthe interpolation points listed. The format of a cell will vary\nbased on its contents as compared to the values of the interpolation\npoints.",
- "type": "object",
- "properties": {
- "midpoint": {
- "$ref": "InterpolationPoint",
- "description": "An optional midway interpolation point."
- },
- "maxpoint": {
- "$ref": "InterpolationPoint",
- "description": "The final interpolation point."
- },
- "minpoint": {
- "description": "The starting interpolation point.",
- "$ref": "InterpolationPoint"
- }
- },
- "id": "GradientRule"
- },
- "ClearValuesRequest": {
- "properties": {},
- "id": "ClearValuesRequest",
- "description": "The request for clearing a range of values in a spreadsheet.",
- "type": "object"
- },
- "SetBasicFilterRequest": {
- "properties": {
- "filter": {
- "description": "The filter to set.",
- "$ref": "BasicFilter"
- }
- },
- "id": "SetBasicFilterRequest",
- "description": "Sets the basic filter associated with a sheet.",
- "type": "object"
- },
- "InterpolationPoint": {
- "description": "A single interpolation point on a gradient conditional format.\nThese pin the gradient color scale according to the color,\ntype and value chosen.",
- "type": "object",
- "properties": {
- "color": {
- "description": "The color this interpolation point should use.",
- "$ref": "Color"
- },
- "type": {
- "enumDescriptions": [
- "The default value, do not use.",
- "The interpolation point will use the minimum value in the\ncells over the range of the conditional format.",
- "The interpolation point will use the maximum value in the\ncells over the range of the conditional format.",
- "The interpolation point will use exactly the value in\nInterpolationPoint.value.",
- "The interpolation point will be the given percentage over\nall the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=(MAX(FLATTEN(range)) * (value / 100))\n + (MIN(FLATTEN(range)) * (1 - (value / 100)))`\n(where errors in the range are ignored when flattening).",
- "The interpolation point will be the given percentile\nover all the cells in the range of the conditional format.\nThis is equivalent to NUMBER if the value was:\n`=PERCENTILE(FLATTEN(range), value / 100)`\n(where errors in the range are ignored when flattening)."
- ],
- "enum": [
- "INTERPOLATION_POINT_TYPE_UNSPECIFIED",
- "MIN",
- "MAX",
- "NUMBER",
- "PERCENT",
- "PERCENTILE"
- ],
- "description": "How the value should be interpreted.",
- "type": "string"
- },
- "value": {
- "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX.",
- "type": "string"
- }
- },
- "id": "InterpolationPoint"
- },
- "DeleteEmbeddedObjectRequest": {
- "description": "Deletes the embedded object with the given ID.",
- "type": "object",
- "properties": {
- "objectId": {
- "format": "int32",
- "description": "The ID of the embedded object to delete.",
- "type": "integer"
- }
- },
- "id": "DeleteEmbeddedObjectRequest"
- },
- "FindReplaceResponse": {
- "description": "The result of the find/replace.",
- "type": "object",
- "properties": {
- "formulasChanged": {
- "format": "int32",
- "description": "The number of formula cells changed.",
- "type": "integer"
- },
- "valuesChanged": {
- "format": "int32",
- "description": "The number of non-formula cells changed.",
- "type": "integer"
- },
- "occurrencesChanged": {
- "format": "int32",
- "description": "The number of occurrences (possibly multiple within a cell) changed.\nFor example, if replacing `\"e\"` with `\"o\"` in `\"Google Sheets\"`, this would\nbe `\"3\"` because `\"Google Sheets\"` -\u003e `\"Googlo Shoots\"`.",
- "type": "integer"
- },
- "rowsChanged": {
- "format": "int32",
- "description": "The number of rows changed.",
- "type": "integer"
- },
- "sheetsChanged": {
- "format": "int32",
- "description": "The number of sheets changed.",
- "type": "integer"
- }
- },
- "id": "FindReplaceResponse"
- },
- "DeleteSheetRequest": {
- "properties": {
- "sheetId": {
- "format": "int32",
- "description": "The ID of the sheet to delete.",
- "type": "integer"
- }
- },
- "id": "DeleteSheetRequest",
- "description": "Deletes the requested sheet.",
- "type": "object"
- },
- "DuplicateFilterViewRequest": {
- "description": "Duplicates a particular filter view.",
- "type": "object",
- "properties": {
- "filterId": {
- "format": "int32",
- "description": "The ID of the filter being duplicated.",
- "type": "integer"
- }
- },
- "id": "DuplicateFilterViewRequest"
- },
- "UpdateConditionalFormatRuleResponse": {
- "description": "The result of updating a conditional format rule.",
- "type": "object",
- "properties": {
- "oldRule": {
- "$ref": "ConditionalFormatRule",
- "description": "The old (deleted) rule. Not set if a rule was moved\n(because it is the same as new_rule)."
- },
- "newIndex": {
- "format": "int32",
- "description": "The index of the new rule.",
- "type": "integer"
- },
- "newRule": {
- "$ref": "ConditionalFormatRule",
- "description": "The new rule that replaced the old rule (if replacing),\nor the rule that was moved (if moved)"
- },
- "oldIndex": {
- "format": "int32",
- "description": "The old index of the rule. Not set if a rule was replaced\n(because it is the same as new_index).",
- "type": "integer"
- }
- },
- "id": "UpdateConditionalFormatRuleResponse"
- },
- "ConditionValue": {
- "description": "The value of the condition.",
- "type": "object",
- "properties": {
- "userEnteredValue": {
- "description": "A value the condition is based on.\nThe value will be parsed as if the user typed into a cell.\nFormulas are supported (and must begin with an `=`).",
- "type": "string"
- },
- "relativeDate": {
- "enumDescriptions": [
- "Default value, do not use.",
- "The value is one year before today.",
- "The value is one month before today.",
- "The value is one week before today.",
- "The value is yesterday.",
- "The value is today.",
- "The value is tomorrow."
- ],
- "enum": [
- "RELATIVE_DATE_UNSPECIFIED",
- "PAST_YEAR",
- "PAST_MONTH",
- "PAST_WEEK",
- "YESTERDAY",
- "TODAY",
- "TOMORROW"
- ],
- "description": "A relative date (based on the current date).\nValid only if the type is\nDATE_BEFORE,\nDATE_AFTER,\nDATE_ON_OR_BEFORE or\nDATE_ON_OR_AFTER.\n\nRelative dates are not supported in data validation.\nThey are supported only in conditional formatting and\nconditional filters.",
- "type": "string"
- }
- },
- "id": "ConditionValue"
- },
- "DuplicateSheetRequest": {
- "description": "Duplicates the contents of a sheet.",
- "type": "object",
- "properties": {
- "insertSheetIndex": {
- "format": "int32",
- "description": "The zero-based index where the new sheet should be inserted.\nThe index of all sheets after this are incremented.",
- "type": "integer"
- },
- "newSheetName": {
- "description": "The name of the new sheet. If empty, a new name is chosen for you.",
- "type": "string"
- },
- "sourceSheetId": {
- "format": "int32",
- "description": "The sheet to duplicate.",
- "type": "integer"
- },
- "newSheetId": {
- "format": "int32",
- "description": "If set, the ID of the new sheet. If not set, an ID is chosen.\nIf set, the ID must not conflict with any existing sheet ID.\nIf set, it must be non-negative.",
- "type": "integer"
- }
- },
- "id": "DuplicateSheetRequest"
- },
- "ExtendedValue": {
- "properties": {
- "formulaValue": {
- "description": "Represents a formula.",
- "type": "string"
- },
- "boolValue": {
- "description": "Represents a boolean value.",
- "type": "boolean"
- },
- "stringValue": {
- "description": "Represents a string value.\nLeading single quotes are not included. For example, if the user typed\n`'123` into the UI, this would be represented as a `stringValue` of\n`\"123\"`.",
- "type": "string"
- },
- "numberValue": {
- "format": "double",
- "description": "Represents a double value.\nNote: Dates, Times and DateTimes are represented as doubles in\n\"serial number\" format.",
- "type": "number"
- },
- "errorValue": {
- "description": "Represents an error.\nThis field is read-only.",
- "$ref": "ErrorValue"
- }
- },
- "id": "ExtendedValue",
- "description": "The kinds of value that a cell in a spreadsheet can have.",
- "type": "object"
- },
- "AddChartRequest": {
- "properties": {
- "chart": {
- "$ref": "EmbeddedChart",
- "description": "The chart that should be added to the spreadsheet, including the position\nwhere it should be placed. The chartId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a chart that already exists.)"
- }
- },
- "id": "AddChartRequest",
- "description": "Adds a chart to a sheet in the spreadsheet.",
- "type": "object"
- },
- "Spreadsheet": {
- "description": "Resource that represents a spreadsheet.",
- "type": "object",
- "properties": {
- "properties": {
- "description": "Overall properties of a spreadsheet.",
- "$ref": "SpreadsheetProperties"
- },
- "namedRanges": {
- "description": "The named ranges defined in a spreadsheet.",
- "items": {
- "$ref": "NamedRange"
- },
- "type": "array"
- },
- "sheets": {
- "description": "The sheets that are part of a spreadsheet.",
- "items": {
- "$ref": "Sheet"
- },
- "type": "array"
- },
- "spreadsheetId": {
- "description": "The ID of the spreadsheet.\nThis field is read-only.",
- "type": "string"
- },
- "spreadsheetUrl": {
- "description": "The url of the spreadsheet.\nThis field is read-only.",
- "type": "string"
- }
- },
- "id": "Spreadsheet"
- },
- "BatchClearValuesResponse": {
- "properties": {
- "spreadsheetId": {
- "description": "The spreadsheet the updates were applied to.",
- "type": "string"
- },
- "clearedRanges": {
- "description": "The ranges that were cleared, in A1 notation.\n(If the requests were for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual ranges\n that were cleared, bounded to the sheet's limits.)",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "BatchClearValuesResponse",
- "description": "The response when clearing a range of values in a spreadsheet.",
- "type": "object"
- },
- "HistogramSeries": {
- "description": "A histogram series containing the series color and data.",
- "type": "object",
- "properties": {
- "barColor": {
- "$ref": "Color",
- "description": "The color of the column representing this series in each bucket.\nThis field is optional."
- },
- "data": {
- "$ref": "ChartData",
- "description": "The data for this histogram series."
- }
- },
- "id": "HistogramSeries"
- },
- "BandedRange": {
- "description": "A banded (alternating colors) range in a sheet.",
- "type": "object",
- "properties": {
- "range": {
- "$ref": "GridRange",
- "description": "The range over which these properties are applied."
- },
- "bandedRangeId": {
- "format": "int32",
- "description": "The id of the banded range.",
- "type": "integer"
- },
- "columnProperties": {
- "description": "Properties for column bands. These properties will be applied on a column-\nby-column basis throughout all the columns in the range. At least one of\nrow_properties or column_properties must be specified.",
- "$ref": "BandingProperties"
- },
- "rowProperties": {
- "description": "Properties for row bands. These properties will be applied on a row-by-row\nbasis throughout all the rows in the range. At least one of\nrow_properties or column_properties must be specified.",
- "$ref": "BandingProperties"
- }
- },
- "id": "BandedRange"
- },
- "UpdateProtectedRangeRequest": {
- "description": "Updates an existing protected range with the specified\nprotectedRangeId.",
- "type": "object",
- "properties": {
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated. At least one field must be specified.\nThe root `protectedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- },
- "protectedRange": {
- "description": "The protected range to update with the new properties.",
- "$ref": "ProtectedRange"
- }
- },
- "id": "UpdateProtectedRangeRequest"
- },
- "TextFormat": {
- "description": "The format of a run of text in a cell.\nAbsent values indicate that the field isn't specified.",
- "type": "object",
- "properties": {
- "foregroundColor": {
- "description": "The foreground color of the text.",
- "$ref": "Color"
- },
- "bold": {
- "description": "True if the text is bold.",
- "type": "boolean"
- },
- "fontFamily": {
- "description": "The font family.",
- "type": "string"
- },
- "strikethrough": {
- "description": "True if the text has a strikethrough.",
- "type": "boolean"
- },
- "italic": {
- "description": "True if the text is italicized.",
- "type": "boolean"
- },
- "fontSize": {
- "format": "int32",
- "description": "The size of the font.",
- "type": "integer"
- },
- "underline": {
- "description": "True if the text is underlined.",
- "type": "boolean"
- }
- },
- "id": "TextFormat"
- },
- "AddSheetResponse": {
- "description": "The result of adding a sheet.",
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "SheetProperties",
- "description": "The properties of the newly added sheet."
- }
- },
- "id": "AddSheetResponse"
- },
- "AddFilterViewResponse": {
- "properties": {
- "filter": {
- "$ref": "FilterView",
- "description": "The newly added filter view."
- }
- },
- "id": "AddFilterViewResponse",
- "description": "The result of adding a filter view.",
- "type": "object"
- },
- "IterativeCalculationSettings": {
- "description": "Settings to control how circular dependencies are resolved with iterative\ncalculation.",
- "type": "object",
- "properties": {
- "convergenceThreshold": {
- "format": "double",
- "description": "When iterative calculation is enabled and successive results differ by\nless than this threshold value, the calculation rounds stop.",
- "type": "number"
- },
- "maxIterations": {
- "format": "int32",
- "description": "When iterative calculation is enabled, the maximum number of calculation\nrounds to perform.",
- "type": "integer"
- }
- },
- "id": "IterativeCalculationSettings"
- },
- "OverlayPosition": {
- "description": "The location an object is overlaid on top of a grid.",
- "type": "object",
- "properties": {
- "widthPixels": {
- "format": "int32",
- "description": "The width of the object, in pixels. Defaults to 600.",
- "type": "integer"
- },
- "offsetXPixels": {
- "format": "int32",
- "description": "The horizontal offset, in pixels, that the object is offset\nfrom the anchor cell.",
- "type": "integer"
- },
- "anchorCell": {
- "description": "The cell the object is anchored to.",
- "$ref": "GridCoordinate"
- },
- "heightPixels": {
- "format": "int32",
- "description": "The height of the object, in pixels. Defaults to 371.",
- "type": "integer"
- },
- "offsetYPixels": {
- "format": "int32",
- "description": "The vertical offset, in pixels, that the object is offset\nfrom the anchor cell.",
- "type": "integer"
- }
- },
- "id": "OverlayPosition"
- },
- "SpreadsheetProperties": {
- "description": "Properties of a spreadsheet.",
- "type": "object",
- "properties": {
- "locale": {
- "description": "The locale of the spreadsheet in one of the following formats:\n\n* an ISO 639-1 language code such as `en`\n\n* an ISO 639-2 language code such as `fil`, if no 639-1 code exists\n\n* a combination of the ISO language code and country code, such as `en_US`\n\nNote: when updating this field, not all locales/languages are supported.",
- "type": "string"
- },
- "iterativeCalculationSettings": {
- "$ref": "IterativeCalculationSettings",
- "description": "Determines whether and how circular references are resolved with iterative\ncalculation. Absence of this field means that circular references will\nresult in calculation errors."
- },
- "autoRecalc": {
- "enumDescriptions": [
- "Default value. This value must not be used.",
- "Volatile functions are updated on every change.",
- "Volatile functions are updated on every change and every minute.",
- "Volatile functions are updated on every change and hourly."
- ],
- "enum": [
- "RECALCULATION_INTERVAL_UNSPECIFIED",
- "ON_CHANGE",
- "MINUTE",
- "HOUR"
- ],
- "description": "The amount of time to wait before volatile functions are recalculated.",
- "type": "string"
- },
- "defaultFormat": {
- "description": "The default format of all cells in the spreadsheet.\nCellData.effectiveFormat will not be set if the\ncell's format is equal to this default format.\nThis field is read-only.",
- "$ref": "CellFormat"
- },
- "title": {
- "description": "The title of the spreadsheet.",
- "type": "string"
- },
- "timeZone": {
- "description": "The time zone of the spreadsheet, in CLDR format such as\n`America/New_York`. If the time zone isn't recognized, this may\nbe a custom time zone such as `GMT-07:00`.",
- "type": "string"
- }
- },
- "id": "SpreadsheetProperties"
- },
- "RepeatCellRequest": {
- "description": "Updates all cells in the range to the values in the given Cell object.\nOnly the fields listed in the fields field are updated; others are\nunchanged.\n\nIf writing a cell with a formula, the formula's ranges will automatically\nincrement for each field in the range.\nFor example, if writing a cell with formula `=A1` into range B2:C4,\nB2 would be `=A1`, B3 would be `=A2`, B4 would be `=A3`,\nC2 would be `=B1`, C3 would be `=B2`, C4 would be `=B3`.\n\nTo keep the formula's ranges static, use the `$` indicator.\nFor example, use the formula `=$A$1` to prevent both the row and the\ncolumn from incrementing.",
- "type": "object",
- "properties": {
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated. At least one field must be specified.\nThe root `cell` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- },
- "cell": {
- "description": "The data to write.",
- "$ref": "CellData"
- },
- "range": {
- "$ref": "GridRange",
- "description": "The range to repeat the cell in."
- }
- },
- "id": "RepeatCellRequest"
- },
- "AddChartResponse": {
- "description": "The result of adding a chart to a spreadsheet.",
- "type": "object",
- "properties": {
- "chart": {
- "$ref": "EmbeddedChart",
- "description": "The newly added chart."
- }
- },
- "id": "AddChartResponse"
- },
- "InsertDimensionRequest": {
- "description": "Inserts rows or columns in a sheet at a particular index.",
- "type": "object",
- "properties": {
- "range": {
- "description": "The dimensions to insert. Both the start and end indexes must be bounded.",
- "$ref": "DimensionRange"
- },
- "inheritFromBefore": {
- "description": "Whether dimension properties should be extended from the dimensions\nbefore or after the newly inserted dimensions.\nTrue to inherit from the dimensions before (in which case the start\nindex must be greater than 0), and false to inherit from the dimensions\nafter.\n\nFor example, if row index 0 has red background and row index 1\nhas a green background, then inserting 2 rows at index 1 can inherit\neither the green or red background. If `inheritFromBefore` is true,\nthe two new rows will be red (because the row before the insertion point\nwas red), whereas if `inheritFromBefore` is false, the two new rows will\nbe green (because the row after the insertion point was green).",
- "type": "boolean"
- }
- },
- "id": "InsertDimensionRequest"
- },
- "UpdateSpreadsheetPropertiesRequest": {
- "description": "Updates properties of a spreadsheet.",
- "type": "object",
- "properties": {
- "properties": {
- "description": "The properties to update.",
- "$ref": "SpreadsheetProperties"
- },
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated. At least one field must be specified.\nThe root 'properties' is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- }
- },
- "id": "UpdateSpreadsheetPropertiesRequest"
- },
- "BatchUpdateValuesRequest": {
- "description": "The request for updating more than one range of values in a spreadsheet.",
- "type": "object",
- "properties": {
- "responseValueRenderOption": {
- "enumDescriptions": [
- "Values will be calculated & formatted in the reply according to the\ncell's formatting. Formatting is based on the spreadsheet's locale,\nnot the requesting user's locale.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return `\"$1.23\"`.",
- "Values will be calculated, but not formatted in the reply.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen `A2` would return the number `1.23`.",
- "Values will not be calculated. The reply will include the formulas.\nFor example, if `A1` is `1.23` and `A2` is `=A1` and formatted as currency,\nthen A2 would return `\"=A1\"`."
- ],
- "enum": [
- "FORMATTED_VALUE",
- "UNFORMATTED_VALUE",
- "FORMULA"
- ],
- "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
- "type": "string"
- },
- "includeValuesInResponse": {
- "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values. The `updatedData` field within\neach of the BatchUpdateValuesResponse.responses will contain\nthe updated values. If the range to write was larger than than the range\nactually written, the response will include all values in the requested\nrange (excluding trailing empty rows and columns).",
- "type": "boolean"
- },
- "data": {
- "description": "The new values to apply to the spreadsheet.",
- "items": {
- "$ref": "ValueRange"
- },
- "type": "array"
- },
- "valueInputOption": {
- "enumDescriptions": [
- "Default input value. This value must not be used.",
- "The values the user has entered will not be parsed and will be stored\nas-is.",
- "The values will be parsed as if the user typed them into the UI.\nNumbers will stay as numbers, but strings may be converted to numbers,\ndates, etc. following the same rules that are applied when entering\ntext into a cell via the Google Sheets UI."
- ],
- "enum": [
- "INPUT_VALUE_OPTION_UNSPECIFIED",
- "RAW",
- "USER_ENTERED"
- ],
- "description": "How the input data should be interpreted.",
- "type": "string"
- },
- "responseDateTimeRenderOption": {
- "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is\nDateTimeRenderOption.SERIAL_NUMBER.",
- "type": "string",
- "enumDescriptions": [
- "Instructs date, time, datetime, and duration fields to be output\nas doubles in \"serial number\" format, as popularized by Lotus 1-2-3.\nThe whole number portion of the value (left of the decimal) counts\nthe days since December 30th 1899. The fractional portion (right of\nthe decimal) counts the time as a fraction of the day. For example,\nJanuary 1st 1900 at noon would be 2.5, 2 because it's 2 days after\nDecember 30st 1899, and .5 because noon is half a day. February 1st\n1900 at 3pm would be 33.625. This correctly treats the year 1900 as\nnot a leap year.",
- "Instructs date, time, datetime, and duration fields to be output\nas strings in their given number format (which is dependent\non the spreadsheet locale)."
- ],
- "enum": [
- "SERIAL_NUMBER",
- "FORMATTED_STRING"
- ]
- }
- },
- "id": "BatchUpdateValuesRequest"
- },
- "ProtectedRange": {
- "description": "A protected range.",
- "type": "object",
- "properties": {
- "range": {
- "$ref": "GridRange",
- "description": "The range that is being protected.\nThe range may be fully unbounded, in which case this is considered\na protected sheet.\n\nWhen writing, only one of range or named_range_id\nmay be set."
- },
- "editors": {
- "description": "The users and groups with edit access to the protected range.\nThis field is only visible to users with edit access to the protected\nrange and the document.\nEditors are not supported with warning_only protection.",
- "$ref": "Editors"
- },
- "description": {
- "description": "The description of this protected range.",
- "type": "string"
- },
- "unprotectedRanges": {
- "description": "The list of unprotected ranges within a protected sheet.\nUnprotected ranges are only supported on protected sheets.",
- "items": {
- "$ref": "GridRange"
- },
- "type": "array"
- },
- "namedRangeId": {
- "description": "The named range this protected range is backed by, if any.\n\nWhen writing, only one of range or named_range_id\nmay be set.",
- "type": "string"
- },
- "protectedRangeId": {
- "format": "int32",
- "description": "The ID of the protected range.\nThis field is read-only.",
- "type": "integer"
- },
- "warningOnly": {
- "description": "True if this protected range will show a warning when editing.\nWarning-based protection means that every user can edit data in the\nprotected range, except editing will prompt a warning asking the user\nto confirm the edit.\n\nWhen writing: if this field is true, then editors is ignored.\nAdditionally, if this field is changed from true to false and the\n`editors` field is not set (nor included in the field mask), then\nthe editors will be set to all the editors in the document.",
- "type": "boolean"
- },
- "requestingUserCanEdit": {
- "description": "True if the user who requested this protected range can edit the\nprotected area.\nThis field is read-only.",
- "type": "boolean"
- }
- },
- "id": "ProtectedRange"
- },
- "DimensionProperties": {
- "description": "Properties about a dimension.",
- "type": "object",
- "properties": {
- "pixelSize": {
- "format": "int32",
- "description": "The height (if a row) or width (if a column) of the dimension in pixels.",
- "type": "integer"
- },
- "hiddenByUser": {
- "description": "True if this dimension is explicitly hidden.",
- "type": "boolean"
- },
- "hiddenByFilter": {
- "description": "True if this dimension is being filtered.\nThis field is read-only.",
- "type": "boolean"
- }
- },
- "id": "DimensionProperties"
- },
- "NamedRange": {
- "description": "A named range.",
- "type": "object",
- "properties": {
- "namedRangeId": {
- "description": "The ID of the named range.",
- "type": "string"
- },
- "range": {
- "description": "The range this represents.",
- "$ref": "GridRange"
- },
- "name": {
- "description": "The name of the named range.",
- "type": "string"
- }
- },
- "id": "NamedRange"
- },
- "DimensionRange": {
- "properties": {
- "dimension": {
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ],
- "description": "The dimension of the span.",
- "type": "string",
- "enumDescriptions": [
- "The default value, do not use.",
- "Operates on the rows of a sheet.",
- "Operates on the columns of a sheet."
- ]
- },
- "endIndex": {
- "format": "int32",
- "description": "The end (exclusive) of the span, or not set if unbounded.",
- "type": "integer"
- },
- "startIndex": {
- "format": "int32",
- "description": "The start (inclusive) of the span, or not set if unbounded.",
- "type": "integer"
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet this span is on.",
- "type": "integer"
- }
- },
- "id": "DimensionRange",
- "description": "A range along a single dimension on a sheet.\nAll indexes are zero-based.\nIndexes are half open: the start index is inclusive\nand the end index is exclusive.\nMissing indexes indicate the range is unbounded on that side.",
- "type": "object"
- },
- "CutPasteRequest": {
- "description": "Moves data from the source to the destination.",
- "type": "object",
- "properties": {
- "pasteType": {
- "enum": [
- "PASTE_NORMAL",
- "PASTE_VALUES",
- "PASTE_FORMAT",
- "PASTE_NO_BORDERS",
- "PASTE_FORMULA",
- "PASTE_DATA_VALIDATION",
- "PASTE_CONDITIONAL_FORMATTING"
- ],
- "description": "What kind of data to paste. All the source data will be cut, regardless\nof what is pasted.",
- "type": "string",
- "enumDescriptions": [
- "Paste values, formulas, formats, and merges.",
- "Paste the values ONLY without formats, formulas, or merges.",
- "Paste the format and data validation only.",
- "Like PASTE_NORMAL but without borders.",
- "Paste the formulas only.",
- "Paste the data validation only.",
- "Paste the conditional formatting rules only."
- ]
- },
- "source": {
- "description": "The source data to cut.",
- "$ref": "GridRange"
- },
- "destination": {
- "$ref": "GridCoordinate",
- "description": "The top-left coordinate where the data should be pasted."
- }
- },
- "id": "CutPasteRequest"
- },
- "Borders": {
- "description": "The borders of the cell.",
- "type": "object",
- "properties": {
- "top": {
- "$ref": "Border",
- "description": "The top border of the cell."
- },
- "left": {
- "$ref": "Border",
- "description": "The left border of the cell."
- },
- "right": {
- "description": "The right border of the cell.",
- "$ref": "Border"
- },
- "bottom": {
- "description": "The bottom border of the cell.",
- "$ref": "Border"
- }
- },
- "id": "Borders"
- },
- "BasicChartSeries": {
- "description": "A single series of data in a chart.\nFor example, if charting stock prices over time, multiple series may exist,\none for the \"Open Price\", \"High Price\", \"Low Price\" and \"Close Price\".",
- "type": "object",
- "properties": {
- "type": {
- "enumDescriptions": [
- "Default value, do not use.",
- "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.",
- "A \u003ca href=\"/chart/interactive/docs/gallery/linechart\"\u003eline chart\u003c/a\u003e.",
- "An \u003ca href=\"/chart/interactive/docs/gallery/areachart\"\u003earea chart\u003c/a\u003e.",
- "A \u003ca href=\"/chart/interactive/docs/gallery/columnchart\"\u003ecolumn chart\u003c/a\u003e.",
- "A \u003ca href=\"/chart/interactive/docs/gallery/scatterchart\"\u003escatter chart\u003c/a\u003e.",
- "A \u003ca href=\"/chart/interactive/docs/gallery/combochart\"\u003ecombo chart\u003c/a\u003e.",
- "A \u003ca href=\"/chart/interactive/docs/gallery/steppedareachart\"\u003estepped area chart\u003c/a\u003e."
- ],
- "enum": [
- "BASIC_CHART_TYPE_UNSPECIFIED",
- "BAR",
- "LINE",
- "AREA",
- "COLUMN",
- "SCATTER",
- "COMBO",
- "STEPPED_AREA"
- ],
- "description": "The type of this series. Valid only if the\nchartType is\nCOMBO.\nDifferent types will change the way the series is visualized.\nOnly LINE, AREA,\nand COLUMN are supported.",
- "type": "string"
- },
- "series": {
- "$ref": "ChartData",
- "description": "The data being visualized in this chart series."
- },
- "targetAxis": {
- "enum": [
- "BASIC_CHART_AXIS_POSITION_UNSPECIFIED",
- "BOTTOM_AXIS",
- "LEFT_AXIS",
- "RIGHT_AXIS"
- ],
- "description": "The minor axis that will specify the range of values for this series.\nFor example, if charting stocks over time, the \"Volume\" series\nmay want to be pinned to the right with the prices pinned to the left,\nbecause the scale of trading volume is different than the scale of\nprices.\nIt is an error to specify an axis that isn't a valid minor axis\nfor the chart's type.",
- "type": "string",
- "enumDescriptions": [
- "Default value, do not use.",
- "The axis rendered at the bottom of a chart.\nFor most charts, this is the standard major axis.\nFor bar charts, this is a minor axis.",
- "The axis rendered at the left of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is the standard major axis.",
- "The axis rendered at the right of a chart.\nFor most charts, this is a minor axis.\nFor bar charts, this is an unusual major axis."
- ]
- }
- },
- "id": "BasicChartSeries"
- },
- "AutoResizeDimensionsRequest": {
- "properties": {
- "dimensions": {
- "description": "The dimensions to automatically resize.\nOnly COLUMNS are supported.",
- "$ref": "DimensionRange"
- }
- },
- "id": "AutoResizeDimensionsRequest",
- "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.",
- "type": "object"
- },
- "UpdateBordersRequest": {
- "description": "Updates the borders of a range.\nIf a field is not set in the request, that means the border remains as-is.\nFor example, with two subsequent UpdateBordersRequest:\n\n 1. range: A1:A5 `{ top: RED, bottom: WHITE }`\n 2. range: A1:A5 `{ left: BLUE }`\n\nThat would result in A1:A5 having a borders of\n`{ top: RED, bottom: WHITE, left: BLUE }`.\nIf you want to clear a border, explicitly set the style to\nNONE.",
- "type": "object",
- "properties": {
- "innerVertical": {
- "$ref": "Border",
- "description": "The vertical border to put within the range."
- },
- "right": {
- "description": "The border to put at the right of the range.",
- "$ref": "Border"
- },
- "range": {
- "$ref": "GridRange",
- "description": "The range whose borders should be updated."
- },
- "innerHorizontal": {
- "$ref": "Border",
- "description": "The horizontal border to put within the range."
- },
- "top": {
- "description": "The border to put at the top of the range.",
- "$ref": "Border"
- },
- "left": {
- "$ref": "Border",
- "description": "The border to put at the left of the range."
- },
- "bottom": {
- "description": "The border to put at the bottom of the range.",
- "$ref": "Border"
- }
- },
- "id": "UpdateBordersRequest"
- },
- "CellFormat": {
- "description": "The format of a cell.",
- "type": "object",
- "properties": {
- "numberFormat": {
- "$ref": "NumberFormat",
- "description": "A format describing how number values should be represented to the user."
- },
- "hyperlinkDisplayType": {
- "enum": [
- "HYPERLINK_DISPLAY_TYPE_UNSPECIFIED",
- "LINKED",
- "PLAIN_TEXT"
- ],
- "description": "How a hyperlink, if it exists, should be displayed in the cell.",
- "type": "string",
- "enumDescriptions": [
- "The default value: the hyperlink is rendered. Do not use this.",
- "A hyperlink should be explicitly rendered.",
- "A hyperlink should not be rendered."
- ]
- },
- "horizontalAlignment": {
- "enumDescriptions": [
- "The horizontal alignment is not specified. Do not use this.",
- "The text is explicitly aligned to the left of the cell.",
- "The text is explicitly aligned to the center of the cell.",
- "The text is explicitly aligned to the right of the cell."
- ],
- "enum": [
- "HORIZONTAL_ALIGN_UNSPECIFIED",
- "LEFT",
- "CENTER",
- "RIGHT"
- ],
- "description": "The horizontal alignment of the value in the cell.",
- "type": "string"
- },
- "textFormat": {
- "description": "The format of the text in the cell (unless overridden by a format run).",
- "$ref": "TextFormat"
- },
- "backgroundColor": {
- "description": "The background color of the cell.",
- "$ref": "Color"
- },
- "verticalAlignment": {
- "description": "The vertical alignment of the value in the cell.",
- "type": "string",
- "enumDescriptions": [
- "The vertical alignment is not specified. Do not use this.",
- "The text is explicitly aligned to the top of the cell.",
- "The text is explicitly aligned to the middle of the cell.",
- "The text is explicitly aligned to the bottom of the cell."
- ],
- "enum": [
- "VERTICAL_ALIGN_UNSPECIFIED",
- "TOP",
- "MIDDLE",
- "BOTTOM"
- ]
- },
- "padding": {
- "$ref": "Padding",
- "description": "The padding of the cell."
- },
- "textDirection": {
- "enumDescriptions": [
- "The text direction is not specified. Do not use this.",
- "The text direction of left-to-right was set by the user.",
- "The text direction of right-to-left was set by the user."
- ],
- "enum": [
- "TEXT_DIRECTION_UNSPECIFIED",
- "LEFT_TO_RIGHT",
- "RIGHT_TO_LEFT"
- ],
- "description": "The direction of the text in the cell.",
- "type": "string"
- },
- "borders": {
- "description": "The borders of the cell.",
- "$ref": "Borders"
- },
- "textRotation": {
- "$ref": "TextRotation",
- "description": "The rotation applied to text in a cell"
- },
- "wrapStrategy": {
- "enumDescriptions": [
- "The default value, do not use.",
- "Lines that are longer than the cell width will be written in the next\ncell over, so long as that cell is empty. If the next cell over is\nnon-empty, this behaves the same as CLIP. The text will never wrap\nto the next line unless the user manually inserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline that is very long. \u003c- Text continues into next cell\n | Next newline. |",
- "This wrap strategy represents the old Google Sheets wrap strategy where\nwords that are longer than a line are clipped rather than broken. This\nstrategy is not supported on all platforms and is being phased out.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is clipped.\n | word. |",
- "Lines that are longer than the cell width will be clipped.\nThe text will never wrap to the next line unless the user manually\ninserts a new line.\nExample:\n\n | First sentence. |\n | Manual newline t| \u003c- Text is clipped\n | Next newline. |",
- "Words that are longer than a line are wrapped at the character level\nrather than clipped.\nExample:\n\n | Cell has a |\n | loooooooooo| \u003c- Word is broken.\n | ong word. |"
- ],
- "enum": [
- "WRAP_STRATEGY_UNSPECIFIED",
- "OVERFLOW_CELL",
- "LEGACY_WRAP",
- "CLIP",
- "WRAP"
- ],
- "description": "The wrap strategy for the value in the cell.",
- "type": "string"
- }
- },
- "id": "CellFormat"
- },
- "ClearValuesResponse": {
- "description": "The response when clearing a range of values in a spreadsheet.",
- "type": "object",
- "properties": {
- "spreadsheetId": {
- "description": "The spreadsheet the updates were applied to.",
- "type": "string"
- },
- "clearedRange": {
- "description": "The range (in A1 notation) that was cleared.\n(If the request was for an unbounded range or a ranger larger\n than the bounds of the sheet, this will be the actual range\n that was cleared, bounded to the sheet's limits.)",
- "type": "string"
- }
- },
- "id": "ClearValuesResponse"
- },
- "DeleteConditionalFormatRuleRequest": {
- "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.",
- "type": "object",
- "properties": {
- "index": {
- "format": "int32",
- "description": "The zero-based index of the rule to be deleted.",
- "type": "integer"
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet the rule is being deleted from.",
- "type": "integer"
- }
- },
- "id": "DeleteConditionalFormatRuleRequest"
- },
- "AddBandingResponse": {
- "description": "The result of adding a banded range.",
- "type": "object",
- "properties": {
- "bandedRange": {
- "description": "The banded range that was added.",
- "$ref": "BandedRange"
- }
- },
- "id": "AddBandingResponse"
- },
- "DeleteNamedRangeRequest": {
- "description": "Removes the named range with the given ID from the spreadsheet.",
- "type": "object",
- "properties": {
- "namedRangeId": {
- "description": "The ID of the named range to delete.",
- "type": "string"
- }
- },
- "id": "DeleteNamedRangeRequest"
- },
- "ChartData": {
- "description": "The data included in a domain or series.",
- "type": "object",
- "properties": {
- "sourceRange": {
- "description": "The source ranges of the data.",
- "$ref": "ChartSourceRange"
- }
- },
- "id": "ChartData"
- },
- "BatchGetValuesResponse": {
- "description": "The response when retrieving more than one range of values in a spreadsheet.",
- "type": "object",
- "properties": {
- "valueRanges": {
- "description": "The requested values. The order of the ValueRanges is the same as the\norder of the requested ranges.",
- "items": {
- "$ref": "ValueRange"
- },
- "type": "array"
- },
- "spreadsheetId": {
- "description": "The ID of the spreadsheet the data was retrieved from.",
- "type": "string"
- }
- },
- "id": "BatchGetValuesResponse"
- },
- "UpdateBandingRequest": {
- "description": "Updates properties of the supplied banded range.",
- "type": "object",
- "properties": {
- "bandedRange": {
- "description": "The banded range to update with the new properties.",
- "$ref": "BandedRange"
- },
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated. At least one field must be specified.\nThe root `bandedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- }
- },
- "id": "UpdateBandingRequest"
- },
- "Color": {
- "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...",
- "type": "object",
- "properties": {
- "alpha": {
- "format": "float",
- "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).",
- "type": "number"
- },
- "blue": {
- "format": "float",
- "description": "The amount of blue in the color as a value in the interval [0, 1].",
- "type": "number"
- },
- "green": {
- "format": "float",
- "description": "The amount of green in the color as a value in the interval [0, 1].",
- "type": "number"
- },
- "red": {
- "format": "float",
- "description": "The amount of red in the color as a value in the interval [0, 1].",
- "type": "number"
- }
- },
- "id": "Color"
- },
- "PivotGroup": {
- "description": "A single grouping (either row or column) in a pivot table.",
- "type": "object",
- "properties": {
- "valueMetadata": {
- "description": "Metadata about values in the grouping.",
- "items": {
- "$ref": "PivotGroupValueMetadata"
- },
- "type": "array"
- },
- "showTotals": {
- "description": "True if the pivot table should include the totals for this grouping.",
- "type": "boolean"
- },
- "sourceColumnOffset": {
- "format": "int32",
- "description": "The column offset of the source range that this grouping is based on.\n\nFor example, if the source was `C10:E15`, a `sourceColumnOffset` of `0`\nmeans this group refers to column `C`, whereas the offset `1` would refer\nto column `D`.",
- "type": "integer"
- },
- "sortOrder": {
- "enum": [
- "SORT_ORDER_UNSPECIFIED",
- "ASCENDING",
- "DESCENDING"
- ],
- "description": "The order the values in this group should be sorted.",
- "type": "string",
- "enumDescriptions": [
- "Default value, do not use this.",
- "Sort ascending.",
- "Sort descending."
- ]
- },
- "valueBucket": {
- "$ref": "PivotGroupSortValueBucket",
- "description": "The bucket of the opposite pivot group to sort by.\nIf not specified, sorting is alphabetical by this group's values."
- }
- },
- "id": "PivotGroup"
- },
- "PivotTable": {
- "description": "A pivot table.",
- "type": "object",
- "properties": {
- "criteria": {
- "additionalProperties": {
- "$ref": "PivotFilterCriteria"
- },
- "description": "An optional mapping of filters per source column offset.\n\nThe filters will be applied before aggregating data into the pivot table.\nThe map's key is the column offset of the source range that you want to\nfilter, and the value is the criteria for that column.\n\nFor example, if the source was `C10:E15`, a key of `0` will have the filter\nfor column `C`, whereas the key `1` is for column `D`.",
- "type": "object"
- },
- "rows": {
- "description": "Each row grouping in the pivot table.",
- "items": {
- "$ref": "PivotGroup"
- },
- "type": "array"
- },
- "valueLayout": {
- "enum": [
- "HORIZONTAL",
- "VERTICAL"
- ],
- "description": "Whether values should be listed horizontally (as columns)\nor vertically (as rows).",
- "type": "string",
- "enumDescriptions": [
- "Values are laid out horizontally (as columns).",
- "Values are laid out vertically (as rows)."
- ]
- },
- "columns": {
- "description": "Each column grouping in the pivot table.",
- "items": {
- "$ref": "PivotGroup"
- },
- "type": "array"
- },
- "values": {
- "description": "A list of values to include in the pivot table.",
- "items": {
- "$ref": "PivotValue"
- },
- "type": "array"
- },
- "source": {
- "description": "The range the pivot table is reading data from.",
- "$ref": "GridRange"
- }
- },
- "id": "PivotTable"
- },
- "ChartSourceRange": {
- "description": "Source ranges for a chart.",
- "type": "object",
- "properties": {
- "sources": {
- "description": "The ranges of data for a series or domain.\nExactly one dimension must have a length of 1,\nand all sources in the list must have the same dimension\nwith length 1.\nThe domain (if it exists) & all series must have the same number\nof source ranges. If using more than one source range, then the source\nrange at a given offset must be contiguous across the domain and series.\n\nFor example, these are valid configurations:\n\n domain sources: A1:A5\n series1 sources: B1:B5\n series2 sources: D6:D10\n\n domain sources: A1:A5, C10:C12\n series1 sources: B1:B5, D10:D12\n series2 sources: C1:C5, E10:E12",
- "items": {
- "$ref": "GridRange"
- },
- "type": "array"
- }
- },
- "id": "ChartSourceRange"
- },
- "AppendCellsRequest": {
- "description": "Adds new cells after the last row with data in a sheet,\ninserting new rows into the sheet if necessary.",
- "type": "object",
- "properties": {
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields of CellData that should be updated.\nAt least one field must be specified.\nThe root is the CellData; 'row.values.' should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- },
- "rows": {
- "description": "The data to append.",
- "items": {
- "$ref": "RowData"
- },
- "type": "array"
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet ID to append the data to.",
- "type": "integer"
- }
- },
- "id": "AppendCellsRequest"
- },
- "ValueRange": {
- "description": "Data within a range of the spreadsheet.",
- "type": "object",
- "properties": {
- "values": {
- "description": "The data that was read or to be written. This is an array of arrays,\nthe outer array representing all the data and each inner array\nrepresenting a major dimension. Each item in the inner array\ncorresponds with one cell.\n\nFor output, empty trailing rows and columns will not be included.\n\nFor input, supported value types are: bool, string, and double.\nNull values will be skipped.\nTo set a cell to an empty value, set the string value to an empty string.",
- "items": {
- "items": {
- "type": "any"
- },
- "type": "array"
- },
- "type": "array"
- },
- "majorDimension": {
- "enumDescriptions": [
- "The default value, do not use.",
- "Operates on the rows of a sheet.",
- "Operates on the columns of a sheet."
- ],
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ],
- "description": "The major dimension of the values.\n\nFor output, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.\n\nFor input, with `range=A1:B2,majorDimension=ROWS` then `[[1,2],[3,4]]`\nwill set `A1=1,B1=2,A2=3,B2=4`. With `range=A1:B2,majorDimension=COLUMNS`\nthen `[[1,2],[3,4]]` will set `A1=1,B1=3,A2=2,B2=4`.\n\nWhen writing, if this field is not set, it defaults to ROWS.",
- "type": "string"
- },
- "range": {
- "description": "The range the values cover, in A1 notation.\nFor output, this range indicates the entire requested range,\neven though the values will exclude trailing rows and columns.\nWhen appending values, this field represents the range to search for a\ntable, after which values will be appended.",
- "type": "string"
- }
- },
- "id": "ValueRange"
- },
- "AddBandingRequest": {
- "description": "Adds a new banded range to the spreadsheet.",
- "type": "object",
- "properties": {
- "bandedRange": {
- "$ref": "BandedRange",
- "description": "The banded range to add. The bandedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)"
- }
- },
- "id": "AddBandingRequest"
- },
- "Response": {
- "properties": {
- "addChart": {
- "description": "A reply from adding a chart.",
- "$ref": "AddChartResponse"
- },
- "findReplace": {
- "description": "A reply from doing a find/replace.",
- "$ref": "FindReplaceResponse"
- },
- "addSheet": {
- "description": "A reply from adding a sheet.",
- "$ref": "AddSheetResponse"
- },
- "updateConditionalFormatRule": {
- "description": "A reply from updating a conditional format rule.",
- "$ref": "UpdateConditionalFormatRuleResponse"
- },
- "addNamedRange": {
- "$ref": "AddNamedRangeResponse",
- "description": "A reply from adding a named range."
- },
- "addFilterView": {
- "description": "A reply from adding a filter view.",
- "$ref": "AddFilterViewResponse"
- },
- "addBanding": {
- "$ref": "AddBandingResponse",
- "description": "A reply from adding a banded range."
- },
- "addProtectedRange": {
- "$ref": "AddProtectedRangeResponse",
- "description": "A reply from adding a protected range."
- },
- "duplicateSheet": {
- "$ref": "DuplicateSheetResponse",
- "description": "A reply from duplicating a sheet."
- },
- "updateEmbeddedObjectPosition": {
- "description": "A reply from updating an embedded object's position.",
- "$ref": "UpdateEmbeddedObjectPositionResponse"
- },
- "deleteConditionalFormatRule": {
- "$ref": "DeleteConditionalFormatRuleResponse",
- "description": "A reply from deleting a conditional format rule."
- },
- "duplicateFilterView": {
- "description": "A reply from duplicating a filter view.",
- "$ref": "DuplicateFilterViewResponse"
- }
- },
- "id": "Response",
- "description": "A single response from an update.",
- "type": "object"
- },
- "InsertRangeRequest": {
- "description": "Inserts cells into a range, shifting the existing cells over or down.",
- "type": "object",
- "properties": {
- "shiftDimension": {
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ],
- "description": "The dimension which will be shifted when inserting cells.\nIf ROWS, existing cells will be shifted down.\nIf COLUMNS, existing cells will be shifted right.",
- "type": "string",
- "enumDescriptions": [
- "The default value, do not use.",
- "Operates on the rows of a sheet.",
- "Operates on the columns of a sheet."
- ]
- },
- "range": {
- "description": "The range to insert new cells into.",
- "$ref": "GridRange"
- }
- },
- "id": "InsertRangeRequest"
- },
- "TextFormatRun": {
- "description": "A run of a text format. The format of this run continues until the start\nindex of the next run.\nWhen updating, all fields must be set.",
- "type": "object",
- "properties": {
- "startIndex": {
- "format": "int32",
- "description": "The character index where this run starts.",
- "type": "integer"
- },
- "format": {
- "description": "The format of this run. Absent values inherit the cell's format.",
- "$ref": "TextFormat"
- }
- },
- "id": "TextFormatRun"
- },
- "EmbeddedChart": {
- "properties": {
- "spec": {
- "description": "The specification of the chart.",
- "$ref": "ChartSpec"
- },
- "chartId": {
- "format": "int32",
- "description": "The ID of the chart.",
- "type": "integer"
- },
- "position": {
- "$ref": "EmbeddedObjectPosition",
- "description": "The position of the chart."
- }
- },
- "id": "EmbeddedChart",
- "description": "A chart embedded in a sheet.",
- "type": "object"
- },
- "AddNamedRangeResponse": {
- "description": "The result of adding a named range.",
- "type": "object",
- "properties": {
- "namedRange": {
- "$ref": "NamedRange",
- "description": "The named range to add."
- }
- },
- "id": "AddNamedRangeResponse"
- },
- "RowData": {
- "properties": {
- "values": {
- "description": "The values in the row, one per column.",
- "items": {
- "$ref": "CellData"
- },
- "type": "array"
- }
- },
- "id": "RowData",
- "description": "Data about each cell in a row.",
- "type": "object"
- },
- "Border": {
- "properties": {
- "width": {
- "format": "int32",
- "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.",
- "type": "integer"
- },
- "style": {
- "enum": [
- "STYLE_UNSPECIFIED",
- "DOTTED",
- "DASHED",
- "SOLID",
- "SOLID_MEDIUM",
- "SOLID_THICK",
- "NONE",
- "DOUBLE"
- ],
- "description": "The style of the border.",
- "type": "string",
- "enumDescriptions": [
- "The style is not specified. Do not use this.",
- "The border is dotted.",
- "The border is dashed.",
- "The border is a thin solid line.",
- "The border is a medium solid line.",
- "The border is a thick solid line.",
- "No border.\nUsed only when updating a border in order to erase it.",
- "The border is two solid lines."
- ]
- },
- "color": {
- "$ref": "Color",
- "description": "The color of the border."
- }
- },
- "id": "Border",
- "description": "A border along a cell.",
- "type": "object"
- },
- "GridData": {
- "description": "Data in the grid, as well as metadata about the dimensions.",
- "type": "object",
- "properties": {
- "columnMetadata": {
- "description": "Metadata about the requested columns in the grid, starting with the column\nin start_column.",
- "items": {
- "$ref": "DimensionProperties"
- },
- "type": "array"
- },
- "startColumn": {
- "format": "int32",
- "description": "The first column this GridData refers to, zero-based.",
- "type": "integer"
- },
- "rowMetadata": {
- "description": "Metadata about the requested rows in the grid, starting with the row\nin start_row.",
- "items": {
- "$ref": "DimensionProperties"
- },
- "type": "array"
- },
- "rowData": {
- "description": "The data in the grid, one entry per row,\nstarting with the row in startRow.\nThe values in RowData will correspond to columns starting\nat start_column.",
- "items": {
- "$ref": "RowData"
- },
- "type": "array"
- },
- "startRow": {
- "format": "int32",
- "description": "The first row this GridData refers to, zero-based.",
- "type": "integer"
- }
- },
- "id": "GridData"
- },
- "UpdateNamedRangeRequest": {
- "description": "Updates properties of the named range with the specified\nnamedRangeId.",
- "type": "object",
- "properties": {
- "namedRange": {
- "$ref": "NamedRange",
- "description": "The named range to update with the new properties."
- },
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated. At least one field must be specified.\nThe root `namedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- }
- },
- "id": "UpdateNamedRangeRequest"
- },
- "FindReplaceRequest": {
- "description": "Finds and replaces data in cells over a range, sheet, or all sheets.",
- "type": "object",
- "properties": {
- "matchEntireCell": {
- "description": "True if the find value should match the entire cell.",
- "type": "boolean"
- },
- "searchByRegex": {
- "description": "True if the find value is a regex.\nThe regular expression and replacement should follow Java regex rules\nat https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html.\nThe replacement string is allowed to refer to capturing groups.\nFor example, if one cell has the contents `\"Google Sheets\"` and another\nhas `\"Google Docs\"`, then searching for `\"o.* (.*)\"` with a replacement of\n`\"$1 Rocks\"` would change the contents of the cells to\n`\"GSheets Rocks\"` and `\"GDocs Rocks\"` respectively.",
- "type": "boolean"
- },
- "find": {
- "description": "The value to search.",
- "type": "string"
- },
- "replacement": {
- "description": "The value to use as the replacement.",
- "type": "string"
- },
- "range": {
- "$ref": "GridRange",
- "description": "The range to find/replace over."
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet to find/replace over.",
- "type": "integer"
- },
- "matchCase": {
- "description": "True if the search is case sensitive.",
- "type": "boolean"
- },
- "allSheets": {
- "description": "True to find/replace over all sheets.",
- "type": "boolean"
- },
- "includeFormulas": {
- "description": "True if the search should include cells with formulas.\nFalse to skip cells with formulas.",
- "type": "boolean"
- }
- },
- "id": "FindReplaceRequest"
- },
- "AddSheetRequest": {
- "description": "Adds a new sheet.\nWhen a sheet is added at a given index,\nall subsequent sheets' indexes are incremented.\nTo add an object sheet, use AddChartRequest instead and specify\nEmbeddedObjectPosition.sheetId or\nEmbeddedObjectPosition.newSheet.",
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "SheetProperties",
- "description": "The properties the new sheet should have.\nAll properties are optional.\nThe sheetId field is optional; if one is not\nset, an id will be randomly generated. (It is an error to specify the ID\nof a sheet that already exists.)"
- }
- },
- "id": "AddSheetRequest"
- },
- "UpdateCellsRequest": {
- "description": "Updates all cells in a range with new data.",
- "type": "object",
- "properties": {
- "range": {
- "$ref": "GridRange",
- "description": "The range to write data to.\n\nIf the data in rows does not cover the entire requested range,\nthe fields matching those set in fields will be cleared."
- },
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields of CellData that should be updated.\nAt least one field must be specified.\nThe root is the CellData; 'row.values.' should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- },
- "rows": {
- "description": "The data to write.",
- "items": {
- "$ref": "RowData"
- },
- "type": "array"
- },
- "start": {
- "$ref": "GridCoordinate",
- "description": "The coordinate to start writing data at.\nAny number of rows and columns (including a different number of\ncolumns per row) may be written."
- }
- },
- "id": "UpdateCellsRequest"
- },
- "DeleteConditionalFormatRuleResponse": {
- "description": "The result of deleting a conditional format rule.",
- "type": "object",
- "properties": {
- "rule": {
- "description": "The rule that was deleted.",
- "$ref": "ConditionalFormatRule"
- }
- },
- "id": "DeleteConditionalFormatRuleResponse"
- },
- "DeleteRangeRequest": {
- "description": "Deletes a range of cells, shifting other cells into the deleted area.",
- "type": "object",
- "properties": {
- "shiftDimension": {
- "enumDescriptions": [
- "The default value, do not use.",
- "Operates on the rows of a sheet.",
- "Operates on the columns of a sheet."
- ],
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ],
- "description": "The dimension from which deleted cells will be replaced with.\nIf ROWS, existing cells will be shifted upward to\nreplace the deleted cells. If COLUMNS, existing cells\nwill be shifted left to replace the deleted cells.",
- "type": "string"
- },
- "range": {
- "description": "The range of cells to delete.",
- "$ref": "GridRange"
- }
- },
- "id": "DeleteRangeRequest"
- },
- "GridCoordinate": {
- "description": "A coordinate in a sheet.\nAll indexes are zero-based.",
- "type": "object",
- "properties": {
- "columnIndex": {
- "format": "int32",
- "description": "The column index of the coordinate.",
- "type": "integer"
- },
- "rowIndex": {
- "format": "int32",
- "description": "The row index of the coordinate.",
- "type": "integer"
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet this coordinate is on.",
- "type": "integer"
- }
- },
- "id": "GridCoordinate"
- },
- "UpdateSheetPropertiesRequest": {
- "description": "Updates properties of the sheet with the specified\nsheetId.",
- "type": "object",
- "properties": {
- "properties": {
- "$ref": "SheetProperties",
- "description": "The properties to update."
- },
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated. At least one field must be specified.\nThe root `properties` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.",
- "type": "string"
- }
- },
- "id": "UpdateSheetPropertiesRequest"
- },
- "GridProperties": {
- "description": "Properties of a grid.",
- "type": "object",
- "properties": {
- "hideGridlines": {
- "description": "True if the grid isn't showing gridlines in the UI.",
- "type": "boolean"
- },
- "frozenRowCount": {
- "format": "int32",
- "description": "The number of rows that are frozen in the grid.",
- "type": "integer"
- },
- "frozenColumnCount": {
- "format": "int32",
- "description": "The number of columns that are frozen in the grid.",
- "type": "integer"
- },
- "columnCount": {
- "format": "int32",
- "description": "The number of columns in the grid.",
- "type": "integer"
- },
- "rowCount": {
- "format": "int32",
- "description": "The number of rows in the grid.",
- "type": "integer"
- }
- },
- "id": "GridProperties"
- },
- "UnmergeCellsRequest": {
- "description": "Unmerges cells in the given range.",
- "type": "object",
- "properties": {
- "range": {
- "$ref": "GridRange",
- "description": "The range within which all cells should be unmerged.\nIf the range spans multiple merges, all will be unmerged.\nThe range must not partially span any merge."
- }
- },
- "id": "UnmergeCellsRequest"
- },
- "UpdateEmbeddedObjectPositionResponse": {
- "description": "The result of updating an embedded object's position.",
- "type": "object",
- "properties": {
- "position": {
- "$ref": "EmbeddedObjectPosition",
- "description": "The new position of the embedded object."
- }
- },
- "id": "UpdateEmbeddedObjectPositionResponse"
- },
- "SortSpec": {
- "description": "A sort order associated with a specific column or row.",
- "type": "object",
- "properties": {
- "dimensionIndex": {
- "format": "int32",
- "description": "The dimension the sort should be applied to.",
- "type": "integer"
- },
- "sortOrder": {
- "enumDescriptions": [
- "Default value, do not use this.",
- "Sort ascending.",
- "Sort descending."
- ],
- "enum": [
- "SORT_ORDER_UNSPECIFIED",
- "ASCENDING",
- "DESCENDING"
- ],
- "description": "The order data should be sorted.",
- "type": "string"
- }
- },
- "id": "SortSpec"
- },
- "Sheet": {
- "description": "A sheet in a spreadsheet.",
- "type": "object",
- "properties": {
- "protectedRanges": {
- "description": "The protected ranges in this sheet.",
- "items": {
- "$ref": "ProtectedRange"
- },
- "type": "array"
- },
- "conditionalFormats": {
- "description": "The conditional format rules in this sheet.",
- "items": {
- "$ref": "ConditionalFormatRule"
- },
- "type": "array"
- },
- "basicFilter": {
- "description": "The filter on this sheet, if any.",
- "$ref": "BasicFilter"
- },
- "merges": {
- "description": "The ranges that are merged together.",
- "items": {
- "$ref": "GridRange"
- },
- "type": "array"
- },
- "data": {
- "description": "Data in the grid, if this is a grid sheet.\nThe number of GridData objects returned is dependent on the number of\nranges requested on this sheet. For example, if this is representing\n`Sheet1`, and the spreadsheet was requested with ranges\n`Sheet1!A1:C10` and `Sheet1!D15:E20`, then the first GridData will have a\nstartRow/startColumn of `0`,\nwhile the second one will have `startRow 14` (zero-based row 15),\nand `startColumn 3` (zero-based column D).",
- "items": {
- "$ref": "GridData"
- },
- "type": "array"
- },
- "bandedRanges": {
- "description": "The banded (i.e. alternating colors) ranges on this sheet.",
- "items": {
- "$ref": "BandedRange"
- },
- "type": "array"
- },
- "charts": {
- "description": "The specifications of every chart on this sheet.",
- "items": {
- "$ref": "EmbeddedChart"
- },
- "type": "array"
- },
- "properties": {
- "description": "The properties of the sheet.",
- "$ref": "SheetProperties"
- },
- "filterViews": {
- "description": "The filter views in this sheet.",
- "items": {
- "$ref": "FilterView"
- },
- "type": "array"
- }
- },
- "id": "Sheet"
- },
- "BooleanRule": {
- "description": "A rule that may or may not match, depending on the condition.",
- "type": "object",
- "properties": {
- "format": {
- "description": "The format to apply.\nConditional formatting can only apply a subset of formatting:\nbold, italic,\nstrikethrough,\nforeground color &\nbackground color.",
- "$ref": "CellFormat"
- },
- "condition": {
- "$ref": "BooleanCondition",
- "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied."
- }
- },
- "id": "BooleanRule"
- },
- "FilterCriteria": {
- "description": "Criteria for showing/hiding rows in a filter or filter view.",
- "type": "object",
- "properties": {
- "condition": {
- "description": "A condition that must be true for values to be shown.\n(This does not override hiddenValues -- if a value is listed there,\n it will still be hidden.)",
- "$ref": "BooleanCondition"
- },
- "hiddenValues": {
- "description": "Values that should be hidden.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "FilterCriteria"
- },
- "PivotGroupValueMetadata": {
- "description": "Metadata about a value in a pivot grouping.",
- "type": "object",
- "properties": {
- "value": {
- "description": "The calculated value the metadata corresponds to.\n(Note that formulaValue is not valid,\n because the values will be calculated.)",
- "$ref": "ExtendedValue"
- },
- "collapsed": {
- "description": "True if the data corresponding to the value is collapsed.",
- "type": "boolean"
- }
- },
- "id": "PivotGroupValueMetadata"
- },
- "Editors": {
- "description": "The editors of a protected range.",
- "type": "object",
- "properties": {
- "users": {
- "description": "The email addresses of users with edit access to the protected range.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "domainUsersCanEdit": {
- "description": "True if anyone in the document's domain has edit access to the protected\nrange. Domain protection is only supported on documents within a domain.",
- "type": "boolean"
- },
- "groups": {
- "description": "The email addresses of groups with edit access to the protected range.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "Editors"
- },
- "UpdateConditionalFormatRuleRequest": {
- "description": "Updates a conditional format rule at the given index,\nor moves a conditional format rule to another index.",
- "type": "object",
- "properties": {
- "rule": {
- "$ref": "ConditionalFormatRule",
- "description": "The rule that should replace the rule at the given index."
- },
- "index": {
- "format": "int32",
- "description": "The zero-based index of the rule that should be replaced or moved.",
- "type": "integer"
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet of the rule to move. Required if new_index is set,\nunused otherwise.",
- "type": "integer"
- },
- "newIndex": {
- "format": "int32",
- "description": "The zero-based new index the rule should end up at.",
- "type": "integer"
- }
- },
- "id": "UpdateConditionalFormatRuleRequest"
- },
- "BasicChartDomain": {
- "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.",
- "type": "object",
- "properties": {
- "domain": {
- "description": "The data of the domain. For example, if charting stock prices over time,\nthis is the data representing the dates.",
- "$ref": "ChartData"
- },
- "reversed": {
- "description": "True to reverse the order of the domain values (horizontal axis).\nNot applicable to Gauge, Geo, Histogram, Org, Pie, Radar, and Treemap\ncharts.",
- "type": "boolean"
- }
- },
- "id": "BasicChartDomain"
- },
- "DataValidationRule": {
- "description": "A data validation rule.",
- "type": "object",
- "properties": {
- "condition": {
- "$ref": "BooleanCondition",
- "description": "The condition that data in the cell must match."
- },
- "showCustomUi": {
- "description": "True if the UI should be customized based on the kind of condition.\nIf true, \"List\" conditions will show a dropdown.",
- "type": "boolean"
- },
- "strict": {
- "description": "True if invalid data should be rejected.",
- "type": "boolean"
- },
- "inputMessage": {
- "description": "A message to show the user when adding data to the cell.",
- "type": "string"
- }
- },
- "id": "DataValidationRule"
- },
- "PasteDataRequest": {
- "description": "Inserts data into the spreadsheet starting at the specified coordinate.",
- "type": "object",
- "properties": {
- "html": {
- "description": "True if the data is HTML.",
- "type": "boolean"
- },
- "coordinate": {
- "$ref": "GridCoordinate",
- "description": "The coordinate at which the data should start being inserted."
- },
- "delimiter": {
- "description": "The delimiter in the data.",
- "type": "string"
- },
- "data": {
- "description": "The data to insert.",
- "type": "string"
- },
- "type": {
- "enumDescriptions": [
- "Paste values, formulas, formats, and merges.",
- "Paste the values ONLY without formats, formulas, or merges.",
- "Paste the format and data validation only.",
- "Like PASTE_NORMAL but without borders.",
- "Paste the formulas only.",
- "Paste the data validation only.",
- "Paste the conditional formatting rules only."
- ],
- "enum": [
- "PASTE_NORMAL",
- "PASTE_VALUES",
- "PASTE_FORMAT",
- "PASTE_NO_BORDERS",
- "PASTE_FORMULA",
- "PASTE_DATA_VALIDATION",
- "PASTE_CONDITIONAL_FORMATTING"
- ],
- "description": "How the data should be pasted.",
- "type": "string"
- }
- },
- "id": "PasteDataRequest"
- },
- "AppendDimensionRequest": {
- "description": "Appends rows or columns to the end of a sheet.",
- "type": "object",
- "properties": {
- "dimension": {
- "enumDescriptions": [
- "The default value, do not use.",
- "Operates on the rows of a sheet.",
- "Operates on the columns of a sheet."
- ],
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ],
- "description": "Whether rows or columns should be appended.",
- "type": "string"
- },
- "length": {
- "format": "int32",
- "description": "The number of rows or columns to append.",
- "type": "integer"
- },
- "sheetId": {
- "format": "int32",
- "description": "The sheet to append rows or columns to.",
- "type": "integer"
- }
- },
- "id": "AppendDimensionRequest"
- },
- "AddNamedRangeRequest": {
- "description": "Adds a named range to the spreadsheet.",
- "type": "object",
- "properties": {
- "namedRange": {
- "$ref": "NamedRange",
- "description": "The named range to add. The namedRangeId\nfield is optional; if one is not set, an id will be randomly generated. (It\nis an error to specify the ID of a range that already exists.)"
- }
- },
- "id": "AddNamedRangeRequest"
+ }
}
},
- "icons": {
- "x16": "http://www.google.com/images/icons/product/search-16.gif",
- "x32": "http://www.google.com/images/icons/product/search-32.gif"
- },
"protocol": "rest",
- "canonicalName": "Sheets",
- "auth": {
- "oauth2": {
- "scopes": {
- "https://www.googleapis.com/auth/spreadsheets": {
- "description": "View and manage your spreadsheets in Google Drive"
- },
- "https://www.googleapis.com/auth/drive.file": {
- "description": "View and manage Google Drive files and folders that you have opened or created with this app"
- },
- "https://www.googleapis.com/auth/spreadsheets.readonly": {
- "description": "View your Google Spreadsheets"
- },
- "https://www.googleapis.com/auth/drive.readonly": {
- "description": "View the files in your Google Drive"
- },
- "https://www.googleapis.com/auth/drive": {
- "description": "View and manage the files in your Google Drive"
- }
- }
- }
- },
- "rootUrl": "https://sheets.googleapis.com/",
- "ownerDomain": "google.com",
- "name": "sheets",
- "batchPath": "batch",
- "title": "Google Sheets API",
- "ownerName": "Google",
- "resources": {
- "spreadsheets": {
- "methods": {
- "get": {
- "response": {
- "$ref": "Spreadsheet"
- },
- "parameterOrder": [
- "spreadsheetId"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/drive.readonly",
- "https://www.googleapis.com/auth/spreadsheets",
- "https://www.googleapis.com/auth/spreadsheets.readonly"
- ],
- "parameters": {
- "spreadsheetId": {
- "location": "path",
- "description": "The spreadsheet to request.",
- "type": "string",
- "required": true
- },
- "includeGridData": {
- "description": "True if grid data should be returned.\nThis parameter is ignored if a field mask was set in the request.",
- "type": "boolean",
- "location": "query"
- },
- "ranges": {
- "location": "query",
- "description": "The ranges to retrieve from the spreadsheet.",
- "type": "string",
- "repeated": true
- }
- },
- "flatPath": "v4/spreadsheets/{spreadsheetId}",
- "id": "sheets.spreadsheets.get",
- "path": "v4/spreadsheets/{spreadsheetId}",
- "description": "Returns the spreadsheet at the given ID.\nThe caller must specify the spreadsheet ID.\n\nBy default, data within grids will not be returned.\nYou can include grid data one of two ways:\n\n* Specify a field mask listing your desired fields using the `fields` URL\nparameter in HTTP\n\n* Set the includeGridData\nURL parameter to true. If a field mask is set, the `includeGridData`\nparameter is ignored\n\nFor large spreadsheets, it is recommended to retrieve only the specific\nfields of the spreadsheet that you want.\n\nTo retrieve only subsets of the spreadsheet, use the\nranges URL parameter.\nMultiple ranges can be specified. Limiting the range will\nreturn only the portions of the spreadsheet that intersect the requested\nranges. Ranges are specified using A1 notation."
- },
- "batchUpdate": {
- "response": {
- "$ref": "BatchUpdateSpreadsheetResponse"
- },
- "parameterOrder": [
- "spreadsheetId"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ],
- "parameters": {
- "spreadsheetId": {
- "location": "path",
- "description": "The spreadsheet to apply the updates to.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v4/spreadsheets/{spreadsheetId}:batchUpdate",
- "id": "sheets.spreadsheets.batchUpdate",
- "path": "v4/spreadsheets/{spreadsheetId}:batchUpdate",
- "request": {
- "$ref": "BatchUpdateSpreadsheetRequest"
- },
- "description": "Applies one or more updates to the spreadsheet.\n\nEach request is validated before\nbeing applied. If any request is not valid then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how\nthey are applied. The replies will mirror the requests. For example,\nif you applied 4 updates and the 3rd one had a reply, then the\nresponse will have 2 empty replies, the actual reply, and another empty\nreply, in that order.\n\nDue to the collaborative nature of spreadsheets, it is not guaranteed that\nthe spreadsheet will reflect exactly your changes after this completes,\nhowever it is guaranteed that the updates in the request will be\napplied together atomically. Your changes may be altered with respect to\ncollaborator changes. If there are no collaborators, the spreadsheet\nshould reflect your changes."
- },
- "create": {
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "Spreadsheet"
- },
- "parameters": {},
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ],
- "flatPath": "v4/spreadsheets",
- "path": "v4/spreadsheets",
- "id": "sheets.spreadsheets.create",
- "description": "Creates a spreadsheet, returning the newly created spreadsheet.",
- "request": {
- "$ref": "Spreadsheet"
- }
- }
- },
- "resources": {
- "values": {
- "methods": {
- "update": {
- "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}",
- "path": "v4/spreadsheets/{spreadsheetId}/values/{range}",
- "id": "sheets.spreadsheets.values.update",
- "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption.",
- "request": {
- "$ref": "ValueRange"
- },
- "httpMethod": "PUT",
- "parameterOrder": [
- "spreadsheetId",
- "range"
- ],
- "response": {
- "$ref": "UpdateValuesResponse"
- },
- "parameters": {
- "valueInputOption": {
- "location": "query",
- "enum": [
- "INPUT_VALUE_OPTION_UNSPECIFIED",
- "RAW",
- "USER_ENTERED"
- ],
- "description": "How the input data should be interpreted.",
- "type": "string"
- },
- "responseDateTimeRenderOption": {
- "location": "query",
- "enum": [
- "SERIAL_NUMBER",
- "FORMATTED_STRING"
- ],
- "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
- "type": "string"
- },
- "range": {
- "description": "The A1 notation of the values to update.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "includeValuesInResponse": {
- "location": "query",
- "description": "Determines if the update response should include the values\nof the cells that were updated. By default, responses\ndo not include the updated values.\nIf the range to write was larger than than the range actually written,\nthe response will include all values in the requested range (excluding\ntrailing empty rows and columns).",
- "type": "boolean"
- },
- "spreadsheetId": {
- "description": "The ID of the spreadsheet to update.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "responseValueRenderOption": {
- "location": "query",
- "enum": [
- "FORMATTED_VALUE",
- "UNFORMATTED_VALUE",
- "FORMULA"
- ],
- "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ]
- },
- "batchUpdate": {
- "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate",
- "id": "sheets.spreadsheets.values.batchUpdate",
- "request": {
- "$ref": "BatchUpdateValuesRequest"
- },
- "description": "Sets values in one or more ranges of a spreadsheet.\nThe caller must specify the spreadsheet ID,\na valueInputOption, and one or more\nValueRanges.",
- "httpMethod": "POST",
- "parameterOrder": [
- "spreadsheetId"
- ],
- "response": {
- "$ref": "BatchUpdateValuesResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ],
- "parameters": {
- "spreadsheetId": {
- "description": "The ID of the spreadsheet to update.",
- "type": "string",
- "required": true,
- "location": "path"
- }
- },
- "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate"
- },
- "clear": {
- "response": {
- "$ref": "ClearValuesResponse"
- },
- "parameterOrder": [
- "spreadsheetId",
- "range"
- ],
- "httpMethod": "POST",
- "parameters": {
- "spreadsheetId": {
- "location": "path",
- "description": "The ID of the spreadsheet to update.",
- "type": "string",
- "required": true
- },
- "range": {
- "location": "path",
- "description": "The A1 notation of the values to clear.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ],
- "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear",
- "id": "sheets.spreadsheets.values.clear",
- "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear",
- "description": "Clears values from a spreadsheet.\nThe caller must specify the spreadsheet ID and range.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept.",
- "request": {
- "$ref": "ClearValuesRequest"
- }
- },
- "batchGet": {
- "httpMethod": "GET",
- "response": {
- "$ref": "BatchGetValuesResponse"
- },
- "parameterOrder": [
- "spreadsheetId"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/drive.readonly",
- "https://www.googleapis.com/auth/spreadsheets",
- "https://www.googleapis.com/auth/spreadsheets.readonly"
- ],
- "parameters": {
- "majorDimension": {
- "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.",
- "type": "string",
- "location": "query",
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ]
- },
- "ranges": {
- "description": "The A1 notation of the values to retrieve.",
- "type": "string",
- "repeated": true,
- "location": "query"
- },
- "spreadsheetId": {
- "description": "The ID of the spreadsheet to retrieve data from.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "dateTimeRenderOption": {
- "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
- "type": "string",
- "location": "query",
- "enum": [
- "SERIAL_NUMBER",
- "FORMATTED_STRING"
- ]
- },
- "valueRenderOption": {
- "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
- "type": "string",
- "location": "query",
- "enum": [
- "FORMATTED_VALUE",
- "UNFORMATTED_VALUE",
- "FORMULA"
- ]
- }
- },
- "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGet",
- "path": "v4/spreadsheets/{spreadsheetId}/values:batchGet",
- "id": "sheets.spreadsheets.values.batchGet",
- "description": "Returns one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges."
- },
- "append": {
- "httpMethod": "POST",
- "parameterOrder": [
- "spreadsheetId",
- "range"
- ],
- "response": {
- "$ref": "AppendValuesResponse"
- },
- "parameters": {
- "spreadsheetId": {
- "location": "path",
- "description": "The ID of the spreadsheet to update.",
- "type": "string",
- "required": true
- },
- "responseValueRenderOption": {
- "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
- "type": "string",
- "location": "query",
- "enum": [
- "FORMATTED_VALUE",
- "UNFORMATTED_VALUE",
- "FORMULA"
- ]
- },
- "insertDataOption": {
- "location": "query",
- "enum": [
- "OVERWRITE",
- "INSERT_ROWS"
- ],
- "description": "How the input data should be inserted.",
- "type": "string"
- },
- "valueInputOption": {
- "enum": [
- "INPUT_VALUE_OPTION_UNSPECIFIED",
- "RAW",
- "USER_ENTERED"
- ],
- "description": "How the input data should be interpreted.",
- "type": "string",
- "location": "query"
- },
- "responseDateTimeRenderOption": {
- "location": "query",
- "enum": [
- "SERIAL_NUMBER",
- "FORMATTED_STRING"
- ],
- "description": "Determines how dates, times, and durations in the response should be\nrendered. This is ignored if response_value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
- "type": "string"
- },
- "range": {
- "description": "The A1 notation of a range to search for a logical table of data.\nValues will be appended after the last row of the table.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "includeValuesInResponse": {
- "description": "Determines if the update response should include the values\nof the cells that were appended. By default, responses\ndo not include the updated values.",
- "type": "boolean",
- "location": "query"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ],
- "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:append",
- "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:append",
- "id": "sheets.spreadsheets.values.append",
- "description": "Appends values to a spreadsheet. The input range is used to search for\nexisting data and find a \"table\" within that range. Values will be\nappended to the next row of the table, starting with the first column of\nthe table. See the\n[guide](/sheets/api/guides/values#appending_values)\nand\n[sample code](/sheets/api/samples/writing#append_values)\nfor specific details of how tables are detected and data is appended.\n\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption. The `valueInputOption` only\ncontrols how the input data will be added to the sheet (column-wise or\nrow-wise), it does not influence what cell the data starts being written\nto.",
- "request": {
- "$ref": "ValueRange"
- }
- },
- "batchClear": {
- "path": "v4/spreadsheets/{spreadsheetId}/values:batchClear",
- "id": "sheets.spreadsheets.values.batchClear",
- "description": "Clears one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges.\nOnly values are cleared -- all other properties of the cell (such as\nformatting, data validation, etc..) are kept.",
- "request": {
- "$ref": "BatchClearValuesRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "spreadsheetId"
- ],
- "response": {
- "$ref": "BatchClearValuesResponse"
- },
- "parameters": {
- "spreadsheetId": {
- "description": "The ID of the spreadsheet to update.",
- "type": "string",
- "required": true,
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ],
- "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClear"
- },
- "get": {
- "description": "Returns a range of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and a range.",
- "httpMethod": "GET",
- "parameterOrder": [
- "spreadsheetId",
- "range"
- ],
- "response": {
- "$ref": "ValueRange"
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/drive.readonly",
- "https://www.googleapis.com/auth/spreadsheets",
- "https://www.googleapis.com/auth/spreadsheets.readonly"
- ],
- "parameters": {
- "dateTimeRenderOption": {
- "location": "query",
- "enum": [
- "SERIAL_NUMBER",
- "FORMATTED_STRING"
- ],
- "description": "How dates, times, and durations should be represented in the output.\nThis is ignored if value_render_option is\nFORMATTED_VALUE.\nThe default dateTime render option is [DateTimeRenderOption.SERIAL_NUMBER].",
- "type": "string"
- },
- "valueRenderOption": {
- "location": "query",
- "enum": [
- "FORMATTED_VALUE",
- "UNFORMATTED_VALUE",
- "FORMULA"
- ],
- "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.",
- "type": "string"
- },
- "majorDimension": {
- "location": "query",
- "enum": [
- "DIMENSION_UNSPECIFIED",
- "ROWS",
- "COLUMNS"
- ],
- "description": "The major dimension that results should use.\n\nFor example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`,\nthen requesting `range=A1:B2,majorDimension=ROWS` will return\n`[[1,2],[3,4]]`,\nwhereas requesting `range=A1:B2,majorDimension=COLUMNS` will return\n`[[1,3],[2,4]]`.",
- "type": "string"
- },
- "spreadsheetId": {
- "location": "path",
- "description": "The ID of the spreadsheet to retrieve data from.",
- "type": "string",
- "required": true
- },
- "range": {
- "location": "path",
- "description": "The A1 notation of the values to retrieve.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}",
- "path": "v4/spreadsheets/{spreadsheetId}/values/{range}",
- "id": "sheets.spreadsheets.values.get"
- }
- }
- },
- "sheets": {
- "methods": {
- "copyTo": {
- "httpMethod": "POST",
- "parameterOrder": [
- "spreadsheetId",
- "sheetId"
- ],
- "response": {
- "$ref": "SheetProperties"
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.file",
- "https://www.googleapis.com/auth/spreadsheets"
- ],
- "parameters": {
- "spreadsheetId": {
- "location": "path",
- "description": "The ID of the spreadsheet containing the sheet to copy.",
- "type": "string",
- "required": true
- },
- "sheetId": {
- "format": "int32",
- "description": "The ID of the sheet to copy.",
- "type": "integer",
- "required": true,
- "location": "path"
- }
- },
- "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo",
- "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo",
- "id": "sheets.spreadsheets.sheets.copyTo",
- "request": {
- "$ref": "CopySheetToAnotherSpreadsheetRequest"
- },
- "description": "Copies a single sheet from a spreadsheet to another spreadsheet.\nReturns the properties of the newly created sheet."
- }
- }
- }
- }
- }
- },
- "parameters": {
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
- "prettyPrint": {
- "location": "query",
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "$.xgafv": {
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string"
- },
- "alt": {
- "type": "string",
- "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",
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ]
- },
- "access_token": {
- "description": "OAuth access token.",
- "type": "string",
- "location": "query"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "pp": {
- "location": "query",
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean"
- }
- },
- "version": "v4",
- "baseUrl": "https://sheets.googleapis.com/",
- "kind": "discovery#restDescription",
- "description": "Reads and writes Google Sheets.",
- "servicePath": "",
- "basePath": "",
- "id": "sheets:v4",
- "revision": "20170622",
- "documentationLink": "https://developers.google.com/sheets/",
- "discoveryVersion": "v1",
- "version_module": "True"
+ "icons": {
+ "x32": "http://www.google.com/images/icons/product/search-32.gif",
+ "x16": "http://www.google.com/images/icons/product/search-16.gif"
+ }
}
diff --git a/vendor/google.golang.org/api/sheets/v4/sheets-gen.go b/vendor/google.golang.org/api/sheets/v4/sheets-gen.go
index 6fdd633..4c4dce1 100644
--- a/vendor/google.golang.org/api/sheets/v4/sheets-gen.go
+++ b/vendor/google.golang.org/api/sheets/v4/sheets-gen.go
@@ -690,7 +690,6 @@ func (s *AutoFillRequest) MarshalJSON() ([]byte, error) {
// of the cells in that dimension.
type AutoResizeDimensionsRequest struct {
// Dimensions: The dimensions to automatically resize.
- // Only COLUMNS are supported.
Dimensions *DimensionRange `json:"dimensions,omitempty"`
// ForceSendFields is a list of field names (e.g. "Dimensions") to
@@ -896,9 +895,6 @@ type BasicChartDomain struct {
// Reversed: True to reverse the order of the domain values (horizontal
// axis).
- // Not applicable to Gauge, Geo, Histogram, Org, Pie, Radar, and
- // Treemap
- // charts.
Reversed bool `json:"reversed,omitempty"`
// ForceSendFields is a list of field names (e.g. "Domain") to
@@ -2027,6 +2023,10 @@ type CandlestickDomain struct {
// Data: The data of the CandlestickDomain.
Data *ChartData `json:"data,omitempty"`
+ // Reversed: True to reverse the order of the domain values (horizontal
+ // axis).
+ Reversed bool `json:"reversed,omitempty"`
+
// ForceSendFields is a list of field names (e.g. "Data") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
@@ -2393,6 +2393,11 @@ func (s *ChartSourceRange) MarshalJSON() ([]byte, error) {
// ChartSpec: The specifications of a chart.
type ChartSpec struct {
+ // AltText: The alternative text that describes the chart. This is
+ // often used
+ // for accessibility.
+ AltText string `json:"altText,omitempty"`
+
// BackgroundColor: The background color of the entire chart.
// Not applicable to Org charts.
BackgroundColor *Color `json:"backgroundColor,omitempty"`
@@ -2451,7 +2456,7 @@ type ChartSpec struct {
// Strikethrough and underline are not supported.
TitleTextFormat *TextFormat `json:"titleTextFormat,omitempty"`
- // ForceSendFields is a list of field names (e.g. "BackgroundColor") to
+ // ForceSendFields is a list of field names (e.g. "AltText") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
@@ -2459,13 +2464,12 @@ type ChartSpec struct {
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "BackgroundColor") to
- // include in API requests with the JSON null value. By default, fields
- // with empty values are omitted from API requests. However, any field
- // with an empty value appearing in NullFields will be sent to the
- // server as null. It is an error if a field in this list has a
- // non-empty value. This may be used to include null fields in Patch
- // requests.
+ // NullFields is a list of field names (e.g. "AltText") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
@@ -5363,6 +5367,34 @@ func (s *ProtectedRange) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+// RandomizeRangeRequest: Randomizes the order of the rows in a range.
+type RandomizeRangeRequest struct {
+ // Range: The range to randomize.
+ Range *GridRange `json:"range,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Range") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Range") to include in API
+ // requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *RandomizeRangeRequest) MarshalJSON() ([]byte, error) {
+ type noMethod RandomizeRangeRequest
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// RepeatCellRequest: Updates all cells in the range to the values in
// the given Cell object.
// Only the fields listed in the fields field are updated; others
@@ -5519,6 +5551,9 @@ type Request struct {
// PasteData: Pastes data (HTML or delimited) into a sheet.
PasteData *PasteDataRequest `json:"pasteData,omitempty"`
+ // RandomizeRange: Randomizes the order of the rows in a range.
+ RandomizeRange *RandomizeRangeRequest `json:"randomizeRange,omitempty"`
+
// RepeatCell: Repeats a single cell across a range.
RepeatCell *RepeatCellRequest `json:"repeatCell,omitempty"`
diff --git a/vendor/google.golang.org/api/slides/v1/slides-api.json b/vendor/google.golang.org/api/slides/v1/slides-api.json
index 7417a3c..16e6daf 100644
--- a/vendor/google.golang.org/api/slides/v1/slides-api.json
+++ b/vendor/google.golang.org/api/slides/v1/slides-api.json
@@ -1,657 +1,16 @@
{
- "batchPath": "batch",
- "title": "Google Slides API",
- "ownerName": "Google",
- "resources": {
- "presentations": {
- "methods": {
- "get": {
- "description": "Gets the latest version of the specified presentation.",
- "response": {
- "$ref": "Presentation"
- },
- "parameterOrder": [
- "presentationId"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.readonly",
- "https://www.googleapis.com/auth/presentations",
- "https://www.googleapis.com/auth/presentations.readonly"
- ],
- "parameters": {
- "presentationId": {
- "type": "string",
- "required": true,
- "pattern": "^[^/]+$",
- "location": "path",
- "description": "The ID of the presentation to retrieve."
- }
- },
- "flatPath": "v1/presentations/{presentationsId}",
- "id": "slides.presentations.get",
- "path": "v1/presentations/{+presentationId}"
- },
- "batchUpdate": {
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.readonly",
- "https://www.googleapis.com/auth/presentations",
- "https://www.googleapis.com/auth/spreadsheets",
- "https://www.googleapis.com/auth/spreadsheets.readonly"
- ],
- "parameters": {
- "presentationId": {
- "description": "The presentation to apply the updates to.",
- "type": "string",
- "required": true,
- "location": "path"
- }
- },
- "flatPath": "v1/presentations/{presentationId}:batchUpdate",
- "id": "slides.presentations.batchUpdate",
- "path": "v1/presentations/{presentationId}:batchUpdate",
- "request": {
- "$ref": "BatchUpdatePresentationRequest"
- },
- "description": "Applies one or more updates to the presentation.\n\nEach request is validated before\nbeing applied. If any request is not valid, then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how they are applied. Other requests do\nnot need to return information; these each return an empty reply.\nThe order of replies matches that of the requests.\n\nFor example, suppose you call batchUpdate with four updates, and only the\nthird one returns information. The response would have two empty replies:\nthe reply to the third request, and another empty reply, in that order.\n\nBecause other users may be editing the presentation, the presentation\nmight not exactly reflect your changes: your changes may\nbe altered with respect to collaborator changes. If there are no\ncollaborators, the presentation should reflect your changes. In any case,\nthe updates in your request are guaranteed to be applied together\natomically.",
- "response": {
- "$ref": "BatchUpdatePresentationResponse"
- },
- "parameterOrder": [
- "presentationId"
- ],
- "httpMethod": "POST"
- },
- "create": {
- "description": "Creates a new presentation using the title given in the request. Other\nfields in the request are ignored.\nReturns the created presentation.",
- "request": {
- "$ref": "Presentation"
- },
- "response": {
- "$ref": "Presentation"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "parameters": {},
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/presentations"
- ],
- "flatPath": "v1/presentations",
- "id": "slides.presentations.create",
- "path": "v1/presentations"
- }
- },
- "resources": {
- "pages": {
- "methods": {
- "getThumbnail": {
- "httpMethod": "GET",
- "response": {
- "$ref": "Thumbnail"
- },
- "parameterOrder": [
- "presentationId",
- "pageObjectId"
- ],
- "parameters": {
- "pageObjectId": {
- "description": "The object ID of the page whose thumbnail to retrieve.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "thumbnailProperties.thumbnailSize": {
- "location": "query",
- "enum": [
- "THUMBNAIL_SIZE_UNSPECIFIED",
- "LARGE"
- ],
- "description": "The optional thumbnail image size.\n\nIf you don't specify the size, the server chooses a default size of the\nimage.",
- "type": "string"
- },
- "thumbnailProperties.mimeType": {
- "description": "The optional mime type of the thumbnail image.\n\nIf you don't specify the mime type, the default mime type will be PNG.",
- "type": "string",
- "location": "query",
- "enum": [
- "PNG"
- ]
- },
- "presentationId": {
- "location": "path",
- "description": "The ID of the presentation to retrieve.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.readonly",
- "https://www.googleapis.com/auth/presentations",
- "https://www.googleapis.com/auth/presentations.readonly"
- ],
- "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail",
- "path": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail",
- "id": "slides.presentations.pages.getThumbnail",
- "description": "Generates a thumbnail of the latest version of the specified page in the\npresentation and returns a URL to the thumbnail image."
- },
- "get": {
- "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}",
- "id": "slides.presentations.pages.get",
- "path": "v1/presentations/{presentationId}/pages/{pageObjectId}",
- "description": "Gets the latest version of the specified page in the presentation.",
- "response": {
- "$ref": "Page"
- },
- "parameterOrder": [
- "presentationId",
- "pageObjectId"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/drive",
- "https://www.googleapis.com/auth/drive.readonly",
- "https://www.googleapis.com/auth/presentations",
- "https://www.googleapis.com/auth/presentations.readonly"
- ],
- "parameters": {
- "pageObjectId": {
- "description": "The object ID of the page to retrieve.",
- "type": "string",
- "required": true,
- "location": "path"
- },
- "presentationId": {
- "description": "The ID of the presentation to retrieve.",
- "type": "string",
- "required": true,
- "location": "path"
- }
- }
- }
- }
- }
- }
- }
- },
- "parameters": {
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
- },
- "$.xgafv": {
- "description": "V1 error format.",
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
- ]
- },
- "alt": {
- "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",
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string"
- },
- "access_token": {
- "type": "string",
- "location": "query",
- "description": "OAuth access token."
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "pp": {
- "location": "query",
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean"
- },
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
- }
- },
- "version": "v1",
- "baseUrl": "https://slides.googleapis.com/",
- "servicePath": "",
- "description": "An API for creating and editing Google Slides presentations.",
- "kind": "discovery#restDescription",
- "basePath": "",
- "revision": "20170630",
- "documentationLink": "https://developers.google.com/slides/",
- "id": "slides:v1",
- "discoveryVersion": "v1",
- "version_module": "True",
"schemas": {
- "Page": {
- "type": "object",
- "properties": {
- "objectId": {
- "type": "string",
- "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement share the same namespace."
- },
- "revisionId": {
- "type": "string",
- "description": "The revision ID of the presentation containing this page. Can be used in\nupdate requests to assert that the presentation revision hasn't changed\nsince the last read operation. Only populated if the user has edit access\nto the presentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes."
- },
- "layoutProperties": {
- "description": "Layout specific properties. Only set if page_type = LAYOUT.",
- "$ref": "LayoutProperties"
- },
- "pageElements": {
- "description": "The page elements rendered on the page.",
- "items": {
- "$ref": "PageElement"
- },
- "type": "array"
- },
- "pageType": {
- "enumDescriptions": [
- "A slide page.",
- "A master slide page.",
- "A layout page.",
- "A notes page.",
- "A notes master page."
- ],
- "enum": [
- "SLIDE",
- "MASTER",
- "LAYOUT",
- "NOTES",
- "NOTES_MASTER"
- ],
- "description": "The type of the page.",
- "type": "string"
- },
- "notesProperties": {
- "description": "Notes specific properties. Only set if page_type = NOTES.",
- "$ref": "NotesProperties"
- },
- "slideProperties": {
- "$ref": "SlideProperties",
- "description": "Slide specific properties. Only set if page_type = SLIDE."
- },
- "pageProperties": {
- "$ref": "PageProperties",
- "description": "The properties of the page."
- }
- },
- "id": "Page",
- "description": "A page in a presentation."
- },
- "ShapeBackgroundFill": {
- "description": "The shape background fill.",
- "type": "object",
- "properties": {
- "solidFill": {
- "$ref": "SolidFill",
- "description": "Solid color fill."
- },
- "propertyState": {
- "description": "The background fill property state.\n\nUpdating the the fill on a shape will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a shape, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.",
- "type": "string",
- "enumDescriptions": [
- "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
- "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
- "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
- ],
- "enum": [
- "RENDERED",
- "NOT_RENDERED",
- "INHERIT"
- ]
- }
- },
- "id": "ShapeBackgroundFill"
- },
- "CropProperties": {
- "type": "object",
- "properties": {
- "leftOffset": {
- "format": "float",
- "description": "The offset specifies the left edge of the crop rectangle that is located to\nthe right of the original bounding rectangle left edge, relative to the\nobject's original width.",
- "type": "number"
- },
- "rightOffset": {
- "format": "float",
- "description": "The offset specifies the right edge of the crop rectangle that is located\nto the left of the original bounding rectangle right edge, relative to the\nobject's original width.",
- "type": "number"
- },
- "bottomOffset": {
- "format": "float",
- "description": "The offset specifies the bottom edge of the crop rectangle that is located\nabove the original bounding rectangle bottom edge, relative to the object's\noriginal height.",
- "type": "number"
- },
- "angle": {
- "format": "float",
- "description": "The rotation angle of the crop window around its center, in radians.\nRotation angle is applied after the offset.",
- "type": "number"
- },
- "topOffset": {
- "format": "float",
- "description": "The offset specifies the top edge of the crop rectangle that is located\nbelow the original bounding rectangle top edge, relative to the object's\noriginal height.",
- "type": "number"
- }
- },
- "id": "CropProperties",
- "description": "The crop properties of an object enclosed in a container. For example, an\nImage.\n\nThe crop properties is represented by the offsets of four edges which define\na crop rectangle. The offsets are measured in percentage from the\ncorresponding edges of the object's original bounding rectangle towards\ninside, relative to the object's original dimensions.\n\n- If the offset is in the interval (0, 1), the corresponding edge of crop\nrectangle is positioned inside of the object's original bounding rectangle.\n- If the offset is negative or greater than 1, the corresponding edge of crop\nrectangle is positioned outside of the object's original bounding rectangle.\n- If the left edge of the crop rectangle is on the right side of its right\nedge, the object will be flipped horizontally.\n- If the top edge of the crop rectangle is below its bottom edge, the object\nwill be flipped vertically.\n- If all offsets and rotation angle is 0, the object is not cropped.\n\nAfter cropping, the content in the crop rectangle will be stretched to fit\nits container."
- },
- "ReplaceAllShapesWithSheetsChartRequest": {
- "description": "Replaces all shapes that match the given criteria with the provided Google\nSheets chart. The chart will be scaled and centered to fit within the bounds\nof the original shape.\n\nNOTE: Replacing shapes with a chart requires at least one of the\nspreadsheets.readonly, spreadsheets, drive.readonly, or drive OAuth scopes.",
- "type": "object",
- "properties": {
- "linkingMode": {
- "description": "The mode with which the chart is linked to the source spreadsheet. When\nnot specified, the chart will be an image that is not linked.",
- "type": "string",
- "enumDescriptions": [
- "The chart is not associated with the source spreadsheet and cannot be\nupdated. A chart that is not linked will be inserted as an image.",
- "Linking the chart allows it to be updated, and other collaborators will\nsee a link to the spreadsheet."
- ],
- "enum": [
- "NOT_LINKED_IMAGE",
- "LINKED"
- ]
- },
- "spreadsheetId": {
- "description": "The ID of the Google Sheets spreadsheet that contains the chart.",
- "type": "string"
- },
- "pageObjectIds": {
- "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "chartId": {
- "format": "int32",
- "description": "The ID of the specific chart in the Google Sheets spreadsheet.",
- "type": "integer"
- },
- "containsText": {
- "description": "The criteria that the shapes must match in order to be replaced. The\nrequest will replace all of the shapes that contain the given text.",
- "$ref": "SubstringMatchCriteria"
- }
- },
- "id": "ReplaceAllShapesWithSheetsChartRequest"
- },
- "Range": {
- "id": "Range",
- "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext.",
- "type": "object",
- "properties": {
- "type": {
- "type": "string",
- "enumDescriptions": [
- "Unspecified range type. This value must not be used.",
- "A fixed range. Both the `start_index` and\n`end_index` must be specified.",
- "Starts the range at `start_index` and continues until the\nend of the collection. The `end_index` must not be specified.",
- "Sets the range to be the whole length of the collection. Both the\n`start_index` and the `end_index` must not be\nspecified."
- ],
- "enum": [
- "RANGE_TYPE_UNSPECIFIED",
- "FIXED_RANGE",
- "FROM_START_INDEX",
- "ALL"
- ],
- "description": "The type of range."
- },
- "endIndex": {
- "format": "int32",
- "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges.",
- "type": "integer"
- },
- "startIndex": {
- "format": "int32",
- "description": "The optional zero-based index of the beginning of the collection.\nRequired for `FIXED_RANGE` and `FROM_START_INDEX` ranges.",
- "type": "integer"
- }
- }
- },
- "ColorStop": {
- "description": "A color and position in a gradient band.",
- "type": "object",
- "properties": {
- "position": {
- "type": "number",
- "format": "float",
- "description": "The relative position of the color stop in the gradient band measured\nin percentage. The value should be in the interval [0.0, 1.0]."
- },
- "alpha": {
- "format": "float",
- "description": "The alpha value of this color in the gradient band. Defaults to 1.0,\nfully opaque.",
- "type": "number"
- },
- "color": {
- "description": "The color of the gradient stop.",
- "$ref": "OpaqueColor"
- }
- },
- "id": "ColorStop"
- },
- "CreateVideoRequest": {
- "description": "Creates a video.",
- "type": "object",
- "properties": {
- "id": {
- "type": "string",
- "description": "The video source's unique identifier for this video.\n\ne.g. For YouTube video https://www.youtube.com/watch?v=7U3axjORYZ0,\nthe ID is 7U3axjORYZ0."
- },
- "source": {
- "enum": [
- "SOURCE_UNSPECIFIED",
- "YOUTUBE"
- ],
- "description": "The video source.",
- "type": "string",
- "enumDescriptions": [
- "The video source is unspecified.",
- "The video source is YouTube."
- ]
- },
- "objectId": {
- "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.",
- "type": "string"
- },
- "elementProperties": {
- "$ref": "PageElementProperties",
- "description": "The element properties for the video."
- }
- },
- "id": "CreateVideoRequest"
- },
- "DuplicateObjectResponse": {
- "properties": {
- "objectId": {
- "type": "string",
- "description": "The ID of the new duplicate object."
- }
- },
- "id": "DuplicateObjectResponse",
- "description": "The response of duplicating an object.",
- "type": "object"
- },
- "ReplaceAllShapesWithImageRequest": {
- "properties": {
- "imageUrl": {
- "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.",
- "type": "string"
- },
- "replaceMethod": {
- "description": "The replace method.",
- "type": "string",
- "enumDescriptions": [
- "Scales and centers the image to fit within the bounds of the original\nshape and maintains the image's aspect ratio. The rendered size of the\nimage may be smaller than the size of the shape. This is the default\nmethod when one is not specified.",
- "Scales and centers the image to fill the bounds of the original shape.\nThe image may be cropped in order to fill the shape. The rendered size of\nthe image will be the same as that of the original shape."
- ],
- "enum": [
- "CENTER_INSIDE",
- "CENTER_CROP"
- ]
- },
- "pageObjectIds": {
- "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "containsText": {
- "description": "If set, this request will replace all of the shapes that contain the\ngiven text.",
- "$ref": "SubstringMatchCriteria"
- }
- },
- "id": "ReplaceAllShapesWithImageRequest",
- "description": "Replaces all shapes that match the given criteria with the provided image.",
- "type": "object"
- },
- "Shadow": {
- "description": "The shadow properties of a page element.\n\nIf these fields are unset, they may be inherited from a parent placeholder\nif it exists. If there is no parent, the fields will default to the value\nused for new page elements created in the Slides editor, which may depend on\nthe page element kind.",
- "type": "object",
- "properties": {
- "blurRadius": {
- "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes.",
- "$ref": "Dimension"
- },
- "type": {
- "enum": [
- "SHADOW_TYPE_UNSPECIFIED",
- "OUTER"
- ],
- "description": "The type of the shadow.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified shadow type.",
- "Outer shadow."
- ]
- },
- "transform": {
- "$ref": "AffineTransform",
- "description": "Transform that encodes the translate, scale, and skew of the shadow,\nrelative to the alignment position."
- },
- "alignment": {
- "description": "The alignment point of the shadow, that sets the origin for translate,\nscale and skew of the shadow.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified.",
- "Top left.",
- "Top center.",
- "Top right.",
- "Left center.",
- "Center.",
- "Right center.",
- "Bottom left.",
- "Bottom center.",
- "Bottom right."
- ],
- "enum": [
- "RECTANGLE_POSITION_UNSPECIFIED",
- "TOP_LEFT",
- "TOP_CENTER",
- "TOP_RIGHT",
- "LEFT_CENTER",
- "CENTER",
- "RIGHT_CENTER",
- "BOTTOM_LEFT",
- "BOTTOM_CENTER",
- "BOTTOM_RIGHT"
- ]
- },
- "alpha": {
- "format": "float",
- "description": "The alpha of the shadow's color, from 0.0 to 1.0.",
- "type": "number"
- },
- "color": {
- "$ref": "OpaqueColor",
- "description": "The shadow color value."
- },
- "rotateWithShape": {
- "description": "Whether the shadow should rotate with the shape.",
- "type": "boolean"
- },
- "propertyState": {
- "description": "The shadow property state.\n\nUpdating the the shadow on a page element will implicitly update this field\nto `RENDERED`, unless another value is specified in the same request. To\nhave no shadow on a page element, set this field to `NOT_RENDERED`. In this\ncase, any other shadow fields set in the same request will be ignored.",
- "type": "string",
- "enumDescriptions": [
- "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
- "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
- "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
- ],
- "enum": [
- "RENDERED",
- "NOT_RENDERED",
- "INHERIT"
- ]
- }
- },
- "id": "Shadow"
- },
"DeleteTableRowRequest": {
"description": "Deletes a row from a table.",
"type": "object",
"properties": {
- "cellLocation": {
- "description": "The reference table cell location from which a row will be deleted.\n\nThe row this cell spans will be deleted. If this is a merged cell, multiple\nrows will be deleted. If no rows remain in the table after this deletion,\nthe whole table is deleted.",
- "$ref": "TableCellLocation"
- },
"tableObjectId": {
"description": "The table to delete rows from.",
"type": "string"
+ },
+ "cellLocation": {
+ "$ref": "TableCellLocation",
+ "description": "The reference table cell location from which a row will be deleted.\n\nThe row this cell spans will be deleted. If this is a merged cell, multiple\nrows will be deleted. If no rows remain in the table after this deletion,\nthe whole table is deleted."
}
},
"id": "DeleteTableRowRequest"
@@ -660,10 +19,6 @@
"description": "Describes the bullet of a paragraph.",
"type": "object",
"properties": {
- "listId": {
- "description": "The ID of the list this paragraph belongs to.",
- "type": "string"
- },
"glyph": {
"description": "The rendered bullet glyph for this paragraph.",
"type": "string"
@@ -674,8 +29,12 @@
"type": "integer"
},
"bulletStyle": {
- "description": "The paragraph specific text style applied to this bullet.",
- "$ref": "TextStyle"
+ "$ref": "TextStyle",
+ "description": "The paragraph specific text style applied to this bullet."
+ },
+ "listId": {
+ "description": "The ID of the list this paragraph belongs to.",
+ "type": "string"
}
},
"id": "Bullet"
@@ -685,23 +44,12 @@
"type": "object",
"properties": {
"solidFill": {
- "description": "Solid color fill.",
- "$ref": "SolidFill"
+ "$ref": "SolidFill",
+ "description": "Solid color fill."
}
},
"id": "OutlineFill"
},
- "CreateLineResponse": {
- "description": "The result of creating a line.",
- "type": "object",
- "properties": {
- "objectId": {
- "description": "The object ID of the created line.",
- "type": "string"
- }
- },
- "id": "CreateLineResponse"
- },
"TableCellLocation": {
"description": "A location of a single table cell within a table.",
"type": "object",
@@ -719,7 +67,20 @@
},
"id": "TableCellLocation"
},
+ "CreateLineResponse": {
+ "type": "object",
+ "properties": {
+ "objectId": {
+ "description": "The object ID of the created line.",
+ "type": "string"
+ }
+ },
+ "id": "CreateLineResponse",
+ "description": "The result of creating a line."
+ },
"ReplaceAllTextResponse": {
+ "description": "The result of replacing text.",
+ "type": "object",
"properties": {
"occurrencesChanged": {
"format": "int32",
@@ -727,17 +88,23 @@
"type": "integer"
}
},
- "id": "ReplaceAllTextResponse",
- "description": "The result of replacing text.",
- "type": "object"
+ "id": "ReplaceAllTextResponse"
},
"UpdateParagraphStyleRequest": {
"description": "Updates the styling for all of the paragraphs within a Shape or Table that\noverlap with the given text index range.",
"type": "object",
"properties": {
+ "textRange": {
+ "description": "The range of text containing the paragraph(s) to style.",
+ "$ref": "Range"
+ },
+ "objectId": {
+ "description": "The object ID of the shape or table with the text to be styled.",
+ "type": "string"
+ },
"style": {
- "$ref": "ParagraphStyle",
- "description": "The paragraph's style."
+ "description": "The paragraph's style.",
+ "$ref": "ParagraphStyle"
},
"cellLocation": {
"$ref": "TableCellLocation",
@@ -747,14 +114,6 @@
"type": "string",
"format": "google-fieldmask",
"description": "The fields that should be updated.\n\nAt least one field must be specified. The root `style` is implied and\nshould not be specified. A single `\"*\"` can be used as short-hand for\nlisting every field.\n\nFor example, to update the paragraph alignment, set `fields` to\n`\"alignment\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset."
- },
- "textRange": {
- "description": "The range of text containing the paragraph(s) to style.",
- "$ref": "Range"
- },
- "objectId": {
- "description": "The object ID of the shape or table with the text to be styled.",
- "type": "string"
}
},
"id": "UpdateParagraphStyleRequest"
@@ -774,6 +133,8 @@
"id": "ColorScheme"
},
"Shape": {
+ "description": "A PageElement kind representing a\ngeneric shape that does not have a more specific classification.",
+ "type": "object",
"properties": {
"placeholder": {
"$ref": "Placeholder",
@@ -784,152 +145,6 @@
"$ref": "TextContent"
},
"shapeType": {
- "type": "string",
- "enumDescriptions": [
- "The shape type that is not predefined.",
- "Text box shape.",
- "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.",
- "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'",
- "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'",
- "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'",
- "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'",
- "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'",
- "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'",
- "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'",
- "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'",
- "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'",
- "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'",
- "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'",
- "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'",
- "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'",
- "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'",
- "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'",
- "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'",
- "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'",
- "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'",
- "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'",
- "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'",
- "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'",
- "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'",
- "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'",
- "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'",
- "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'",
- "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'",
- "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'",
- "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'",
- "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'",
- "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'",
- "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'",
- "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'",
- "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'",
- "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'",
- "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'",
- "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'",
- "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'",
- "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'",
- "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'",
- "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'",
- "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'",
- "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'",
- "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'",
- "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'",
- "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'",
- "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'",
- "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'",
- "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'",
- "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'",
- "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'",
- "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'",
- "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'",
- "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'",
- "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'",
- "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'",
- "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'",
- "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'",
- "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'",
- "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'",
- "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'",
- "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'",
- "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'",
- "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'",
- "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'",
- "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'",
- "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'",
- "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'",
- "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'",
- "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'",
- "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'",
- "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'",
- "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'",
- "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'",
- "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'",
- "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'",
- "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'",
- "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'",
- "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'",
- "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'",
- "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'",
- "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'",
- "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'",
- "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'",
- "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'",
- "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'",
- "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'",
- "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'",
- "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'",
- "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'",
- "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'",
- "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'",
- "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'",
- "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'",
- "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'",
- "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'",
- "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'",
- "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'",
- "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'",
- "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'",
- "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'",
- "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'",
- "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'",
- "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'",
- "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'",
- "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'",
- "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'",
- "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'",
- "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'",
- "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'",
- "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'",
- "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'",
- "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'",
- "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'",
- "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'",
- "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'",
- "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'",
- "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'",
- "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'",
- "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'",
- "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'",
- "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'",
- "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'",
- "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'",
- "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'",
- "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'",
- "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'",
- "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'",
- "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'",
- "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'",
- "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'",
- "East arrow shape.",
- "Northeast arrow shape.",
- "North arrow shape.",
- "Speech shape.",
- "Star burst shape.",
- "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'",
- "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'",
- "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'",
- "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'",
- "Custom shape."
- ],
"enum": [
"TYPE_UNSPECIFIED",
"TEXT_BOX",
@@ -1075,18 +290,164 @@
"CLOUD_CALLOUT",
"CUSTOM"
],
- "description": "The type of the shape."
+ "description": "The type of the shape.",
+ "type": "string",
+ "enumDescriptions": [
+ "The shape type that is not predefined.",
+ "Text box shape.",
+ "Rectangle shape. Corresponds to ECMA-376 ST_ShapeType 'rect'.",
+ "Round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'roundRect'",
+ "Ellipse shape. Corresponds to ECMA-376 ST_ShapeType 'ellipse'",
+ "Curved arc shape. Corresponds to ECMA-376 ST_ShapeType 'arc'",
+ "Bent arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentArrow'",
+ "Bent up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'bentUpArrow'",
+ "Bevel shape. Corresponds to ECMA-376 ST_ShapeType 'bevel'",
+ "Block arc shape. Corresponds to ECMA-376 ST_ShapeType 'blockArc'",
+ "Brace pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracePair'",
+ "Bracket pair shape. Corresponds to ECMA-376 ST_ShapeType 'bracketPair'",
+ "Can shape. Corresponds to ECMA-376 ST_ShapeType 'can'",
+ "Chevron shape. Corresponds to ECMA-376 ST_ShapeType 'chevron'",
+ "Chord shape. Corresponds to ECMA-376 ST_ShapeType 'chord'",
+ "Cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloud'",
+ "Corner shape. Corresponds to ECMA-376 ST_ShapeType 'corner'",
+ "Cube shape. Corresponds to ECMA-376 ST_ShapeType 'cube'",
+ "Curved down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedDownArrow'",
+ "Curved left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedLeftArrow'",
+ "Curved right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedRightArrow'",
+ "Curved up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'curvedUpArrow'",
+ "Decagon shape. Corresponds to ECMA-376 ST_ShapeType 'decagon'",
+ "Diagonal stripe shape. Corresponds to ECMA-376 ST_ShapeType 'diagStripe'",
+ "Diamond shape. Corresponds to ECMA-376 ST_ShapeType 'diamond'",
+ "Dodecagon shape. Corresponds to ECMA-376 ST_ShapeType 'dodecagon'",
+ "Donut shape. Corresponds to ECMA-376 ST_ShapeType 'donut'",
+ "Double wave shape. Corresponds to ECMA-376 ST_ShapeType 'doubleWave'",
+ "Down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'downArrow'",
+ "Callout down arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'downArrowCallout'",
+ "Folded corner shape. Corresponds to ECMA-376 ST_ShapeType 'foldedCorner'",
+ "Frame shape. Corresponds to ECMA-376 ST_ShapeType 'frame'",
+ "Half frame shape. Corresponds to ECMA-376 ST_ShapeType 'halfFrame'",
+ "Heart shape. Corresponds to ECMA-376 ST_ShapeType 'heart'",
+ "Heptagon shape. Corresponds to ECMA-376 ST_ShapeType 'heptagon'",
+ "Hexagon shape. Corresponds to ECMA-376 ST_ShapeType 'hexagon'",
+ "Home plate shape. Corresponds to ECMA-376 ST_ShapeType 'homePlate'",
+ "Horizontal scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'horizontalScroll'",
+ "Irregular seal 1 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal1'",
+ "Irregular seal 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'irregularSeal2'",
+ "Left arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftArrow'",
+ "Callout left arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftArrowCallout'",
+ "Left brace shape. Corresponds to ECMA-376 ST_ShapeType 'leftBrace'",
+ "Left bracket shape. Corresponds to ECMA-376 ST_ShapeType 'leftBracket'",
+ "Left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrow'",
+ "Callout left right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightArrowCallout'",
+ "Left right up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'leftRightUpArrow'",
+ "Left up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'leftUpArrow'",
+ "Lightning bolt shape. Corresponds to ECMA-376 ST_ShapeType\n'lightningBolt'",
+ "Divide math shape. Corresponds to ECMA-376 ST_ShapeType 'mathDivide'",
+ "Equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathEqual'",
+ "Minus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMinus'",
+ "Multiply math shape. Corresponds to ECMA-376 ST_ShapeType 'mathMultiply'",
+ "Not equal math shape. Corresponds to ECMA-376 ST_ShapeType 'mathNotEqual'",
+ "Plus math shape. Corresponds to ECMA-376 ST_ShapeType 'mathPlus'",
+ "Moon shape. Corresponds to ECMA-376 ST_ShapeType 'moon'",
+ "No smoking shape. Corresponds to ECMA-376 ST_ShapeType 'noSmoking'",
+ "Notched right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'notchedRightArrow'",
+ "Octagon shape. Corresponds to ECMA-376 ST_ShapeType 'octagon'",
+ "Parallelogram shape. Corresponds to ECMA-376 ST_ShapeType 'parallelogram'",
+ "Pentagon shape. Corresponds to ECMA-376 ST_ShapeType 'pentagon'",
+ "Pie shape. Corresponds to ECMA-376 ST_ShapeType 'pie'",
+ "Plaque shape. Corresponds to ECMA-376 ST_ShapeType 'plaque'",
+ "Plus shape. Corresponds to ECMA-376 ST_ShapeType 'plus'",
+ "Quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType 'quadArrow'",
+ "Callout quad-arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'quadArrowCallout'",
+ "Ribbon shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon'",
+ "Ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType 'ribbon2'",
+ "Right arrow shape. Corresponds to ECMA-376 ST_ShapeType 'rightArrow'",
+ "Callout right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'rightArrowCallout'",
+ "Right brace shape. Corresponds to ECMA-376 ST_ShapeType 'rightBrace'",
+ "Right bracket shape. Corresponds to ECMA-376 ST_ShapeType 'rightBracket'",
+ "One round corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'round1Rect'",
+ "Two diagonal round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2DiagRect'",
+ "Two same-side round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'round2SameRect'",
+ "Right triangle shape. Corresponds to ECMA-376 ST_ShapeType 'rtTriangle'",
+ "Smiley face shape. Corresponds to ECMA-376 ST_ShapeType 'smileyFace'",
+ "One snip corner rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'snip1Rect'",
+ "Two diagonal snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2DiagRect'",
+ "Two same-side snip corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snip2SameRect'",
+ "One snip one round corner rectangle shape. Corresponds to ECMA-376\nST_ShapeType 'snipRoundRect'",
+ "Ten pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star10'",
+ "Twelve pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star12'",
+ "Sixteen pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star16'",
+ "Twenty four pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star24'",
+ "Thirty two pointed star shape. Corresponds to ECMA-376 ST_ShapeType\n'star32'",
+ "Four pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star4'",
+ "Five pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star5'",
+ "Six pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star6'",
+ "Seven pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star7'",
+ "Eight pointed star shape. Corresponds to ECMA-376 ST_ShapeType 'star8'",
+ "Striped right arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'stripedRightArrow'",
+ "Sun shape. Corresponds to ECMA-376 ST_ShapeType 'sun'",
+ "Trapezoid shape. Corresponds to ECMA-376 ST_ShapeType 'trapezoid'",
+ "Triangle shape. Corresponds to ECMA-376 ST_ShapeType 'triangle'",
+ "Up arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upArrow'",
+ "Callout up arrow shape. Corresponds to ECMA-376 ST_ShapeType\n'upArrowCallout'",
+ "Up down arrow shape. Corresponds to ECMA-376 ST_ShapeType 'upDownArrow'",
+ "U-turn arrow shape. Corresponds to ECMA-376 ST_ShapeType 'uturnArrow'",
+ "Vertical scroll shape. Corresponds to ECMA-376 ST_ShapeType\n'verticalScroll'",
+ "Wave shape. Corresponds to ECMA-376 ST_ShapeType 'wave'",
+ "Callout wedge ellipse shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeEllipseCallout'",
+ "Callout wedge rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRectCallout'",
+ "Callout wedge round rectangle shape. Corresponds to ECMA-376 ST_ShapeType\n'wedgeRoundRectCallout'",
+ "Alternate process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartAlternateProcess'",
+ "Collate flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartCollate'",
+ "Connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartConnector'",
+ "Decision flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDecision'",
+ "Delay flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartDelay'",
+ "Display flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDisplay'",
+ "Document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartDocument'",
+ "Extract flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartExtract'",
+ "Input output flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInputOutput'",
+ "Internal storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartInternalStorage'",
+ "Magnetic disk flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDisk'",
+ "Magnetic drum flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticDrum'",
+ "Magnetic tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMagneticTape'",
+ "Manual input flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualInput'",
+ "Manual operation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartManualOperation'",
+ "Merge flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartMerge'",
+ "Multi-document flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartMultidocument'",
+ "Offline storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOfflineStorage'",
+ "Off-page connector flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOffpageConnector'",
+ "Online storage flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartOnlineStorage'",
+ "Or flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartOr'",
+ "Predefined process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPredefinedProcess'",
+ "Preparation flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPreparation'",
+ "Process flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartProcess'",
+ "Punched card flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedCard'",
+ "Punched tape flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartPunchedTape'",
+ "Sort flow shape. Corresponds to ECMA-376 ST_ShapeType 'flowChartSort'",
+ "Summing junction flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartSummingJunction'",
+ "Terminator flow shape. Corresponds to ECMA-376 ST_ShapeType\n'flowChartTerminator'",
+ "East arrow shape.",
+ "Northeast arrow shape.",
+ "North arrow shape.",
+ "Speech shape.",
+ "Star burst shape.",
+ "Teardrop shape. Corresponds to ECMA-376 ST_ShapeType 'teardrop'",
+ "Ellipse ribbon shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon'",
+ "Ellipse ribbon 2 shape. Corresponds to ECMA-376 ST_ShapeType\n'ellipseRibbon2'",
+ "Callout cloud shape. Corresponds to ECMA-376 ST_ShapeType 'cloudCallout'",
+ "Custom shape."
+ ]
},
"shapeProperties": {
- "$ref": "ShapeProperties",
- "description": "The properties of the shape."
+ "description": "The properties of the shape.",
+ "$ref": "ShapeProperties"
}
},
- "id": "Shape",
- "description": "A PageElement kind representing a\ngeneric shape that does not have a more specific classification.",
- "type": "object"
+ "id": "Shape"
},
"Image": {
+ "description": "A PageElement kind representing an\nimage.",
+ "type": "object",
"properties": {
"imageProperties": {
"$ref": "ImageProperties",
@@ -1097,17 +458,11 @@
"type": "string"
}
},
- "id": "Image",
- "description": "A PageElement kind representing an\nimage.",
- "type": "object"
+ "id": "Image"
},
"InsertTextRequest": {
"type": "object",
"properties": {
- "cellLocation": {
- "description": "The optional table cell location if the text is to be inserted into a table\ncell. If present, the object_id must refer to a table.",
- "$ref": "TableCellLocation"
- },
"text": {
"description": "The text to be inserted.\n\nInserting a newline character will implicitly create a new\nParagraphMarker at that index.\nThe paragraph style of the new paragraph will be copied from the paragraph\nat the current insertion index, including lists and bullets.\n\nText styles for inserted text will be determined automatically, generally\npreserving the styling of neighboring text. In most cases, the text will be\nadded to the TextRun that exists at the\ninsertion index.\n\nSome control characters (U+0000-U+0008, U+000C-U+001F) and characters\nfrom the Unicode Basic Multilingual Plane Private Use Area (U+E000-U+F8FF)\nwill be stripped out of the inserted text.",
"type": "string"
@@ -1120,43 +475,27 @@
"format": "int32",
"description": "The index where the text will be inserted, in Unicode code units, based\non TextElement indexes.\n\nThe index is zero-based and is computed from the start of the string.\nThe index may be adjusted to prevent insertions inside Unicode grapheme\nclusters. In these cases, the text will be inserted immediately after the\ngrapheme cluster.",
"type": "integer"
+ },
+ "cellLocation": {
+ "$ref": "TableCellLocation",
+ "description": "The optional table cell location if the text is to be inserted into a table\ncell. If present, the object_id must refer to a table."
}
},
"id": "InsertTextRequest",
"description": "Inserts text into a shape or a table cell."
},
"AffineTransform": {
- "description": "AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]\nto transform source coordinates (x,y) into destination coordinates (x', y')\naccording to:\n\n x' x = shear_y scale_y translate_y \n 1 [ 1 ]\n\nAfter transformation,\n\n x' = scale_x * x + shear_x * y + translate_x;\n y' = scale_y * y + shear_y * x + translate_y;\n\nThis message is therefore composed of these six matrix elements.",
"type": "object",
"properties": {
- "unit": {
- "enumDescriptions": [
- "The units are unknown.",
- "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter\nand thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.",
- "A point, 1/72 of an inch."
- ],
- "enum": [
- "UNIT_UNSPECIFIED",
- "EMU",
- "PT"
- ],
- "description": "The units for translate elements.",
- "type": "string"
- },
- "scaleX": {
- "format": "double",
- "description": "The X coordinate scaling element.",
- "type": "number"
- },
"shearX": {
"format": "double",
"description": "The X coordinate shearing element.",
"type": "number"
},
"scaleY": {
+ "type": "number",
"format": "double",
- "description": "The Y coordinate scaling element.",
- "type": "number"
+ "description": "The Y coordinate scaling element."
},
"translateY": {
"format": "double",
@@ -1164,28 +503,53 @@
"type": "number"
},
"translateX": {
+ "type": "number",
"format": "double",
- "description": "The X coordinate translation element.",
- "type": "number"
+ "description": "The X coordinate translation element."
},
"shearY": {
"format": "double",
"description": "The Y coordinate shearing element.",
"type": "number"
+ },
+ "unit": {
+ "enum": [
+ "UNIT_UNSPECIFIED",
+ "EMU",
+ "PT"
+ ],
+ "description": "The units for translate elements.",
+ "type": "string",
+ "enumDescriptions": [
+ "The units are unknown.",
+ "An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter\nand thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.",
+ "A point, 1/72 of an inch."
+ ]
+ },
+ "scaleX": {
+ "format": "double",
+ "description": "The X coordinate scaling element.",
+ "type": "number"
}
},
- "id": "AffineTransform"
+ "id": "AffineTransform",
+ "description": "AffineTransform uses a 3x3 matrix with an implied last row of [ 0 0 1 ]\nto transform source coordinates (x,y) into destination coordinates (x', y')\naccording to:\n\n x' x = shear_y scale_y translate_y \n 1 [ 1 ]\n\nAfter transformation,\n\n x' = scale_x * x + shear_x * y + translate_x;\n y' = scale_y * y + shear_y * x + translate_y;\n\nThis message is therefore composed of these six matrix elements."
},
"AutoText": {
- "id": "AutoText",
"description": "A TextElement kind that represents auto text.",
"type": "object",
"properties": {
+ "style": {
+ "description": "The styling applied to this auto text.",
+ "$ref": "TextStyle"
+ },
"content": {
"description": "The rendered content of this auto text, if available.",
"type": "string"
},
"type": {
+ "description": "The type of this auto text.",
+ "type": "string",
"enumDescriptions": [
"An unspecified autotext type.",
"Type for autotext that represents the current slide number."
@@ -1193,15 +557,10 @@
"enum": [
"TYPE_UNSPECIFIED",
"SLIDE_NUMBER"
- ],
- "description": "The type of this auto text.",
- "type": "string"
- },
- "style": {
- "description": "The styling applied to this auto text.",
- "$ref": "TextStyle"
+ ]
}
- }
+ },
+ "id": "AutoText"
},
"CreateVideoResponse": {
"id": "CreateVideoResponse",
@@ -1215,9 +574,14 @@
}
},
"DeleteTextRequest": {
+ "id": "DeleteTextRequest",
"description": "Deletes text from a shape or a table cell.",
"type": "object",
"properties": {
+ "cellLocation": {
+ "description": "The optional table cell location if the text is to be deleted from a table\ncell. If present, the object_id must refer to a table.",
+ "$ref": "TableCellLocation"
+ },
"textRange": {
"$ref": "Range",
"description": "The range of text to delete, based on TextElement indexes.\n\nThere is always an implicit newline character at the end of a shape's or\ntable cell's text that cannot be deleted. `Range.Type.ALL` will use the\ncorrect bounds, but care must be taken when specifying explicit bounds for\nrange types `FROM_START_INDEX` and `FIXED_RANGE`. For example, if the text\nis \"ABC\", followed by an implicit newline, then the maximum value is 2 for\n`text_range.start_index` and 3 for `text_range.end_index`.\n\nDeleting text that crosses a paragraph boundary may result in changes\nto paragraph styles and lists as the two paragraphs are merged.\n\nRanges that include only one code unit of a surrogate pair are expanded to\ninclude both code units."
@@ -1225,15 +589,11 @@
"objectId": {
"description": "The object ID of the shape or table from which the text will be deleted.",
"type": "string"
- },
- "cellLocation": {
- "$ref": "TableCellLocation",
- "description": "The optional table cell location if the text is to be deleted from a table\ncell. If present, the object_id must refer to a table."
}
- },
- "id": "DeleteTextRequest"
+ }
},
"UpdatePageElementTransformRequest": {
+ "description": "Updates the transform of a page element.\n\nUpdating the transform of a group will change the absolute transform of the\npage elements in that group, which can change their visual appearance. See\nthe documentation for PageElement.transform for more details.",
"type": "object",
"properties": {
"transform": {
@@ -1245,7 +605,6 @@
"description": "The object ID of the page element to update."
},
"applyMode": {
- "description": "The apply mode of the transform update.",
"type": "string",
"enumDescriptions": [
"Unspecified mode.",
@@ -1256,11 +615,11 @@
"APPLY_MODE_UNSPECIFIED",
"RELATIVE",
"ABSOLUTE"
- ]
+ ],
+ "description": "The apply mode of the transform update."
}
},
- "id": "UpdatePageElementTransformRequest",
- "description": "Updates the transform of a page element."
+ "id": "UpdatePageElementTransformRequest"
},
"DeleteObjectRequest": {
"description": "Deletes an object, either pages or\npage elements, from the\npresentation.",
@@ -1283,6 +642,8 @@
"type": "number"
},
"unit": {
+ "description": "The units for magnitude.",
+ "type": "string",
"enumDescriptions": [
"The units are unknown.",
"An English Metric Unit (EMU) is defined as 1/360,000 of a centimeter\nand thus there are 914,400 EMUs per inch, and 12,700 EMUs per point.",
@@ -1292,9 +653,7 @@
"UNIT_UNSPECIFIED",
"EMU",
"PT"
- ],
- "description": "The units for magnitude.",
- "type": "string"
+ ]
}
},
"id": "Dimension"
@@ -1304,8 +663,8 @@
"type": "object",
"properties": {
"textRun": {
- "description": "A TextElement representing a run of text where all of the characters\nin the run have the same TextStyle.\n\nThe `start_index` and `end_index` of TextRuns will always be fully\ncontained in the index range of a single `paragraph_marker` TextElement.\nIn other words, a TextRun will never span multiple paragraphs.",
- "$ref": "TextRun"
+ "$ref": "TextRun",
+ "description": "A TextElement representing a run of text where all of the characters\nin the run have the same TextStyle.\n\nThe `start_index` and `end_index` of TextRuns will always be fully\ncontained in the index range of a single `paragraph_marker` TextElement.\nIn other words, a TextRun will never span multiple paragraphs."
},
"autoText": {
"description": "A TextElement representing a spot in the text that is dynamically\nreplaced with content that can change over time.",
@@ -1329,15 +688,15 @@
"id": "TextElement"
},
"LineFill": {
- "description": "The fill of the line.",
- "type": "object",
"properties": {
"solidFill": {
- "$ref": "SolidFill",
- "description": "Solid color fill."
+ "description": "Solid color fill.",
+ "$ref": "SolidFill"
}
},
- "id": "LineFill"
+ "id": "LineFill",
+ "description": "The fill of the line.",
+ "type": "object"
},
"VideoProperties": {
"id": "VideoProperties",
@@ -1362,8 +721,8 @@
"description": "The reference table cell location from which rows will be inserted.\n\nA new row will be inserted above (or below) the row where the reference\ncell is. If the reference cell is a merged cell, a new row will be\ninserted above (or below) the merged cell."
},
"tableObjectId": {
- "type": "string",
- "description": "The table to insert rows into."
+ "description": "The table to insert rows into.",
+ "type": "string"
},
"insertBelow": {
"description": "Whether to insert new rows below the reference cell location.\n\n- `True`: insert below the cell.\n- `False`: insert above the cell.",
@@ -1375,14 +734,7 @@
"type": "object"
},
"LayoutProperties": {
- "id": "LayoutProperties",
- "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.",
- "type": "object",
"properties": {
- "displayName": {
- "description": "The human-readable name of the layout.",
- "type": "string"
- },
"masterObjectId": {
"description": "The object ID of the master that this layout is based on.",
"type": "string"
@@ -1390,78 +742,33 @@
"name": {
"description": "The name of the layout.",
"type": "string"
- }
- }
- },
- "Presentation": {
- "description": "A Google Slides presentation.",
- "type": "object",
- "properties": {
- "slides": {
- "description": "The slides in the presentation.\nA slide inherits properties from a slide layout.",
- "items": {
- "$ref": "Page"
- },
- "type": "array"
},
- "revisionId": {
- "description": "The revision ID of the presentation. Can be used in update requests\nto assert that the presentation revision hasn't changed since the last\nread operation. Only populated if the user has edit access to the\npresentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.",
- "type": "string"
- },
- "notesMaster": {
- "$ref": "Page",
- "description": "The notes master in the presentation. It serves three purposes:\n\n- Placeholder shapes on a notes master contain the default text styles and\n shape properties of all placeholder shapes on notes pages. Specifically,\n a `SLIDE_IMAGE` placeholder shape contains the slide thumbnail, and a\n `BODY` placeholder shape contains the speaker notes.\n- The notes master page properties define the common page properties\n inherited by all notes pages.\n- Any other shapes on the notes master will appear on all notes pages.\n\nThe notes master is read-only."
- },
- "title": {
- "description": "The title of the presentation.",
- "type": "string"
- },
- "layouts": {
- "description": "The layouts in the presentation. A layout is a template that determines\nhow content is arranged and styled on the slides that inherit from that\nlayout.",
- "items": {
- "$ref": "Page"
- },
- "type": "array"
- },
- "locale": {
- "description": "The locale of the presentation, as an IETF BCP 47 language tag.",
- "type": "string"
- },
- "masters": {
- "description": "The slide masters in the presentation. A slide master contains all common\npage elements and the common properties for a set of layouts. They serve\nthree purposes:\n\n- Placeholder shapes on a master contain the default text styles and shape\n properties of all placeholder shapes on pages that use that master.\n- The master page properties define the common page properties inherited by\n its layouts.\n- Any other shapes on the master slide will appear on all slides using that\n master, regardless of their layout.",
- "items": {
- "$ref": "Page"
- },
- "type": "array"
- },
- "pageSize": {
- "$ref": "Size",
- "description": "The size of pages in the presentation."
- },
- "presentationId": {
- "description": "The ID of the presentation.",
+ "displayName": {
+ "description": "The human-readable name of the layout.",
"type": "string"
}
},
- "id": "Presentation"
+ "id": "LayoutProperties",
+ "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.",
+ "type": "object"
},
"LineProperties": {
- "description": "The properties of the Line.\n\nWhen unset, these fields default to values that match the appearance of\nnew lines created in the Slides editor.",
"type": "object",
"properties": {
- "weight": {
- "$ref": "Dimension",
- "description": "The thickness of the line."
- },
- "lineFill": {
- "$ref": "LineFill",
- "description": "The fill of the line. The default line fill matches the defaults for new\nlines created in the Slides editor."
- },
"link": {
- "description": "The hyperlink destination of the line. If unset, there is no link.",
- "$ref": "Link"
+ "$ref": "Link",
+ "description": "The hyperlink destination of the line. If unset, there is no link."
},
"dashStyle": {
+ "enumDescriptions": [
+ "Unspecified dash style.",
+ "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.",
+ "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.",
+ "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.",
+ "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.",
+ "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.",
+ "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'."
+ ],
"enum": [
"DASH_STYLE_UNSPECIFIED",
"SOLID",
@@ -1472,16 +779,7 @@
"LONG_DASH_DOT"
],
"description": "The dash style of the line.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified dash style.",
- "Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'solid'.\nThis is the default dash style.",
- "Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dot'.",
- "Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value 'dash'.",
- "Alternating dashes and dots. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'dashDot'.",
- "Line with large dashes. Corresponds to ECMA-376 ST_PresetLineDashVal\nvalue 'lgDash'.",
- "Alternating large dashes and dots. Corresponds to ECMA-376\nST_PresetLineDashVal value 'lgDashDot'."
- ]
+ "type": "string"
},
"startArrow": {
"type": "string",
@@ -1514,6 +812,7 @@
"description": "The style of the arrow at the beginning of the line."
},
"endArrow": {
+ "description": "The style of the arrow at the end of the line.",
"type": "string",
"enumDescriptions": [
"An unspecified arrow style.",
@@ -1540,11 +839,71 @@
"OPEN_CIRCLE",
"OPEN_SQUARE",
"OPEN_DIAMOND"
- ],
- "description": "The style of the arrow at the end of the line."
+ ]
+ },
+ "weight": {
+ "$ref": "Dimension",
+ "description": "The thickness of the line."
+ },
+ "lineFill": {
+ "$ref": "LineFill",
+ "description": "The fill of the line. The default line fill matches the defaults for new\nlines created in the Slides editor."
}
},
- "id": "LineProperties"
+ "id": "LineProperties",
+ "description": "The properties of the Line.\n\nWhen unset, these fields default to values that match the appearance of\nnew lines created in the Slides editor."
+ },
+ "Presentation": {
+ "type": "object",
+ "properties": {
+ "slides": {
+ "description": "The slides in the presentation.\nA slide inherits properties from a slide layout.",
+ "items": {
+ "$ref": "Page"
+ },
+ "type": "array"
+ },
+ "revisionId": {
+ "description": "The revision ID of the presentation. Can be used in update requests\nto assert that the presentation revision hasn't changed since the last\nread operation. Only populated if the user has edit access to the\npresentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.",
+ "type": "string"
+ },
+ "notesMaster": {
+ "$ref": "Page",
+ "description": "The notes master in the presentation. It serves three purposes:\n\n- Placeholder shapes on a notes master contain the default text styles and\n shape properties of all placeholder shapes on notes pages. Specifically,\n a `SLIDE_IMAGE` placeholder shape contains the slide thumbnail, and a\n `BODY` placeholder shape contains the speaker notes.\n- The notes master page properties define the common page properties\n inherited by all notes pages.\n- Any other shapes on the notes master will appear on all notes pages.\n\nThe notes master is read-only."
+ },
+ "title": {
+ "description": "The title of the presentation.",
+ "type": "string"
+ },
+ "layouts": {
+ "description": "The layouts in the presentation. A layout is a template that determines\nhow content is arranged and styled on the slides that inherit from that\nlayout.",
+ "items": {
+ "$ref": "Page"
+ },
+ "type": "array"
+ },
+ "masters": {
+ "description": "The slide masters in the presentation. A slide master contains all common\npage elements and the common properties for a set of layouts. They serve\nthree purposes:\n\n- Placeholder shapes on a master contain the default text styles and shape\n properties of all placeholder shapes on pages that use that master.\n- The master page properties define the common page properties inherited by\n its layouts.\n- Any other shapes on the master slide will appear on all slides using that\n master, regardless of their layout.",
+ "items": {
+ "$ref": "Page"
+ },
+ "type": "array"
+ },
+ "locale": {
+ "description": "The locale of the presentation, as an IETF BCP 47 language tag.",
+ "type": "string"
+ },
+ "pageSize": {
+ "$ref": "Size",
+ "description": "The size of pages in the presentation."
+ },
+ "presentationId": {
+ "description": "The ID of the presentation.",
+ "type": "string"
+ }
+ },
+ "id": "Presentation",
+ "description": "A Google Slides presentation."
},
"OpaqueColor": {
"description": "A themeable solid color value.",
@@ -1593,8 +952,8 @@
]
},
"rgbColor": {
- "description": "An opaque RGB color.",
- "$ref": "RgbColor"
+ "$ref": "RgbColor",
+ "description": "An opaque RGB color."
}
},
"id": "OpaqueColor"
@@ -1602,15 +961,27 @@
"ImageProperties": {
"type": "object",
"properties": {
+ "recolor": {
+ "description": "The recolor effect of the image. If not set, the image is not recolored.\nThis property is read-only.",
+ "$ref": "Recolor"
+ },
+ "cropProperties": {
+ "$ref": "CropProperties",
+ "description": "The crop properties of the image. If not set, the image is not cropped.\nThis property is read-only."
+ },
+ "outline": {
+ "$ref": "Outline",
+ "description": "The outline of the image. If not set, the the image has no outline."
+ },
"brightness": {
"format": "float",
"description": "The brightness effect of the image. The value should be in the interval\n[-1.0, 1.0], where 0 means no effect. This property is read-only.",
"type": "number"
},
"transparency": {
- "type": "number",
"format": "float",
- "description": "The transparency effect of the image. The value should be in the interval\n[0.0, 1.0], where 0 means no effect and 1 means completely transparent.\nThis property is read-only."
+ "description": "The transparency effect of the image. The value should be in the interval\n[0.0, 1.0], where 0 means no effect and 1 means completely transparent.\nThis property is read-only.",
+ "type": "number"
},
"shadow": {
"$ref": "Shadow",
@@ -1622,20 +993,8 @@
"type": "number"
},
"link": {
- "$ref": "Link",
- "description": "The hyperlink destination of the image. If unset, there is no link."
- },
- "recolor": {
- "$ref": "Recolor",
- "description": "The recolor effect of the image. If not set, the image is not recolored.\nThis property is read-only."
- },
- "cropProperties": {
- "description": "The crop properties of the image. If not set, the image is not cropped.\nThis property is read-only.",
- "$ref": "CropProperties"
- },
- "outline": {
- "$ref": "Outline",
- "description": "The outline of the image. If not set, the the image has no outline."
+ "description": "The hyperlink destination of the image. If unset, there is no link.",
+ "$ref": "Link"
}
},
"id": "ImageProperties",
@@ -1654,12 +1013,11 @@
"id": "ReplaceAllShapesWithImageResponse"
},
"Line": {
+ "id": "Line",
"description": "A PageElement kind representing a\nline, curved connector, or bent connector.",
"type": "object",
"properties": {
"lineType": {
- "description": "The type of the line.",
- "type": "string",
"enumDescriptions": [
"An unspecified line type.",
"Straight connector 1 form. Corresponds to ECMA-376 ST_ShapeType\n'straightConnector1'.",
@@ -1683,14 +1041,33 @@
"CURVED_CONNECTOR_3",
"CURVED_CONNECTOR_4",
"CURVED_CONNECTOR_5"
- ]
+ ],
+ "description": "The type of the line.",
+ "type": "string"
},
"lineProperties": {
"description": "The properties of the line.",
"$ref": "LineProperties"
}
+ }
+ },
+ "BatchUpdatePresentationResponse": {
+ "description": "Response message from a batch update.",
+ "type": "object",
+ "properties": {
+ "replies": {
+ "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.",
+ "items": {
+ "$ref": "Response"
+ },
+ "type": "array"
+ },
+ "presentationId": {
+ "description": "The presentation the updates were applied to.",
+ "type": "string"
+ }
},
- "id": "Line"
+ "id": "BatchUpdatePresentationResponse"
},
"CreateSheetsChartRequest": {
"description": "Creates an embedded Google Sheets chart.\n\nNOTE: Chart creation requires at least one of the spreadsheets.readonly,\nspreadsheets, drive.readonly, or drive OAuth scopes.",
@@ -1705,15 +1082,15 @@
"description": "The element properties for the chart.\n\nWhen the aspect ratio of the provided size does not match the chart aspect\nratio, the chart is scaled and centered with respect to the size in order\nto maintain aspect ratio. The provided transform is applied after this\noperation."
},
"linkingMode": {
+ "enum": [
+ "NOT_LINKED_IMAGE",
+ "LINKED"
+ ],
"description": "The mode with which the chart is linked to the source spreadsheet. When\nnot specified, the chart will be an image that is not linked.",
"type": "string",
"enumDescriptions": [
"The chart is not associated with the source spreadsheet and cannot be\nupdated. A chart that is not linked will be inserted as an image.",
"Linking the chart allows it to be updated, and other collaborators will\nsee a link to the spreadsheet."
- ],
- "enum": [
- "NOT_LINKED_IMAGE",
- "LINKED"
]
},
"spreadsheetId": {
@@ -1728,39 +1105,25 @@
},
"id": "CreateSheetsChartRequest"
},
- "BatchUpdatePresentationResponse": {
- "type": "object",
- "properties": {
- "presentationId": {
- "description": "The presentation the updates were applied to.",
- "type": "string"
- },
- "replies": {
- "description": "The reply of the updates. This maps 1:1 with the updates, although\nreplies to some requests may be empty.",
- "items": {
- "$ref": "Response"
- },
- "type": "array"
- }
- },
- "id": "BatchUpdatePresentationResponse",
- "description": "Response message from a batch update."
- },
"CreateImageResponse": {
+ "description": "The result of creating an image.",
+ "type": "object",
"properties": {
"objectId": {
"description": "The object ID of the created image.",
"type": "string"
}
},
- "id": "CreateImageResponse",
- "description": "The result of creating an image.",
- "type": "object"
+ "id": "CreateImageResponse"
},
"SlideProperties": {
"description": "The properties of Page that are only\nrelevant for pages with page_type SLIDE.",
"type": "object",
"properties": {
+ "notesPage": {
+ "$ref": "Page",
+ "description": "The notes page that this slide is associated with. It defines the visual\nappearance of a notes page when printing or exporting slides with speaker\nnotes. A notes page inherits properties from the\nnotes master.\nThe placeholder shape with type BODY on the notes page contains the speaker\nnotes for this slide. The ID of this shape is identified by the\nspeakerNotesObjectId field.\nThe notes page is read-only except for the text content and styles of the\nspeaker notes shape."
+ },
"masterObjectId": {
"description": "The object ID of the master that this slide is based on.",
"type": "string"
@@ -1768,37 +1131,60 @@
"layoutObjectId": {
"description": "The object ID of the layout that this slide is based on.",
"type": "string"
- },
- "notesPage": {
- "$ref": "Page",
- "description": "The notes page that this slide is associated with. It defines the visual\nappearance of a notes page when printing or exporting slides with speaker\nnotes. A notes page inherits properties from the\nnotes master.\nThe placeholder shape with type BODY on the notes page contains the speaker\nnotes for this slide. The ID of this shape is identified by the\nspeakerNotesObjectId field.\nThe notes page is read-only except for the text content and styles of the\nspeaker notes shape."
}
},
"id": "SlideProperties"
},
+ "MasterProperties": {
+ "description": "The properties of Page that are only\nrelevant for pages with page_type MASTER.",
+ "type": "object",
+ "properties": {
+ "displayName": {
+ "description": "The human-readable name of the master.",
+ "type": "string"
+ }
+ },
+ "id": "MasterProperties"
+ },
"Response": {
"description": "A single response from an update.",
"type": "object",
"properties": {
- "createVideo": {
- "description": "The result of creating a video.",
- "$ref": "CreateVideoResponse"
+ "createShape": {
+ "$ref": "CreateShapeResponse",
+ "description": "The result of creating a shape."
},
- "replaceAllShapesWithSheetsChart": {
- "$ref": "ReplaceAllShapesWithSheetsChartResponse",
- "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart."
+ "duplicateObject": {
+ "$ref": "DuplicateObjectResponse",
+ "description": "The result of duplicating an object."
+ },
+ "createLine": {
+ "$ref": "CreateLineResponse",
+ "description": "The result of creating a line."
+ },
+ "createImage": {
+ "$ref": "CreateImageResponse",
+ "description": "The result of creating an image."
+ },
+ "createVideo": {
+ "$ref": "CreateVideoResponse",
+ "description": "The result of creating a video."
},
"createSheetsChart": {
"$ref": "CreateSheetsChartResponse",
"description": "The result of creating a Google Sheets chart."
},
+ "replaceAllShapesWithSheetsChart": {
+ "$ref": "ReplaceAllShapesWithSheetsChartResponse",
+ "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart."
+ },
"replaceAllShapesWithImage": {
"$ref": "ReplaceAllShapesWithImageResponse",
"description": "The result of replacing all shapes matching some criteria with an\nimage."
},
"createTable": {
- "description": "The result of creating a table.",
- "$ref": "CreateTableResponse"
+ "$ref": "CreateTableResponse",
+ "description": "The result of creating a table."
},
"replaceAllText": {
"description": "The result of replacing text.",
@@ -1807,22 +1193,6 @@
"createSlide": {
"$ref": "CreateSlideResponse",
"description": "The result of creating a slide."
- },
- "duplicateObject": {
- "$ref": "DuplicateObjectResponse",
- "description": "The result of duplicating an object."
- },
- "createShape": {
- "$ref": "CreateShapeResponse",
- "description": "The result of creating a shape."
- },
- "createLine": {
- "description": "The result of creating a line.",
- "$ref": "CreateLineResponse"
- },
- "createImage": {
- "description": "The result of creating an image.",
- "$ref": "CreateImageResponse"
}
},
"id": "Response"
@@ -1832,8 +1202,8 @@
"type": "object",
"properties": {
"text": {
- "type": "string",
- "description": "The text to search for in the shape or table."
+ "description": "The text to search for in the shape or table.",
+ "type": "string"
},
"matchCase": {
"description": "Indicates whether the search should respect case:\n\n- `True`: the search is case sensitive.\n- `False`: the search is case insensitive.",
@@ -1886,7 +1256,6 @@
"id": "LayoutReference"
},
"TextRun": {
- "description": "A TextElement kind that represents a run of text that all has the same\nstyling.",
"type": "object",
"properties": {
"content": {
@@ -1894,20 +1263,21 @@
"type": "string"
},
"style": {
- "description": "The styling applied to this run.",
- "$ref": "TextStyle"
+ "$ref": "TextStyle",
+ "description": "The styling applied to this run."
}
},
- "id": "TextRun"
+ "id": "TextRun",
+ "description": "A TextElement kind that represents a run of text that all has the same\nstyling."
},
"TableRange": {
"description": "A table range represents a reference to a subset of a table.\n\nIt's important to note that the cells specified by a table range do not\nnecessarily form a rectangle. For example, let's say we have a 3 x 3 table\nwhere all the cells of the last row are merged together. The table looks\nlike this:\n\n \n [ ]\n\nA table range with location = (0, 0), row span = 3 and column span = 2\nspecifies the following cells:\n\n x x \n [ x ]",
"type": "object",
"properties": {
"rowSpan": {
- "type": "integer",
"format": "int32",
- "description": "The row span of the table range."
+ "description": "The row span of the table range.",
+ "type": "integer"
},
"location": {
"$ref": "TableCellLocation",
@@ -1925,11 +1295,6 @@
"description": "Creates a new table.",
"type": "object",
"properties": {
- "rows": {
- "format": "int32",
- "description": "Number of rows in the table.",
- "type": "integer"
- },
"columns": {
"format": "int32",
"description": "Number of columns in the table.",
@@ -1942,12 +1307,16 @@
"elementProperties": {
"$ref": "PageElementProperties",
"description": "The element properties for the table.\n\nThe table will be created at the provided size, subject to a minimum size.\nIf no size is provided, the table will be automatically sized.\n\nTable transforms must have a scale of 1 and no shear components. If no\ntransform is provided, the table will be centered on the page."
+ },
+ "rows": {
+ "format": "int32",
+ "description": "Number of rows in the table.",
+ "type": "integer"
}
},
"id": "CreateTableRequest"
},
"CreateTableResponse": {
- "description": "The result of creating a table.",
"type": "object",
"properties": {
"objectId": {
@@ -1955,12 +1324,26 @@
"type": "string"
}
},
- "id": "CreateTableResponse"
+ "id": "CreateTableResponse",
+ "description": "The result of creating a table."
},
"Table": {
+ "id": "Table",
"description": "A PageElement kind representing a\ntable.",
"type": "object",
"properties": {
+ "rows": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of rows in the table."
+ },
+ "tableColumns": {
+ "description": "Properties of each column.",
+ "items": {
+ "$ref": "TableColumnProperties"
+ },
+ "type": "array"
+ },
"columns": {
"format": "int32",
"description": "Number of columns in the table.",
@@ -1972,43 +1355,30 @@
"$ref": "TableRow"
},
"type": "array"
- },
- "rows": {
- "format": "int32",
- "description": "Number of rows in the table.",
- "type": "integer"
- },
- "tableColumns": {
- "items": {
- "$ref": "TableColumnProperties"
- },
- "type": "array",
- "description": "Properties of each column."
}
- },
- "id": "Table"
+ }
},
"PageBackgroundFill": {
"description": "The page background fill.",
"type": "object",
"properties": {
"propertyState": {
+ "enumDescriptions": [
+ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
+ "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
+ "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
+ ],
"enum": [
"RENDERED",
"NOT_RENDERED",
"INHERIT"
],
- "description": "The background fill property state.\n\nUpdating the the fill on a page will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a page, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.",
- "type": "string",
- "enumDescriptions": [
- "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
- "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
- "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
- ]
+ "description": "The background fill property state.\n\nUpdating the fill on a page will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a page, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.",
+ "type": "string"
},
"stretchedPictureFill": {
- "$ref": "StretchedPictureFill",
- "description": "Stretched picture fill."
+ "description": "Stretched picture fill.",
+ "$ref": "StretchedPictureFill"
},
"solidFill": {
"$ref": "SolidFill",
@@ -2021,14 +1391,9 @@
"description": "A PageElement kind representing\na linked chart embedded from Google Sheets.",
"type": "object",
"properties": {
- "chartId": {
- "format": "int32",
- "description": "The ID of the specific chart in the Google Sheets spreadsheet that is\nembedded.",
- "type": "integer"
- },
"sheetsChartProperties": {
- "description": "The properties of the Sheets chart.",
- "$ref": "SheetsChartProperties"
+ "$ref": "SheetsChartProperties",
+ "description": "The properties of the Sheets chart."
},
"contentUrl": {
"description": "The URL of an image of the embedded chart, with a default lifetime of 30\nminutes. This URL is tagged with the account of the requester. Anyone with\nthe URL effectively accesses the image as the original requester. Access to\nthe image may be lost if the presentation's sharing settings change.",
@@ -2037,11 +1402,17 @@
"spreadsheetId": {
"description": "The ID of the Google Sheets spreadsheet that contains the source chart.",
"type": "string"
+ },
+ "chartId": {
+ "format": "int32",
+ "description": "The ID of the specific chart in the Google Sheets spreadsheet that is\nembedded.",
+ "type": "integer"
}
},
"id": "SheetsChart"
},
"SolidFill": {
+ "description": "A solid color fill. The page or page element is filled entirely with the\nspecified color value.\n\nIf any field is unset, its value may be inherited from a parent placeholder\nif it exists.",
"type": "object",
"properties": {
"alpha": {
@@ -2054,18 +1425,36 @@
"$ref": "OpaqueColor"
}
},
- "id": "SolidFill",
- "description": "A solid color fill. The page or page element is filled entirely with the\nspecified color value.\n\nIf any field is unset, its value may be inherited from a parent placeholder\nif it exists."
+ "id": "SolidFill"
},
"ThemeColorPair": {
"description": "A pair mapping a theme color type to the concrete color it represents.",
"type": "object",
"properties": {
"color": {
- "$ref": "RgbColor",
- "description": "The concrete color corresponding to the theme color type above."
+ "description": "The concrete color corresponding to the theme color type above.",
+ "$ref": "RgbColor"
},
"type": {
+ "enum": [
+ "THEME_COLOR_TYPE_UNSPECIFIED",
+ "DARK1",
+ "LIGHT1",
+ "DARK2",
+ "LIGHT2",
+ "ACCENT1",
+ "ACCENT2",
+ "ACCENT3",
+ "ACCENT4",
+ "ACCENT5",
+ "ACCENT6",
+ "HYPERLINK",
+ "FOLLOWED_HYPERLINK",
+ "TEXT1",
+ "BACKGROUND1",
+ "TEXT2",
+ "BACKGROUND2"
+ ],
"description": "The type of the theme color.",
"type": "string",
"enumDescriptions": [
@@ -2086,25 +1475,6 @@
"Represents the first background color.",
"Represents the second text color.",
"Represents the second background color."
- ],
- "enum": [
- "THEME_COLOR_TYPE_UNSPECIFIED",
- "DARK1",
- "LIGHT1",
- "DARK2",
- "LIGHT2",
- "ACCENT1",
- "ACCENT2",
- "ACCENT3",
- "ACCENT4",
- "ACCENT5",
- "ACCENT6",
- "HYPERLINK",
- "FOLLOWED_HYPERLINK",
- "TEXT1",
- "BACKGROUND1",
- "TEXT2",
- "BACKGROUND2"
]
}
},
@@ -2122,49 +1492,49 @@
"id": "OptionalColor"
},
"PageElementProperties": {
+ "description": "Common properties for a page element.\n\nNote: When you initially create a\nPageElement, the API may modify\nthe values of both `size` and `transform`, but the\nvisual size will be unchanged.",
+ "type": "object",
"properties": {
- "pageObjectId": {
- "description": "The object ID of the page where the element is located.",
- "type": "string"
- },
- "size": {
- "description": "The size of the element.",
- "$ref": "Size"
- },
"transform": {
"description": "The transform for the element.",
"$ref": "AffineTransform"
+ },
+ "pageObjectId": {
+ "type": "string",
+ "description": "The object ID of the page where the element is located."
+ },
+ "size": {
+ "$ref": "Size",
+ "description": "The size of the element."
}
},
- "id": "PageElementProperties",
- "description": "Common properties for a page element.\n\nNote: When you initially create a\nPageElement, the API may modify\nthe values of both `size` and `transform`, but the\nvisual size will be unchanged.",
- "type": "object"
+ "id": "PageElementProperties"
},
"SheetsChartProperties": {
- "id": "SheetsChartProperties",
"description": "The properties of the SheetsChart.",
"type": "object",
"properties": {
"chartImageProperties": {
- "description": "The properties of the embedded chart image.",
- "$ref": "ImageProperties"
+ "$ref": "ImageProperties",
+ "description": "The properties of the embedded chart image."
}
- }
+ },
+ "id": "SheetsChartProperties"
},
"StretchedPictureFill": {
+ "id": "StretchedPictureFill",
"description": "The stretched picture fill. The page or page element is filled entirely with\nthe specified picture. The picture is stretched to fit its container.",
"type": "object",
"properties": {
- "contentUrl": {
- "description": "Reading the content_url:\n\nAn URL to a picture with a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the picture as the original requester. Access to the\npicture may be lost if the presentation's sharing settings change.\n\nWriting the content_url:\n\nThe picture is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Pictures must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.",
- "type": "string"
- },
"size": {
- "$ref": "Size",
- "description": "The original size of the picture fill. This field is read-only."
+ "description": "The original size of the picture fill. This field is read-only.",
+ "$ref": "Size"
+ },
+ "contentUrl": {
+ "description": "Reading the content_url:\n\nAn URL to a picture with a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the picture as the original requester. Access to the\npicture may be lost if the presentation's sharing settings change.\n\nWriting the content_url:\n\nThe picture is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Pictures must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at maximum 2K bytes large.",
+ "type": "string"
}
- },
- "id": "StretchedPictureFill"
+ }
},
"DeleteTableColumnRequest": {
"description": "Deletes a column from a table.",
@@ -2186,20 +1556,20 @@
"type": "object",
"properties": {
"textRange": {
- "description": "The range of text to style.\n\nThe range may be extended to include adjacent newlines.\n\nIf the range fully contains a paragraph belonging to a list, the\nparagraph's bullet is also updated with the matching text style.",
- "$ref": "Range"
+ "$ref": "Range",
+ "description": "The range of text to style.\n\nThe range may be extended to include adjacent newlines.\n\nIf the range fully contains a paragraph belonging to a list, the\nparagraph's bullet is also updated with the matching text style."
},
"objectId": {
- "description": "The object ID of the shape or table with the text to be styled.",
- "type": "string"
+ "type": "string",
+ "description": "The object ID of the shape or table with the text to be styled."
},
"style": {
"$ref": "TextStyle",
"description": "The style(s) to set on the text.\n\nIf the value for a particular style matches that of the parent, that style\nwill be set to inherit.\n\nCertain text style changes may cause other changes meant to mirror the\nbehavior of the Slides editor. See the documentation of\nTextStyle for more information."
},
"cellLocation": {
- "$ref": "TableCellLocation",
- "description": "The location of the cell in the table containing the text to style. If\n`object_id` refers to a table, `cell_location` must have a value.\nOtherwise, it must not."
+ "description": "The location of the cell in the table containing the text to style. If\n`object_id` refers to a table, `cell_location` must have a value.\nOtherwise, it must not.",
+ "$ref": "TableCellLocation"
},
"fields": {
"format": "google-fieldmask",
@@ -2219,11 +1589,11 @@
"type": "string"
},
"nestingLevel": {
- "type": "object",
"additionalProperties": {
"$ref": "NestingLevel"
},
- "description": "A map of nesting levels to the properties of bullets at the associated\nlevel. A list has at most nine levels of nesting, so the possible values\nfor the keys of this map are 0 through 8, inclusive."
+ "description": "A map of nesting levels to the properties of bullets at the associated\nlevel. A list has at most nine levels of nesting, so the possible values\nfor the keys of this map are 0 through 8, inclusive.",
+ "type": "object"
}
}
},
@@ -2246,18 +1616,6 @@
"PageElement": {
"type": "object",
"properties": {
- "objectId": {
- "description": "The object ID for this page element. Object IDs used by\ngoogle.apps.slides.v1.Page and\ngoogle.apps.slides.v1.PageElement share the same namespace.",
- "type": "string"
- },
- "transform": {
- "$ref": "AffineTransform",
- "description": "The transform of the page element."
- },
- "shape": {
- "$ref": "Shape",
- "description": "A generic shape."
- },
"line": {
"description": "A line page element.",
"$ref": "Line"
@@ -2267,8 +1625,8 @@
"type": "string"
},
"elementGroup": {
- "$ref": "Group",
- "description": "A collection of page elements joined as a single unit."
+ "description": "A collection of page elements joined as a single unit.",
+ "$ref": "Group"
},
"image": {
"$ref": "Image",
@@ -2287,16 +1645,28 @@
"description": "A linked chart embedded from Google Sheets. Unlinked charts are\nrepresented as images."
},
"video": {
- "description": "A video page element.",
- "$ref": "Video"
+ "$ref": "Video",
+ "description": "A video page element."
},
"wordArt": {
- "$ref": "WordArt",
- "description": "A word art page element."
+ "description": "A word art page element.",
+ "$ref": "WordArt"
},
"table": {
- "$ref": "Table",
- "description": "A table page element."
+ "description": "A table page element.",
+ "$ref": "Table"
+ },
+ "objectId": {
+ "description": "The object ID for this page element. Object IDs used by\ngoogle.apps.slides.v1.Page and\ngoogle.apps.slides.v1.PageElement share the same namespace.",
+ "type": "string"
+ },
+ "transform": {
+ "$ref": "AffineTransform",
+ "description": "The transform of the page element.\n\nThe visual appearance of the page element is determined by its absolute\ntransform. To compute the absolute transform, preconcatenate a page\nelement's transform with the transforms of all of its parent groups. If the\npage element is not in a group, its absolute transform is the same as the\nvalue in this field.\n\nThe initial transform for the newly created Group is always the identity transform."
+ },
+ "shape": {
+ "description": "A generic shape.",
+ "$ref": "Shape"
}
},
"id": "PageElement",
@@ -2306,40 +1676,43 @@
"description": "Creates an image.",
"type": "object",
"properties": {
- "objectId": {
- "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.",
- "type": "string"
- },
"elementProperties": {
"description": "The element properties for the image.\n\nWhen the aspect ratio of the provided size does not match the image aspect\nratio, the image is scaled and centered with respect to the size in order\nto maintain aspect ratio. The provided transform is applied after this\noperation.",
"$ref": "PageElementProperties"
},
"url": {
- "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.",
+ "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at maximum 2K bytes large.",
"type": "string"
+ },
+ "objectId": {
+ "type": "string",
+ "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated."
}
},
"id": "CreateImageRequest"
},
"CreateParagraphBulletsRequest": {
+ "id": "CreateParagraphBulletsRequest",
"description": "Creates bullets for all of the paragraphs that overlap with the given\ntext index range.\n\nThe nesting level of each paragraph will be determined by counting leading\ntabs in front of each paragraph. To avoid excess space between the bullet and\nthe corresponding paragraph, these leading tabs are removed by this request.\nThis may change the indices of parts of the text.\n\nIf the paragraph immediately before paragraphs being updated is in a list\nwith a matching preset, the paragraphs being updated are added to that\npreceding list.",
"type": "object",
"properties": {
"textRange": {
- "description": "The range of text to apply the bullet presets to, based on TextElement indexes.",
- "$ref": "Range"
+ "$ref": "Range",
+ "description": "The range of text to apply the bullet presets to, based on TextElement indexes."
},
"objectId": {
- "description": "The object ID of the shape or table containing the text to add bullets to.",
- "type": "string"
+ "type": "string",
+ "description": "The object ID of the shape or table containing the text to add bullets to."
},
"bulletPreset": {
+ "description": "The kinds of bullet glyphs to be used. Defaults to the\n`BULLET_DISC_CIRCLE_SQUARE` preset.",
+ "type": "string",
"enumDescriptions": [
"A bulleted list with a `DISC`, `CIRCLE` and `SQUARE` bullet glyph for the\nfirst 3 list nesting levels.",
"A bulleted list with a `DIAMONDX`, `ARROW3D` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.",
"A bulleted list with `CHECKBOX` bullet glyphs for all list nesting levels.",
"A bulleted list with a `ARROW`, `DIAMOND` and `DISC` bullet glyph for\nthe first 3 list nesting levels.",
- "A bulleted list with a `STAR`, `CIRCLE` and `DISC` bullet glyph for\nthe first 3 list nesting levels.",
+ "A bulleted list with a `STAR`, `CIRCLE` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.",
"A bulleted list with a `ARROW3D`, `CIRCLE` and `SQUARE` bullet glyph for\nthe first 3 list nesting levels.",
"A bulleted list with a `LEFTTRIANGLE`, `DIAMOND` and `DISC` bullet glyph\nfor the first 3 list nesting levels.",
"A bulleted list with a `DIAMONDX`, `HOLLOWDIAMOND` and `SQUARE` bullet\nglyph for the first 3 list nesting levels.",
@@ -2367,36 +1740,58 @@
"NUMBERED_UPPERALPHA_ALPHA_ROMAN",
"NUMBERED_UPPERROMAN_UPPERALPHA_DIGIT",
"NUMBERED_ZERODIGIT_ALPHA_ROMAN"
- ],
- "description": "The kinds of bullet glyphs to be used. Defaults to the\n`BULLET_DISC_CIRCLE_SQUARE` preset.",
- "type": "string"
+ ]
},
"cellLocation": {
- "description": "The optional table cell location if the text to be modified is in a table\ncell. If present, the object_id must refer to a table.",
- "$ref": "TableCellLocation"
+ "$ref": "TableCellLocation",
+ "description": "The optional table cell location if the text to be modified is in a table\ncell. If present, the object_id must refer to a table."
}
- },
- "id": "CreateParagraphBulletsRequest"
- },
- "Size": {
- "type": "object",
- "properties": {
- "height": {
- "$ref": "Dimension",
- "description": "The height of the object."
- },
- "width": {
- "$ref": "Dimension",
- "description": "The width of the object."
- }
- },
- "id": "Size",
- "description": "A width and height."
+ }
},
"TextStyle": {
"description": "Represents the styling that can be applied to a TextRun.\n\nIf this text is contained in a shape with a parent placeholder, then these text styles may be\ninherited from the parent. Which text styles are inherited depend on the\nnesting level of lists:\n\n* A text run in a paragraph that is not in a list will inherit its text style\n from the the newline character in the paragraph at the 0 nesting level of\n the list inside the parent placeholder.\n* A text run in a paragraph that is in a list will inherit its text style\n from the newline character in the paragraph at its corresponding nesting\n level of the list inside the parent placeholder.\n\nInherited text styles are represented as unset fields in this message. If\ntext is contained in a shape without a parent placeholder, unsetting these\nfields will revert the style to a value matching the defaults in the Slides\neditor.",
"type": "object",
"properties": {
+ "weightedFontFamily": {
+ "$ref": "WeightedFontFamily",
+ "description": "The font family and rendered weight of the text.\n\nThis field is an extension of `font_family` meant to support explicit font\nweights without breaking backwards compatibility. As such, when reading the\nstyle of a range of text, the value of `weighted_font_family#font_family`\nwill always be equal to that of `font_family`. However, when writing, if\nboth fields are included in the field mask (either explicitly or through\nthe wildcard `\"*\"`), their values are reconciled as follows:\n\n* If `font_family` is set and `weighted_font_family` is not, the value of\n `font_family` is applied with weight `400` (\"normal\").\n* If both fields are set, the value of `font_family` must match that of\n `weighted_font_family#font_family`. If so, the font family and weight of\n `weighted_font_family` is applied. Otherwise, a 400 bad request error is\n returned.\n* If `weighted_font_family` is set and `font_family` is not, the font\n family and weight of `weighted_font_family` is applied.\n* If neither field is set, the font family and weight of the text inherit\n from the parent. Note that these properties cannot inherit separately\n from each other.\n\nIf an update request specifies values for both `weighted_font_family` and\n`bold`, the `weighted_font_family` is applied first, then `bold`.\n\nIf `weighted_font_family#weight` is not set, it defaults to `400`.\n\nIf `weighted_font_family` is set, then `weighted_font_family#font_family`\nmust also be set with a non-empty value. Otherwise, a 400 bad request error\nis returned."
+ },
+ "smallCaps": {
+ "description": "Whether or not the text is in small capital letters.",
+ "type": "boolean"
+ },
+ "backgroundColor": {
+ "description": "The background color of the text. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set.",
+ "$ref": "OptionalColor"
+ },
+ "link": {
+ "description": "The hyperlink destination of the text. If unset, there is no link. Links\nare not inherited from parent text.\n\nChanging the link in an update request causes some other changes to the\ntext style of the range:\n\n* When setting a link, the text foreground color will be set to\n ThemeColorType.HYPERLINK and the text will\n be underlined. If these fields are modified in the same\n request, those values will be used instead of the link defaults.\n* Setting a link on a text range that overlaps with an existing link will\n also update the existing link to point to the new URL.\n* Links are not settable on newline characters. As a result, setting a link\n on a text range that crosses a paragraph boundary, such as `\"ABC\\n123\"`,\n will separate the newline character(s) into their own text runs. The\n link will be applied separately to the runs before and after the newline.\n* Removing a link will update the text style of the range to match the\n style of the preceding text (or the default text styles if the preceding\n text is another link) unless different styles are being set in the same\n request.",
+ "$ref": "Link"
+ },
+ "underline": {
+ "description": "Whether or not the text is underlined.",
+ "type": "boolean"
+ },
+ "foregroundColor": {
+ "$ref": "OptionalColor",
+ "description": "The color of the text itself. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set."
+ },
+ "bold": {
+ "description": "Whether or not the text is rendered as bold.",
+ "type": "boolean"
+ },
+ "fontFamily": {
+ "description": "The font family of the text.\n\nThe font family can be any font from the Font menu in Slides or from\n[Google Fonts] (https://fonts.google.com/). If the font name is\nunrecognized, the text is rendered in `Arial`.\n\nSome fonts can affect the weight of the text. If an update request\nspecifies values for both `font_family` and `bold`, the explicitly-set\n`bold` value is used.",
+ "type": "string"
+ },
+ "strikethrough": {
+ "type": "boolean",
+ "description": "Whether or not the text is struck through."
+ },
+ "italic": {
+ "description": "Whether or not the text is italicized.",
+ "type": "boolean"
+ },
"fontSize": {
"description": "The size of the text's font. When read, the `font_size` will specified in\npoints.",
"$ref": "Dimension"
@@ -2416,66 +1811,41 @@
],
"description": "The text's vertical offset from its normal position.\n\nText with `SUPERSCRIPT` or `SUBSCRIPT` baseline offsets is automatically\nrendered in a smaller font size, computed based on the `font_size` field.\nThe `font_size` itself is not affected by changes in this field.",
"type": "string"
- },
- "weightedFontFamily": {
- "$ref": "WeightedFontFamily",
- "description": "The font family and rendered weight of the text.\n\nThis field is an extension of `font_family` meant to support explicit font\nweights without breaking backwards compatibility. As such, when reading the\nstyle of a range of text, the value of `weighted_font_family#font_family`\nwill always be equal to that of `font_family`. However, when writing, if\nboth fields are included in the field mask (either explicitly or through\nthe wildcard `\"*\"`), their values are reconciled as follows:\n\n* If `font_family` is set and `weighted_font_family` is not, the value of\n `font_family` is applied with weight `400` (\"normal\").\n* If both fields are set, the value of `font_family` must match that of\n `weighted_font_family#font_family`. If so, the font family and weight of\n `weighted_font_family` is applied. Otherwise, a 400 bad request error is\n returned.\n* If `weighted_font_family` is set and `font_family` is not, the font\n family and weight of `weighted_font_family` is applied.\n* If neither field is set, the font family and weight of the text inherit\n from the parent. Note that these properties cannot inherit separately\n from each other.\n\nIf an update request specifies values for both `weighted_font_family` and\n`bold`, the `weighted_font_family` is applied first, then `bold`.\n\nIf `weighted_font_family#weight` is not set, it defaults to `400`.\n\nIf `weighted_font_family` is set, then `weighted_font_family#font_family`\nmust also be set with a non-empty value. Otherwise, a 400 bad request error\nis returned."
- },
- "smallCaps": {
- "description": "Whether or not the text is in small capital letters.",
- "type": "boolean"
- },
- "backgroundColor": {
- "$ref": "OptionalColor",
- "description": "The background color of the text. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set."
- },
- "link": {
- "$ref": "Link",
- "description": "The hyperlink destination of the text. If unset, there is no link. Links\nare not inherited from parent text.\n\nChanging the link in an update request causes some other changes to the\ntext style of the range:\n\n* When setting a link, the text foreground color will be set to\n ThemeColorType.HYPERLINK and the text will\n be underlined. If these fields are modified in the same\n request, those values will be used instead of the link defaults.\n* Setting a link on a text range that overlaps with an existing link will\n also update the existing link to point to the new URL.\n* Links are not settable on newline characters. As a result, setting a link\n on a text range that crosses a paragraph boundary, such as `\"ABC\\n123\"`,\n will separate the newline character(s) into their own text runs. The\n link will be applied separately to the runs before and after the newline.\n* Removing a link will update the text style of the range to match the\n style of the preceding text (or the default text styles if the preceding\n text is another link) unless different styles are being set in the same\n request."
- },
- "underline": {
- "description": "Whether or not the text is underlined.",
- "type": "boolean"
- },
- "bold": {
- "description": "Whether or not the text is rendered as bold.",
- "type": "boolean"
- },
- "foregroundColor": {
- "description": "The color of the text itself. If set, the color is either opaque or\ntransparent, depending on if the `opaque_color` field in it is set.",
- "$ref": "OptionalColor"
- },
- "fontFamily": {
- "description": "The font family of the text.\n\nThe font family can be any font from the Font menu in Slides or from\n[Google Fonts] (https://fonts.google.com/). If the font name is\nunrecognized, the text is rendered in `Arial`.\n\nSome fonts can affect the weight of the text. If an update request\nspecifies values for both `font_family` and `bold`, the explicitly-set\n`bold` value is used.",
- "type": "string"
- },
- "italic": {
- "description": "Whether or not the text is italicized.",
- "type": "boolean"
- },
- "strikethrough": {
- "description": "Whether or not the text is struck through.",
- "type": "boolean"
}
},
"id": "TextStyle"
},
+ "Size": {
+ "description": "A width and height.",
+ "type": "object",
+ "properties": {
+ "width": {
+ "$ref": "Dimension",
+ "description": "The width of the object."
+ },
+ "height": {
+ "$ref": "Dimension",
+ "description": "The height of the object."
+ }
+ },
+ "id": "Size"
+ },
"UpdateVideoPropertiesRequest": {
"description": "Update the properties of a Video.",
"type": "object",
"properties": {
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `videoProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the video outline color, set `fields` to\n`\"outline.outlineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.",
- "type": "string"
- },
"objectId": {
"description": "The object ID of the video the updates are applied to.",
"type": "string"
},
"videoProperties": {
- "$ref": "VideoProperties",
- "description": "The video properties to update."
+ "description": "The video properties to update.",
+ "$ref": "VideoProperties"
+ },
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `videoProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the video outline color, set `fields` to\n`\"outline.outlineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.",
+ "type": "string"
}
},
"id": "UpdateVideoPropertiesRequest"
@@ -2484,65 +1854,17 @@
"description": "A single kind of update to apply to a presentation.",
"type": "object",
"properties": {
- "createImage": {
- "$ref": "CreateImageRequest",
- "description": "Creates an image."
- },
- "createParagraphBullets": {
- "description": "Creates bullets for paragraphs.",
- "$ref": "CreateParagraphBulletsRequest"
- },
- "createVideo": {
- "description": "Creates a video.",
- "$ref": "CreateVideoRequest"
- },
- "createSheetsChart": {
- "$ref": "CreateSheetsChartRequest",
- "description": "Creates an embedded Google Sheets chart."
- },
- "replaceAllShapesWithSheetsChart": {
- "description": "Replaces all shapes matching some criteria with a Google Sheets chart.",
- "$ref": "ReplaceAllShapesWithSheetsChartRequest"
- },
- "updatePageElementTransform": {
- "$ref": "UpdatePageElementTransformRequest",
- "description": "Updates the transform of a page element."
- },
- "updateTextStyle": {
- "$ref": "UpdateTextStyleRequest",
- "description": "Updates the styling of text within a Shape or Table."
- },
- "replaceAllShapesWithImage": {
- "$ref": "ReplaceAllShapesWithImageRequest",
- "description": "Replaces all shapes matching some criteria with an image."
- },
- "replaceAllText": {
- "description": "Replaces all instances of specified text.",
- "$ref": "ReplaceAllTextRequest"
- },
- "updateImageProperties": {
- "$ref": "UpdateImagePropertiesRequest",
- "description": "Updates the properties of an Image."
- },
- "insertTableRows": {
- "$ref": "InsertTableRowsRequest",
- "description": "Inserts rows into a table."
- },
- "createSlide": {
- "description": "Creates a new slide.",
- "$ref": "CreateSlideRequest"
- },
"updateLineProperties": {
"description": "Updates the properties of a Line.",
"$ref": "UpdateLinePropertiesRequest"
},
"updateSlidesPosition": {
- "$ref": "UpdateSlidesPositionRequest",
- "description": "Updates the position of a set of slides in the presentation."
+ "description": "Updates the position of a set of slides in the presentation.",
+ "$ref": "UpdateSlidesPositionRequest"
},
"deleteTableRow": {
- "description": "Deletes a row from a table.",
- "$ref": "DeleteTableRowRequest"
+ "$ref": "DeleteTableRowRequest",
+ "description": "Deletes a row from a table."
},
"updateShapeProperties": {
"description": "Updates the properties of a Shape.",
@@ -2553,24 +1875,24 @@
"description": "Inserts text into a shape or table cell."
},
"deleteText": {
- "$ref": "DeleteTextRequest",
- "description": "Deletes text from a shape or a table cell."
+ "description": "Deletes text from a shape or a table cell.",
+ "$ref": "DeleteTextRequest"
},
"updatePageProperties": {
"$ref": "UpdatePagePropertiesRequest",
"description": "Updates the properties of a Page."
},
- "createShape": {
- "$ref": "CreateShapeRequest",
- "description": "Creates a new shape."
- },
"deleteParagraphBullets": {
"$ref": "DeleteParagraphBulletsRequest",
"description": "Deletes bullets from paragraphs."
},
+ "createShape": {
+ "description": "Creates a new shape.",
+ "$ref": "CreateShapeRequest"
+ },
"insertTableColumns": {
- "$ref": "InsertTableColumnsRequest",
- "description": "Inserts columns into a table."
+ "description": "Inserts columns into a table.",
+ "$ref": "InsertTableColumnsRequest"
},
"refreshSheetsChart": {
"description": "Refreshes a Google Sheets chart.",
@@ -2585,60 +1907,108 @@
"description": "Creates a new table."
},
"deleteObject": {
- "$ref": "DeleteObjectRequest",
- "description": "Deletes a page or page element from the presentation."
+ "description": "Deletes a page or page element from the presentation.",
+ "$ref": "DeleteObjectRequest"
},
"updateParagraphStyle": {
- "description": "Updates the styling of paragraphs within a Shape or Table.",
- "$ref": "UpdateParagraphStyleRequest"
+ "$ref": "UpdateParagraphStyleRequest",
+ "description": "Updates the styling of paragraphs within a Shape or Table."
+ },
+ "duplicateObject": {
+ "description": "Duplicates a slide or page element.",
+ "$ref": "DuplicateObjectRequest"
},
"deleteTableColumn": {
"$ref": "DeleteTableColumnRequest",
"description": "Deletes a column from a table."
},
- "duplicateObject": {
- "$ref": "DuplicateObjectRequest",
- "description": "Duplicates a slide or page element."
+ "updateVideoProperties": {
+ "$ref": "UpdateVideoPropertiesRequest",
+ "description": "Updates the properties of a Video."
},
"createLine": {
"$ref": "CreateLineRequest",
"description": "Creates a line."
},
- "updateVideoProperties": {
- "description": "Updates the properties of a Video.",
- "$ref": "UpdateVideoPropertiesRequest"
+ "createImage": {
+ "description": "Creates an image.",
+ "$ref": "CreateImageRequest"
+ },
+ "createParagraphBullets": {
+ "description": "Creates bullets for paragraphs.",
+ "$ref": "CreateParagraphBulletsRequest"
+ },
+ "createVideo": {
+ "$ref": "CreateVideoRequest",
+ "description": "Creates a video."
+ },
+ "createSheetsChart": {
+ "$ref": "CreateSheetsChartRequest",
+ "description": "Creates an embedded Google Sheets chart."
+ },
+ "replaceAllShapesWithSheetsChart": {
+ "description": "Replaces all shapes matching some criteria with a Google Sheets chart.",
+ "$ref": "ReplaceAllShapesWithSheetsChartRequest"
+ },
+ "updatePageElementTransform": {
+ "$ref": "UpdatePageElementTransformRequest",
+ "description": "Updates the transform of a page element."
+ },
+ "updateTextStyle": {
+ "description": "Updates the styling of text within a Shape or Table.",
+ "$ref": "UpdateTextStyleRequest"
+ },
+ "replaceAllShapesWithImage": {
+ "$ref": "ReplaceAllShapesWithImageRequest",
+ "description": "Replaces all shapes matching some criteria with an image."
+ },
+ "replaceAllText": {
+ "$ref": "ReplaceAllTextRequest",
+ "description": "Replaces all instances of specified text."
+ },
+ "updateImageProperties": {
+ "$ref": "UpdateImagePropertiesRequest",
+ "description": "Updates the properties of an Image."
+ },
+ "insertTableRows": {
+ "description": "Inserts rows into a table.",
+ "$ref": "InsertTableRowsRequest"
+ },
+ "createSlide": {
+ "$ref": "CreateSlideRequest",
+ "description": "Creates a new slide."
}
},
"id": "Request"
},
"UpdateImagePropertiesRequest": {
- "description": "Update the properties of an Image.",
- "type": "object",
"properties": {
"fields": {
+ "type": "string",
"format": "google-fieldmask",
- "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `imageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the image outline color, set `fields` to\n`\"outline.outlineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.",
- "type": "string"
+ "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `imageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the image outline color, set `fields` to\n`\"outline.outlineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset."
},
"imageProperties": {
- "$ref": "ImageProperties",
- "description": "The image properties to update."
+ "description": "The image properties to update.",
+ "$ref": "ImageProperties"
},
"objectId": {
- "type": "string",
- "description": "The object ID of the image the updates are applied to."
+ "description": "The object ID of the image the updates are applied to.",
+ "type": "string"
}
},
- "id": "UpdateImagePropertiesRequest"
+ "id": "UpdateImagePropertiesRequest",
+ "description": "Update the properties of an Image.",
+ "type": "object"
},
"ParagraphStyle": {
- "type": "object",
"properties": {
"spaceBelow": {
"$ref": "Dimension",
"description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent."
},
"direction": {
+ "type": "string",
"enumDescriptions": [
"The text direction is inherited from the parent.",
"The text goes from left to right.",
@@ -2649,10 +2019,11 @@
"LEFT_TO_RIGHT",
"RIGHT_TO_LEFT"
],
- "description": "The text direction of this paragraph. If unset, the value defaults to\nLEFT_TO_RIGHT since\ntext direction is not inherited.",
- "type": "string"
+ "description": "The text direction of this paragraph. If unset, the value defaults to\nLEFT_TO_RIGHT since\ntext direction is not inherited."
},
"spacingMode": {
+ "description": "The spacing mode for the paragraph.",
+ "type": "string",
"enumDescriptions": [
"The spacing mode is inherited from the parent.",
"Paragraph spacing is always rendered.",
@@ -2662,17 +2033,15 @@
"SPACING_MODE_UNSPECIFIED",
"NEVER_COLLAPSE",
"COLLAPSE_LISTS"
- ],
- "description": "The spacing mode for the paragraph.",
- "type": "string"
+ ]
},
"indentEnd": {
"$ref": "Dimension",
"description": "The amount indentation for the paragraph on the side that corresponds to\nthe end of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent."
},
"indentStart": {
- "description": "The amount indentation for the paragraph on the side that corresponds to\nthe start of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent.",
- "$ref": "Dimension"
+ "$ref": "Dimension",
+ "description": "The amount indentation for the paragraph on the side that corresponds to\nthe start of the text, based on the current text direction. If unset, the\nvalue is inherited from the parent."
},
"spaceAbove": {
"$ref": "Dimension",
@@ -2688,6 +2057,13 @@
"type": "number"
},
"alignment": {
+ "enum": [
+ "ALIGNMENT_UNSPECIFIED",
+ "START",
+ "CENTER",
+ "END",
+ "JUSTIFIED"
+ ],
"description": "The text alignment for this paragraph.",
"type": "string",
"enumDescriptions": [
@@ -2696,30 +2072,24 @@
"The paragraph is centered.",
"The paragraph is aligned to the end of the line. Right-aligned for\nLTR text, left-aligned otherwise.",
"The paragraph is justified."
- ],
- "enum": [
- "ALIGNMENT_UNSPECIFIED",
- "START",
- "CENTER",
- "END",
- "JUSTIFIED"
]
}
},
"id": "ParagraphStyle",
- "description": "Styles that apply to a whole paragraph.\n\nIf this text is contained in a shape with a parent placeholder, then these paragraph styles may be\ninherited from the parent. Which paragraph styles are inherited depend on the\nnesting level of lists:\n\n* A paragraph not in a list will inherit its paragraph style from the\n paragraph at the 0 nesting level of the list inside the parent placeholder.\n* A paragraph in a list will inherit its paragraph style from the paragraph\n at its corresponding nesting level of the list inside the parent\n placeholder.\n\nInherited paragraph styles are represented as unset fields in this message."
+ "description": "Styles that apply to a whole paragraph.\n\nIf this text is contained in a shape with a parent placeholder, then these paragraph styles may be\ninherited from the parent. Which paragraph styles are inherited depend on the\nnesting level of lists:\n\n* A paragraph not in a list will inherit its paragraph style from the\n paragraph at the 0 nesting level of the list inside the parent placeholder.\n* A paragraph in a list will inherit its paragraph style from the paragraph\n at its corresponding nesting level of the list inside the parent\n placeholder.\n\nInherited paragraph styles are represented as unset fields in this message.",
+ "type": "object"
},
"ReplaceAllShapesWithSheetsChartResponse": {
+ "id": "ReplaceAllShapesWithSheetsChartResponse",
"description": "The result of replacing shapes with a Google Sheets chart.",
"type": "object",
"properties": {
"occurrencesChanged": {
- "type": "integer",
"format": "int32",
- "description": "The number of shapes replaced with charts."
+ "description": "The number of shapes replaced with charts.",
+ "type": "integer"
}
- },
- "id": "ReplaceAllShapesWithSheetsChartResponse"
+ }
},
"TableCellProperties": {
"description": "The properties of the TableCell.",
@@ -2767,18 +2137,18 @@
"type": "string"
},
"propertyState": {
- "type": "string",
- "enumDescriptions": [
- "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
- "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
- "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
- ],
"enum": [
"RENDERED",
"NOT_RENDERED",
"INHERIT"
],
- "description": "The outline property state.\n\nUpdating the the outline on a page element will implicitly update this\nfield to`RENDERED`, unless another value is specified in the same request.\nTo have no outline on a page element, set this field to `NOT_RENDERED`. In\nthis case, any other outline fields set in the same request will be\nignored."
+ "description": "The outline property state.\n\nUpdating the the outline on a page element will implicitly update this\nfield to`RENDERED`, unless another value is specified in the same request.\nTo have no outline on a page element, set this field to `NOT_RENDERED`. In\nthis case, any other outline fields set in the same request will be\nignored.",
+ "type": "string",
+ "enumDescriptions": [
+ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
+ "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
+ "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
+ ]
}
},
"id": "Outline"
@@ -2794,6 +2164,40 @@
},
"id": "RefreshSheetsChartRequest"
},
+ "NotesProperties": {
+ "id": "NotesProperties",
+ "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES.",
+ "type": "object",
+ "properties": {
+ "speakerNotesObjectId": {
+ "description": "The object ID of the shape on this notes page that contains the speaker\nnotes for the corresponding slide.\nThe actual shape may not always exist on the notes page. Inserting text\nusing this object ID will automatically create the shape. In this case, the\nactual shape may have different object ID. The `GetPresentation` or\n`GetPage` action will always return the latest object ID.",
+ "type": "string"
+ }
+ }
+ },
+ "ShapeProperties": {
+ "description": "The properties of a Shape.\n\nIf the shape is a placeholder shape as determined by the\nplaceholder field, then these\nproperties may be inherited from a parent placeholder shape.\nDetermining the rendered value of the property depends on the corresponding\nproperty_state field value.",
+ "type": "object",
+ "properties": {
+ "outline": {
+ "$ref": "Outline",
+ "description": "The outline of the shape. If unset, the outline is inherited from a\nparent placeholder if it exists. If the shape has no parent, then the\ndefault outline depends on the shape type, matching the defaults for\nnew shapes created in the Slides editor."
+ },
+ "shadow": {
+ "description": "The shadow properties of the shape. If unset, the shadow is inherited from\na parent placeholder if it exists. If the shape has no parent, then the\ndefault shadow matches the defaults for new shapes created in the Slides\neditor. This property is read-only.",
+ "$ref": "Shadow"
+ },
+ "shapeBackgroundFill": {
+ "$ref": "ShapeBackgroundFill",
+ "description": "The background fill of the shape. If unset, the background fill is\ninherited from a parent placeholder if it exists. If the shape has no\nparent, then the default background fill depends on the shape type,\nmatching the defaults for new shapes created in the Slides editor."
+ },
+ "link": {
+ "$ref": "Link",
+ "description": "The hyperlink destination of the shape. If unset, there is no link. Links\nare not inherited from parent placeholders."
+ }
+ },
+ "id": "ShapeProperties"
+ },
"TableColumnProperties": {
"description": "Properties of each column in a table.",
"type": "object",
@@ -2805,40 +2209,6 @@
},
"id": "TableColumnProperties"
},
- "ShapeProperties": {
- "properties": {
- "link": {
- "description": "The hyperlink destination of the shape. If unset, there is no link. Links\nare not inherited from parent placeholders.",
- "$ref": "Link"
- },
- "outline": {
- "$ref": "Outline",
- "description": "The outline of the shape. If unset, the outline is inherited from a\nparent placeholder if it exists. If the shape has no parent, then the\ndefault outline depends on the shape type, matching the defaults for\nnew shapes created in the Slides editor."
- },
- "shadow": {
- "$ref": "Shadow",
- "description": "The shadow properties of the shape. If unset, the shadow is inherited from\na parent placeholder if it exists. If the shape has no parent, then the\ndefault shadow matches the defaults for new shapes created in the Slides\neditor. This property is read-only."
- },
- "shapeBackgroundFill": {
- "$ref": "ShapeBackgroundFill",
- "description": "The background fill of the shape. If unset, the background fill is\ninherited from a parent placeholder if it exists. If the shape has no\nparent, then the default background fill depends on the shape type,\nmatching the defaults for new shapes created in the Slides editor."
- }
- },
- "id": "ShapeProperties",
- "description": "The properties of a Shape.\n\nIf the shape is a placeholder shape as determined by the\nplaceholder field, then these\nproperties may be inherited from a parent placeholder shape.\nDetermining the rendered value of the property depends on the corresponding\nproperty_state field value.",
- "type": "object"
- },
- "NotesProperties": {
- "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES.",
- "type": "object",
- "properties": {
- "speakerNotesObjectId": {
- "description": "The object ID of the shape on this notes page that contains the speaker\nnotes for the corresponding slide.\nThe actual shape may not always exist on the notes page. Inserting text\nusing this object ID will automatically create the shape. In this case, the\nactual shape may have different object ID. The `GetPresentation` or\n`GetPage` action will always return the latest object ID.",
- "type": "string"
- }
- },
- "id": "NotesProperties"
- },
"TableRow": {
"description": "Properties and contents of each row in a table.",
"type": "object",
@@ -2875,16 +2245,23 @@
"type": "string"
},
"tableCellProperties": {
- "$ref": "TableCellProperties",
- "description": "The table cell properties to update."
+ "description": "The table cell properties to update.",
+ "$ref": "TableCellProperties"
}
},
"id": "UpdateTableCellPropertiesRequest"
},
"CreateSlideRequest": {
- "description": "Creates a new slide.",
"type": "object",
"properties": {
+ "slideLayoutReference": {
+ "$ref": "LayoutReference",
+ "description": "Layout reference of the slide to be inserted, based on the *current\nmaster*, which is one of the following:\n\n- The master of the previous slide index.\n- The master of the first slide, if the insertion_index is zero.\n- The first master in the presentation, if there are no slides.\n\nIf the LayoutReference is not found in the current master, a 400 bad\nrequest error is returned.\n\nIf you don't specify a layout reference, then the new slide will use the\npredefined layout `BLANK`."
+ },
+ "objectId": {
+ "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.",
+ "type": "string"
+ },
"insertionIndex": {
"format": "int32",
"description": "The optional zero-based index indicating where to insert the slides.\n\nIf you don't specify an index, the new slide is created at the end.",
@@ -2896,46 +2273,40 @@
"$ref": "LayoutPlaceholderIdMapping"
},
"type": "array"
- },
- "slideLayoutReference": {
- "description": "Layout reference of the slide to be inserted, based on the *current\nmaster*, which is one of the following:\n\n- The master of the previous slide index.\n- The master of the first slide, if the insertion_index is zero.\n- The first master in the presentation, if there are no slides.\n\nIf the LayoutReference is not found in the current master, a 400 bad\nrequest error is returned.\n\nIf you don't specify a layout reference, then the new slide will use the\npredefined layout `BLANK`.",
- "$ref": "LayoutReference"
- },
- "objectId": {
- "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.",
- "type": "string"
}
},
- "id": "CreateSlideRequest"
+ "id": "CreateSlideRequest",
+ "description": "Creates a new slide."
},
"BatchUpdatePresentationRequest": {
+ "id": "BatchUpdatePresentationRequest",
+ "description": "Request message for PresentationsService.BatchUpdatePresentation.",
"type": "object",
"properties": {
- "writeControl": {
- "$ref": "WriteControl",
- "description": "Provides control over how write requests are executed."
- },
"requests": {
"description": "A list of updates to apply to the presentation.",
"items": {
"$ref": "Request"
},
"type": "array"
+ },
+ "writeControl": {
+ "$ref": "WriteControl",
+ "description": "Provides control over how write requests are executed."
}
- },
- "id": "BatchUpdatePresentationRequest",
- "description": "Request message for PresentationsService.BatchUpdatePresentation."
+ }
},
"TextContent": {
+ "id": "TextContent",
"description": "The general text content. The text must reside in a compatible shape (e.g.\ntext box or rectangle) or a table cell in a page.",
"type": "object",
"properties": {
"lists": {
+ "type": "object",
"additionalProperties": {
"$ref": "List"
},
- "description": "The bulleted lists contained in this text, keyed by list ID.",
- "type": "object"
+ "description": "The bulleted lists contained in this text, keyed by list ID."
},
"textElements": {
"description": "The text contents broken down into its component parts, including styling\ninformation. This property is read-only.",
@@ -2944,49 +2315,48 @@
},
"type": "array"
}
- },
- "id": "TextContent"
+ }
},
"CreateSheetsChartResponse": {
+ "id": "CreateSheetsChartResponse",
+ "description": "The result of creating an embedded Google Sheets chart.",
+ "type": "object",
"properties": {
"objectId": {
"description": "The object ID of the created chart.",
"type": "string"
}
- },
- "id": "CreateSheetsChartResponse",
- "description": "The result of creating an embedded Google Sheets chart.",
- "type": "object"
+ }
},
"WriteControl": {
- "description": "Provides control over how write requests are executed.",
- "type": "object",
"properties": {
"requiredRevisionId": {
"description": "The revision ID of the presentation required for the write request. If\nspecified and the `required_revision_id` doesn't exactly match the\npresentation's current `revision_id`, the request will not be processed and\nwill return a 400 bad request error.",
"type": "string"
}
},
- "id": "WriteControl"
+ "id": "WriteControl",
+ "description": "Provides control over how write requests are executed.",
+ "type": "object"
},
"DeleteParagraphBulletsRequest": {
- "description": "Deletes bullets from all of the paragraphs that overlap with the given text\nindex range.\n\nThe nesting level of each paragraph will be visually preserved by adding\nindent to the start of the corresponding paragraph.",
"type": "object",
"properties": {
"textRange": {
- "description": "The range of text to delete bullets from, based on TextElement indexes.",
- "$ref": "Range"
+ "$ref": "Range",
+ "description": "The range of text to delete bullets from, based on TextElement indexes."
},
"objectId": {
"description": "The object ID of the shape or table containing the text to delete bullets\nfrom.",
"type": "string"
},
"cellLocation": {
- "description": "The optional table cell location if the text to be modified is in a table\ncell. If present, the object_id must refer to a table.",
- "$ref": "TableCellLocation"
+ "$ref": "TableCellLocation",
+ "description": "The optional table cell location if the text to be modified is in a table\ncell. If present, the object_id must refer to a table."
}
},
- "id": "DeleteParagraphBulletsRequest"
+ "id": "DeleteParagraphBulletsRequest",
+ "description": "Deletes bullets from all of the paragraphs that overlap with the given text\nindex range.\n\nThe nesting level of each paragraph will be visually preserved by adding\nindent to the start of the corresponding paragraph."
},
"ParagraphMarker": {
"description": "A TextElement kind that represents the beginning of a new paragraph.",
@@ -3004,18 +2374,8 @@
"id": "ParagraphMarker"
},
"InsertTableColumnsRequest": {
- "description": "Inserts columns into a table.\n\nOther columns in the table will be resized to fit the new column.",
"type": "object",
"properties": {
- "number": {
- "format": "int32",
- "description": "The number of columns to be inserted. Maximum 20 per request.",
- "type": "integer"
- },
- "cellLocation": {
- "$ref": "TableCellLocation",
- "description": "The reference table cell location from which columns will be inserted.\n\nA new column will be inserted to the left (or right) of the column where\nthe reference cell is. If the reference cell is a merged cell, a new\ncolumn will be inserted to the left (or right) of the merged cell."
- },
"insertRight": {
"description": "Whether to insert new columns to the right of the reference cell location.\n\n- `True`: insert to the right.\n- `False`: insert to the left.",
"type": "boolean"
@@ -3023,27 +2383,37 @@
"tableObjectId": {
"description": "The table to insert columns into.",
"type": "string"
+ },
+ "number": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The number of columns to be inserted. Maximum 20 per request."
+ },
+ "cellLocation": {
+ "description": "The reference table cell location from which columns will be inserted.\n\nA new column will be inserted to the left (or right) of the column where\nthe reference cell is. If the reference cell is a merged cell, a new\ncolumn will be inserted to the left (or right) of the merged cell.",
+ "$ref": "TableCellLocation"
}
},
- "id": "InsertTableColumnsRequest"
+ "id": "InsertTableColumnsRequest",
+ "description": "Inserts columns into a table.\n\nOther columns in the table will be resized to fit the new column."
},
"Thumbnail": {
"description": "The thumbnail of a page.",
"type": "object",
"properties": {
"height": {
- "type": "integer",
"format": "int32",
- "description": "The positive height in pixels of the thumbnail image."
+ "description": "The positive height in pixels of the thumbnail image.",
+ "type": "integer"
},
"contentUrl": {
"description": "The content URL of the thumbnail image.\n\nThe URL to the image has a default lifetime of 30 minutes.\nThis URL is tagged with the account of the requester. Anyone with the URL\neffectively accesses the image as the original requester. Access to the\nimage may be lost if the presentation's sharing settings change.\nThe mime type of the thumbnail image is the same as specified in the\n`GetPageThumbnailRequest`.",
"type": "string"
},
"width": {
+ "type": "integer",
"format": "int32",
- "description": "The positive width in pixels of the thumbnail image.",
- "type": "integer"
+ "description": "The positive width in pixels of the thumbnail image."
}
},
"id": "Thumbnail"
@@ -3052,28 +2422,26 @@
"description": "The user-specified ID mapping for a placeholder that will be created on a\nslide from a specified layout.",
"type": "object",
"properties": {
+ "layoutPlaceholder": {
+ "$ref": "Placeholder",
+ "description": "The placeholder on a layout that will be applied to a slide. Only type and index are needed. For example, a\npredefined `TITLE_AND_BODY` layout may usually have a TITLE placeholder\nwith index 0 and a BODY placeholder with index 0."
+ },
"layoutPlaceholderObjectId": {
"description": "The object ID of the placeholder on a layout that will be applied\nto a slide.",
"type": "string"
},
"objectId": {
- "type": "string",
- "description": "A user-supplied object ID for the placeholder identified above that to be\ncreated onto a slide.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated."
- },
- "layoutPlaceholder": {
- "$ref": "Placeholder",
- "description": "The placeholder on a layout that will be applied to a slide. Only type and index are needed. For example, a\npredefined `TITLE_AND_BODY` layout may usually have a TITLE placeholder\nwith index 0 and a BODY placeholder with index 0."
+ "description": "A user-supplied object ID for the placeholder identified above that to be\ncreated onto a slide.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.",
+ "type": "string"
}
},
"id": "LayoutPlaceholderIdMapping"
},
"UpdateShapePropertiesRequest": {
+ "id": "UpdateShapePropertiesRequest",
+ "description": "Update the properties of a Shape.",
"type": "object",
"properties": {
- "shapeProperties": {
- "description": "The shape properties to update.",
- "$ref": "ShapeProperties"
- },
"fields": {
"format": "google-fieldmask",
"description": "The fields that should be updated.\n\nAt least one field must be specified. The root `shapeProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the shape background solid fill color, set `fields`\nto `\"shapeBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.",
@@ -3082,21 +2450,23 @@
"objectId": {
"description": "The object ID of the shape the updates are applied to.",
"type": "string"
+ },
+ "shapeProperties": {
+ "description": "The shape properties to update.",
+ "$ref": "ShapeProperties"
}
- },
- "id": "UpdateShapePropertiesRequest",
- "description": "Update the properties of a Shape."
+ }
},
"WordArt": {
+ "description": "A PageElement kind representing\nword art.",
+ "type": "object",
"properties": {
"renderedText": {
"description": "The text rendered as word art.",
"type": "string"
}
},
- "id": "WordArt",
- "description": "A PageElement kind representing\nword art.",
- "type": "object"
+ "id": "WordArt"
},
"Recolor": {
"description": "A recolor effect applied on an image.",
@@ -3110,33 +2480,6 @@
"type": "array"
},
"name": {
- "enumDescriptions": [
- "No recolor effect. The default value.",
- "A recolor effect that lightens the image using the page's first available\ncolor from its color scheme.",
- "A recolor effect that lightens the image using the page's second\navailable color from its color scheme.",
- "A recolor effect that lightens the image using the page's third available\ncolor from its color scheme.",
- "A recolor effect that lightens the image using the page's forth available\ncolor from its color scheme.",
- "A recolor effect that lightens the image using the page's fifth available\ncolor from its color scheme.",
- "A recolor effect that lightens the image using the page's sixth available\ncolor from its color scheme.",
- "A recolor effect that lightens the image using the page's seventh\navailable color from its color scheme.e.",
- "A recolor effect that lightens the image using the page's eighth\navailable color from its color scheme.",
- "A recolor effect that lightens the image using the page's ninth available\ncolor from its color scheme.",
- "A recolor effect that lightens the image using the page's tenth available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's first available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's second available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's third available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's fourth available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's fifth available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's sixth available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's seventh\navailable color from its color scheme.",
- "A recolor effect that darkens the image using the page's eighth available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's ninth available\ncolor from its color scheme.",
- "A recolor effect that darkens the image using the page's tenth available\ncolor from its color scheme.",
- "A recolor effect that recolors the image to grayscale.",
- "A recolor effect that recolors the image to negative grayscale.",
- "A recolor effect that recolors the image using the sepia color.",
- "Custom recolor effect. Refer to `recolor_stops` for the concrete\ngradient."
- ],
"enum": [
"NONE",
"LIGHT1",
@@ -3165,14 +2508,39 @@
"CUSTOM"
],
"description": "The name of the recolor effect.\n\nThe name is determined from the `recolor_stops` by matching the gradient\nagainst the colors in the page's current color scheme. This property is\nread-only.",
- "type": "string"
+ "type": "string",
+ "enumDescriptions": [
+ "No recolor effect. The default value.",
+ "A recolor effect that lightens the image using the page's first available\ncolor from its color scheme.",
+ "A recolor effect that lightens the image using the page's second\navailable color from its color scheme.",
+ "A recolor effect that lightens the image using the page's third available\ncolor from its color scheme.",
+ "A recolor effect that lightens the image using the page's forth available\ncolor from its color scheme.",
+ "A recolor effect that lightens the image using the page's fifth available\ncolor from its color scheme.",
+ "A recolor effect that lightens the image using the page's sixth available\ncolor from its color scheme.",
+ "A recolor effect that lightens the image using the page's seventh\navailable color from its color scheme.e.",
+ "A recolor effect that lightens the image using the page's eighth\navailable color from its color scheme.",
+ "A recolor effect that lightens the image using the page's ninth available\ncolor from its color scheme.",
+ "A recolor effect that lightens the image using the page's tenth available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's first available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's second available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's third available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's fourth available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's fifth available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's sixth available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's seventh\navailable color from its color scheme.",
+ "A recolor effect that darkens the image using the page's eighth available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's ninth available\ncolor from its color scheme.",
+ "A recolor effect that darkens the image using the page's tenth available\ncolor from its color scheme.",
+ "A recolor effect that recolors the image to grayscale.",
+ "A recolor effect that recolors the image to negative grayscale.",
+ "A recolor effect that recolors the image using the sepia color.",
+ "Custom recolor effect. Refer to `recolor_stops` for the concrete\ngradient."
+ ]
}
},
"id": "Recolor"
},
"Link": {
- "description": "A hypertext link.",
- "type": "object",
"properties": {
"pageObjectId": {
"description": "If set, indicates this is a link to the specific page in this\npresentation with this ID. A page with this ID may not exist.",
@@ -3184,6 +2552,7 @@
"type": "integer"
},
"relativeLink": {
+ "type": "string",
"enumDescriptions": [
"An unspecified relative slide link.",
"A link to the next slide.",
@@ -3198,15 +2567,16 @@
"FIRST_SLIDE",
"LAST_SLIDE"
],
- "description": "If set, indicates this is a link to a slide in this presentation,\naddressed by its position.",
- "type": "string"
+ "description": "If set, indicates this is a link to a slide in this presentation,\naddressed by its position."
},
"url": {
- "description": "If set, indicates this is a link to the external web page at this URL.",
- "type": "string"
+ "type": "string",
+ "description": "If set, indicates this is a link to the external web page at this URL."
}
},
- "id": "Link"
+ "id": "Link",
+ "description": "A hypertext link.",
+ "type": "object"
},
"RgbColor": {
"description": "An RGB color.",
@@ -3231,7 +2601,6 @@
"id": "RgbColor"
},
"CreateShapeResponse": {
- "description": "The result of creating a shape.",
"type": "object",
"properties": {
"objectId": {
@@ -3239,9 +2608,13 @@
"type": "string"
}
},
- "id": "CreateShapeResponse"
+ "id": "CreateShapeResponse",
+ "description": "The result of creating a shape."
},
"CreateLineRequest": {
+ "id": "CreateLineRequest",
+ "description": "Creates a line.",
+ "type": "object",
"properties": {
"objectId": {
"description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.",
@@ -3252,7 +2625,6 @@
"description": "The element properties for the line."
},
"lineCategory": {
- "type": "string",
"enumDescriptions": [
"Straight connectors, including straight connector 1. The is the default\ncategory when one is not specified.",
"Bent connectors, including bent connector 2 to 5.",
@@ -3263,26 +2635,23 @@
"BENT",
"CURVED"
],
- "description": "The category of line to be created."
+ "description": "The category of line to be created.",
+ "type": "string"
}
- },
- "id": "CreateLineRequest",
- "description": "Creates a line.",
- "type": "object"
+ }
},
"CreateSlideResponse": {
"description": "The result of creating a slide.",
"type": "object",
"properties": {
"objectId": {
- "description": "The object ID of the created slide.",
- "type": "string"
+ "type": "string",
+ "description": "The object ID of the created slide."
}
},
"id": "CreateSlideResponse"
},
"CreateShapeRequest": {
- "description": "Creates a new shape.",
"type": "object",
"properties": {
"shapeType": {
@@ -3588,24 +2957,14 @@
"description": "The element properties for the shape."
}
},
- "id": "CreateShapeRequest"
+ "id": "CreateShapeRequest",
+ "description": "Creates a new shape."
},
"Video": {
+ "id": "Video",
"description": "A PageElement kind representing a\nvideo.",
"type": "object",
"properties": {
- "source": {
- "enumDescriptions": [
- "The video source is unspecified.",
- "The video source is YouTube."
- ],
- "enum": [
- "SOURCE_UNSPECIFIED",
- "YOUTUBE"
- ],
- "description": "The video source.",
- "type": "string"
- },
"id": {
"description": "The video source's unique identifier for this video.",
"type": "string"
@@ -3617,81 +2976,92 @@
"videoProperties": {
"$ref": "VideoProperties",
"description": "The properties of the video."
+ },
+ "source": {
+ "enumDescriptions": [
+ "The video source is unspecified.",
+ "The video source is YouTube."
+ ],
+ "enum": [
+ "SOURCE_UNSPECIFIED",
+ "YOUTUBE"
+ ],
+ "description": "The video source.",
+ "type": "string"
}
- },
- "id": "Video"
+ }
},
"PageProperties": {
+ "id": "PageProperties",
+ "description": "The properties of the Page.\n\nThe page will inherit properties from the parent page. Depending on the page\ntype the hierarchy is defined in either\nSlideProperties or\nLayoutProperties.",
"type": "object",
"properties": {
- "pageBackgroundFill": {
- "$ref": "PageBackgroundFill",
- "description": "The background fill of the page. If unset, the background fill is inherited\nfrom a parent page if it exists. If the page has no parent, then the\nbackground fill defaults to the corresponding fill in the Slides editor."
- },
"colorScheme": {
"description": "The color scheme of the page. If unset, the color scheme is inherited from\na parent page. If the page has no parent, the color scheme uses a default\nSlides color scheme. This field is read-only.",
"$ref": "ColorScheme"
- }
- },
- "id": "PageProperties",
- "description": "The properties of the Page.\n\nThe page will inherit properties from the parent page. Depending on the page\ntype the hierarchy is defined in either\nSlideProperties or\nLayoutProperties."
- },
- "NestingLevel": {
- "id": "NestingLevel",
- "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.",
- "type": "object",
- "properties": {
- "bulletStyle": {
- "$ref": "TextStyle",
- "description": "The style of a bullet at this level of nesting."
+ },
+ "pageBackgroundFill": {
+ "$ref": "PageBackgroundFill",
+ "description": "The background fill of the page. If unset, the background fill is inherited\nfrom a parent page if it exists. If the page has no parent, then the\nbackground fill defaults to the corresponding fill in the Slides editor."
}
}
},
"TableCell": {
+ "id": "TableCell",
+ "description": "Properties and contents of each table cell.",
+ "type": "object",
"properties": {
- "text": {
- "$ref": "TextContent",
- "description": "The text content of the cell."
- },
"tableCellProperties": {
- "$ref": "TableCellProperties",
- "description": "The properties of the table cell."
+ "description": "The properties of the table cell.",
+ "$ref": "TableCellProperties"
},
"rowSpan": {
- "type": "integer",
"format": "int32",
- "description": "Row span of the cell."
+ "description": "Row span of the cell.",
+ "type": "integer"
},
"location": {
- "description": "The location of the cell within the table.",
- "$ref": "TableCellLocation"
+ "$ref": "TableCellLocation",
+ "description": "The location of the cell within the table."
},
"columnSpan": {
"format": "int32",
"description": "Column span of the cell.",
"type": "integer"
+ },
+ "text": {
+ "$ref": "TextContent",
+ "description": "The text content of the cell."
+ }
+ }
+ },
+ "NestingLevel": {
+ "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.",
+ "type": "object",
+ "properties": {
+ "bulletStyle": {
+ "description": "The style of a bullet at this level of nesting.",
+ "$ref": "TextStyle"
}
},
- "id": "TableCell",
- "description": "Properties and contents of each table cell.",
- "type": "object"
+ "id": "NestingLevel"
},
"UpdateLinePropertiesRequest": {
"description": "Updates the properties of a Line.",
"type": "object",
"properties": {
- "objectId": {
- "description": "The object ID of the line the update is applied to.",
- "type": "string"
- },
"lineProperties": {
"description": "The line properties to update.",
"$ref": "LineProperties"
},
"fields": {
- "type": "string",
"format": "google-fieldmask",
- "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `lineProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the line solid fill color, set `fields` to\n`\"lineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset."
+ "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `lineProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the line solid fill color, set `fields` to\n`\"lineFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.",
+ "type": "string"
+ },
+ "objectId": {
+ "description": "The object ID of the line the update is applied to.",
+ "type": "string"
}
},
"id": "UpdateLinePropertiesRequest"
@@ -3715,41 +3085,33 @@
"type": "string"
},
"solidFill": {
- "description": "Solid color fill.",
- "$ref": "SolidFill"
+ "$ref": "SolidFill",
+ "description": "Solid color fill."
}
},
"id": "TableCellBackgroundFill"
},
"UpdateSlidesPositionRequest": {
- "description": "Updates the position of slides in the presentation.",
- "type": "object",
"properties": {
- "insertionIndex": {
- "type": "integer",
- "format": "int32",
- "description": "The index where the slides should be inserted, based on the slide\narrangement before the move takes place. Must be between zero and the\nnumber of slides in the presentation, inclusive."
- },
"slideObjectIds": {
"description": "The IDs of the slides in the presentation that should be moved.\nThe slides in this list must be in existing presentation order, without\nduplicates.",
"items": {
"type": "string"
},
"type": "array"
+ },
+ "insertionIndex": {
+ "format": "int32",
+ "description": "The index where the slides should be inserted, based on the slide\narrangement before the move takes place. Must be between zero and the\nnumber of slides in the presentation, inclusive.",
+ "type": "integer"
}
},
- "id": "UpdateSlidesPositionRequest"
+ "id": "UpdateSlidesPositionRequest",
+ "description": "Updates the position of slides in the presentation.",
+ "type": "object"
},
"UpdatePagePropertiesRequest": {
- "id": "UpdatePagePropertiesRequest",
- "description": "Updates the properties of a Page.",
- "type": "object",
"properties": {
- "fields": {
- "format": "google-fieldmask",
- "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `pageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the page background solid fill color, set `fields`\nto `\"pageBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.",
- "type": "string"
- },
"pageProperties": {
"$ref": "PageProperties",
"description": "The page properties to update."
@@ -3757,8 +3119,16 @@
"objectId": {
"description": "The object ID of the page the update is applied to.",
"type": "string"
+ },
+ "fields": {
+ "format": "google-fieldmask",
+ "description": "The fields that should be updated.\n\nAt least one field must be specified. The root `pageProperties` is\nimplied and should not be specified. A single `\"*\"` can be used as\nshort-hand for listing every field.\n\nFor example to update the page background solid fill color, set `fields`\nto `\"pageBackgroundFill.solidFill.color\"`.\n\nTo reset a property to its default value, include its field name in the\nfield mask but leave the field itself unset.",
+ "type": "string"
}
- }
+ },
+ "id": "UpdatePagePropertiesRequest",
+ "description": "Updates the properties of a Page.",
+ "type": "object"
},
"Group": {
"description": "A PageElement kind representing a\njoined collection of PageElements.",
@@ -3778,6 +3148,15 @@
"description": "The placeholder information that uniquely identifies a placeholder shape.",
"type": "object",
"properties": {
+ "parentObjectId": {
+ "type": "string",
+ "description": "The object ID of this shape's parent placeholder.\nIf unset, the parent placeholder shape does not exist, so the shape does\nnot inherit properties from any other shape."
+ },
+ "index": {
+ "format": "int32",
+ "description": "The index of the placeholder. If the same placeholder types are present in\nthe same page, they would have different index values.",
+ "type": "integer"
+ },
"type": {
"type": "string",
"enumDescriptions": [
@@ -3819,44 +3198,33 @@
"SLIDE_IMAGE"
],
"description": "The type of the placeholder."
- },
- "parentObjectId": {
- "description": "The object ID of this shape's parent placeholder.\nIf unset, the parent placeholder shape does not exist, so the shape does\nnot inherit properties from any other shape.",
- "type": "string"
- },
- "index": {
- "type": "integer",
- "format": "int32",
- "description": "The index of the placeholder. If the same placeholder types are present in\nthe same page, they would have different index values."
}
},
"id": "Placeholder"
},
"DuplicateObjectRequest": {
+ "description": "Duplicates a slide or page element.\n\nWhen duplicating a slide, the duplicate slide will be created immediately\nfollowing the specified slide. When duplicating a page element, the duplicate\nwill be placed on the same page at the same position as the original.",
"type": "object",
"properties": {
- "objectId": {
- "description": "The ID of the object to duplicate.",
- "type": "string"
- },
"objectIds": {
"additionalProperties": {
"type": "string"
},
"description": "The object being duplicated may contain other objects, for example when\nduplicating a slide or a group page element. This map defines how the IDs\nof duplicated objects are generated: the keys are the IDs of the original\nobjects and its values are the IDs that will be assigned to the\ncorresponding duplicate object. The ID of the source object's duplicate\nmay be specified in this map as well, using the same value of the\n`object_id` field as a key and the newly desired ID as the value.\n\nAll keys must correspond to existing IDs in the presentation. All values\nmust be unique in the presentation and must start with an alphanumeric\ncharacter or an underscore (matches regex `[a-zA-Z0-9_]`); remaining\ncharacters may include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`). The length of the new ID must not be less than 5 or\ngreater than 50.\n\nIf any IDs of source objects are omitted from the map, a new random ID will\nbe assigned. If the map is empty or unset, all duplicate objects will\nreceive a new random ID.",
"type": "object"
+ },
+ "objectId": {
+ "description": "The ID of the object to duplicate.",
+ "type": "string"
}
},
- "id": "DuplicateObjectRequest",
- "description": "Duplicates a slide or page element.\n\nWhen duplicating a slide, the duplicate slide will be created immediately\nfollowing the specified slide. When duplicating a page element, the duplicate\nwill be placed on the same page at the same position as the original."
+ "id": "DuplicateObjectRequest"
},
"ReplaceAllTextRequest": {
- "description": "Replaces all instances of text matching a criteria with replace text.",
- "type": "object",
"properties": {
"containsText": {
- "description": "Finds text in a shape matching this substring.",
- "$ref": "SubstringMatchCriteria"
+ "$ref": "SubstringMatchCriteria",
+ "description": "Finds text in a shape matching this substring."
},
"pageObjectIds": {
"description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes master,\nor if a page with that object ID doesn't exist in the presentation.",
@@ -3870,7 +3238,377 @@
"type": "string"
}
},
- "id": "ReplaceAllTextRequest"
+ "id": "ReplaceAllTextRequest",
+ "description": "Replaces all instances of text matching a criteria with replace text.",
+ "type": "object"
+ },
+ "Page": {
+ "type": "object",
+ "properties": {
+ "slideProperties": {
+ "$ref": "SlideProperties",
+ "description": "Slide specific properties. Only set if page_type = SLIDE."
+ },
+ "pageProperties": {
+ "description": "The properties of the page.",
+ "$ref": "PageProperties"
+ },
+ "masterProperties": {
+ "$ref": "MasterProperties",
+ "description": "Master specific properties. Only set if page_type = MASTER."
+ },
+ "objectId": {
+ "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement share the same namespace.",
+ "type": "string"
+ },
+ "revisionId": {
+ "description": "The revision ID of the presentation containing this page. Can be used in\nupdate requests to assert that the presentation revision hasn't changed\nsince the last read operation. Only populated if the user has edit access\nto the presentation.\n\nThe format of the revision ID may change over time, so it should be treated\nopaquely. A returned revision ID is only guaranteed to be valid for 24\nhours after it has been returned and cannot be shared across users. If the\nrevision ID is unchanged between calls, then the presentation has not\nchanged. Conversely, a changed ID (for the same presentation and user)\nusually means the presentation has been updated; however, a changed ID can\nalso be due to internal factors such as ID format changes.",
+ "type": "string"
+ },
+ "layoutProperties": {
+ "$ref": "LayoutProperties",
+ "description": "Layout specific properties. Only set if page_type = LAYOUT."
+ },
+ "notesProperties": {
+ "$ref": "NotesProperties",
+ "description": "Notes specific properties. Only set if page_type = NOTES."
+ },
+ "pageType": {
+ "enumDescriptions": [
+ "A slide page.",
+ "A master slide page.",
+ "A layout page.",
+ "A notes page.",
+ "A notes master page."
+ ],
+ "enum": [
+ "SLIDE",
+ "MASTER",
+ "LAYOUT",
+ "NOTES",
+ "NOTES_MASTER"
+ ],
+ "description": "The type of the page.",
+ "type": "string"
+ },
+ "pageElements": {
+ "items": {
+ "$ref": "PageElement"
+ },
+ "type": "array",
+ "description": "The page elements rendered on the page."
+ }
+ },
+ "id": "Page",
+ "description": "A page in a presentation."
+ },
+ "ShapeBackgroundFill": {
+ "description": "The shape background fill.",
+ "type": "object",
+ "properties": {
+ "propertyState": {
+ "enumDescriptions": [
+ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
+ "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
+ "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
+ ],
+ "enum": [
+ "RENDERED",
+ "NOT_RENDERED",
+ "INHERIT"
+ ],
+ "description": "The background fill property state.\n\nUpdating the the fill on a shape will implicitly update this field to\n`RENDERED`, unless another value is specified in the same request. To\nhave no fill on a shape, set this field to `NOT_RENDERED`. In this case,\nany other fill fields set in the same request will be ignored.",
+ "type": "string"
+ },
+ "solidFill": {
+ "$ref": "SolidFill",
+ "description": "Solid color fill."
+ }
+ },
+ "id": "ShapeBackgroundFill"
+ },
+ "CropProperties": {
+ "properties": {
+ "bottomOffset": {
+ "type": "number",
+ "format": "float",
+ "description": "The offset specifies the bottom edge of the crop rectangle that is located\nabove the original bounding rectangle bottom edge, relative to the object's\noriginal height."
+ },
+ "angle": {
+ "format": "float",
+ "description": "The rotation angle of the crop window around its center, in radians.\nRotation angle is applied after the offset.",
+ "type": "number"
+ },
+ "topOffset": {
+ "format": "float",
+ "description": "The offset specifies the top edge of the crop rectangle that is located\nbelow the original bounding rectangle top edge, relative to the object's\noriginal height.",
+ "type": "number"
+ },
+ "leftOffset": {
+ "format": "float",
+ "description": "The offset specifies the left edge of the crop rectangle that is located to\nthe right of the original bounding rectangle left edge, relative to the\nobject's original width.",
+ "type": "number"
+ },
+ "rightOffset": {
+ "format": "float",
+ "description": "The offset specifies the right edge of the crop rectangle that is located\nto the left of the original bounding rectangle right edge, relative to the\nobject's original width.",
+ "type": "number"
+ }
+ },
+ "id": "CropProperties",
+ "description": "The crop properties of an object enclosed in a container. For example, an\nImage.\n\nThe crop properties is represented by the offsets of four edges which define\na crop rectangle. The offsets are measured in percentage from the\ncorresponding edges of the object's original bounding rectangle towards\ninside, relative to the object's original dimensions.\n\n- If the offset is in the interval (0, 1), the corresponding edge of crop\nrectangle is positioned inside of the object's original bounding rectangle.\n- If the offset is negative or greater than 1, the corresponding edge of crop\nrectangle is positioned outside of the object's original bounding rectangle.\n- If the left edge of the crop rectangle is on the right side of its right\nedge, the object will be flipped horizontally.\n- If the top edge of the crop rectangle is below its bottom edge, the object\nwill be flipped vertically.\n- If all offsets and rotation angle is 0, the object is not cropped.\n\nAfter cropping, the content in the crop rectangle will be stretched to fit\nits container.",
+ "type": "object"
+ },
+ "ReplaceAllShapesWithSheetsChartRequest": {
+ "type": "object",
+ "properties": {
+ "linkingMode": {
+ "description": "The mode with which the chart is linked to the source spreadsheet. When\nnot specified, the chart will be an image that is not linked.",
+ "type": "string",
+ "enumDescriptions": [
+ "The chart is not associated with the source spreadsheet and cannot be\nupdated. A chart that is not linked will be inserted as an image.",
+ "Linking the chart allows it to be updated, and other collaborators will\nsee a link to the spreadsheet."
+ ],
+ "enum": [
+ "NOT_LINKED_IMAGE",
+ "LINKED"
+ ]
+ },
+ "spreadsheetId": {
+ "description": "The ID of the Google Sheets spreadsheet that contains the chart.",
+ "type": "string"
+ },
+ "pageObjectIds": {
+ "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "chartId": {
+ "format": "int32",
+ "description": "The ID of the specific chart in the Google Sheets spreadsheet.",
+ "type": "integer"
+ },
+ "containsText": {
+ "$ref": "SubstringMatchCriteria",
+ "description": "The criteria that the shapes must match in order to be replaced. The\nrequest will replace all of the shapes that contain the given text."
+ }
+ },
+ "id": "ReplaceAllShapesWithSheetsChartRequest",
+ "description": "Replaces all shapes that match the given criteria with the provided Google\nSheets chart. The chart will be scaled and centered to fit within the bounds\nof the original shape.\n\nNOTE: Replacing shapes with a chart requires at least one of the\nspreadsheets.readonly, spreadsheets, drive.readonly, or drive OAuth scopes."
+ },
+ "ColorStop": {
+ "properties": {
+ "color": {
+ "$ref": "OpaqueColor",
+ "description": "The color of the gradient stop."
+ },
+ "position": {
+ "format": "float",
+ "description": "The relative position of the color stop in the gradient band measured\nin percentage. The value should be in the interval [0.0, 1.0].",
+ "type": "number"
+ },
+ "alpha": {
+ "type": "number",
+ "format": "float",
+ "description": "The alpha value of this color in the gradient band. Defaults to 1.0,\nfully opaque."
+ }
+ },
+ "id": "ColorStop",
+ "description": "A color and position in a gradient band.",
+ "type": "object"
+ },
+ "Range": {
+ "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "The type of range.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified range type. This value must not be used.",
+ "A fixed range. Both the `start_index` and\n`end_index` must be specified.",
+ "Starts the range at `start_index` and continues until the\nend of the collection. The `end_index` must not be specified.",
+ "Sets the range to be the whole length of the collection. Both the\n`start_index` and the `end_index` must not be\nspecified."
+ ],
+ "enum": [
+ "RANGE_TYPE_UNSPECIFIED",
+ "FIXED_RANGE",
+ "FROM_START_INDEX",
+ "ALL"
+ ]
+ },
+ "endIndex": {
+ "format": "int32",
+ "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges.",
+ "type": "integer"
+ },
+ "startIndex": {
+ "format": "int32",
+ "description": "The optional zero-based index of the beginning of the collection.\nRequired for `FIXED_RANGE` and `FROM_START_INDEX` ranges.",
+ "type": "integer"
+ }
+ },
+ "id": "Range"
+ },
+ "CreateVideoRequest": {
+ "description": "Creates a video.",
+ "type": "object",
+ "properties": {
+ "source": {
+ "enumDescriptions": [
+ "The video source is unspecified.",
+ "The video source is YouTube."
+ ],
+ "enum": [
+ "SOURCE_UNSPECIFIED",
+ "YOUTUBE"
+ ],
+ "description": "The video source.",
+ "type": "string"
+ },
+ "objectId": {
+ "description": "A user-supplied object ID.\n\nIf you specify an ID, it must be unique among all pages and page elements\nin the presentation. The ID must start with an alphanumeric character or an\nunderscore (matches regex `[a-zA-Z0-9_]`); remaining characters\nmay include those as well as a hyphen or colon (matches regex\n`[a-zA-Z0-9_-:]`).\nThe length of the ID must not be less than 5 or greater than 50.\n\nIf you don't specify an ID, a unique one is generated.",
+ "type": "string"
+ },
+ "elementProperties": {
+ "description": "The element properties for the video.",
+ "$ref": "PageElementProperties"
+ },
+ "id": {
+ "description": "The video source's unique identifier for this video.\n\ne.g. For YouTube video https://www.youtube.com/watch?v=7U3axjORYZ0,\nthe ID is 7U3axjORYZ0.",
+ "type": "string"
+ }
+ },
+ "id": "CreateVideoRequest"
+ },
+ "DuplicateObjectResponse": {
+ "type": "object",
+ "properties": {
+ "objectId": {
+ "description": "The ID of the new duplicate object.",
+ "type": "string"
+ }
+ },
+ "id": "DuplicateObjectResponse",
+ "description": "The response of duplicating an object."
+ },
+ "ReplaceAllShapesWithImageRequest": {
+ "id": "ReplaceAllShapesWithImageRequest",
+ "description": "Replaces all shapes that match the given criteria with the provided image.",
+ "type": "object",
+ "properties": {
+ "imageUrl": {
+ "description": "The image URL.\n\nThe image is fetched once at insertion time and a copy is stored for\ndisplay inside the presentation. Images must be less than 50MB in size,\ncannot exceed 25 megapixels, and must be in either in PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at maximum 2K bytes large.",
+ "type": "string"
+ },
+ "replaceMethod": {
+ "enum": [
+ "CENTER_INSIDE",
+ "CENTER_CROP"
+ ],
+ "description": "The replace method.",
+ "type": "string",
+ "enumDescriptions": [
+ "Scales and centers the image to fit within the bounds of the original\nshape and maintains the image's aspect ratio. The rendered size of the\nimage may be smaller than the size of the shape. This is the default\nmethod when one is not specified.",
+ "Scales and centers the image to fill the bounds of the original shape.\nThe image may be cropped in order to fill the shape. The rendered size of\nthe image will be the same as that of the original shape."
+ ]
+ },
+ "pageObjectIds": {
+ "description": "If non-empty, limits the matches to page elements only on the given pages.\n\nReturns a 400 bad request error if given the page object ID of a\nnotes page or a\nnotes master, or if a\npage with that object ID doesn't exist in the presentation.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "containsText": {
+ "description": "If set, this request will replace all of the shapes that contain the\ngiven text.",
+ "$ref": "SubstringMatchCriteria"
+ }
+ }
+ },
+ "Shadow": {
+ "description": "The shadow properties of a page element.\n\nIf these fields are unset, they may be inherited from a parent placeholder\nif it exists. If there is no parent, the fields will default to the value\nused for new page elements created in the Slides editor, which may depend on\nthe page element kind.",
+ "type": "object",
+ "properties": {
+ "transform": {
+ "$ref": "AffineTransform",
+ "description": "Transform that encodes the translate, scale, and skew of the shadow,\nrelative to the alignment position."
+ },
+ "type": {
+ "enum": [
+ "SHADOW_TYPE_UNSPECIFIED",
+ "OUTER"
+ ],
+ "description": "The type of the shadow.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified shadow type.",
+ "Outer shadow."
+ ]
+ },
+ "alignment": {
+ "enum": [
+ "RECTANGLE_POSITION_UNSPECIFIED",
+ "TOP_LEFT",
+ "TOP_CENTER",
+ "TOP_RIGHT",
+ "LEFT_CENTER",
+ "CENTER",
+ "RIGHT_CENTER",
+ "BOTTOM_LEFT",
+ "BOTTOM_CENTER",
+ "BOTTOM_RIGHT"
+ ],
+ "description": "The alignment point of the shadow, that sets the origin for translate,\nscale and skew of the shadow.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified.",
+ "Top left.",
+ "Top center.",
+ "Top right.",
+ "Left center.",
+ "Center.",
+ "Right center.",
+ "Bottom left.",
+ "Bottom center.",
+ "Bottom right."
+ ]
+ },
+ "alpha": {
+ "format": "float",
+ "description": "The alpha of the shadow's color, from 0.0 to 1.0.",
+ "type": "number"
+ },
+ "color": {
+ "$ref": "OpaqueColor",
+ "description": "The shadow color value."
+ },
+ "rotateWithShape": {
+ "description": "Whether the shadow should rotate with the shape.",
+ "type": "boolean"
+ },
+ "propertyState": {
+ "type": "string",
+ "enumDescriptions": [
+ "If a property's state is RENDERED, then the element has the corresponding\nproperty when rendered on a page. If the element is a placeholder shape as\ndetermined by the placeholder\nfield, and it inherits from a placeholder shape, the corresponding field\nmay be unset, meaning that the property value is inherited from a parent\nplaceholder. If the element does not inherit, then the field will contain\nthe rendered value. This is the default value.",
+ "If a property's state is NOT_RENDERED, then the element does not have the\ncorresponding property when rendered on a page. However, the field may\nstill be set so it can be inherited by child shapes. To remove a property\nfrom a rendered element, set its property_state to NOT_RENDERED.",
+ "If a property's state is INHERIT, then the property state uses the value of\ncorresponding `property_state` field on the parent shape. Elements that do\nnot inherit will never have an INHERIT property state."
+ ],
+ "enum": [
+ "RENDERED",
+ "NOT_RENDERED",
+ "INHERIT"
+ ],
+ "description": "The shadow property state.\n\nUpdating the the shadow on a page element will implicitly update this field\nto `RENDERED`, unless another value is specified in the same request. To\nhave no shadow on a page element, set this field to `NOT_RENDERED`. In this\ncase, any other shadow fields set in the same request will be ignored."
+ },
+ "blurRadius": {
+ "$ref": "Dimension",
+ "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes."
+ }
+ },
+ "id": "Shadow"
}
},
"icons": {
@@ -3905,5 +3643,282 @@
},
"rootUrl": "https://slides.googleapis.com/",
"ownerDomain": "google.com",
- "name": "slides"
+ "name": "slides",
+ "batchPath": "batch",
+ "title": "Google Slides API",
+ "ownerName": "Google",
+ "resources": {
+ "presentations": {
+ "methods": {
+ "get": {
+ "id": "slides.presentations.get",
+ "path": "v1/presentations/{+presentationId}",
+ "description": "Gets the latest version of the specified presentation.",
+ "response": {
+ "$ref": "Presentation"
+ },
+ "parameterOrder": [
+ "presentationId"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.readonly",
+ "https://www.googleapis.com/auth/presentations",
+ "https://www.googleapis.com/auth/presentations.readonly"
+ ],
+ "parameters": {
+ "presentationId": {
+ "location": "path",
+ "description": "The ID of the presentation to retrieve.",
+ "type": "string",
+ "required": true,
+ "pattern": "^[^/]+$"
+ }
+ },
+ "flatPath": "v1/presentations/{presentationsId}"
+ },
+ "batchUpdate": {
+ "flatPath": "v1/presentations/{presentationId}:batchUpdate",
+ "id": "slides.presentations.batchUpdate",
+ "path": "v1/presentations/{presentationId}:batchUpdate",
+ "description": "Applies one or more updates to the presentation.\n\nEach request is validated before\nbeing applied. If any request is not valid, then the entire request will\nfail and nothing will be applied.\n\nSome requests have replies to\ngive you some information about how they are applied. Other requests do\nnot need to return information; these each return an empty reply.\nThe order of replies matches that of the requests.\n\nFor example, suppose you call batchUpdate with four updates, and only the\nthird one returns information. The response would have two empty replies:\nthe reply to the third request, and another empty reply, in that order.\n\nBecause other users may be editing the presentation, the presentation\nmight not exactly reflect your changes: your changes may\nbe altered with respect to collaborator changes. If there are no\ncollaborators, the presentation should reflect your changes. In any case,\nthe updates in your request are guaranteed to be applied together\natomically.",
+ "request": {
+ "$ref": "BatchUpdatePresentationRequest"
+ },
+ "response": {
+ "$ref": "BatchUpdatePresentationResponse"
+ },
+ "parameterOrder": [
+ "presentationId"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "presentationId": {
+ "location": "path",
+ "description": "The presentation to apply the updates to.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.readonly",
+ "https://www.googleapis.com/auth/presentations",
+ "https://www.googleapis.com/auth/spreadsheets",
+ "https://www.googleapis.com/auth/spreadsheets.readonly"
+ ]
+ },
+ "create": {
+ "path": "v1/presentations",
+ "id": "slides.presentations.create",
+ "description": "Creates a new presentation using the title given in the request. Other\nfields in the request are ignored.\nReturns the created presentation.",
+ "request": {
+ "$ref": "Presentation"
+ },
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "Presentation"
+ },
+ "parameters": {},
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/presentations"
+ ],
+ "flatPath": "v1/presentations"
+ }
+ },
+ "resources": {
+ "pages": {
+ "methods": {
+ "getThumbnail": {
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.readonly",
+ "https://www.googleapis.com/auth/presentations",
+ "https://www.googleapis.com/auth/presentations.readonly"
+ ],
+ "parameters": {
+ "pageObjectId": {
+ "description": "The object ID of the page whose thumbnail to retrieve.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
+ "thumbnailProperties.thumbnailSize": {
+ "location": "query",
+ "enum": [
+ "THUMBNAIL_SIZE_UNSPECIFIED",
+ "LARGE"
+ ],
+ "description": "The optional thumbnail image size.\n\nIf you don't specify the size, the server chooses a default size of the\nimage.",
+ "type": "string"
+ },
+ "thumbnailProperties.mimeType": {
+ "description": "The optional mime type of the thumbnail image.\n\nIf you don't specify the mime type, the default mime type will be PNG.",
+ "type": "string",
+ "location": "query",
+ "enum": [
+ "PNG"
+ ]
+ },
+ "presentationId": {
+ "description": "The ID of the presentation to retrieve.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail",
+ "id": "slides.presentations.pages.getThumbnail",
+ "path": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail",
+ "description": "Generates a thumbnail of the latest version of the specified page in the\npresentation and returns a URL to the thumbnail image.",
+ "response": {
+ "$ref": "Thumbnail"
+ },
+ "parameterOrder": [
+ "presentationId",
+ "pageObjectId"
+ ],
+ "httpMethod": "GET"
+ },
+ "get": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "presentationId",
+ "pageObjectId"
+ ],
+ "response": {
+ "$ref": "Page"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/drive",
+ "https://www.googleapis.com/auth/drive.readonly",
+ "https://www.googleapis.com/auth/presentations",
+ "https://www.googleapis.com/auth/presentations.readonly"
+ ],
+ "parameters": {
+ "pageObjectId": {
+ "location": "path",
+ "description": "The object ID of the page to retrieve.",
+ "type": "string",
+ "required": true
+ },
+ "presentationId": {
+ "description": "The ID of the presentation to retrieve.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}",
+ "path": "v1/presentations/{presentationId}/pages/{pageObjectId}",
+ "id": "slides.presentations.pages.get",
+ "description": "Gets the latest version of the specified page in the presentation."
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "$.xgafv": {
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string"
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
+ "type": "string"
+ },
+ "alt": {
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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",
+ "description": "Data format for response.",
+ "default": "json"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
+ "quotaUser": {
+ "type": "string",
+ "location": "query",
+ "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."
+ },
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "bearer_token": {
+ "type": "string",
+ "location": "query",
+ "description": "OAuth bearer token."
+ },
+ "oauth_token": {
+ "type": "string",
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user."
+ },
+ "upload_protocol": {
+ "type": "string",
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
+ },
+ "prettyPrint": {
+ "location": "query",
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "fields": {
+ "type": "string",
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response."
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ }
+ },
+ "version": "v1",
+ "baseUrl": "https://slides.googleapis.com/",
+ "kind": "discovery#restDescription",
+ "description": "An API for creating and editing Google Slides presentations.",
+ "servicePath": "",
+ "basePath": "",
+ "id": "slides:v1",
+ "documentationLink": "https://developers.google.com/slides/",
+ "revision": "20170824",
+ "discoveryVersion": "v1",
+ "version_module": true
}
diff --git a/vendor/google.golang.org/api/slides/v1/slides-gen.go b/vendor/google.golang.org/api/slides/v1/slides-gen.go
index 3b33a4d..c0287fa 100644
--- a/vendor/google.golang.org/api/slides/v1/slides-gen.go
+++ b/vendor/google.golang.org/api/slides/v1/slides-gen.go
@@ -469,6 +469,8 @@ type CreateImageRequest struct {
// cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or
// GIF
// format.
+ //
+ // The provided URL can be at maximum 2K bytes large.
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "ElementProperties")
@@ -640,7 +642,7 @@ type CreateParagraphBulletsRequest struct {
// `DIAMOND` and `DISC` bullet glyph for
// the first 3 list nesting levels.
// "BULLET_STAR_CIRCLE_SQUARE" - A bulleted list with a `STAR`,
- // `CIRCLE` and `DISC` bullet glyph for
+ // `CIRCLE` and `SQUARE` bullet glyph for
// the first 3 list nesting levels.
// "BULLET_ARROW3D_CIRCLE_SQUARE" - A bulleted list with a `ARROW3D`,
// `CIRCLE` and `SQUARE` bullet glyph for
@@ -2712,6 +2714,35 @@ func (s *List) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+// MasterProperties: The properties of Page that are only
+// relevant for pages with page_type MASTER.
+type MasterProperties struct {
+ // DisplayName: The human-readable name of the master.
+ DisplayName string `json:"displayName,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "DisplayName") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "DisplayName") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *MasterProperties) MarshalJSON() ([]byte, error) {
+ type noMethod MasterProperties
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// NestingLevel: Contains properties describing the look and feel of a
// list bullet at a given
// level of nesting.
@@ -2999,6 +3030,10 @@ type Page struct {
// LAYOUT.
LayoutProperties *LayoutProperties `json:"layoutProperties,omitempty"`
+ // MasterProperties: Master specific properties. Only set if page_type =
+ // MASTER.
+ MasterProperties *MasterProperties `json:"masterProperties,omitempty"`
+
// NotesProperties: Notes specific properties. Only set if page_type =
// NOTES.
NotesProperties *NotesProperties `json:"notesProperties,omitempty"`
@@ -3083,7 +3118,7 @@ func (s *Page) MarshalJSON() ([]byte, error) {
type PageBackgroundFill struct {
// PropertyState: The background fill property state.
//
- // Updating the the fill on a page will implicitly update this field
+ // Updating the fill on a page will implicitly update this field
// to
// `RENDERED`, unless another value is specified in the same request.
// To
@@ -3189,6 +3224,19 @@ type PageElement struct {
Title string `json:"title,omitempty"`
// Transform: The transform of the page element.
+ //
+ // The visual appearance of the page element is determined by its
+ // absolute
+ // transform. To compute the absolute transform, preconcatenate a
+ // page
+ // element's transform with the transforms of all of its parent groups.
+ // If the
+ // page element is not in a group, its absolute transform is the same as
+ // the
+ // value in this field.
+ //
+ // The initial transform for the newly created Group is always the
+ // identity transform.
Transform *AffineTransform `json:"transform,omitempty"`
// Video: A video page element.
@@ -3861,6 +3909,8 @@ type ReplaceAllShapesWithImageRequest struct {
// cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or
// GIF
// format.
+ //
+ // The provided URL can be at maximum 2K bytes large.
ImageUrl string `json:"imageUrl,omitempty"`
// PageObjectIds: If non-empty, limits the matches to page elements only
@@ -5222,6 +5272,8 @@ type StretchedPictureFill struct {
// cannot exceed 25 megapixels, and must be in either in PNG, JPEG, or
// GIF
// format.
+ //
+ // The provided URL can be at maximum 2K bytes large.
ContentUrl string `json:"contentUrl,omitempty"`
// Size: The original size of the picture fill. This field is read-only.
@@ -6144,6 +6196,12 @@ func (s *UpdateLinePropertiesRequest) MarshalJSON() ([]byte, error) {
// UpdatePageElementTransformRequest: Updates the transform of a page
// element.
+//
+// Updating the transform of a group will change the absolute transform
+// of the
+// page elements in that group, which can change their visual
+// appearance. See
+// the documentation for PageElement.transform for more details.
type UpdatePageElementTransformRequest struct {
// ApplyMode: The apply mode of the transform update.
//
diff --git a/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json b/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json
index 6f3564e..7909528 100644
--- a/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json
+++ b/vendor/google.golang.org/api/sourcerepo/v1/sourcerepo-api.json
@@ -1,4 +1,24 @@
{
+ "canonicalName": "Cloud Source Repositories",
+ "auth": {
+ "oauth2": {
+ "scopes": {
+ "https://www.googleapis.com/auth/source.read_only": {
+ "description": "View the contents of your source code repositories"
+ },
+ "https://www.googleapis.com/auth/source.read_write": {
+ "description": "Manage the contents of your source code repositories"
+ },
+ "https://www.googleapis.com/auth/cloud-platform": {
+ "description": "View and manage your data across Google Cloud Platform services"
+ }
+ }
+ }
+ },
+ "rootUrl": "https://sourcerepo.googleapis.com/",
+ "ownerDomain": "google.com",
+ "name": "sourcerepo",
+ "batchPath": "batch",
"title": "Cloud Source Repositories API",
"ownerName": "Google",
"resources": {
@@ -6,45 +26,15 @@
"resources": {
"repos": {
"methods": {
- "getIamPolicy": {
- "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
- "httpMethod": "GET",
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/source.read_only",
- "https://www.googleapis.com/auth/source.read_write"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/repos/.+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/repos/{reposId}:getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy",
- "id": "sourcerepo.projects.repos.getIamPolicy"
- },
"get": {
- "flatPath": "v1/projects/{projectsId}/repos/{reposId}",
- "path": "v1/{+name}",
- "id": "sourcerepo.projects.repos.get",
"description": "Returns information about a repo.",
"httpMethod": "GET",
- "response": {
- "$ref": "Repo"
- },
"parameterOrder": [
"name"
],
+ "response": {
+ "$ref": "Repo"
+ },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/source.read_only",
@@ -58,13 +48,12 @@
"pattern": "^projects/[^/]+/repos/.+$",
"location": "path"
}
- }
+ },
+ "flatPath": "v1/projects/{projectsId}/repos/{reposId}",
+ "path": "v1/{+name}",
+ "id": "sourcerepo.projects.repos.get"
},
"testIamPermissions": {
- "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
"response": {
"$ref": "TestIamPermissionsResponse"
},
@@ -72,25 +61,33 @@
"resource"
],
"httpMethod": "POST",
- "parameters": {
- "resource": {
- "location": "path",
- "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/repos/.+$"
- }
- },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/source.read_only",
"https://www.googleapis.com/auth/source.read_write"
],
+ "parameters": {
+ "resource": {
+ "pattern": "^projects/[^/]+/repos/.+$",
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true
+ }
+ },
"flatPath": "v1/projects/{projectsId}/repos/{reposId}:testIamPermissions",
"id": "sourcerepo.projects.repos.testIamPermissions",
- "path": "v1/{+resource}:testIamPermissions"
+ "path": "v1/{+resource}:testIamPermissions",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error."
},
"delete": {
+ "flatPath": "v1/projects/{projectsId}/repos/{reposId}",
+ "id": "sourcerepo.projects.repos.delete",
+ "path": "v1/{+name}",
+ "description": "Deletes a repo.",
"response": {
"$ref": "Empty"
},
@@ -98,29 +95,22 @@
"name"
],
"httpMethod": "DELETE",
- "parameters": {
- "name": {
- "description": "The name of the repo to delete. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/repos/.+$",
- "location": "path"
- }
- },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/source.read_only",
"https://www.googleapis.com/auth/source.read_write"
],
- "flatPath": "v1/projects/{projectsId}/repos/{reposId}",
- "id": "sourcerepo.projects.repos.delete",
- "path": "v1/{+name}",
- "description": "Deletes a repo."
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the repo to delete. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/repos/.+$"
+ }
+ }
},
"list": {
- "flatPath": "v1/projects/{projectsId}/repos",
- "id": "sourcerepo.projects.repos.list",
- "path": "v1/{+name}/repos",
"description": "Returns all repos belonging to a project. The sizes of the repos are\nnot set by ListRepos. To get the size of a repo, use GetRepo.",
"response": {
"$ref": "ListReposResponse"
@@ -129,6 +119,11 @@
"name"
],
"httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/source.read_only",
+ "https://www.googleapis.com/auth/source.read_write"
+ ],
"parameters": {
"pageToken": {
"location": "query",
@@ -143,53 +138,17 @@
"pattern": "^projects/[^/]+$"
},
"pageSize": {
+ "location": "query",
"format": "int32",
"description": "Maximum number of repositories to return; between 1 and 500.\nIf not set or zero, defaults to 100 at the server.",
- "type": "integer",
- "location": "query"
+ "type": "integer"
}
},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/source.read_only",
- "https://www.googleapis.com/auth/source.read_write"
- ]
- },
- "create": {
"flatPath": "v1/projects/{projectsId}/repos",
- "id": "sourcerepo.projects.repos.create",
- "path": "v1/{+parent}/repos",
- "description": "Creates a repo in the given project with the given name.\n\nIf the named repository already exists, `CreateRepo` returns\n`ALREADY_EXISTS`.",
- "request": {
- "$ref": "Repo"
- },
- "response": {
- "$ref": "Repo"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "POST",
- "parameters": {
- "parent": {
- "description": "The project in which to create the repo. Values are of the form\n`projects/\u003cproject\u003e`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/source.read_only",
- "https://www.googleapis.com/auth/source.read_write"
- ]
+ "id": "sourcerepo.projects.repos.list",
+ "path": "v1/{+name}/repos"
},
"setIamPolicy": {
- "request": {
- "$ref": "SetIamPolicyRequest"
- },
- "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
"httpMethod": "POST",
"parameterOrder": [
"resource"
@@ -204,16 +163,77 @@
],
"parameters": {
"resource": {
+ "pattern": "^projects/[^/]+/repos/.+$",
+ "location": "path",
"description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
"type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/repos/.+$",
- "location": "path"
+ "required": true
}
},
"flatPath": "v1/projects/{projectsId}/repos/{reposId}:setIamPolicy",
"path": "v1/{+resource}:setIamPolicy",
- "id": "sourcerepo.projects.repos.setIamPolicy"
+ "id": "sourcerepo.projects.repos.setIamPolicy",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy."
+ },
+ "create": {
+ "response": {
+ "$ref": "Repo"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/source.read_only",
+ "https://www.googleapis.com/auth/source.read_write"
+ ],
+ "parameters": {
+ "parent": {
+ "pattern": "^projects/[^/]+$",
+ "location": "path",
+ "description": "The project in which to create the repo. Values are of the form\n`projects/\u003cproject\u003e`.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/repos",
+ "id": "sourcerepo.projects.repos.create",
+ "path": "v1/{+parent}/repos",
+ "request": {
+ "$ref": "Repo"
+ },
+ "description": "Creates a repo in the given project with the given name.\n\nIf the named repository already exists, `CreateRepo` returns\n`ALREADY_EXISTS`."
+ },
+ "getIamPolicy": {
+ "flatPath": "v1/projects/{projectsId}/repos/{reposId}:getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy",
+ "id": "sourcerepo.projects.repos.getIamPolicy",
+ "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/repos/.+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/source.read_only",
+ "https://www.googleapis.com/auth/source.read_write"
+ ]
}
}
}
@@ -221,41 +241,31 @@
}
},
"parameters": {
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
"quotaUser": {
- "location": "query",
"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.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"pp": {
- "description": "Pretty-print response.",
"default": "true",
"type": "boolean",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
+ "location": "query",
+ "description": "Pretty-print response."
},
"oauth_token": {
+ "location": "query",
"description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
+ "type": "string"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
},
"upload_protocol": {
- "location": "query",
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"prettyPrint": {
"location": "query",
@@ -269,9 +279,14 @@
"location": "query"
},
"fields": {
+ "location": "query",
"description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
+ "type": "string"
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
+ "type": "string"
},
"$.xgafv": {
"description": "V1 error format.",
@@ -286,11 +301,6 @@
"2"
]
},
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
"alt": {
"description": "Data format for response.",
"default": "json",
@@ -306,238 +316,71 @@
"Responses with Content-Type of application/x-protobuf"
],
"location": "query"
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "access_token": {
+ "type": "string",
+ "location": "query",
+ "description": "OAuth access token."
}
},
"version": "v1",
"baseUrl": "https://sourcerepo.googleapis.com/",
"servicePath": "",
- "description": "Access source code repositories hosted by Google.",
"kind": "discovery#restDescription",
+ "description": "Access source code repositories hosted by Google.",
"basePath": "",
- "id": "sourcerepo:v1",
- "documentationLink": "https://cloud.google.com/source-repositories/docs/apis",
"revision": "20170528",
+ "documentationLink": "https://cloud.google.com/source-repositories/docs/apis",
+ "id": "sourcerepo:v1",
"discoveryVersion": "v1",
"version_module": "True",
"schemas": {
- "MirrorConfig": {
- "description": "Configuration to automatically mirror a repository from another\nhosting service, for example GitHub or BitBucket.",
- "type": "object",
- "properties": {
- "deployKeyId": {
- "description": "ID of the SSH deploy key at the other hosting service.\nRemoving this key from the other service would deauthorize\nGoogle Cloud Source Repositories from mirroring.",
- "type": "string"
- },
- "url": {
- "description": "URL of the main repository at the other hosting service.",
- "type": "string"
- },
- "webhookId": {
- "description": "ID of the webhook listening to updates to trigger mirroring.\nRemoving this webook from the other hosting service will stop\nGoogle Cloud Source Repositories from receiving notifications,\nand thereby disabling mirroring.",
- "type": "string"
- }
- },
- "id": "MirrorConfig"
- },
- "Empty": {
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object",
- "properties": {},
- "id": "Empty"
- },
- "Repo": {
- "description": "A repository (or repo) is a Git repository storing versioned source content.",
- "type": "object",
- "properties": {
- "mirrorConfig": {
- "description": "How this repository mirrors a repository managed by another service.",
- "$ref": "MirrorConfig"
- },
- "url": {
- "description": "URL to clone the repository from Google Cloud Source Repositories.",
- "type": "string"
- },
- "size": {
- "format": "int64",
- "description": "The disk usage of the repo, in bytes.\nOnly returned by GetRepo.",
- "type": "string"
- },
- "name": {
- "description": "Resource name of the repository, of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`. The repo name may contain slashes.\neg, `projects/myproject/repos/name/with/slash`",
- "type": "string"
- }
- },
- "id": "Repo"
- },
- "TestIamPermissionsResponse": {
- "description": "Response message for `TestIamPermissions` method.",
- "type": "object",
- "properties": {
- "permissions": {
- "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "TestIamPermissionsResponse"
- },
- "ListReposResponse": {
- "description": "Response for ListRepos. The size is not set in the returned repositories.",
- "type": "object",
- "properties": {
- "repos": {
- "description": "The listed repos.",
- "items": {
- "$ref": "Repo"
- },
- "type": "array"
- },
- "nextPageToken": {
- "description": "If non-empty, additional repositories exist within the project. These\ncan be retrieved by including this value in the next ListReposRequest's\npage_token field.",
- "type": "string"
- }
- },
- "id": "ListReposResponse"
- },
- "Condition": {
- "description": "A condition to be met.",
- "type": "object",
- "properties": {
- "values": {
- "description": "The objects of the condition. This is mutually exclusive with 'value'.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "iam": {
- "enumDescriptions": [
- "Default non-attribute.",
- "Either principal or (if present) authority selector.",
- "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.",
- "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).\nSee: go/rpc-security-policy-dynamicauth.",
- "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported."
- ],
- "enum": [
- "NO_ATTR",
- "AUTHORITY",
- "ATTRIBUTION",
- "APPROVER",
- "JUSTIFICATION_TYPE"
- ],
- "description": "Trusted attributes supplied by the IAM system.",
- "type": "string"
- },
- "op": {
- "description": "An operator to apply the subject with.",
- "type": "string",
- "enumDescriptions": [
- "Default no-op.",
- "DEPRECATED. Use IN instead.",
- "DEPRECATED. Use NOT_IN instead.",
- "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.",
- "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.",
- "Subject is discharged"
- ],
- "enum": [
- "NO_OP",
- "EQUALS",
- "NOT_EQUALS",
- "IN",
- "NOT_IN",
- "DISCHARGED"
- ]
- },
- "svc": {
- "description": "Trusted attributes discharged by the service.",
- "type": "string"
- },
- "value": {
- "description": "DEPRECATED. Use 'values' instead.",
- "type": "string"
- },
- "sys": {
- "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.",
- "type": "string",
- "enumDescriptions": [
- "Default non-attribute type",
- "Region of the resource",
- "Service name",
- "Resource name",
- "IP address of the caller"
- ],
- "enum": [
- "NO_ATTR",
- "REGION",
- "SERVICE",
- "NAME",
- "IP"
- ]
- }
- },
- "id": "Condition"
- },
- "CounterOptions": {
- "description": "Options for counters",
- "type": "object",
- "properties": {
- "field": {
- "description": "The field value to attribute.",
- "type": "string"
- },
- "metric": {
- "description": "The metric to update.",
- "type": "string"
- }
- },
- "id": "CounterOptions"
- },
- "AuditLogConfig": {
- "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.",
- "type": "object",
- "properties": {
- "exemptedMembers": {
- "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "logType": {
- "enumDescriptions": [
- "Default case. Should never be this.",
- "Admin reads. Example: CloudIAM getIamPolicy",
- "Data writes. Example: CloudSQL Users create",
- "Data reads. Example: CloudSQL Users list"
- ],
- "enum": [
- "LOG_TYPE_UNSPECIFIED",
- "ADMIN_READ",
- "DATA_WRITE",
- "DATA_READ"
- ],
- "description": "The log type that this config enables.",
- "type": "string"
- }
- },
- "id": "AuditLogConfig"
- },
"Rule": {
"description": "A rule to be applied in a Policy.",
"type": "object",
"properties": {
+ "action": {
+ "enum": [
+ "NO_ACTION",
+ "ALLOW",
+ "ALLOW_WITH_LOG",
+ "DENY",
+ "DENY_WITH_LOG",
+ "LOG"
+ ],
+ "description": "Required",
+ "type": "string",
+ "enumDescriptions": [
+ "Default no action.",
+ "Matching 'Entries' grant access.",
+ "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.",
+ "Matching 'Entries' deny access.",
+ "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.",
+ "Matching 'Entries' tell IAM.Check callers to generate logs."
+ ]
+ },
+ "notIn": {
+ "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
"description": {
"description": "Human-readable description of the rule.",
"type": "string"
},
"conditions": {
- "description": "Additional restrictions that must be met",
"items": {
"$ref": "Condition"
},
- "type": "array"
+ "type": "array",
+ "description": "Additional restrictions that must be met"
},
"logConfig": {
"description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.",
@@ -559,55 +402,28 @@
"type": "string"
},
"type": "array"
- },
- "action": {
- "enumDescriptions": [
- "Default no action.",
- "Matching 'Entries' grant access.",
- "Matching 'Entries' grant access and the caller promises to log\nthe request per the returned log_configs.",
- "Matching 'Entries' deny access.",
- "Matching 'Entries' deny access and the caller promises to log\nthe request per the returned log_configs.",
- "Matching 'Entries' tell IAM.Check callers to generate logs."
- ],
- "enum": [
- "NO_ACTION",
- "ALLOW",
- "ALLOW_WITH_LOG",
- "DENY",
- "DENY_WITH_LOG",
- "LOG"
- ],
- "description": "Required",
- "type": "string"
- },
- "notIn": {
- "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).",
- "items": {
- "type": "string"
- },
- "type": "array"
}
},
"id": "Rule"
},
"LogConfig": {
- "description": "Specifies what kind of log the caller must write",
- "type": "object",
"properties": {
"dataAccess": {
- "$ref": "DataAccessOptions",
- "description": "Data access options."
+ "description": "Data access options.",
+ "$ref": "DataAccessOptions"
},
"cloudAudit": {
- "$ref": "CloudAuditOptions",
- "description": "Cloud audit options."
+ "description": "Cloud audit options.",
+ "$ref": "CloudAuditOptions"
},
"counter": {
- "$ref": "CounterOptions",
- "description": "Counter options."
+ "description": "Counter options.",
+ "$ref": "CounterOptions"
}
},
- "id": "LogConfig"
+ "id": "LogConfig",
+ "description": "Specifies what kind of log the caller must write",
+ "type": "object"
},
"TestIamPermissionsRequest": {
"description": "Request message for `TestIamPermissions` method.",
@@ -627,16 +443,6 @@
"description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
"type": "object",
"properties": {
- "iamOwned": {
- "type": "boolean"
- },
- "rules": {
- "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.",
- "items": {
- "$ref": "Rule"
- },
- "type": "array"
- },
"version": {
"format": "int32",
"description": "Version of the `Policy`. The default version is 0.",
@@ -657,18 +463,28 @@
"type": "array"
},
"etag": {
+ "type": "string",
"format": "byte",
- "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
- "type": "string"
+ "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly."
+ },
+ "iamOwned": {
+ "type": "boolean"
+ },
+ "rules": {
+ "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.",
+ "items": {
+ "$ref": "Rule"
+ },
+ "type": "array"
}
},
"id": "Policy"
},
"DataAccessOptions": {
+ "id": "DataAccessOptions",
"description": "Write a Data Access (Gin) log",
"type": "object",
- "properties": {},
- "id": "DataAccessOptions"
+ "properties": {}
},
"AuditConfig": {
"description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.",
@@ -698,14 +514,14 @@
"description": "Request message for `SetIamPolicy` method.",
"type": "object",
"properties": {
+ "policy": {
+ "$ref": "Policy",
+ "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
+ },
"updateMask": {
"format": "google-fieldmask",
"description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.",
"type": "string"
- },
- "policy": {
- "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.",
- "$ref": "Policy"
}
},
"id": "SetIamPolicyRequest"
@@ -732,8 +548,6 @@
"id": "CloudAuditOptions"
},
"Binding": {
- "description": "Associates `members` with a `role`.",
- "type": "object",
"properties": {
"members": {
"description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
@@ -747,32 +561,218 @@
"type": "string"
}
},
- "id": "Binding"
+ "id": "Binding",
+ "description": "Associates `members` with a `role`.",
+ "type": "object"
+ },
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
+ },
+ "MirrorConfig": {
+ "description": "Configuration to automatically mirror a repository from another\nhosting service, for example GitHub or BitBucket.",
+ "type": "object",
+ "properties": {
+ "url": {
+ "description": "URL of the main repository at the other hosting service.",
+ "type": "string"
+ },
+ "webhookId": {
+ "description": "ID of the webhook listening to updates to trigger mirroring.\nRemoving this webook from the other hosting service will stop\nGoogle Cloud Source Repositories from receiving notifications,\nand thereby disabling mirroring.",
+ "type": "string"
+ },
+ "deployKeyId": {
+ "description": "ID of the SSH deploy key at the other hosting service.\nRemoving this key from the other service would deauthorize\nGoogle Cloud Source Repositories from mirroring.",
+ "type": "string"
+ }
+ },
+ "id": "MirrorConfig"
+ },
+ "Repo": {
+ "type": "object",
+ "properties": {
+ "size": {
+ "format": "int64",
+ "description": "The disk usage of the repo, in bytes.\nOnly returned by GetRepo.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Resource name of the repository, of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`. The repo name may contain slashes.\neg, `projects/myproject/repos/name/with/slash`",
+ "type": "string"
+ },
+ "mirrorConfig": {
+ "$ref": "MirrorConfig",
+ "description": "How this repository mirrors a repository managed by another service."
+ },
+ "url": {
+ "description": "URL to clone the repository from Google Cloud Source Repositories.",
+ "type": "string"
+ }
+ },
+ "id": "Repo",
+ "description": "A repository (or repo) is a Git repository storing versioned source content."
+ },
+ "ListReposResponse": {
+ "description": "Response for ListRepos. The size is not set in the returned repositories.",
+ "type": "object",
+ "properties": {
+ "repos": {
+ "description": "The listed repos.",
+ "items": {
+ "$ref": "Repo"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "If non-empty, additional repositories exist within the project. These\ncan be retrieved by including this value in the next ListReposRequest's\npage_token field.",
+ "type": "string"
+ }
+ },
+ "id": "ListReposResponse"
+ },
+ "TestIamPermissionsResponse": {
+ "description": "Response message for `TestIamPermissions` method.",
+ "type": "object",
+ "properties": {
+ "permissions": {
+ "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "TestIamPermissionsResponse"
+ },
+ "Condition": {
+ "description": "A condition to be met.",
+ "type": "object",
+ "properties": {
+ "op": {
+ "enumDescriptions": [
+ "Default no-op.",
+ "DEPRECATED. Use IN instead.",
+ "DEPRECATED. Use NOT_IN instead.",
+ "The condition is true if the subject (or any element of it if it is\na set) matches any of the supplied values.",
+ "The condition is true if the subject (or every element of it if it is\na set) matches none of the supplied values.",
+ "Subject is discharged"
+ ],
+ "enum": [
+ "NO_OP",
+ "EQUALS",
+ "NOT_EQUALS",
+ "IN",
+ "NOT_IN",
+ "DISCHARGED"
+ ],
+ "description": "An operator to apply the subject with.",
+ "type": "string"
+ },
+ "svc": {
+ "description": "Trusted attributes discharged by the service.",
+ "type": "string"
+ },
+ "value": {
+ "description": "DEPRECATED. Use 'values' instead.",
+ "type": "string"
+ },
+ "sys": {
+ "enumDescriptions": [
+ "Default non-attribute type",
+ "Region of the resource",
+ "Service name",
+ "Resource name",
+ "IP address of the caller"
+ ],
+ "enum": [
+ "NO_ATTR",
+ "REGION",
+ "SERVICE",
+ "NAME",
+ "IP"
+ ],
+ "description": "Trusted attributes supplied by any service that owns resources and uses\nthe IAM system for access control.",
+ "type": "string"
+ },
+ "values": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "description": "The objects of the condition. This is mutually exclusive with 'value'."
+ },
+ "iam": {
+ "type": "string",
+ "enumDescriptions": [
+ "Default non-attribute.",
+ "Either principal or (if present) authority selector.",
+ "The principal (even if an authority selector is present), which\nmust only be used for attribution, not authorization.",
+ "An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).\nSee: go/rpc-security-policy-dynamicauth.",
+ "What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported."
+ ],
+ "enum": [
+ "NO_ATTR",
+ "AUTHORITY",
+ "ATTRIBUTION",
+ "APPROVER",
+ "JUSTIFICATION_TYPE"
+ ],
+ "description": "Trusted attributes supplied by the IAM system."
+ }
+ },
+ "id": "Condition"
+ },
+ "CounterOptions": {
+ "description": "Options for counters",
+ "type": "object",
+ "properties": {
+ "field": {
+ "description": "The field value to attribute.",
+ "type": "string"
+ },
+ "metric": {
+ "description": "The metric to update.",
+ "type": "string"
+ }
+ },
+ "id": "CounterOptions"
+ },
+ "AuditLogConfig": {
+ "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n {\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n }\n ]\n }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\nfoo@gmail.com from DATA_READ logging.",
+ "type": "object",
+ "properties": {
+ "logType": {
+ "description": "The log type that this config enables.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default case. Should never be this.",
+ "Admin reads. Example: CloudIAM getIamPolicy",
+ "Data writes. Example: CloudSQL Users create",
+ "Data reads. Example: CloudSQL Users list"
+ ],
+ "enum": [
+ "LOG_TYPE_UNSPECIFIED",
+ "ADMIN_READ",
+ "DATA_WRITE",
+ "DATA_READ"
+ ]
+ },
+ "exemptedMembers": {
+ "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "AuditLogConfig"
}
},
+ "protocol": "rest",
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
- },
- "protocol": "rest",
- "canonicalName": "Cloud Source Repositories",
- "auth": {
- "oauth2": {
- "scopes": {
- "https://www.googleapis.com/auth/source.read_write": {
- "description": "Manage the contents of your source code repositories"
- },
- "https://www.googleapis.com/auth/cloud-platform": {
- "description": "View and manage your data across Google Cloud Platform services"
- },
- "https://www.googleapis.com/auth/source.read_only": {
- "description": "View the contents of your source code repositories"
- }
- }
- }
- },
- "rootUrl": "https://sourcerepo.googleapis.com/",
- "ownerDomain": "google.com",
- "name": "sourcerepo",
- "batchPath": "batch"
+ }
}
diff --git a/vendor/google.golang.org/api/spanner/v1/spanner-api.json b/vendor/google.golang.org/api/spanner/v1/spanner-api.json
index 8951218..5d5dfaf 100644
--- a/vendor/google.golang.org/api/spanner/v1/spanner-api.json
+++ b/vendor/google.golang.org/api/spanner/v1/spanner-api.json
@@ -1,569 +1,1229 @@
{
- "schemas": {
- "UpdateInstanceMetadata": {
- "description": "Metadata type for the operation returned by\nUpdateInstance.",
- "type": "object",
- "properties": {
- "endTime": {
- "type": "string",
- "format": "google-datetime",
- "description": "The time at which this operation failed or was completed successfully."
- },
- "cancelTime": {
- "format": "google-datetime",
- "description": "The time at which this operation was cancelled. If set, this operation is\nin the process of undoing itself (which is guaranteed to succeed) and\ncannot be cancelled again.",
- "type": "string"
- },
- "startTime": {
- "format": "google-datetime",
- "description": "The time at which UpdateInstance\nrequest was received.",
- "type": "string"
- },
- "instance": {
- "$ref": "Instance",
- "description": "The desired end state of the update."
- }
- },
- "id": "UpdateInstanceMetadata"
- },
- "ListOperationsResponse": {
- "type": "object",
- "properties": {
- "operations": {
- "description": "A list of operations that matches the specified filter in the request.",
- "items": {
- "$ref": "Operation"
- },
- "type": "array"
- },
- "nextPageToken": {
- "description": "The standard List next-page token.",
- "type": "string"
- }
- },
- "id": "ListOperationsResponse",
- "description": "The response message for Operations.ListOperations."
- },
- "ResultSetMetadata": {
- "type": "object",
- "properties": {
- "rowType": {
- "$ref": "StructType",
- "description": "Indicates the field names and types for the rows in the result\nset. For example, a SQL query like `\"SELECT UserId, UserName FROM\nUsers\"` could return a `row_type` value like:\n\n \"fields\": [\n { \"name\": \"UserId\", \"type\": { \"code\": \"INT64\" } },\n { \"name\": \"UserName\", \"type\": { \"code\": \"STRING\" } },\n ]"
- },
- "transaction": {
- "description": "If the read or SQL query began a transaction as a side-effect, the\ninformation about the new transaction is yielded here.",
- "$ref": "Transaction"
- }
- },
- "id": "ResultSetMetadata",
- "description": "Metadata about a ResultSet or PartialResultSet."
- },
- "TransactionSelector": {
- "description": "This message is used to select the transaction in which a\nRead or\nExecuteSql call runs.\n\nSee TransactionOptions for more information about transactions.",
- "type": "object",
- "properties": {
- "begin": {
- "description": "Begin a new transaction and execute this read or SQL query in\nit. The transaction ID of the new transaction is returned in\nResultSetMetadata.transaction, which is a Transaction.",
- "$ref": "TransactionOptions"
- },
- "id": {
- "type": "string",
- "format": "byte",
- "description": "Execute the read or SQL query in a previously-started transaction."
- },
- "singleUse": {
- "$ref": "TransactionOptions",
- "description": "Execute the read or SQL query in a temporary transaction.\nThis is the most efficient way to execute a transaction that\nconsists of a single SQL query."
- }
- },
- "id": "TransactionSelector"
- },
- "Mutation": {
- "description": "A modification to one or more Cloud Spanner rows. Mutations can be\napplied to a Cloud Spanner database by sending them in a\nCommit call.",
- "type": "object",
- "properties": {
- "delete": {
- "description": "Delete rows from a table. Succeeds whether or not the named\nrows were present.",
- "$ref": "Delete"
- },
- "insertOrUpdate": {
- "$ref": "Write",
- "description": "Like insert, except that if the row already exists, then\nits column values are overwritten with the ones provided. Any\ncolumn values not explicitly written are preserved."
- },
- "insert": {
- "description": "Insert new rows in a table. If any of the rows already exist,\nthe write or transaction fails with error `ALREADY_EXISTS`.",
- "$ref": "Write"
- },
- "update": {
- "$ref": "Write",
- "description": "Update existing rows in a table. If any of the rows does not\nalready exist, the transaction fails with error `NOT_FOUND`."
- },
- "replace": {
- "$ref": "Write",
- "description": "Like insert, except that if the row already exists, it is\ndeleted, and the column values provided are inserted\ninstead. Unlike insert_or_update, this means any values not\nexplicitly written become `NULL`."
- }
- },
- "id": "Mutation"
- },
- "KeySet": {
- "description": "`KeySet` defines a collection of Cloud Spanner keys and/or key ranges. All\nthe keys are expected to be in the same table or index. The keys need\nnot be sorted in any particular way.\n\nIf the same key is specified multiple times in the set (for example\nif two ranges, two keys, or a key and a range overlap), Cloud Spanner\nbehaves as if the key were only specified once.",
- "type": "object",
- "properties": {
- "all": {
- "description": "For convenience `all` can be set to `true` to indicate that this\n`KeySet` matches all keys in the table or index. Note that any keys\nspecified in `keys` or `ranges` are only yielded once.",
- "type": "boolean"
- },
- "keys": {
- "description": "A list of specific keys. Entries in `keys` should have exactly as\nmany elements as there are columns in the primary or index key\nwith which this `KeySet` is used. Individual key values are\nencoded as described here.",
- "items": {
- "items": {
- "type": "any"
+ "resources": {
+ "projects": {
+ "resources": {
+ "instanceConfigs": {
+ "methods": {
+ "get": {
+ "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}",
+ "id": "spanner.projects.instanceConfigs.get",
+ "path": "v1/{+name}",
+ "description": "Gets information about a particular instance configuration.",
+ "response": {
+ "$ref": "InstanceConfig"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "name": {
+ "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$",
+ "location": "path"
+ }
+ }
},
- "type": "array"
- },
- "type": "array"
- },
- "ranges": {
- "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications.",
- "items": {
- "$ref": "KeyRange"
- },
- "type": "array"
- }
- },
- "id": "KeySet"
- },
- "GetDatabaseDdlResponse": {
- "properties": {
- "statements": {
- "description": "A list of formatted DDL statements defining the schema of the database\nspecified in the request.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "GetDatabaseDdlResponse",
- "description": "The response for GetDatabaseDdl.",
- "type": "object"
- },
- "Database": {
- "description": "A Cloud Spanner database.",
- "type": "object",
- "properties": {
- "state": {
- "enum": [
- "STATE_UNSPECIFIED",
- "CREATING",
- "READY"
- ],
- "description": "Output only. The current database state.",
- "type": "string",
- "enumDescriptions": [
- "Not specified.",
- "The database is still being created. Operations on the database may fail\nwith `FAILED_PRECONDITION` in this state.",
- "The database is fully created and ready for use."
- ]
- },
- "name": {
- "description": "Required. The name of the database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`,\nwhere `\u003cdatabase\u003e` is as specified in the `CREATE DATABASE`\nstatement. This name can be passed to other API methods to\nidentify the database.",
- "type": "string"
- }
- },
- "id": "Database"
- },
- "Instance": {
- "id": "Instance",
- "description": "An isolated set of Cloud Spanner resources on which databases can be hosted.",
- "type": "object",
- "properties": {
- "displayName": {
- "description": "Required. The descriptive name for this instance as it appears in UIs.\nMust be unique per project and between 4 and 30 characters in length.",
- "type": "string"
- },
- "nodeCount": {
- "format": "int32",
- "description": "Required. The number of nodes allocated to this instance. This may be zero\nin API responses for instances that are not yet in state `READY`.",
- "type": "integer"
- },
- "labels": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "Cloud Labels are a flexible and lightweight mechanism for organizing cloud\nresources into groups that reflect a customer's organizational needs and\ndeployment strategies. Cloud Labels can be used to filter collections of\nresources. They can be used to control how resource metrics are aggregated.\nAnd they can be used as arguments to policy management rules (e.g. route,\nfirewall, load balancing, etc.).\n\n * Label keys must be between 1 and 63 characters long and must conform to\n the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.\n * Label values must be between 0 and 63 characters long and must conform\n to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.\n * No more than 64 labels can be associated with a given resource.\n\nSee https://goo.gl/xmQnxf for more information on and examples of labels.\n\nIf you plan to use labels in your own code, please note that additional\ncharacters may be allowed in the future. And so you are advised to use an\ninternal label representation, such as JSON, which doesn't rely upon\nspecific characters being disallowed. For example, representing labels\nas the string: name + \"_\" + value would prove problematic if we were to\nallow \"_\" in a future release."
- },
- "config": {
- "description": "Required. The name of the instance's configuration. Values are of the form\n`projects/\u003cproject\u003e/instanceConfigs/\u003cconfiguration\u003e`. See\nalso InstanceConfig and\nListInstanceConfigs.",
- "type": "string"
- },
- "state": {
- "type": "string",
- "enumDescriptions": [
- "Not specified.",
- "The instance is still being created. Resources may not be\navailable yet, and operations such as database creation may not\nwork.",
- "The instance is fully created and ready to do work such as\ncreating databases."
- ],
- "enum": [
- "STATE_UNSPECIFIED",
- "CREATING",
- "READY"
- ],
- "description": "Output only. The current instance state. For\nCreateInstance, the state must be\neither omitted or set to `CREATING`. For\nUpdateInstance, the state must be\neither omitted or set to `READY`."
- },
- "name": {
- "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.",
- "type": "string"
- }
- }
- },
- "ListDatabasesResponse": {
- "type": "object",
- "properties": {
- "nextPageToken": {
- "description": "`next_page_token` can be sent in a subsequent\nListDatabases call to fetch more\nof the matching databases.",
- "type": "string"
- },
- "databases": {
- "description": "Databases that matched the request.",
- "items": {
- "$ref": "Database"
- },
- "type": "array"
- }
- },
- "id": "ListDatabasesResponse",
- "description": "The response for ListDatabases."
- },
- "SetIamPolicyRequest": {
- "description": "Request message for `SetIamPolicy` method.",
- "type": "object",
- "properties": {
- "updateMask": {
- "format": "google-fieldmask",
- "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.",
- "type": "string"
- },
- "policy": {
- "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them.",
- "$ref": "Policy"
- }
- },
- "id": "SetIamPolicyRequest"
- },
- "RollbackRequest": {
- "description": "The request for Rollback.",
- "type": "object",
- "properties": {
- "transactionId": {
- "format": "byte",
- "description": "Required. The transaction to roll back.",
- "type": "string"
- }
- },
- "id": "RollbackRequest"
- },
- "Transaction": {
- "properties": {
- "id": {
- "format": "byte",
- "description": "`id` may be used to identify the transaction in subsequent\nRead,\nExecuteSql,\nCommit, or\nRollback calls.\n\nSingle-use read-only transactions do not have IDs, because\nsingle-use transactions do not support multiple requests.",
- "type": "string"
- },
- "readTimestamp": {
- "format": "google-datetime",
- "description": "For snapshot read-only transactions, the read timestamp chosen\nfor the transaction. Not returned by default: see\nTransactionOptions.ReadOnly.return_read_timestamp.",
- "type": "string"
- }
- },
- "id": "Transaction",
- "description": "A transaction.",
- "type": "object"
- },
- "UpdateDatabaseDdlMetadata": {
- "id": "UpdateDatabaseDdlMetadata",
- "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.",
- "type": "object",
- "properties": {
- "database": {
- "description": "The database being modified.",
- "type": "string"
- },
- "statements": {
- "description": "For an update this list contains all the statements. For an\nindividual statement, this list contains only that statement.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "commitTimestamps": {
- "items": {
- "format": "google-datetime",
- "type": "string"
- },
- "type": "array",
- "description": "Reports the commit timestamps of all statements that have\nsucceeded so far, where `commit_timestamps[i]` is the commit\ntimestamp for the statement `statements[i]`."
- }
- }
- },
- "CounterOptions": {
- "id": "CounterOptions",
- "description": "Options for counters",
- "type": "object",
- "properties": {
- "field": {
- "description": "The field value to attribute.",
- "type": "string"
- },
- "metric": {
- "description": "The metric to update.",
- "type": "string"
- }
- }
- },
- "QueryPlan": {
- "description": "Contains an ordered list of nodes appearing in the query plan.",
- "type": "object",
- "properties": {
- "planNodes": {
- "description": "The nodes in the query plan. Plan nodes are returned in pre-order starting\nwith the plan root. Each PlanNode's `id` corresponds to its index in\n`plan_nodes`.",
- "items": {
- "$ref": "PlanNode"
- },
- "type": "array"
- }
- },
- "id": "QueryPlan"
- },
- "StructType": {
- "properties": {
- "fields": {
- "description": "The list of fields that make up this struct. Order is\nsignificant, because values of this struct type are represented as\nlists, where the order of field values matches the order of\nfields in the StructType. In turn, the order of fields\nmatches the order of columns in a read request, or the order of\nfields in the `SELECT` clause of a query.",
- "items": {
- "$ref": "Field"
- },
- "type": "array"
- }
- },
- "id": "StructType",
- "description": "`StructType` defines the fields of a STRUCT type.",
- "type": "object"
- },
- "Field": {
- "description": "Message representing a single field of a struct.",
- "type": "object",
- "properties": {
- "type": {
- "$ref": "Type",
- "description": "The type of the field."
- },
- "name": {
- "description": "The name of the field. For reads, this is the column name. For\nSQL queries, it is the column alias (e.g., `\"Word\"` in the\nquery `\"SELECT 'hello' AS Word\"`), or the column name (e.g.,\n`\"ColName\"` in the query `\"SELECT ColName FROM Table\"`). Some\ncolumns might have an empty name (e.g., !\"SELECT\nUPPER(ColName)\"`). Note that a query result can contain\nmultiple fields with the same name.",
- "type": "string"
- }
- },
- "id": "Field"
- },
- "ResultSetStats": {
- "description": "Additional statistics about a ResultSet or PartialResultSet.",
- "type": "object",
- "properties": {
- "queryPlan": {
- "$ref": "QueryPlan",
- "description": "QueryPlan for the query associated with this result."
- },
- "queryStats": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object.",
- "type": "any"
- },
- "description": "Aggregated statistics from the execution of the query. Only present when\nthe query is profiled. For example, a query could return the statistics as\nfollows:\n\n {\n \"rows_returned\": \"3\",\n \"elapsed_time\": \"1.22 secs\",\n \"cpu_time\": \"1.19 secs\"\n }"
- }
- },
- "id": "ResultSetStats"
- },
- "TestIamPermissionsRequest": {
- "description": "Request message for `TestIamPermissions` method.",
- "type": "object",
- "properties": {
- "permissions": {
- "description": "REQUIRED: The set of permissions to check for 'resource'.\nPermissions with wildcards (such as '*', 'spanner.*', 'spanner.instances.*') are not allowed.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "TestIamPermissionsRequest"
- },
- "CommitResponse": {
- "description": "The response for Commit.",
- "type": "object",
- "properties": {
- "commitTimestamp": {
- "type": "string",
- "format": "google-datetime",
- "description": "The Cloud Spanner timestamp at which the transaction committed."
- }
- },
- "id": "CommitResponse"
- },
- "Type": {
- "description": "`Type` indicates the type of a Cloud Spanner value, as might be stored in a\ntable cell or returned from an SQL query.",
- "type": "object",
- "properties": {
- "structType": {
- "$ref": "StructType",
- "description": "If code == STRUCT, then `struct_type`\nprovides type information for the struct's fields."
- },
- "arrayElementType": {
- "$ref": "Type",
- "description": "If code == ARRAY, then `array_element_type`\nis the type of the array elements."
- },
- "code": {
- "type": "string",
- "enumDescriptions": [
- "Not specified.",
- "Encoded as JSON `true` or `false`.",
- "Encoded as `string`, in decimal format.",
- "Encoded as `number`, or the strings `\"NaN\"`, `\"Infinity\"`, or\n`\"-Infinity\"`.",
- "Encoded as `string` in RFC 3339 timestamp format. The time zone\nmust be present, and must be `\"Z\"`.",
- "Encoded as `string` in RFC 3339 date format.",
- "Encoded as `string`.",
- "Encoded as a base64-encoded `string`, as described in RFC 4648,\nsection 4.",
- "Encoded as `list`, where the list elements are represented\naccording to array_element_type.",
- "Encoded as `list`, where list element `i` is represented according\nto [struct_type.fields[i]][google.spanner.v1.StructType.fields]."
- ],
- "enum": [
- "TYPE_CODE_UNSPECIFIED",
- "BOOL",
- "INT64",
- "FLOAT64",
- "TIMESTAMP",
- "DATE",
- "STRING",
- "BYTES",
- "ARRAY",
- "STRUCT"
- ],
- "description": "Required. The TypeCode for this type."
- }
- },
- "id": "Type"
- },
- "PlanNode": {
- "description": "Node information for nodes appearing in a QueryPlan.plan_nodes.",
- "type": "object",
- "properties": {
- "index": {
- "type": "integer",
- "format": "int32",
- "description": "The `PlanNode`'s index in node list."
- },
- "displayName": {
- "description": "The display name for the node.",
- "type": "string"
- },
- "kind": {
- "enum": [
- "KIND_UNSPECIFIED",
- "RELATIONAL",
- "SCALAR"
- ],
- "description": "Used to determine the type of node. May be needed for visualizing\ndifferent kinds of nodes differently. For example, If the node is a\nSCALAR node, it will have a condensed representation\nwhich can be used to directly embed a description of the node in its\nparent.",
- "type": "string",
- "enumDescriptions": [
- "Not specified.",
- "Denotes a Relational operator node in the expression tree. Relational\noperators represent iterative processing of rows during query execution.\nFor example, a `TableScan` operation that reads rows from a table.",
- "Denotes a Scalar node in the expression tree. Scalar nodes represent\nnon-iterable entities in the query plan. For example, constants or\narithmetic operators appearing inside predicate expressions or references\nto column names."
- ]
- },
- "childLinks": {
- "description": "List of child node `index`es and their relationship to this parent.",
- "items": {
- "$ref": "ChildLink"
- },
- "type": "array"
- },
- "metadata": {
- "additionalProperties": {
- "description": "Properties of the object.",
- "type": "any"
- },
- "description": "Attributes relevant to the node contained in a group of key-value pairs.\nFor example, a Parameter Reference node could have the following\ninformation in its metadata:\n\n {\n \"parameter_reference\": \"param1\",\n \"parameter_type\": \"array\"\n }",
- "type": "object"
- },
- "executionStats": {
- "description": "The execution statistics associated with the node, contained in a group of\nkey-value pairs. Only present if the plan was returned as a result of a\nprofile query. For example, number of executions, number of rows/time per\nexecution etc.",
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object.",
- "type": "any"
+ "list": {
+ "description": "Lists the supported instance configurations for a given project.",
+ "response": {
+ "$ref": "ListInstanceConfigsResponse"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Number of instance configurations to be returned in the response. If 0 or\nless, defaults to the server's maximum allowed page size.",
+ "type": "integer"
+ },
+ "parent": {
+ "description": "Required. The name of the project for which a list of supported instance\nconfigurations is requested. Values are of the form\n`projects/\u003cproject\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ },
+ "pageToken": {
+ "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instanceConfigs",
+ "id": "spanner.projects.instanceConfigs.list",
+ "path": "v1/{+parent}/instanceConfigs"
+ }
}
},
- "shortRepresentation": {
- "$ref": "ShortRepresentation",
- "description": "Condensed representation for SCALAR nodes."
- }
- },
- "id": "PlanNode"
- },
- "CreateInstanceMetadata": {
- "description": "Metadata type for the operation returned by\nCreateInstance.",
- "type": "object",
- "properties": {
- "endTime": {
- "format": "google-datetime",
- "description": "The time at which this operation failed or was completed successfully.",
- "type": "string"
- },
- "cancelTime": {
- "format": "google-datetime",
- "description": "The time at which this operation was cancelled. If set, this operation is\nin the process of undoing itself (which is guaranteed to succeed) and\ncannot be cancelled again.",
- "type": "string"
- },
- "startTime": {
- "format": "google-datetime",
- "description": "The time at which the\nCreateInstance request was\nreceived.",
- "type": "string"
- },
- "instance": {
- "description": "The instance being created.",
- "$ref": "Instance"
- }
- },
- "id": "CreateInstanceMetadata"
- },
- "AuditConfig": {
- "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.",
- "type": "object",
- "properties": {
- "auditLogConfigs": {
- "description": "The configuration for logging of each type of permission.\nNext ID: 4",
- "items": {
- "$ref": "AuditLogConfig"
+ "instances": {
+ "methods": {
+ "getIamPolicy": {
+ "description": "Gets the access control policy for an instance resource. Returns an empty\npolicy if an instance exists but does not have a policy set.\n\nAuthorization requires `spanner.instances.getIamPolicy` on\nresource.",
+ "request": {
+ "$ref": "GetIamPolicyRequest"
+ },
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:getIamPolicy",
+ "id": "spanner.projects.instances.getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy"
+ },
+ "get": {
+ "description": "Gets information about a particular instance.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Instance"
+ },
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}",
+ "path": "v1/{+name}",
+ "id": "spanner.projects.instances.get"
+ },
+ "patch": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}",
+ "path": "v1/{+name}",
+ "id": "spanner.projects.instances.patch",
+ "request": {
+ "$ref": "UpdateInstanceRequest"
+ },
+ "description": "Updates an instance, and begins allocating or releasing resources\nas requested. The returned long-running\noperation can be used to track the\nprogress of updating the instance. If the named instance does not\nexist, returns `NOT_FOUND`.\n\nImmediately upon completion of this request:\n\n * For resource types for which a decrease in the instance's allocation\n has been requested, billing is based on the newly-requested level.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation sets its metadata's\n cancel_time, and begins\n restoring resources to their pre-request values. The operation\n is guaranteed to succeed at undoing all resource changes,\n after which point it terminates with a `CANCELLED` status.\n * All other attempts to modify the instance are rejected.\n * Reading the instance via the API continues to give the pre-request\n resource levels.\n\nUpon completion of the returned operation:\n\n * Billing begins for all successfully-allocated resources (some types\n may have lower than the requested levels).\n * All newly-reserved resources are available for serving the instance's\n tables.\n * The instance's new resource levels are readable via the API.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track the instance modification. The\nmetadata field type is\nUpdateInstanceMetadata.\nThe response field type is\nInstance, if successful.\n\nAuthorization requires `spanner.instances.update` permission on\nresource name.",
+ "httpMethod": "PATCH",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Operation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$"
+ }
+ }
+ },
+ "testIamPermissions": {
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ },
+ "description": "Returns permissions that the caller has on the specified instance resource.\n\nAttempting this RPC on a non-existent Cloud Spanner instance resource will\nresult in a NOT_FOUND error if the user has `spanner.instances.list`\npermission on the containing Google Cloud Project. Otherwise returns an\nempty set of permissions.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:testIamPermissions",
+ "path": "v1/{+resource}:testIamPermissions",
+ "id": "spanner.projects.instances.testIamPermissions"
+ },
+ "delete": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}",
+ "id": "spanner.projects.instances.delete",
+ "path": "v1/{+name}",
+ "description": "Deletes an instance.\n\nImmediately upon completion of the request:\n\n * Billing ceases for all of the instance's reserved resources.\n\nSoon afterward:\n\n * The instance and *all of its databases* immediately and\n irrevocably disappear from the API. All data in the databases\n is permanently deleted.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "Required. The name of the instance to be deleted. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$"
+ }
+ }
+ },
+ "list": {
+ "flatPath": "v1/projects/{projectsId}/instances",
+ "id": "spanner.projects.instances.list",
+ "path": "v1/{+parent}/instances",
+ "description": "Lists all instances in the given project.",
+ "response": {
+ "$ref": "ListInstancesResponse"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "filter": {
+ "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * name\n * display_name\n * labels.key where key is the name of a label\n\nSome examples of using filters are:\n\n * name:* --\u003e The instance has a name.\n * name:Howl --\u003e The instance's name contains the string \"howl\".\n * name:HOWL --\u003e Equivalent to above.\n * NAME:howl --\u003e Equivalent to above.\n * labels.env:* --\u003e The instance has the label \"env\".\n * labels.env:dev --\u003e The instance has the label \"env\" and the value of\n the label contains the string \"dev\".\n * name:howl labels.env:dev --\u003e The instance's name contains \"howl\" and\n it has the label \"env\" with its value\n containing \"dev\".",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "Number of instances to be returned in the response. If 0 or less, defaults\nto the server's maximum allowed page size.",
+ "type": "integer",
+ "location": "query"
+ },
+ "parent": {
+ "description": "Required. The name of the project for which a list of instances is\nrequested. Values are of the form `projects/\u003cproject\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ]
+ },
+ "setIamPolicy": {
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "description": "Sets the access control policy on an instance resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.instances.setIamPolicy` on\nresource.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:setIamPolicy",
+ "path": "v1/{+resource}:setIamPolicy",
+ "id": "spanner.projects.instances.setIamPolicy"
+ },
+ "create": {
+ "description": "Creates an instance and begins preparing it to begin serving. The\nreturned long-running operation\ncan be used to track the progress of preparing the new\ninstance. The instance name is assigned by the caller. If the\nnamed instance already exists, `CreateInstance` returns\n`ALREADY_EXISTS`.\n\nImmediately upon completion of this request:\n\n * The instance is readable via the API, with all requested attributes\n but no allocated resources. Its state is `CREATING`.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation renders the instance immediately unreadable\n via the API.\n * The instance can be deleted.\n * All other attempts to modify the instance are rejected.\n\nUpon completion of the returned operation:\n\n * Billing for all successfully-allocated resources begins (some types\n may have lower than the requested levels).\n * Databases can be created in the instance.\n * The instance's allocated resource levels are readable via the API.\n * The instance's state becomes `READY`.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track creation of the instance. The\nmetadata field type is\nCreateInstanceMetadata.\nThe response field type is\nInstance, if successful.",
+ "request": {
+ "$ref": "CreateInstanceRequest"
+ },
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "parent": {
+ "description": "Required. The name of the project in which to create the instance. Values\nare of the form `projects/\u003cproject\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances",
+ "id": "spanner.projects.instances.create",
+ "path": "v1/{+parent}/instances"
+ }
},
- "type": "array"
- },
- "exemptedMembers": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "service": {
- "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.",
- "type": "string"
+ "resources": {
+ "operations": {
+ "methods": {
+ "get": {
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the operation resource.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}",
+ "id": "spanner.projects.instances.operations.get",
+ "path": "v1/{+name}",
+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice."
+ },
+ "list": {
+ "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "ListOperationsResponse"
+ },
+ "parameters": {
+ "filter": {
+ "description": "The standard list filter.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "The standard list page token.",
+ "type": "string"
+ },
+ "name": {
+ "location": "path",
+ "description": "The name of the operation's parent resource.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/operations$"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "The standard list page size.",
+ "type": "integer"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations",
+ "path": "v1/{+name}",
+ "id": "spanner.projects.instances.operations.list"
+ },
+ "cancel": {
+ "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the operation resource to be cancelled.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel",
+ "id": "spanner.projects.instances.operations.cancel",
+ "path": "v1/{+name}:cancel"
+ },
+ "delete": {
+ "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The name of the operation resource to be deleted.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}",
+ "id": "spanner.projects.instances.operations.delete",
+ "path": "v1/{+name}"
+ }
+ }
+ },
+ "databases": {
+ "methods": {
+ "list": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases",
+ "path": "v1/{+parent}/databases",
+ "id": "spanner.projects.instances.databases.list",
+ "description": "Lists Cloud Spanner databases.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "parent"
+ ],
+ "response": {
+ "$ref": "ListDatabasesResponse"
+ },
+ "parameters": {
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Number of databases to be returned in the response. If 0 or less,\ndefaults to the server's maximum allowed page size.",
+ "type": "integer"
+ },
+ "parent": {
+ "location": "path",
+ "description": "Required. The instance whose databases should be listed.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListDatabasesResponse.",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ]
+ },
+ "create": {
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "parent": {
+ "location": "path",
+ "description": "Required. The name of the instance that will serve the new database.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases",
+ "id": "spanner.projects.instances.databases.create",
+ "path": "v1/{+parent}/databases",
+ "request": {
+ "$ref": "CreateDatabaseRequest"
+ },
+ "description": "Creates a new Cloud Spanner database and starts to prepare it for serving.\nThe returned long-running operation will\nhave a name of the format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track preparation of the database. The\nmetadata field type is\nCreateDatabaseMetadata. The\nresponse field type is\nDatabase, if successful."
+ },
+ "setIamPolicy": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:setIamPolicy",
+ "id": "spanner.projects.instances.databases.setIamPolicy",
+ "path": "v1/{+resource}:setIamPolicy",
+ "description": "Sets the access control policy on a database resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.databases.setIamPolicy` permission on\nresource.",
+ "request": {
+ "$ref": "SetIamPolicyRequest"
+ },
+ "response": {
+ "$ref": "Policy"
+ },
+ "parameterOrder": [
+ "resource"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ]
+ },
+ "getIamPolicy": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:getIamPolicy",
+ "path": "v1/{+resource}:getIamPolicy",
+ "id": "spanner.projects.instances.databases.getIamPolicy",
+ "request": {
+ "$ref": "GetIamPolicyRequest"
+ },
+ "description": "Gets the access control policy for a database resource. Returns an empty\npolicy if a database exists but does not have a policy set.\n\nAuthorization requires `spanner.databases.getIamPolicy` permission on\nresource.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "Policy"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "resource": {
+ "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
+ "location": "path"
+ }
+ }
+ },
+ "get": {
+ "description": "Gets the state of a Cloud Spanner database.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Database"
+ },
+ "parameters": {
+ "name": {
+ "description": "Required. The name of the requested database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}",
+ "path": "v1/{+name}",
+ "id": "spanner.projects.instances.databases.get"
+ },
+ "dropDatabase": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "database"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "database": {
+ "location": "path",
+ "description": "Required. The database to be dropped.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}",
+ "id": "spanner.projects.instances.databases.dropDatabase",
+ "path": "v1/{+database}",
+ "description": "Drops (aka deletes) a Cloud Spanner database."
+ },
+ "updateDdl": {
+ "request": {
+ "$ref": "UpdateDatabaseDdlRequest"
+ },
+ "description": "Updates the schema of a Cloud Spanner database by\ncreating/altering/dropping tables, columns, indexes, etc. The returned\nlong-running operation will have a name of\nthe format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and can be used to\ntrack execution of the schema change(s). The\nmetadata field type is\nUpdateDatabaseDdlMetadata. The operation has no response.",
+ "httpMethod": "PATCH",
+ "parameterOrder": [
+ "database"
+ ],
+ "response": {
+ "$ref": "Operation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "database": {
+ "location": "path",
+ "description": "Required. The database to update.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl",
+ "path": "v1/{+database}/ddl",
+ "id": "spanner.projects.instances.databases.updateDdl"
+ },
+ "testIamPermissions": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "resource"
+ ],
+ "response": {
+ "$ref": "TestIamPermissionsResponse"
+ },
+ "parameters": {
+ "resource": {
+ "location": "path",
+ "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:testIamPermissions",
+ "path": "v1/{+resource}:testIamPermissions",
+ "id": "spanner.projects.instances.databases.testIamPermissions",
+ "description": "Returns permissions that the caller has on the specified database resource.\n\nAttempting this RPC on a non-existent Cloud Spanner database will result in\na NOT_FOUND error if the user has `spanner.databases.list` permission on\nthe containing Cloud Spanner instance. Otherwise returns an empty set of\npermissions.",
+ "request": {
+ "$ref": "TestIamPermissionsRequest"
+ }
+ },
+ "getDdl": {
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "database"
+ ],
+ "response": {
+ "$ref": "GetDatabaseDdlResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "database": {
+ "description": "Required. The database whose schema we wish to get.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl",
+ "path": "v1/{+database}/ddl",
+ "id": "spanner.projects.instances.databases.getDdl",
+ "description": "Returns the schema of a Cloud Spanner database as a list of formatted\nDDL statements. This method does not show pending schema updates, those may\nbe queried using the Operations API."
+ }
+ },
+ "resources": {
+ "sessions": {
+ "methods": {
+ "get": {
+ "description": "Gets a session. Returns `NOT_FOUND` if the session does not exist.\nThis is mainly useful for determining whether a session is still\nalive.",
+ "response": {
+ "$ref": "Session"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "parameters": {
+ "name": {
+ "description": "Required. The name of the session to retrieve.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}",
+ "id": "spanner.projects.instances.databases.sessions.get",
+ "path": "v1/{+name}"
+ },
+ "executeStreamingSql": {
+ "response": {
+ "$ref": "PartialResultSet"
+ },
+ "parameterOrder": [
+ "session"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "session": {
+ "location": "path",
+ "description": "Required. The session in which the SQL query should be performed.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeStreamingSql",
+ "id": "spanner.projects.instances.databases.sessions.executeStreamingSql",
+ "path": "v1/{+session}:executeStreamingSql",
+ "description": "Like ExecuteSql, except returns the result\nset as a stream. Unlike ExecuteSql, there\nis no limit on the size of the returned result set. However, no\nindividual row in the result set can exceed 100 MiB, and no\ncolumn value can exceed 10 MiB.",
+ "request": {
+ "$ref": "ExecuteSqlRequest"
+ }
+ },
+ "delete": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}",
+ "id": "spanner.projects.instances.databases.sessions.delete",
+ "path": "v1/{+name}",
+ "description": "Ends a session, releasing server resources associated with it.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "parameters": {
+ "name": {
+ "description": "Required. The name of the session to delete.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
+ "location": "path"
+ }
+ }
+ },
+ "beginTransaction": {
+ "request": {
+ "$ref": "BeginTransactionRequest"
+ },
+ "description": "Begins a new transaction. This step can often be skipped:\nRead, ExecuteSql and\nCommit can begin a new transaction as a\nside-effect.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "session"
+ ],
+ "response": {
+ "$ref": "Transaction"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "parameters": {
+ "session": {
+ "location": "path",
+ "description": "Required. The session in which the transaction runs.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:beginTransaction",
+ "path": "v1/{+session}:beginTransaction",
+ "id": "spanner.projects.instances.databases.sessions.beginTransaction"
+ },
+ "commit": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:commit",
+ "path": "v1/{+session}:commit",
+ "id": "spanner.projects.instances.databases.sessions.commit",
+ "request": {
+ "$ref": "CommitRequest"
+ },
+ "description": "Commits a transaction. The request includes the mutations to be\napplied to rows in the database.\n\n`Commit` might return an `ABORTED` error. This can occur at any time;\ncommonly, the cause is conflicts with concurrent\ntransactions. However, it can also happen for a variety of other\nreasons. If `Commit` returns `ABORTED`, the caller should re-attempt\nthe transaction from the beginning, re-using the same session.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "session"
+ ],
+ "response": {
+ "$ref": "CommitResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "parameters": {
+ "session": {
+ "description": "Required. The session in which the transaction to be committed is running.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
+ "location": "path"
+ }
+ }
+ },
+ "executeSql": {
+ "description": "Executes an SQL query, returning all rows in a single reply. This\nmethod cannot be used to return a result set larger than 10 MiB;\nif the query yields more data than that, the query fails with\na `FAILED_PRECONDITION` error.\n\nQueries inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be fetched in streaming fashion by calling\nExecuteStreamingSql instead.",
+ "request": {
+ "$ref": "ExecuteSqlRequest"
+ },
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "session"
+ ],
+ "response": {
+ "$ref": "ResultSet"
+ },
+ "parameters": {
+ "session": {
+ "location": "path",
+ "description": "Required. The session in which the SQL query should be performed.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeSql",
+ "path": "v1/{+session}:executeSql",
+ "id": "spanner.projects.instances.databases.sessions.executeSql"
+ },
+ "streamingRead": {
+ "response": {
+ "$ref": "PartialResultSet"
+ },
+ "parameterOrder": [
+ "session"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "session": {
+ "location": "path",
+ "description": "Required. The session in which the read should be performed.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:streamingRead",
+ "id": "spanner.projects.instances.databases.sessions.streamingRead",
+ "path": "v1/{+session}:streamingRead",
+ "description": "Like Read, except returns the result set as a\nstream. Unlike Read, there is no limit on the\nsize of the returned result set. However, no individual row in\nthe result set can exceed 100 MiB, and no column value can exceed\n10 MiB.",
+ "request": {
+ "$ref": "ReadRequest"
+ }
+ },
+ "rollback": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:rollback",
+ "id": "spanner.projects.instances.databases.sessions.rollback",
+ "path": "v1/{+session}:rollback",
+ "description": "Rolls back a transaction, releasing any locks it holds. It is a good\nidea to call this for any transaction that includes one or more\nRead or ExecuteSql requests and\nultimately decides not to commit.\n\n`Rollback` returns `OK` if it successfully aborts the transaction, the\ntransaction was already aborted, or the transaction is not\nfound. `Rollback` never returns `ABORTED`.",
+ "request": {
+ "$ref": "RollbackRequest"
+ },
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "session"
+ ],
+ "httpMethod": "POST",
+ "parameters": {
+ "session": {
+ "location": "path",
+ "description": "Required. The session in which the transaction to roll back is running.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ]
+ },
+ "create": {
+ "description": "Creates a new session. A session can be used to perform\ntransactions that read and/or modify data in a Cloud Spanner database.\nSessions are meant to be reused for many consecutive\ntransactions.\n\nSessions can only execute one transaction at a time. To execute\nmultiple concurrent read-write/write-only transactions, create\nmultiple sessions. Note that standalone reads and queries use a\ntransaction internally, and count toward the one transaction\nlimit.\n\nCloud Spanner limits the number of sessions that can exist at any given\ntime; thus, it is a good idea to delete idle and/or unneeded sessions.\nAside from explicit deletes, Cloud Spanner can delete sessions for which no\noperations are sent for more than an hour. If a session is deleted,\nrequests to it return `NOT_FOUND`.\n\nIdle sessions can be kept alive by sending a trivial SQL query\nperiodically, e.g., `\"SELECT 1\"`.",
+ "httpMethod": "POST",
+ "response": {
+ "$ref": "Session"
+ },
+ "parameterOrder": [
+ "database"
+ ],
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "parameters": {
+ "database": {
+ "description": "Required. The database in which the new session is created.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
+ "location": "path"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions",
+ "path": "v1/{+database}/sessions",
+ "id": "spanner.projects.instances.databases.sessions.create"
+ },
+ "read": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:read",
+ "path": "v1/{+session}:read",
+ "id": "spanner.projects.instances.databases.sessions.read",
+ "request": {
+ "$ref": "ReadRequest"
+ },
+ "description": "Reads rows from the database using key lookups and scans, as a\nsimple key/value style alternative to\nExecuteSql. This method cannot be used to\nreturn a result set larger than 10 MiB; if the read matches more\ndata than that, the read fails with a `FAILED_PRECONDITION`\nerror.\n\nReads inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be yielded in streaming fashion by calling\nStreamingRead instead.",
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "session"
+ ],
+ "response": {
+ "$ref": "ResultSet"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.data"
+ ],
+ "parameters": {
+ "session": {
+ "location": "path",
+ "description": "Required. The session in which the read should be performed.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
+ }
+ }
+ }
+ }
+ },
+ "operations": {
+ "methods": {
+ "cancel": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the operation resource to be cancelled.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$"
+ }
+ },
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}:cancel",
+ "path": "v1/{+name}:cancel",
+ "id": "spanner.projects.instances.databases.operations.cancel",
+ "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`."
+ },
+ "delete": {
+ "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
+ "httpMethod": "DELETE",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameters": {
+ "name": {
+ "location": "path",
+ "description": "The name of the operation resource to be deleted.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}",
+ "path": "v1/{+name}",
+ "id": "spanner.projects.instances.databases.operations.delete"
+ },
+ "get": {
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}",
+ "path": "v1/{+name}",
+ "id": "spanner.projects.instances.databases.operations.get",
+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The name of the operation resource.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$",
+ "location": "path"
+ }
+ }
+ },
+ "list": {
+ "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "ListOperationsResponse"
+ },
+ "parameters": {
+ "pageSize": {
+ "format": "int32",
+ "description": "The standard list page size.",
+ "type": "integer",
+ "location": "query"
+ },
+ "filter": {
+ "description": "The standard list filter.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "description": "The standard list page token.",
+ "type": "string",
+ "location": "query"
+ },
+ "name": {
+ "description": "The name of the operation's parent resource.",
+ "type": "string",
+ "required": true,
+ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/spanner.admin"
+ ],
+ "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations",
+ "path": "v1/{+name}",
+ "id": "spanner.projects.instances.databases.operations.list"
+ }
+ }
+ }
+ }
+ }
+ }
}
- },
- "id": "AuditConfig"
+ }
+ }
+ },
+ "parameters": {
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
},
+ "prettyPrint": {
+ "location": "query",
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "$.xgafv": {
+ "description": "V1 error format.",
+ "type": "string",
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ]
+ },
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
+ },
+ "alt": {
+ "type": "string",
+ "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",
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ]
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "access_token": {
+ "location": "query",
+ "description": "OAuth access token.",
+ "type": "string"
+ },
+ "quotaUser": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ },
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ }
+ },
+ "version": "v1",
+ "baseUrl": "https://spanner.googleapis.com/",
+ "kind": "discovery#restDescription",
+ "description": "Cloud Spanner is a managed, mission-critical, globally consistent and scalable relational database service.",
+ "servicePath": "",
+ "basePath": "",
+ "revision": "20170726",
+ "documentationLink": "https://cloud.google.com/spanner/",
+ "id": "spanner:v1",
+ "discoveryVersion": "v1",
+ "version_module": "True",
+ "schemas": {
"ChildLink": {
"description": "Metadata associated with a parent-child relationship appearing in a\nPlanNode.",
"type": "object",
"properties": {
+ "type": {
+ "description": "The type of the link. For example, in Hash Joins this could be used to\ndistinguish between the build child and the probe child, or in the case\nof the child being an output variable, to represent the tag associated\nwith the output variable.",
+ "type": "string"
+ },
"variable": {
"description": "Only present if the child node is SCALAR and corresponds\nto an output variable of the parent node. The field carries the name of\nthe output variable.\nFor example, a `TableScan` operator that reads rows from a table will\nhave child links to the `SCALAR` nodes representing the output variables\ncreated for each column that is read by the operator. The corresponding\n`variable` fields will be set to the variable names assigned to the\ncolumns.",
"type": "string"
@@ -572,10 +1232,6 @@
"format": "int32",
"description": "The node to which the link points.",
"type": "integer"
- },
- "type": {
- "description": "The type of the link. For example, in Hash Joins this could be used to\ndistinguish between the build child and the probe child, or in the case\nof the child being an output variable, to represent the tag associated\nwith the output variable.",
- "type": "string"
}
},
"id": "ChildLink"
@@ -585,18 +1241,22 @@
"type": "object",
"properties": {
"logName": {
- "enum": [
- "UNSPECIFIED_LOG_NAME",
- "ADMIN_ACTIVITY",
- "DATA_ACCESS"
- ],
"description": "The log_name to populate in the Cloud Audit Record.",
"type": "string",
"enumDescriptions": [
"Default. Should not be used.",
"Corresponds to \"cloudaudit.googleapis.com/activity\"",
"Corresponds to \"cloudaudit.googleapis.com/data_access\""
+ ],
+ "enum": [
+ "UNSPECIFIED_LOG_NAME",
+ "ADMIN_ACTIVITY",
+ "DATA_ACCESS"
]
+ },
+ "authorizationLoggingOptions": {
+ "description": "Information used by the Cloud Audit Logging pipeline.",
+ "$ref": "AuthorizationLoggingOptions"
}
},
"id": "CloudAuditOptions"
@@ -610,7 +1270,7 @@
"type": "string"
},
"expression": {
- "description": "Textual representation of an expression in\n[Common Expression Language](http://go/api-expr) syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.",
+ "description": "Textual representation of an expression in\nCommon Expression Language syntax.\n\nThe application context of the containing message determines which\nwell-known feature set of CEL is supported.",
"type": "string"
},
"location": {
@@ -625,48 +1285,19 @@
"id": "Expr"
},
"Delete": {
+ "description": "Arguments to delete operations.",
"type": "object",
"properties": {
- "keySet": {
- "$ref": "KeySet",
- "description": "Required. The primary keys of the rows within table to delete."
- },
"table": {
"description": "Required. The table whose rows will be deleted.",
"type": "string"
- }
- },
- "id": "Delete",
- "description": "Arguments to delete operations."
- },
- "ListInstanceConfigsResponse": {
- "description": "The response for ListInstanceConfigs.",
- "type": "object",
- "properties": {
- "instanceConfigs": {
- "description": "The list of requested instance configurations.",
- "items": {
- "$ref": "InstanceConfig"
- },
- "type": "array"
},
- "nextPageToken": {
- "description": "`next_page_token` can be sent in a subsequent\nListInstanceConfigs call to\nfetch more of the matching instance configurations.",
- "type": "string"
+ "keySet": {
+ "$ref": "KeySet",
+ "description": "Required. The primary keys of the rows within table to delete."
}
},
- "id": "ListInstanceConfigsResponse"
- },
- "BeginTransactionRequest": {
- "description": "The request for BeginTransaction.",
- "type": "object",
- "properties": {
- "options": {
- "$ref": "TransactionOptions",
- "description": "Required. Options for the new transaction."
- }
- },
- "id": "BeginTransactionRequest"
+ "id": "Delete"
},
"CommitRequest": {
"description": "The request for Commit.",
@@ -680,8 +1311,8 @@
"type": "array"
},
"singleUseTransaction": {
- "description": "Execute mutations in a temporary transaction. Note that unlike\ncommit of a previously-started transaction, commit with a\ntemporary transaction is non-idempotent. That is, if the\n`CommitRequest` is sent to Cloud Spanner more than once (for\ninstance, due to retries in the application, or in the\ntransport library), it is possible that the mutations are\nexecuted more than once. If this is undesirable, use\nBeginTransaction and\nCommit instead.",
- "$ref": "TransactionOptions"
+ "$ref": "TransactionOptions",
+ "description": "Execute mutations in a temporary transaction. Note that unlike\ncommit of a previously-started transaction, commit with a\ntemporary transaction is non-idempotent. That is, if the\n`CommitRequest` is sent to Cloud Spanner more than once (for\ninstance, due to retries in the application, or in the\ntransport library), it is possible that the mutations are\nexecuted more than once. If this is undesirable, use\nBeginTransaction and\nCommit instead."
},
"transactionId": {
"format": "byte",
@@ -691,6 +1322,41 @@
},
"id": "CommitRequest"
},
+ "BeginTransactionRequest": {
+ "description": "The request for BeginTransaction.",
+ "type": "object",
+ "properties": {
+ "options": {
+ "$ref": "TransactionOptions",
+ "description": "Required. Options for the new transaction."
+ }
+ },
+ "id": "BeginTransactionRequest"
+ },
+ "ListInstanceConfigsResponse": {
+ "description": "The response for ListInstanceConfigs.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "`next_page_token` can be sent in a subsequent\nListInstanceConfigs call to\nfetch more of the matching instance configurations.",
+ "type": "string"
+ },
+ "instanceConfigs": {
+ "description": "The list of requested instance configurations.",
+ "items": {
+ "$ref": "InstanceConfig"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListInstanceConfigsResponse"
+ },
+ "GetIamPolicyRequest": {
+ "description": "Request message for `GetIamPolicy` method.",
+ "type": "object",
+ "properties": {},
+ "id": "GetIamPolicyRequest"
+ },
"TestIamPermissionsResponse": {
"description": "Response message for `TestIamPermissions` method.",
"type": "object",
@@ -705,16 +1371,46 @@
},
"id": "TestIamPermissionsResponse"
},
- "GetIamPolicyRequest": {
- "description": "Request message for `GetIamPolicy` method.",
+ "CreateDatabaseMetadata": {
+ "description": "Metadata type for the operation returned by\nCreateDatabase.",
"type": "object",
- "properties": {},
- "id": "GetIamPolicyRequest"
+ "properties": {
+ "database": {
+ "description": "The database being created.",
+ "type": "string"
+ }
+ },
+ "id": "CreateDatabaseMetadata"
},
"Rule": {
"description": "A rule to be applied in a Policy.",
"type": "object",
"properties": {
+ "notIn": {
+ "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "description": {
+ "description": "Human-readable description of the rule.",
+ "type": "string"
+ },
+ "conditions": {
+ "description": "Additional restrictions that must be met",
+ "items": {
+ "$ref": "Condition"
+ },
+ "type": "array"
+ },
+ "logConfig": {
+ "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.",
+ "items": {
+ "$ref": "LogConfig"
+ },
+ "type": "array"
+ },
"in": {
"description": "If one or more 'in' clauses are specified, the rule matches if\nthe PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.",
"items": {
@@ -723,11 +1419,11 @@
"type": "array"
},
"permissions": {
+ "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.",
"items": {
"type": "string"
},
- "type": "array",
- "description": "A permission is a string of form '\u003cservice\u003e.\u003cresource type\u003e.\u003cverb\u003e'\n(e.g., 'storage.buckets.list'). A value of '*' matches all permissions,\nand a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs."
+ "type": "array"
},
"action": {
"description": "Required",
@@ -748,48 +1444,12 @@
"DENY_WITH_LOG",
"LOG"
]
- },
- "notIn": {
- "items": {
- "type": "string"
- },
- "type": "array",
- "description": "If one or more 'not_in' clauses are specified, the rule matches\nif the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.\nThe format for in and not_in entries is the same as for members in a\nBinding (see google/iam/v1/policy.proto)."
- },
- "description": {
- "description": "Human-readable description of the rule.",
- "type": "string"
- },
- "conditions": {
- "description": "Additional restrictions that must be met",
- "items": {
- "$ref": "Condition"
- },
- "type": "array"
- },
- "logConfig": {
- "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries\nthat match the LOG action.",
- "items": {
- "$ref": "LogConfig"
- },
- "type": "array"
}
},
"id": "Rule"
},
- "CreateDatabaseMetadata": {
- "type": "object",
- "properties": {
- "database": {
- "description": "The database being created.",
- "type": "string"
- }
- },
- "id": "CreateDatabaseMetadata",
- "description": "Metadata type for the operation returned by\nCreateDatabase."
- },
"LogConfig": {
- "description": "Specifies what kind of log the caller must write",
+ "description": "Specifies what kind of log the caller must write\nIncrement a streamz counter with the specified metric and field names.\n\nMetric names should start with a '/', generally be lowercase-only,\nand end in \"_count\". Field names should not contain an initial slash.\nThe actual exported metric names will have \"/iam/policy\" prepended.\n\nField names correspond to IAM request parameters and field values are\ntheir respective values.\n\nAt present the only supported field names are\n - \"iam_principal\", corresponding to IAMContext.principal;\n - \"\" (empty string), resulting in one aggretated counter with no field.\n\nExamples:\n counter { metric: \"/debug_access_count\" field: \"iam_principal\" }\n ==\u003e increment counter /iam/policy/backend_debug_access_count\n {iam_principal=[value of IAMContext.principal]}\n\nAt this time we do not support:\n* multiple field names (though this may be supported in the future)\n* decrementing the counter\n* incrementing it by anything other than 1",
"type": "object",
"properties": {
"counter": {
@@ -797,49 +1457,45 @@
"$ref": "CounterOptions"
},
"dataAccess": {
- "$ref": "DataAccessOptions",
- "description": "Data access options."
+ "description": "Data access options.",
+ "$ref": "DataAccessOptions"
},
"cloudAudit": {
- "$ref": "CloudAuditOptions",
- "description": "Cloud audit options."
+ "description": "Cloud audit options.",
+ "$ref": "CloudAuditOptions"
}
},
"id": "LogConfig"
},
"Session": {
+ "description": "A session in the Cloud Spanner API.",
+ "type": "object",
"properties": {
"name": {
"description": "Required. The name of the session.",
"type": "string"
}
},
- "id": "Session",
- "description": "A session in the Cloud Spanner API.",
- "type": "object"
- },
- "ListInstancesResponse": {
- "properties": {
- "instances": {
- "description": "The list of requested instances.",
- "items": {
- "$ref": "Instance"
- },
- "type": "array"
- },
- "nextPageToken": {
- "description": "`next_page_token` can be sent in a subsequent\nListInstances call to fetch more\nof the matching instances.",
- "type": "string"
- }
- },
- "id": "ListInstancesResponse",
- "description": "The response for ListInstances.",
- "type": "object"
+ "id": "Session"
},
"KeyRange": {
"description": "KeyRange represents a range of rows in a table or index.\n\nA range has a start key and an end key. These keys can be open or\nclosed, indicating if the range includes rows with that key.\n\nKeys are represented by lists, where the ith value in the list\ncorresponds to the ith component of the table or index primary key.\nIndividual values are encoded as described here.\n\nFor example, consider the following table definition:\n\n CREATE TABLE UserEvents (\n UserName STRING(MAX),\n EventDate STRING(10)\n ) PRIMARY KEY(UserName, EventDate);\n\nThe following keys name rows in this table:\n\n \"Bob\", \"2014-09-23\"\n\nSince the `UserEvents` table's `PRIMARY KEY` clause names two\ncolumns, each `UserEvents` key has two elements; the first is the\n`UserName`, and the second is the `EventDate`.\n\nKey ranges with multiple components are interpreted\nlexicographically by component using the table or index key's declared\nsort order. For example, the following range returns all events for\nuser `\"Bob\"` that occurred in the year 2015:\n\n \"start_closed\": [\"Bob\", \"2015-01-01\"]\n \"end_closed\": [\"Bob\", \"2015-12-31\"]\n\nStart and end keys can omit trailing key components. This affects the\ninclusion and exclusion of rows that exactly match the provided key\ncomponents: if the key is closed, then rows that exactly match the\nprovided components are included; if the key is open, then rows\nthat exactly match are not included.\n\nFor example, the following range includes all events for `\"Bob\"` that\noccurred during and after the year 2000:\n\n \"start_closed\": [\"Bob\", \"2000-01-01\"]\n \"end_closed\": [\"Bob\"]\n\nThe next example retrieves all events for `\"Bob\"`:\n\n \"start_closed\": [\"Bob\"]\n \"end_closed\": [\"Bob\"]\n\nTo retrieve events before the year 2000:\n\n \"start_closed\": [\"Bob\"]\n \"end_open\": [\"Bob\", \"2000-01-01\"]\n\nThe following range includes all rows in the table:\n\n \"start_closed\": []\n \"end_closed\": []\n\nThis range returns all users whose `UserName` begins with any\ncharacter from A to C:\n\n \"start_closed\": [\"A\"]\n \"end_open\": [\"D\"]\n\nThis range returns all users whose `UserName` begins with B:\n\n \"start_closed\": [\"B\"]\n \"end_open\": [\"C\"]\n\nKey ranges honor column sort order. For example, suppose a table is\ndefined as follows:\n\n CREATE TABLE DescendingSortedTable {\n Key INT64,\n ...\n ) PRIMARY KEY(Key DESC);\n\nThe following range retrieves all rows with key values between 1\nand 100 inclusive:\n\n \"start_closed\": [\"100\"]\n \"end_closed\": [\"1\"]\n\nNote that 100 is passed as the start, and 1 is passed as the end,\nbecause `Key` is a descending column in the schema.",
"type": "object",
"properties": {
+ "startOpen": {
+ "description": "If the start is open, then the range excludes rows whose first\n`len(start_open)` key columns exactly match `start_open`.",
+ "items": {
+ "type": "any"
+ },
+ "type": "array"
+ },
+ "startClosed": {
+ "description": "If the start is closed, then the range includes all rows whose\nfirst `len(start_closed)` key columns exactly match `start_closed`.",
+ "items": {
+ "type": "any"
+ },
+ "type": "array"
+ },
"endOpen": {
"description": "If the end is open, then the range excludes rows whose first\n`len(end_open)` key columns exactly match `end_open`.",
"items": {
@@ -853,73 +1509,77 @@
"type": "any"
},
"type": "array"
- },
- "startOpen": {
- "description": "If the start is open, then the range excludes rows whose first\n`len(start_open)` key columns exactly match `start_open`.",
- "items": {
- "type": "any"
- },
- "type": "array"
- },
- "startClosed": {
- "items": {
- "type": "any"
- },
- "type": "array",
- "description": "If the start is closed, then the range includes all rows whose\nfirst `len(start_closed)` key columns exactly match `start_closed`."
}
},
"id": "KeyRange"
},
+ "ListInstancesResponse": {
+ "description": "The response for ListInstances.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "`next_page_token` can be sent in a subsequent\nListInstances call to fetch more\nof the matching instances.",
+ "type": "string"
+ },
+ "instances": {
+ "description": "The list of requested instances.",
+ "items": {
+ "$ref": "Instance"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListInstancesResponse"
+ },
"ShortRepresentation": {
"description": "Condensed representation of a node and its subtree. Only present for\n`SCALAR` PlanNode(s).",
"type": "object",
"properties": {
- "subqueries": {
- "additionalProperties": {
- "format": "int32",
- "type": "integer"
- },
- "description": "A mapping of (subquery variable name) -\u003e (subquery node id) for cases\nwhere the `description` string of this node references a `SCALAR`\nsubquery contained in the expression subtree rooted at this node. The\nreferenced `SCALAR` subquery may not necessarily be a direct child of\nthis node.",
- "type": "object"
- },
"description": {
"description": "A string representation of the expression subtree rooted at this node.",
"type": "string"
+ },
+ "subqueries": {
+ "description": "A mapping of (subquery variable name) -\u003e (subquery node id) for cases\nwhere the `description` string of this node references a `SCALAR`\nsubquery contained in the expression subtree rooted at this node. The\nreferenced `SCALAR` subquery may not necessarily be a direct child of\nthis node.",
+ "type": "object",
+ "additionalProperties": {
+ "format": "int32",
+ "type": "integer"
+ }
}
},
"id": "ShortRepresentation"
},
"InstanceConfig": {
+ "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.",
+ "type": "object",
"properties": {
- "name": {
- "description": "A unique identifier for the instance configuration. Values\nare of the form\n`projects/\u003cproject\u003e/instanceConfigs/a-z*`",
- "type": "string"
- },
"displayName": {
"description": "The name of this instance configuration as it appears in UIs.",
"type": "string"
+ },
+ "name": {
+ "description": "A unique identifier for the instance configuration. Values\nare of the form\n`projects/\u003cproject\u003e/instanceConfigs/a-z*`",
+ "type": "string"
}
},
- "id": "InstanceConfig",
- "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.",
- "type": "object"
+ "id": "InstanceConfig"
},
"UpdateInstanceRequest": {
+ "description": "The request for UpdateInstance.",
"type": "object",
"properties": {
"fieldMask": {
- "type": "string",
"format": "google-fieldmask",
- "description": "Required. A mask specifying which fields in [][google.spanner.admin.instance.v1.UpdateInstanceRequest.instance] should be updated.\nThe field mask must always be specified; this prevents any future fields in\n[][google.spanner.admin.instance.v1.Instance] from being erased accidentally by clients that do not know\nabout them."
+ "description": "Required. A mask specifying which fields in [][google.spanner.admin.instance.v1.UpdateInstanceRequest.instance] should be updated.\nThe field mask must always be specified; this prevents any future fields in\n[][google.spanner.admin.instance.v1.Instance] from being erased accidentally by clients that do not know\nabout them.",
+ "type": "string"
},
"instance": {
"$ref": "Instance",
"description": "Required. The instance to update, which must always include the instance\nname. Otherwise, only fields mentioned in [][google.spanner.admin.instance.v1.UpdateInstanceRequest.field_mask] need be included."
}
},
- "id": "UpdateInstanceRequest",
- "description": "The request for UpdateInstance."
+ "id": "UpdateInstanceRequest"
},
"Empty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
@@ -928,39 +1588,40 @@
"id": "Empty"
},
"TransactionOptions": {
- "properties": {
- "readOnly": {
- "$ref": "ReadOnly",
- "description": "Transaction will not write.\n\nAuthorization to begin a read-only transaction requires\n`spanner.databases.beginReadOnlyTransaction` permission\non the `session` resource."
- },
- "readWrite": {
- "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource.",
- "$ref": "ReadWrite"
- }
- },
- "id": "TransactionOptions",
"description": "# Transactions\n\n\nEach session can have at most one active transaction at a time. After the\nactive transaction is completed, the session can immediately be\nre-used for the next transaction. It is not necessary to create a\nnew session for each transaction.\n\n# Transaction Modes\n\nCloud Spanner supports two transaction modes:\n\n 1. Locking read-write. This type of transaction is the only way\n to write data into Cloud Spanner. These transactions rely on\n pessimistic locking and, if necessary, two-phase commit.\n Locking read-write transactions may abort, requiring the\n application to retry.\n\n 2. Snapshot read-only. This transaction type provides guaranteed\n consistency across several reads, but does not allow\n writes. Snapshot read-only transactions can be configured to\n read at timestamps in the past. Snapshot read-only\n transactions do not need to be committed.\n\nFor transactions that only read, snapshot read-only transactions\nprovide simpler semantics and are almost always faster. In\nparticular, read-only transactions do not take locks, so they do\nnot conflict with read-write transactions. As a consequence of not\ntaking locks, they also do not abort, so retry loops are not needed.\n\nTransactions may only read/write data in a single database. They\nmay, however, read/write data in different tables within that\ndatabase.\n\n## Locking Read-Write Transactions\n\nLocking transactions may be used to atomically read-modify-write\ndata anywhere in a database. This type of transaction is externally\nconsistent.\n\nClients should attempt to minimize the amount of time a transaction\nis active. Faster transactions commit with higher probability\nand cause less contention. Cloud Spanner attempts to keep read locks\nactive as long as the transaction continues to do reads, and the\ntransaction has not been terminated by\nCommit or\nRollback. Long periods of\ninactivity at the client may cause Cloud Spanner to release a\ntransaction's locks and abort it.\n\nReads performed within a transaction acquire locks on the data\nbeing read. Writes can only be done at commit time, after all reads\nhave been completed.\nConceptually, a read-write transaction consists of zero or more\nreads or SQL queries followed by\nCommit. At any time before\nCommit, the client can send a\nRollback request to abort the\ntransaction.\n\n### Semantics\n\nCloud Spanner can commit the transaction if all read locks it acquired\nare still valid at commit time, and it is able to acquire write\nlocks for all writes. Cloud Spanner can abort the transaction for any\nreason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees\nthat the transaction has not modified any user data in Cloud Spanner.\n\nUnless the transaction commits, Cloud Spanner makes no guarantees about\nhow long the transaction's locks were held for. It is an error to\nuse Cloud Spanner locks for any sort of mutual exclusion other than\nbetween Cloud Spanner transactions themselves.\n\n### Retrying Aborted Transactions\n\nWhen a transaction aborts, the application can choose to retry the\nwhole transaction again. To maximize the chances of successfully\ncommitting the retry, the client should execute the retry in the\nsame session as the original attempt. The original session's lock\npriority increases with each consecutive abort, meaning that each\nattempt has a slightly better chance of success than the previous.\n\nUnder some circumstances (e.g., many transactions attempting to\nmodify the same row(s)), a transaction can abort many times in a\nshort period before successfully committing. Thus, it is not a good\nidea to cap the number of retries a transaction can attempt;\ninstead, it is better to limit the total amount of wall time spent\nretrying.\n\n### Idle Transactions\n\nA transaction is considered idle if it has no outstanding reads or\nSQL queries and has not started a read or SQL query within the last 10\nseconds. Idle transactions can be aborted by Cloud Spanner so that they\ndon't hold on to locks indefinitely. In that case, the commit will\nfail with error `ABORTED`.\n\nIf this behavior is undesirable, periodically executing a simple\nSQL query in the transaction (e.g., `SELECT 1`) prevents the\ntransaction from becoming idle.\n\n## Snapshot Read-Only Transactions\n\nSnapshot read-only transactions provides a simpler method than\nlocking read-write transactions for doing several consistent\nreads. However, this type of transaction does not support writes.\n\nSnapshot transactions do not take locks. Instead, they work by\nchoosing a Cloud Spanner timestamp, then executing all reads at that\ntimestamp. Since they do not acquire locks, they do not block\nconcurrent read-write transactions.\n\nUnlike locking read-write transactions, snapshot read-only\ntransactions never abort. They can fail if the chosen read\ntimestamp is garbage collected; however, the default garbage\ncollection policy is generous enough that most applications do not\nneed to worry about this in practice.\n\nSnapshot read-only transactions do not need to call\nCommit or\nRollback (and in fact are not\npermitted to do so).\n\nTo execute a snapshot transaction, the client specifies a timestamp\nbound, which tells Cloud Spanner how to choose a read timestamp.\n\nThe types of timestamp bound are:\n\n - Strong (the default).\n - Bounded staleness.\n - Exact staleness.\n\nIf the Cloud Spanner database to be read is geographically distributed,\nstale read-only transactions can execute more quickly than strong\nor read-write transaction, because they are able to execute far\nfrom the leader replica.\n\nEach type of timestamp bound is discussed in detail below.\n\n### Strong\n\nStrong reads are guaranteed to see the effects of all transactions\nthat have committed before the start of the read. Furthermore, all\nrows yielded by a single read are consistent with each other -- if\nany part of the read observes a transaction, all parts of the read\nsee the transaction.\n\nStrong reads are not repeatable: two consecutive strong read-only\ntransactions might return inconsistent results if there are\nconcurrent writes. If consistency across reads is required, the\nreads should be executed within a transaction or at an exact read\ntimestamp.\n\nSee TransactionOptions.ReadOnly.strong.\n\n### Exact Staleness\n\nThese timestamp bounds execute reads at a user-specified\ntimestamp. Reads at a timestamp are guaranteed to see a consistent\nprefix of the global transaction history: they observe\nmodifications done by all transactions with a commit timestamp \u003c=\nthe read timestamp, and observe none of the modifications done by\ntransactions with a larger commit timestamp. They will block until\nall conflicting transactions that may be assigned commit timestamps\n\u003c= the read timestamp have finished.\n\nThe timestamp can either be expressed as an absolute Cloud Spanner commit\ntimestamp or a staleness relative to the current time.\n\nThese modes do not require a \"negotiation phase\" to pick a\ntimestamp. As a result, they execute slightly faster than the\nequivalent boundedly stale concurrency modes. On the other hand,\nboundedly stale reads usually return fresher results.\n\nSee TransactionOptions.ReadOnly.read_timestamp and\nTransactionOptions.ReadOnly.exact_staleness.\n\n### Bounded Staleness\n\nBounded staleness modes allow Cloud Spanner to pick the read timestamp,\nsubject to a user-provided staleness bound. Cloud Spanner chooses the\nnewest timestamp within the staleness bound that allows execution\nof the reads at the closest available replica without blocking.\n\nAll rows yielded are consistent with each other -- if any part of\nthe read observes a transaction, all parts of the read see the\ntransaction. Boundedly stale reads are not repeatable: two stale\nreads, even if they use the same staleness bound, can execute at\ndifferent timestamps and thus return inconsistent results.\n\nBoundedly stale reads execute in two phases: the first phase\nnegotiates a timestamp among all replicas needed to serve the\nread. In the second phase, reads are executed at the negotiated\ntimestamp.\n\nAs a result of the two phase execution, bounded staleness reads are\nusually a little slower than comparable exact staleness\nreads. However, they are typically able to return fresher\nresults, and are more likely to execute at the closest replica.\n\nBecause the timestamp negotiation requires up-front knowledge of\nwhich rows will be read, it can only be used with single-use\nread-only transactions.\n\nSee TransactionOptions.ReadOnly.max_staleness and\nTransactionOptions.ReadOnly.min_read_timestamp.\n\n### Old Read Timestamps and Garbage Collection\n\nCloud Spanner continuously garbage collects deleted and overwritten data\nin the background to reclaim storage space. This process is known\nas \"version GC\". By default, version GC reclaims versions after they\nare one hour old. Because of this, Cloud Spanner cannot perform reads\nat read timestamps more than one hour in the past. This\nrestriction also applies to in-progress reads and/or SQL queries whose\ntimestamp become too old while executing. Reads and SQL queries with\ntoo-old read timestamps fail with the error `FAILED_PRECONDITION`.",
- "type": "object"
- },
- "CreateDatabaseRequest": {
"type": "object",
"properties": {
+ "readOnly": {
+ "description": "Transaction will not write.\n\nAuthorization to begin a read-only transaction requires\n`spanner.databases.beginReadOnlyTransaction` permission\non the `session` resource.",
+ "$ref": "ReadOnly"
+ },
+ "readWrite": {
+ "$ref": "ReadWrite",
+ "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource."
+ }
+ },
+ "id": "TransactionOptions"
+ },
+ "CreateDatabaseRequest": {
+ "description": "The request for CreateDatabase.",
+ "type": "object",
+ "properties": {
+ "createStatement": {
+ "description": "Required. A `CREATE DATABASE` statement, which specifies the ID of the\nnew database. The database ID must conform to the regular expression\n`a-z*[a-z0-9]` and be between 2 and 30 characters in length.\nIf the database ID is a reserved word or if it contains a hyphen, the\ndatabase ID must be enclosed in backticks (`` ` ``).",
+ "type": "string"
+ },
"extraStatements": {
"description": "An optional list of DDL statements to run inside the newly created\ndatabase. Statements can create tables, indexes, etc. These\nstatements execute atomically with the creation of the database:\nif there is an error in any statement, the database is not created.",
"items": {
"type": "string"
},
"type": "array"
- },
- "createStatement": {
- "description": "Required. A `CREATE DATABASE` statement, which specifies the ID of the\nnew database. The database ID must conform to the regular expression\n`a-z*[a-z0-9]` and be between 2 and 30 characters in length.\nIf the database ID is a reserved word or if it contains a hyphen, the\ndatabase ID must be enclosed in backticks (`` ` ``).",
- "type": "string"
}
},
- "id": "CreateDatabaseRequest",
- "description": "The request for CreateDatabase."
+ "id": "CreateDatabaseRequest"
},
"CreateInstanceRequest": {
+ "description": "The request for CreateInstance.",
"type": "object",
"properties": {
"instanceId": {
@@ -972,22 +1633,20 @@
"$ref": "Instance"
}
},
- "id": "CreateInstanceRequest",
- "description": "The request for CreateInstance."
+ "id": "CreateInstanceRequest"
},
"Condition": {
"description": "A condition to be met.",
"type": "object",
"properties": {
+ "values": {
+ "description": "The objects of the condition. This is mutually exclusive with 'value'.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
"iam": {
- "enum": [
- "NO_ATTR",
- "AUTHORITY",
- "ATTRIBUTION",
- "SECURITY_REALM",
- "APPROVER",
- "JUSTIFICATION_TYPE"
- ],
"description": "Trusted attributes supplied by the IAM system.",
"type": "string",
"enumDescriptions": [
@@ -997,16 +1656,19 @@
"Any of the security realms in the IAMContext (go/security-realms).\nWhen used with IN, the condition indicates \"any of the request's realms\nmatch one of the given values; with NOT_IN, \"none of the realms match\nany of the given values\". It is not permitted to grant access based on\nthe *absence* of a realm, so realm conditions can only be used in\na \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).",
"An approver (distinct from the requester) that has authorized this\nrequest.\nWhen used with IN, the condition indicates that one of the approvers\nassociated with the request matches the specified principal, or is a\nmember of the specified group. Approvers can only grant additional\naccess, and are thus only used in a strictly positive context\n(e.g. ALLOW/IN or DENY/NOT_IN).",
"What types of justifications have been supplied with this request.\nString values should match enum names from tech.iam.JustificationType,\ne.g. \"MANUAL_STRING\". It is not permitted to grant access based on\nthe *absence* of a justification, so justification conditions can only\nbe used in a \"positive\" context (e.g., ALLOW/IN or DENY/NOT_IN).\n\nMultiple justifications, e.g., a Buganizer ID and a manually-entered\nreason, are normal and supported."
+ ],
+ "enum": [
+ "NO_ATTR",
+ "AUTHORITY",
+ "ATTRIBUTION",
+ "SECURITY_REALM",
+ "APPROVER",
+ "JUSTIFICATION_TYPE"
]
},
- "values": {
- "description": "The objects of the condition. This is mutually exclusive with 'value'.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
"op": {
+ "description": "An operator to apply the subject with.",
+ "type": "string",
"enumDescriptions": [
"Default no-op.",
"DEPRECATED. Use IN instead.",
@@ -1022,9 +1684,7 @@
"IN",
"NOT_IN",
"DISCHARGED"
- ],
- "description": "An operator to apply the subject with.",
- "type": "string"
+ ]
},
"svc": {
"description": "Trusted attributes discharged by the service.",
@@ -1067,6 +1727,12 @@
"type": "array"
},
"logType": {
+ "enumDescriptions": [
+ "Default case. Should never be this.",
+ "Admin reads. Example: CloudIAM getIamPolicy",
+ "Data writes. Example: CloudSQL Users create",
+ "Data reads. Example: CloudSQL Users list"
+ ],
"enum": [
"LOG_TYPE_UNSPECIFIED",
"ADMIN_READ",
@@ -1074,13 +1740,7 @@
"DATA_READ"
],
"description": "The log type that this config enables.",
- "type": "string",
- "enumDescriptions": [
- "Default case. Should never be this.",
- "Admin reads. Example: CloudIAM getIamPolicy",
- "Data writes. Example: CloudSQL Users create",
- "Data reads. Example: CloudSQL Users list"
- ]
+ "type": "string"
}
},
"id": "AuditLogConfig"
@@ -1089,20 +1749,6 @@
"description": "Message type to initiate a read-only transaction.",
"type": "object",
"properties": {
- "maxStaleness": {
- "format": "google-duration",
- "description": "Read data at a timestamp \u003e= `NOW - max_staleness`\nseconds. Guarantees that all writes that have committed more\nthan the specified number of seconds ago are visible. Because\nCloud Spanner chooses the exact timestamp, this mode works even if\nthe client's local clock is substantially skewed from Cloud Spanner\ncommit timestamps.\n\nUseful for reading the freshest data available at a nearby\nreplica, while bounding the possible staleness if the local\nreplica has fallen behind.\n\nNote that this option can only be used in single-use\ntransactions.",
- "type": "string"
- },
- "readTimestamp": {
- "format": "google-datetime",
- "description": "Executes all reads at the given timestamp. Unlike other modes,\nreads at a specific timestamp are repeatable; the same read at\nthe same timestamp always returns the same data. If the\ntimestamp is in the future, the read will block until the\nspecified timestamp, modulo the read's deadline.\n\nUseful for large scale consistent reads such as mapreduces, or\nfor coordinating many reads against a consistent snapshot of the\ndata.",
- "type": "string"
- },
- "returnReadTimestamp": {
- "description": "If true, the Cloud Spanner-selected read timestamp is included in\nthe Transaction message that describes the transaction.",
- "type": "boolean"
- },
"exactStaleness": {
"format": "google-duration",
"description": "Executes all reads at a timestamp that is `exact_staleness`\nold. The timestamp is chosen soon after the read is started.\n\nGuarantees that all writes that have committed more than the\nspecified number of seconds ago are visible. Because Cloud Spanner\nchooses the exact timestamp, this mode works even if the client's\nlocal clock is substantially skewed from Cloud Spanner commit\ntimestamps.\n\nUseful for reading at nearby replicas without the distributed\ntimestamp negotiation overhead of `max_staleness`.",
@@ -1116,6 +1762,20 @@
"format": "google-datetime",
"description": "Executes all reads at a timestamp \u003e= `min_read_timestamp`.\n\nThis is useful for requesting fresher data than some previous\nread, or data that is fresh enough to observe the effects of some\npreviously committed transaction whose timestamp is known.\n\nNote that this option can only be used in single-use transactions.",
"type": "string"
+ },
+ "maxStaleness": {
+ "format": "google-duration",
+ "description": "Read data at a timestamp \u003e= `NOW - max_staleness`\nseconds. Guarantees that all writes that have committed more\nthan the specified number of seconds ago are visible. Because\nCloud Spanner chooses the exact timestamp, this mode works even if\nthe client's local clock is substantially skewed from Cloud Spanner\ncommit timestamps.\n\nUseful for reading the freshest data available at a nearby\nreplica, while bounding the possible staleness if the local\nreplica has fallen behind.\n\nNote that this option can only be used in single-use\ntransactions.",
+ "type": "string"
+ },
+ "readTimestamp": {
+ "format": "google-datetime",
+ "description": "Executes all reads at the given timestamp. Unlike other modes,\nreads at a specific timestamp are repeatable; the same read at\nthe same timestamp always returns the same data. If the\ntimestamp is in the future, the read will block until the\nspecified timestamp, modulo the read's deadline.\n\nUseful for large scale consistent reads such as mapreduces, or\nfor coordinating many reads against a consistent snapshot of the\ndata.",
+ "type": "string"
+ },
+ "returnReadTimestamp": {
+ "description": "If true, the Cloud Spanner-selected read timestamp is included in\nthe Transaction message that describes the transaction.",
+ "type": "boolean"
}
},
"id": "ReadOnly"
@@ -1139,8 +1799,8 @@
"type": "string"
},
"transaction": {
- "$ref": "TransactionSelector",
- "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency."
+ "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency.",
+ "$ref": "TransactionSelector"
},
"resumeToken": {
"format": "byte",
@@ -1170,18 +1830,9 @@
"id": "ExecuteSqlRequest"
},
"Policy": {
+ "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam).",
"type": "object",
"properties": {
- "iamOwned": {
- "type": "boolean"
- },
- "rules": {
- "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.",
- "items": {
- "$ref": "Rule"
- },
- "type": "array"
- },
"version": {
"format": "int32",
"description": "Version of the `Policy`. The default version is 0.",
@@ -1205,14 +1856,29 @@
"format": "byte",
"description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing\npolicy is overwritten blindly.",
"type": "string"
+ },
+ "iamOwned": {
+ "type": "boolean"
+ },
+ "rules": {
+ "description": "If more than one rule is specified, the rules are applied in the following\nmanner:\n- All matching LOG rules are always applied.\n- If any DENY/DENY_WITH_LOG rule matches, permission is denied.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is\n granted.\n Logging will be applied if one or more matching rule requires logging.\n- Otherwise, if no rule applies, permission is denied.",
+ "items": {
+ "$ref": "Rule"
+ },
+ "type": "array"
}
},
- "id": "Policy",
- "description": "Defines an Identity and Access Management (IAM) policy. It is used to\nspecify access control policies for Cloud Platform resources.\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of\n`members` to a `role`, where the members can be user accounts, Google groups,\nGoogle domains, and service accounts. A `role` is a named list of permissions\ndefined by IAM.\n\n**Example**\n\n {\n \"bindings\": [\n {\n \"role\": \"roles/owner\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-other-app@appspot.gserviceaccount.com\",\n ]\n },\n {\n \"role\": \"roles/viewer\",\n \"members\": [\"user:sean@example.com\"]\n }\n ]\n }\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam)."
+ "id": "Policy"
},
"ReadRequest": {
+ "description": "The request for Read and\nStreamingRead.",
"type": "object",
"properties": {
+ "limit": {
+ "format": "int64",
+ "description": "If greater than zero, only the first `limit` rows are yielded. If `limit`\nis zero, the default is no limit.",
+ "type": "string"
+ },
"index": {
"description": "If non-empty, the name of an index on table. This index is\nused instead of the table primary key when interpreting key_set\nand sorting result rows. See key_set for further information.",
"type": "string"
@@ -1229,8 +1895,8 @@
"type": "array"
},
"transaction": {
- "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency.",
- "$ref": "TransactionSelector"
+ "$ref": "TransactionSelector",
+ "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency."
},
"resumeToken": {
"format": "byte",
@@ -1240,22 +1906,14 @@
"table": {
"description": "Required. The name of the table in the database to be read.",
"type": "string"
- },
- "limit": {
- "format": "int64",
- "description": "If greater than zero, only the first `limit` rows are yielded. If `limit`\nis zero, the default is no limit.",
- "type": "string"
}
},
- "id": "ReadRequest",
- "description": "The request for Read and\nStreamingRead."
+ "id": "ReadRequest"
},
"Write": {
+ "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.",
+ "type": "object",
"properties": {
- "table": {
- "type": "string",
- "description": "Required. The table whose rows will be written."
- },
"values": {
"description": "The values to be written. `values` can contain more than one\nlist of values. If it does, then multiple rows are written, one\nfor each entry in `values`. Each list in `values` must have\nexactly as many entries as there are entries in columns\nabove. Sending multiple lists is equivalent to sending multiple\n`Mutation`s, each containing one `values` entry and repeating\ntable and columns. Individual values in each list are\nencoded as described here.",
"items": {
@@ -1272,27 +1930,46 @@
"type": "string"
},
"type": "array"
+ },
+ "table": {
+ "description": "Required. The table whose rows will be written.",
+ "type": "string"
}
},
- "id": "Write",
- "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.",
- "type": "object"
+ "id": "Write"
},
"DataAccessOptions": {
+ "description": "Write a Data Access (Gin) log",
"type": "object",
"properties": {},
- "id": "DataAccessOptions",
- "description": "Write a Data Access (Gin) log"
+ "id": "DataAccessOptions"
},
"ReadWrite": {
- "properties": {},
- "id": "ReadWrite",
"description": "Message type to initiate a read-write transaction. Currently this\ntransaction type has no options.",
- "type": "object"
+ "type": "object",
+ "properties": {},
+ "id": "ReadWrite"
},
"Operation": {
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
"type": "object",
"properties": {
+ "done": {
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
+ "type": "boolean"
+ },
+ "response": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
+ "type": "object"
+ },
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "type": "string"
+ },
"error": {
"$ref": "Status",
"description": "The error result of the operation in case of failure or cancellation."
@@ -1304,42 +1981,16 @@
},
"description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
"type": "object"
- },
- "done": {
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
- "type": "boolean"
- },
- "response": {
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
- "type": "string"
}
},
- "id": "Operation",
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call."
+ "id": "Operation"
},
"Status": {
"description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
"type": "object",
"properties": {
- "code": {
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "type": "integer"
- },
- "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"
- },
"details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
"items": {
"type": "object",
"additionalProperties": {
@@ -1348,16 +1999,23 @@
}
},
"type": "array"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
}
},
"id": "Status"
},
"ResultSet": {
+ "description": "Results from Read or\nExecuteSql.",
+ "type": "object",
"properties": {
- "metadata": {
- "$ref": "ResultSetMetadata",
- "description": "Metadata about the result set, such as row type information."
- },
"stats": {
"description": "Query plan and execution statistics for the query that produced this\nresult set. These can be requested by setting\nExecuteSqlRequest.query_mode.",
"$ref": "ResultSetStats"
@@ -1371,30 +2029,32 @@
"type": "array"
},
"type": "array"
+ },
+ "metadata": {
+ "description": "Metadata about the result set, such as row type information.",
+ "$ref": "ResultSetMetadata"
}
},
- "id": "ResultSet",
- "description": "Results from Read or\nExecuteSql.",
- "type": "object"
+ "id": "ResultSet"
},
"Binding": {
"description": "Associates `members` with a `role`.",
"type": "object",
"properties": {
- "condition": {
- "$ref": "Expr",
- "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL."
- },
"members": {
+ "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n",
"items": {
"type": "string"
},
- "type": "array",
- "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n account. For example, `alice@gmail.com` or `joe@example.com`.\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n For example, `admins@example.com`.\n\n\n* `domain:{domain}`: A Google Apps domain name that represents all the\n users of that domain. For example, `google.com` or `example.com`.\n\n"
+ "type": "array"
},
"role": {
"description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired",
"type": "string"
+ },
+ "condition": {
+ "description": "The condition that is associated with this binding.\nNOTE: an unsatisfied condition will not allow user access via current\nbinding. Different bindings, including their conditions, are examined\nindependently.\nThis field is GOOGLE_INTERNAL.",
+ "$ref": "Expr"
}
},
"id": "Binding"
@@ -1403,16 +2063,16 @@
"description": "Enqueues the given DDL statements to be applied, in order but not\nnecessarily all at once, to the database schema at some point (or\npoints) in the future. The server checks that the statements\nare executable (syntactically valid, name tables that exist, etc.)\nbefore enqueueing them, but they may still fail upon\nlater execution (e.g., if a statement from another batch of\nstatements is applied first and it conflicts in some way, or if\nthere is some data-related problem like a `NULL` value in a column to\nwhich `NOT NULL` would be added). If a statement fails, all\nsubsequent statements in the batch are automatically cancelled.\n\nEach batch of statements is assigned a name which can be used with\nthe Operations API to monitor\nprogress. See the\noperation_id field for more\ndetails.",
"type": "object",
"properties": {
- "operationId": {
- "description": "If empty, the new update request is assigned an\nautomatically-generated operation ID. Otherwise, `operation_id`\nis used to construct the name of the resulting\nOperation.\n\nSpecifying an explicit operation ID simplifies determining\nwhether the statements were executed in the event that the\nUpdateDatabaseDdl call is replayed,\nor the return value is otherwise lost: the database and\n`operation_id` fields can be combined to form the\nname of the resulting\nlongrunning.Operation: `\u003cdatabase\u003e/operations/\u003coperation_id\u003e`.\n\n`operation_id` should be unique within the database, and must be\na valid identifier: `a-z*`. Note that\nautomatically-generated operation IDs always begin with an\nunderscore. If the named operation already exists,\nUpdateDatabaseDdl returns\n`ALREADY_EXISTS`.",
- "type": "string"
- },
"statements": {
"description": "DDL statements to be applied to the database.",
"items": {
"type": "string"
},
"type": "array"
+ },
+ "operationId": {
+ "description": "If empty, the new update request is assigned an\nautomatically-generated operation ID. Otherwise, `operation_id`\nis used to construct the name of the resulting\nOperation.\n\nSpecifying an explicit operation ID simplifies determining\nwhether the statements were executed in the event that the\nUpdateDatabaseDdl call is replayed,\nor the return value is otherwise lost: the database and\n`operation_id` fields can be combined to form the\nname of the resulting\nlongrunning.Operation: `\u003cdatabase\u003e/operations/\u003coperation_id\u003e`.\n\n`operation_id` should be unique within the database, and must be\na valid identifier: `a-z*`. Note that\nautomatically-generated operation IDs always begin with an\nunderscore. If the named operation already exists,\nUpdateDatabaseDdl returns\n`ALREADY_EXISTS`.",
+ "type": "string"
}
},
"id": "UpdateDatabaseDdlRequest"
@@ -1442,11 +2102,596 @@
"type": "string"
},
"stats": {
- "$ref": "ResultSetStats",
- "description": "Query plan and execution statistics for the query that produced this\nstreaming result set. These can be requested by setting\nExecuteSqlRequest.query_mode and are sent\nonly once with the last response in the stream."
+ "description": "Query plan and execution statistics for the query that produced this\nstreaming result set. These can be requested by setting\nExecuteSqlRequest.query_mode and are sent\nonly once with the last response in the stream.",
+ "$ref": "ResultSetStats"
}
},
"id": "PartialResultSet"
+ },
+ "ListOperationsResponse": {
+ "description": "The response message for Operations.ListOperations.",
+ "type": "object",
+ "properties": {
+ "operations": {
+ "description": "A list of operations that matches the specified filter in the request.",
+ "items": {
+ "$ref": "Operation"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "The standard List next-page token.",
+ "type": "string"
+ }
+ },
+ "id": "ListOperationsResponse"
+ },
+ "UpdateInstanceMetadata": {
+ "description": "Metadata type for the operation returned by\nUpdateInstance.",
+ "type": "object",
+ "properties": {
+ "endTime": {
+ "format": "google-datetime",
+ "description": "The time at which this operation failed or was completed successfully.",
+ "type": "string"
+ },
+ "cancelTime": {
+ "format": "google-datetime",
+ "description": "The time at which this operation was cancelled. If set, this operation is\nin the process of undoing itself (which is guaranteed to succeed) and\ncannot be cancelled again.",
+ "type": "string"
+ },
+ "startTime": {
+ "format": "google-datetime",
+ "description": "The time at which UpdateInstance\nrequest was received.",
+ "type": "string"
+ },
+ "instance": {
+ "$ref": "Instance",
+ "description": "The desired end state of the update."
+ }
+ },
+ "id": "UpdateInstanceMetadata"
+ },
+ "ResultSetMetadata": {
+ "description": "Metadata about a ResultSet or PartialResultSet.",
+ "type": "object",
+ "properties": {
+ "transaction": {
+ "description": "If the read or SQL query began a transaction as a side-effect, the\ninformation about the new transaction is yielded here.",
+ "$ref": "Transaction"
+ },
+ "rowType": {
+ "$ref": "StructType",
+ "description": "Indicates the field names and types for the rows in the result\nset. For example, a SQL query like `\"SELECT UserId, UserName FROM\nUsers\"` could return a `row_type` value like:\n\n \"fields\": [\n { \"name\": \"UserId\", \"type\": { \"code\": \"INT64\" } },\n { \"name\": \"UserName\", \"type\": { \"code\": \"STRING\" } },\n ]"
+ }
+ },
+ "id": "ResultSetMetadata"
+ },
+ "TransactionSelector": {
+ "description": "This message is used to select the transaction in which a\nRead or\nExecuteSql call runs.\n\nSee TransactionOptions for more information about transactions.",
+ "type": "object",
+ "properties": {
+ "singleUse": {
+ "description": "Execute the read or SQL query in a temporary transaction.\nThis is the most efficient way to execute a transaction that\nconsists of a single SQL query.",
+ "$ref": "TransactionOptions"
+ },
+ "begin": {
+ "$ref": "TransactionOptions",
+ "description": "Begin a new transaction and execute this read or SQL query in\nit. The transaction ID of the new transaction is returned in\nResultSetMetadata.transaction, which is a Transaction."
+ },
+ "id": {
+ "format": "byte",
+ "description": "Execute the read or SQL query in a previously-started transaction.",
+ "type": "string"
+ }
+ },
+ "id": "TransactionSelector"
+ },
+ "KeySet": {
+ "description": "`KeySet` defines a collection of Cloud Spanner keys and/or key ranges. All\nthe keys are expected to be in the same table or index. The keys need\nnot be sorted in any particular way.\n\nIf the same key is specified multiple times in the set (for example\nif two ranges, two keys, or a key and a range overlap), Cloud Spanner\nbehaves as if the key were only specified once.",
+ "type": "object",
+ "properties": {
+ "ranges": {
+ "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications.",
+ "items": {
+ "$ref": "KeyRange"
+ },
+ "type": "array"
+ },
+ "all": {
+ "description": "For convenience `all` can be set to `true` to indicate that this\n`KeySet` matches all keys in the table or index. Note that any keys\nspecified in `keys` or `ranges` are only yielded once.",
+ "type": "boolean"
+ },
+ "keys": {
+ "description": "A list of specific keys. Entries in `keys` should have exactly as\nmany elements as there are columns in the primary or index key\nwith which this `KeySet` is used. Individual key values are\nencoded as described here.",
+ "items": {
+ "items": {
+ "type": "any"
+ },
+ "type": "array"
+ },
+ "type": "array"
+ }
+ },
+ "id": "KeySet"
+ },
+ "Mutation": {
+ "description": "A modification to one or more Cloud Spanner rows. Mutations can be\napplied to a Cloud Spanner database by sending them in a\nCommit call.",
+ "type": "object",
+ "properties": {
+ "delete": {
+ "$ref": "Delete",
+ "description": "Delete rows from a table. Succeeds whether or not the named\nrows were present."
+ },
+ "insertOrUpdate": {
+ "$ref": "Write",
+ "description": "Like insert, except that if the row already exists, then\nits column values are overwritten with the ones provided. Any\ncolumn values not explicitly written are preserved."
+ },
+ "insert": {
+ "description": "Insert new rows in a table. If any of the rows already exist,\nthe write or transaction fails with error `ALREADY_EXISTS`.",
+ "$ref": "Write"
+ },
+ "update": {
+ "description": "Update existing rows in a table. If any of the rows does not\nalready exist, the transaction fails with error `NOT_FOUND`.",
+ "$ref": "Write"
+ },
+ "replace": {
+ "$ref": "Write",
+ "description": "Like insert, except that if the row already exists, it is\ndeleted, and the column values provided are inserted\ninstead. Unlike insert_or_update, this means any values not\nexplicitly written become `NULL`."
+ }
+ },
+ "id": "Mutation"
+ },
+ "GetDatabaseDdlResponse": {
+ "description": "The response for GetDatabaseDdl.",
+ "type": "object",
+ "properties": {
+ "statements": {
+ "description": "A list of formatted DDL statements defining the schema of the database\nspecified in the request.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "GetDatabaseDdlResponse"
+ },
+ "Database": {
+ "description": "A Cloud Spanner database.",
+ "type": "object",
+ "properties": {
+ "state": {
+ "description": "Output only. The current database state.",
+ "type": "string",
+ "enumDescriptions": [
+ "Not specified.",
+ "The database is still being created. Operations on the database may fail\nwith `FAILED_PRECONDITION` in this state.",
+ "The database is fully created and ready for use."
+ ],
+ "enum": [
+ "STATE_UNSPECIFIED",
+ "CREATING",
+ "READY"
+ ]
+ },
+ "name": {
+ "description": "Required. The name of the database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`,\nwhere `\u003cdatabase\u003e` is as specified in the `CREATE DATABASE`\nstatement. This name can be passed to other API methods to\nidentify the database.",
+ "type": "string"
+ }
+ },
+ "id": "Database"
+ },
+ "Instance": {
+ "description": "An isolated set of Cloud Spanner resources on which databases can be hosted.",
+ "type": "object",
+ "properties": {
+ "labels": {
+ "description": "Cloud Labels are a flexible and lightweight mechanism for organizing cloud\nresources into groups that reflect a customer's organizational needs and\ndeployment strategies. Cloud Labels can be used to filter collections of\nresources. They can be used to control how resource metrics are aggregated.\nAnd they can be used as arguments to policy management rules (e.g. route,\nfirewall, load balancing, etc.).\n\n * Label keys must be between 1 and 63 characters long and must conform to\n the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.\n * Label values must be between 0 and 63 characters long and must conform\n to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.\n * No more than 64 labels can be associated with a given resource.\n\nSee https://goo.gl/xmQnxf for more information on and examples of labels.\n\nIf you plan to use labels in your own code, please note that additional\ncharacters may be allowed in the future. And so you are advised to use an\ninternal label representation, such as JSON, which doesn't rely upon\nspecific characters being disallowed. For example, representing labels\nas the string: name + \"_\" + value would prove problematic if we were to\nallow \"_\" in a future release.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "config": {
+ "description": "Required. The name of the instance's configuration. Values are of the form\n`projects/\u003cproject\u003e/instanceConfigs/\u003cconfiguration\u003e`. See\nalso InstanceConfig and\nListInstanceConfigs.",
+ "type": "string"
+ },
+ "state": {
+ "enumDescriptions": [
+ "Not specified.",
+ "The instance is still being created. Resources may not be\navailable yet, and operations such as database creation may not\nwork.",
+ "The instance is fully created and ready to do work such as\ncreating databases."
+ ],
+ "enum": [
+ "STATE_UNSPECIFIED",
+ "CREATING",
+ "READY"
+ ],
+ "description": "Output only. The current instance state. For\nCreateInstance, the state must be\neither omitted or set to `CREATING`. For\nUpdateInstance, the state must be\neither omitted or set to `READY`.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Required. The descriptive name for this instance as it appears in UIs.\nMust be unique per project and between 4 and 30 characters in length.",
+ "type": "string"
+ },
+ "nodeCount": {
+ "format": "int32",
+ "description": "Required. The number of nodes allocated to this instance. This may be zero\nin API responses for instances that are not yet in state `READY`.\n\nEach Spanner node can provide up to 10,000 QPS of reads or 2000 QPS of\nwrites (writing single rows at 1KB data per row), and 2 TiB storage.\n\nFor optimal performance, we recommend provisioning enough nodes to keep\noverall CPU utilization under 75%.\n\nA minimum of 3 nodes is recommended for production environments. This\nminimum is required for SLAs to apply to your instance.\n\nNote that Cloud Spanner performance is highly dependent on workload, schema\ndesign, and dataset characteristics. The performance numbers above are\nestimates, and assume [best practices](https://cloud.google.com/spanner/docs/bulk-loading)\nare followed.",
+ "type": "integer"
+ }
+ },
+ "id": "Instance"
+ },
+ "SetIamPolicyRequest": {
+ "description": "Request message for `SetIamPolicy` method.",
+ "type": "object",
+ "properties": {
+ "updateMask": {
+ "format": "google-fieldmask",
+ "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\npaths: \"bindings, etag\"\nThis field is only used by Cloud IAM.",
+ "type": "string"
+ },
+ "policy": {
+ "$ref": "Policy",
+ "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
+ }
+ },
+ "id": "SetIamPolicyRequest"
+ },
+ "ListDatabasesResponse": {
+ "description": "The response for ListDatabases.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "`next_page_token` can be sent in a subsequent\nListDatabases call to fetch more\nof the matching databases.",
+ "type": "string"
+ },
+ "databases": {
+ "description": "Databases that matched the request.",
+ "items": {
+ "$ref": "Database"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListDatabasesResponse"
+ },
+ "RollbackRequest": {
+ "description": "The request for Rollback.",
+ "type": "object",
+ "properties": {
+ "transactionId": {
+ "format": "byte",
+ "description": "Required. The transaction to roll back.",
+ "type": "string"
+ }
+ },
+ "id": "RollbackRequest"
+ },
+ "Transaction": {
+ "description": "A transaction.",
+ "type": "object",
+ "properties": {
+ "readTimestamp": {
+ "format": "google-datetime",
+ "description": "For snapshot read-only transactions, the read timestamp chosen\nfor the transaction. Not returned by default: see\nTransactionOptions.ReadOnly.return_read_timestamp.",
+ "type": "string"
+ },
+ "id": {
+ "format": "byte",
+ "description": "`id` may be used to identify the transaction in subsequent\nRead,\nExecuteSql,\nCommit, or\nRollback calls.\n\nSingle-use read-only transactions do not have IDs, because\nsingle-use transactions do not support multiple requests.",
+ "type": "string"
+ }
+ },
+ "id": "Transaction"
+ },
+ "UpdateDatabaseDdlMetadata": {
+ "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.",
+ "type": "object",
+ "properties": {
+ "statements": {
+ "description": "For an update this list contains all the statements. For an\nindividual statement, this list contains only that statement.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "commitTimestamps": {
+ "description": "Reports the commit timestamps of all statements that have\nsucceeded so far, where `commit_timestamps[i]` is the commit\ntimestamp for the statement `statements[i]`.",
+ "items": {
+ "format": "google-datetime",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "database": {
+ "description": "The database being modified.",
+ "type": "string"
+ }
+ },
+ "id": "UpdateDatabaseDdlMetadata"
+ },
+ "CounterOptions": {
+ "description": "Options for counters",
+ "type": "object",
+ "properties": {
+ "field": {
+ "description": "The field value to attribute.",
+ "type": "string"
+ },
+ "metric": {
+ "description": "The metric to update.",
+ "type": "string"
+ }
+ },
+ "id": "CounterOptions"
+ },
+ "StructType": {
+ "description": "`StructType` defines the fields of a STRUCT type.",
+ "type": "object",
+ "properties": {
+ "fields": {
+ "description": "The list of fields that make up this struct. Order is\nsignificant, because values of this struct type are represented as\nlists, where the order of field values matches the order of\nfields in the StructType. In turn, the order of fields\nmatches the order of columns in a read request, or the order of\nfields in the `SELECT` clause of a query.",
+ "items": {
+ "$ref": "Field"
+ },
+ "type": "array"
+ }
+ },
+ "id": "StructType"
+ },
+ "QueryPlan": {
+ "description": "Contains an ordered list of nodes appearing in the query plan.",
+ "type": "object",
+ "properties": {
+ "planNodes": {
+ "description": "The nodes in the query plan. Plan nodes are returned in pre-order starting\nwith the plan root. Each PlanNode's `id` corresponds to its index in\n`plan_nodes`.",
+ "items": {
+ "$ref": "PlanNode"
+ },
+ "type": "array"
+ }
+ },
+ "id": "QueryPlan"
+ },
+ "Field": {
+ "description": "Message representing a single field of a struct.",
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "Type",
+ "description": "The type of the field."
+ },
+ "name": {
+ "description": "The name of the field. For reads, this is the column name. For\nSQL queries, it is the column alias (e.g., `\"Word\"` in the\nquery `\"SELECT 'hello' AS Word\"`), or the column name (e.g.,\n`\"ColName\"` in the query `\"SELECT ColName FROM Table\"`). Some\ncolumns might have an empty name (e.g., !\"SELECT\nUPPER(ColName)\"`). Note that a query result can contain\nmultiple fields with the same name.",
+ "type": "string"
+ }
+ },
+ "id": "Field"
+ },
+ "ResultSetStats": {
+ "description": "Additional statistics about a ResultSet or PartialResultSet.",
+ "type": "object",
+ "properties": {
+ "queryPlan": {
+ "$ref": "QueryPlan",
+ "description": "QueryPlan for the query associated with this result."
+ },
+ "queryStats": {
+ "additionalProperties": {
+ "description": "Properties of the object.",
+ "type": "any"
+ },
+ "description": "Aggregated statistics from the execution of the query. Only present when\nthe query is profiled. For example, a query could return the statistics as\nfollows:\n\n {\n \"rows_returned\": \"3\",\n \"elapsed_time\": \"1.22 secs\",\n \"cpu_time\": \"1.19 secs\"\n }",
+ "type": "object"
+ }
+ },
+ "id": "ResultSetStats"
+ },
+ "TestIamPermissionsRequest": {
+ "description": "Request message for `TestIamPermissions` method.",
+ "type": "object",
+ "properties": {
+ "permissions": {
+ "description": "REQUIRED: The set of permissions to check for 'resource'.\nPermissions with wildcards (such as '*', 'spanner.*', 'spanner.instances.*') are not allowed.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "TestIamPermissionsRequest"
+ },
+ "AuthorizationLoggingOptions": {
+ "description": "Authorization-related information used by Cloud Audit Logging.",
+ "type": "object",
+ "properties": {
+ "permissionType": {
+ "description": "The type of the permission that was checked.",
+ "type": "string",
+ "enumDescriptions": [
+ "Default. Should not be used.",
+ "A read of admin (meta) data.",
+ "A write of admin (meta) data.",
+ "A read of standard data.",
+ "A write of standard data."
+ ],
+ "enum": [
+ "PERMISSION_TYPE_UNSPECIFIED",
+ "ADMIN_READ",
+ "ADMIN_WRITE",
+ "DATA_READ",
+ "DATA_WRITE"
+ ]
+ }
+ },
+ "id": "AuthorizationLoggingOptions"
+ },
+ "CommitResponse": {
+ "description": "The response for Commit.",
+ "type": "object",
+ "properties": {
+ "commitTimestamp": {
+ "format": "google-datetime",
+ "description": "The Cloud Spanner timestamp at which the transaction committed.",
+ "type": "string"
+ }
+ },
+ "id": "CommitResponse"
+ },
+ "Type": {
+ "description": "`Type` indicates the type of a Cloud Spanner value, as might be stored in a\ntable cell or returned from an SQL query.",
+ "type": "object",
+ "properties": {
+ "structType": {
+ "$ref": "StructType",
+ "description": "If code == STRUCT, then `struct_type`\nprovides type information for the struct's fields."
+ },
+ "arrayElementType": {
+ "description": "If code == ARRAY, then `array_element_type`\nis the type of the array elements.",
+ "$ref": "Type"
+ },
+ "code": {
+ "enumDescriptions": [
+ "Not specified.",
+ "Encoded as JSON `true` or `false`.",
+ "Encoded as `string`, in decimal format.",
+ "Encoded as `number`, or the strings `\"NaN\"`, `\"Infinity\"`, or\n`\"-Infinity\"`.",
+ "Encoded as `string` in RFC 3339 timestamp format. The time zone\nmust be present, and must be `\"Z\"`.",
+ "Encoded as `string` in RFC 3339 date format.",
+ "Encoded as `string`.",
+ "Encoded as a base64-encoded `string`, as described in RFC 4648,\nsection 4.",
+ "Encoded as `list`, where the list elements are represented\naccording to array_element_type.",
+ "Encoded as `list`, where list element `i` is represented according\nto [struct_type.fields[i]][google.spanner.v1.StructType.fields]."
+ ],
+ "enum": [
+ "TYPE_CODE_UNSPECIFIED",
+ "BOOL",
+ "INT64",
+ "FLOAT64",
+ "TIMESTAMP",
+ "DATE",
+ "STRING",
+ "BYTES",
+ "ARRAY",
+ "STRUCT"
+ ],
+ "description": "Required. The TypeCode for this type.",
+ "type": "string"
+ }
+ },
+ "id": "Type"
+ },
+ "PlanNode": {
+ "description": "Node information for nodes appearing in a QueryPlan.plan_nodes.",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "additionalProperties": {
+ "description": "Properties of the object.",
+ "type": "any"
+ },
+ "description": "Attributes relevant to the node contained in a group of key-value pairs.\nFor example, a Parameter Reference node could have the following\ninformation in its metadata:\n\n {\n \"parameter_reference\": \"param1\",\n \"parameter_type\": \"array\"\n }",
+ "type": "object"
+ },
+ "executionStats": {
+ "description": "The execution statistics associated with the node, contained in a group of\nkey-value pairs. Only present if the plan was returned as a result of a\nprofile query. For example, number of executions, number of rows/time per\nexecution etc.",
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object.",
+ "type": "any"
+ }
+ },
+ "shortRepresentation": {
+ "description": "Condensed representation for SCALAR nodes.",
+ "$ref": "ShortRepresentation"
+ },
+ "index": {
+ "format": "int32",
+ "description": "The `PlanNode`'s index in node list.",
+ "type": "integer"
+ },
+ "displayName": {
+ "description": "The display name for the node.",
+ "type": "string"
+ },
+ "kind": {
+ "enumDescriptions": [
+ "Not specified.",
+ "Denotes a Relational operator node in the expression tree. Relational\noperators represent iterative processing of rows during query execution.\nFor example, a `TableScan` operation that reads rows from a table.",
+ "Denotes a Scalar node in the expression tree. Scalar nodes represent\nnon-iterable entities in the query plan. For example, constants or\narithmetic operators appearing inside predicate expressions or references\nto column names."
+ ],
+ "enum": [
+ "KIND_UNSPECIFIED",
+ "RELATIONAL",
+ "SCALAR"
+ ],
+ "description": "Used to determine the type of node. May be needed for visualizing\ndifferent kinds of nodes differently. For example, If the node is a\nSCALAR node, it will have a condensed representation\nwhich can be used to directly embed a description of the node in its\nparent.",
+ "type": "string"
+ },
+ "childLinks": {
+ "description": "List of child node `index`es and their relationship to this parent.",
+ "items": {
+ "$ref": "ChildLink"
+ },
+ "type": "array"
+ }
+ },
+ "id": "PlanNode"
+ },
+ "AuditConfig": {
+ "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n {\n \"audit_configs\": [\n {\n \"service\": \"allServices\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n \"exempted_members\": [\n \"user:foo@gmail.com\"\n ]\n },\n {\n \"log_type\": \"DATA_WRITE\",\n },\n {\n \"log_type\": \"ADMIN_READ\",\n }\n ]\n },\n {\n \"service\": \"fooservice.googleapis.com\"\n \"audit_log_configs\": [\n {\n \"log_type\": \"DATA_READ\",\n },\n {\n \"log_type\": \"DATA_WRITE\",\n \"exempted_members\": [\n \"user:bar@gmail.com\"\n ]\n }\n ]\n }\n ]\n }\n\nFor fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts foo@gmail.com from DATA_READ logging, and\nbar@gmail.com from DATA_WRITE logging.",
+ "type": "object",
+ "properties": {
+ "service": {
+ "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.",
+ "type": "string"
+ },
+ "auditLogConfigs": {
+ "description": "The configuration for logging of each type of permission.\nNext ID: 4",
+ "items": {
+ "$ref": "AuditLogConfig"
+ },
+ "type": "array"
+ },
+ "exemptedMembers": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "AuditConfig"
+ },
+ "CreateInstanceMetadata": {
+ "description": "Metadata type for the operation returned by\nCreateInstance.",
+ "type": "object",
+ "properties": {
+ "endTime": {
+ "format": "google-datetime",
+ "description": "The time at which this operation failed or was completed successfully.",
+ "type": "string"
+ },
+ "cancelTime": {
+ "format": "google-datetime",
+ "description": "The time at which this operation was cancelled. If set, this operation is\nin the process of undoing itself (which is guaranteed to succeed) and\ncannot be cancelled again.",
+ "type": "string"
+ },
+ "startTime": {
+ "format": "google-datetime",
+ "description": "The time at which the\nCreateInstance request was\nreceived.",
+ "type": "string"
+ },
+ "instance": {
+ "$ref": "Instance",
+ "description": "The instance being created."
+ }
+ },
+ "id": "CreateInstanceMetadata"
}
},
"protocol": "rest",
@@ -1458,14 +2703,14 @@
"auth": {
"oauth2": {
"scopes": {
+ "https://www.googleapis.com/auth/spanner.data": {
+ "description": "View and manage the contents of your Spanner databases"
+ },
"https://www.googleapis.com/auth/spanner.admin": {
"description": "Administer your Spanner databases"
},
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
- },
- "https://www.googleapis.com/auth/spanner.data": {
- "description": "View and manage the contents of your Spanner databases"
}
}
}
@@ -1475,1221 +2720,5 @@
"name": "spanner",
"batchPath": "batch",
"title": "Cloud Spanner API",
- "ownerName": "Google",
- "resources": {
- "projects": {
- "resources": {
- "instanceConfigs": {
- "methods": {
- "get": {
- "response": {
- "$ref": "InstanceConfig"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "parameters": {
- "name": {
- "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}",
- "id": "spanner.projects.instanceConfigs.get",
- "path": "v1/{+name}",
- "description": "Gets information about a particular instance configuration."
- },
- "list": {
- "path": "v1/{+parent}/instanceConfigs",
- "id": "spanner.projects.instanceConfigs.list",
- "description": "Lists the supported instance configurations for a given project.",
- "httpMethod": "GET",
- "parameterOrder": [
- "parent"
- ],
- "response": {
- "$ref": "ListInstanceConfigsResponse"
- },
- "parameters": {
- "parent": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "Required. The name of the project for which a list of supported instance\nconfigurations is requested. Values are of the form\n`projects/\u003cproject\u003e`."
- },
- "pageToken": {
- "type": "string",
- "location": "query",
- "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse."
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "Number of instance configurations to be returned in the response. If 0 or\nless, defaults to the server's maximum allowed page size.",
- "type": "integer"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instanceConfigs"
- }
- }
- },
- "instances": {
- "methods": {
- "delete": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/instances/[^/]+$",
- "location": "path",
- "description": "Required. The name of the instance to be deleted. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}",
- "id": "spanner.projects.instances.delete",
- "path": "v1/{+name}",
- "description": "Deletes an instance.\n\nImmediately upon completion of the request:\n\n * Billing ceases for all of the instance's reserved resources.\n\nSoon afterward:\n\n * The instance and *all of its databases* immediately and\n irrevocably disappear from the API. All data in the databases\n is permanently deleted."
- },
- "list": {
- "description": "Lists all instances in the given project.",
- "httpMethod": "GET",
- "parameterOrder": [
- "parent"
- ],
- "response": {
- "$ref": "ListInstancesResponse"
- },
- "parameters": {
- "pageSize": {
- "format": "int32",
- "description": "Number of instances to be returned in the response. If 0 or less, defaults\nto the server's maximum allowed page size.",
- "type": "integer",
- "location": "query"
- },
- "parent": {
- "location": "path",
- "description": "Required. The name of the project for which a list of instances is\nrequested. Values are of the form `projects/\u003cproject\u003e`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+$"
- },
- "filter": {
- "location": "query",
- "description": "An expression for filtering the results of the request. Filter rules are\ncase insensitive. The fields eligible for filtering are:\n\n * name\n * display_name\n * labels.key where key is the name of a label\n\nSome examples of using filters are:\n\n * name:* --\u003e The instance has a name.\n * name:Howl --\u003e The instance's name contains the string \"howl\".\n * name:HOWL --\u003e Equivalent to above.\n * NAME:howl --\u003e Equivalent to above.\n * labels.env:* --\u003e The instance has the label \"env\".\n * labels.env:dev --\u003e The instance has the label \"env\" and the value of\n the label contains the string \"dev\".\n * name:howl labels.env:dev --\u003e The instance's name contains \"howl\" and\n it has the label \"env\" with its value\n containing \"dev\".",
- "type": "string"
- },
- "pageToken": {
- "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.",
- "type": "string",
- "location": "query"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances",
- "path": "v1/{+parent}/instances",
- "id": "spanner.projects.instances.list"
- },
- "setIamPolicy": {
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "Policy"
- },
- "parameters": {
- "resource": {
- "pattern": "^projects/[^/]+/instances/[^/]+$",
- "location": "path",
- "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:setIamPolicy",
- "path": "v1/{+resource}:setIamPolicy",
- "id": "spanner.projects.instances.setIamPolicy",
- "description": "Sets the access control policy on an instance resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.instances.setIamPolicy` on\nresource.",
- "request": {
- "$ref": "SetIamPolicyRequest"
- }
- },
- "create": {
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "POST",
- "parameters": {
- "parent": {
- "pattern": "^projects/[^/]+$",
- "location": "path",
- "description": "Required. The name of the project in which to create the instance. Values\nare of the form `projects/\u003cproject\u003e`.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances",
- "id": "spanner.projects.instances.create",
- "path": "v1/{+parent}/instances",
- "description": "Creates an instance and begins preparing it to begin serving. The\nreturned long-running operation\ncan be used to track the progress of preparing the new\ninstance. The instance name is assigned by the caller. If the\nnamed instance already exists, `CreateInstance` returns\n`ALREADY_EXISTS`.\n\nImmediately upon completion of this request:\n\n * The instance is readable via the API, with all requested attributes\n but no allocated resources. Its state is `CREATING`.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation renders the instance immediately unreadable\n via the API.\n * The instance can be deleted.\n * All other attempts to modify the instance are rejected.\n\nUpon completion of the returned operation:\n\n * Billing for all successfully-allocated resources begins (some types\n may have lower than the requested levels).\n * Databases can be created in the instance.\n * The instance's allocated resource levels are readable via the API.\n * The instance's state becomes `READY`.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track creation of the instance. The\nmetadata field type is\nCreateInstanceMetadata.\nThe response field type is\nInstance, if successful.",
- "request": {
- "$ref": "CreateInstanceRequest"
- }
- },
- "getIamPolicy": {
- "request": {
- "$ref": "GetIamPolicyRequest"
- },
- "description": "Gets the access control policy for an instance resource. Returns an empty\npolicy if an instance exists but does not have a policy set.\n\nAuthorization requires `spanner.instances.getIamPolicy` on\nresource.",
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:getIamPolicy",
- "id": "spanner.projects.instances.getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy"
- },
- "patch": {
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "PATCH",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/instances/[^/]+$",
- "location": "path",
- "description": "Required. A unique identifier for the instance, which cannot be changed\nafter the instance is created. Values are of the form\n`projects/\u003cproject\u003e/instances/a-z*[a-z0-9]`. The final\nsegment of the name must be between 6 and 30 characters in length.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}",
- "id": "spanner.projects.instances.patch",
- "path": "v1/{+name}",
- "request": {
- "$ref": "UpdateInstanceRequest"
- },
- "description": "Updates an instance, and begins allocating or releasing resources\nas requested. The returned long-running\noperation can be used to track the\nprogress of updating the instance. If the named instance does not\nexist, returns `NOT_FOUND`.\n\nImmediately upon completion of this request:\n\n * For resource types for which a decrease in the instance's allocation\n has been requested, billing is based on the newly-requested level.\n\nUntil completion of the returned operation:\n\n * Cancelling the operation sets its metadata's\n cancel_time, and begins\n restoring resources to their pre-request values. The operation\n is guaranteed to succeed at undoing all resource changes,\n after which point it terminates with a `CANCELLED` status.\n * All other attempts to modify the instance are rejected.\n * Reading the instance via the API continues to give the pre-request\n resource levels.\n\nUpon completion of the returned operation:\n\n * Billing begins for all successfully-allocated resources (some types\n may have lower than the requested levels).\n * All newly-reserved resources are available for serving the instance's\n tables.\n * The instance's new resource levels are readable via the API.\n\nThe returned long-running operation will\nhave a name of the format `\u003cinstance_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track the instance modification. The\nmetadata field type is\nUpdateInstanceMetadata.\nThe response field type is\nInstance, if successful.\n\nAuthorization requires `spanner.instances.update` permission on\nresource name."
- },
- "get": {
- "response": {
- "$ref": "Instance"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "name": {
- "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}",
- "id": "spanner.projects.instances.get",
- "path": "v1/{+name}",
- "description": "Gets information about a particular instance."
- },
- "testIamPermissions": {
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:testIamPermissions",
- "id": "spanner.projects.instances.testIamPermissions",
- "path": "v1/{+resource}:testIamPermissions",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "description": "Returns permissions that the caller has on the specified instance resource.\n\nAttempting this RPC on a non-existent Cloud Spanner instance resource will\nresult in a NOT_FOUND error if the user has `spanner.instances.list`\npermission on the containing Google Cloud Project. Otherwise returns an\nempty set of permissions."
- }
- },
- "resources": {
- "operations": {
- "methods": {
- "cancel": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$",
- "location": "path",
- "description": "The name of the operation resource to be cancelled."
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel",
- "id": "spanner.projects.instances.operations.cancel",
- "path": "v1/{+name}:cancel",
- "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`."
- },
- "delete": {
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}",
- "path": "v1/{+name}",
- "id": "spanner.projects.instances.operations.delete",
- "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$",
- "location": "path",
- "description": "The name of the operation resource to be deleted.",
- "type": "string",
- "required": true
- }
- }
- },
- "get": {
- "response": {
- "$ref": "Operation"
- },
- "httpMethod": "GET",
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "The name of the operation resource.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}",
- "id": "spanner.projects.instances.operations.get",
- "path": "v1/{+name}",
- "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice."
- },
- "list": {
- "response": {
- "$ref": "ListOperationsResponse"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "filter": {
- "description": "The standard list filter.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "description": "The standard list page token.",
- "type": "string",
- "location": "query"
- },
- "name": {
- "pattern": "^projects/[^/]+/instances/[^/]+/operations$",
- "location": "path",
- "description": "The name of the operation's parent resource.",
- "type": "string",
- "required": true
- },
- "pageSize": {
- "format": "int32",
- "description": "The standard list page size.",
- "type": "integer",
- "location": "query"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations",
- "id": "spanner.projects.instances.operations.list",
- "path": "v1/{+name}",
- "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id."
- }
- }
- },
- "databases": {
- "methods": {
- "getDdl": {
- "id": "spanner.projects.instances.databases.getDdl",
- "path": "v1/{+database}/ddl",
- "description": "Returns the schema of a Cloud Spanner database as a list of formatted\nDDL statements. This method does not show pending schema updates, those may\nbe queried using the Operations API.",
- "response": {
- "$ref": "GetDatabaseDdlResponse"
- },
- "parameterOrder": [
- "database"
- ],
- "httpMethod": "GET",
- "parameters": {
- "database": {
- "location": "path",
- "description": "Required. The database whose schema we wish to get.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl"
- },
- "list": {
- "description": "Lists Cloud Spanner databases.",
- "parameterOrder": [
- "parent"
- ],
- "httpMethod": "GET",
- "response": {
- "$ref": "ListDatabasesResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "pageToken": {
- "location": "query",
- "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListDatabasesResponse.",
- "type": "string"
- },
- "pageSize": {
- "format": "int32",
- "description": "Number of databases to be returned in the response. If 0 or less,\ndefaults to the server's maximum allowed page size.",
- "type": "integer",
- "location": "query"
- },
- "parent": {
- "location": "path",
- "description": "Required. The instance whose databases should be listed.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+$"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases",
- "id": "spanner.projects.instances.databases.list",
- "path": "v1/{+parent}/databases"
- },
- "setIamPolicy": {
- "id": "spanner.projects.instances.databases.setIamPolicy",
- "path": "v1/{+resource}:setIamPolicy",
- "description": "Sets the access control policy on a database resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.databases.setIamPolicy` permission on\nresource.",
- "request": {
- "$ref": "SetIamPolicyRequest"
- },
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "parameters": {
- "resource": {
- "description": "REQUIRED: The Cloud Spanner resource for which the policy is being set. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for databases resources.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:setIamPolicy"
- },
- "create": {
- "description": "Creates a new Cloud Spanner database and starts to prepare it for serving.\nThe returned long-running operation will\nhave a name of the format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and\ncan be used to track preparation of the database. The\nmetadata field type is\nCreateDatabaseMetadata. The\nresponse field type is\nDatabase, if successful.",
- "request": {
- "$ref": "CreateDatabaseRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "parent"
- ],
- "response": {
- "$ref": "Operation"
- },
- "parameters": {
- "parent": {
- "pattern": "^projects/[^/]+/instances/[^/]+$",
- "location": "path",
- "description": "Required. The name of the instance that will serve the new database.\nValues are of the form `projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases",
- "path": "v1/{+parent}/databases",
- "id": "spanner.projects.instances.databases.create"
- },
- "getIamPolicy": {
- "response": {
- "$ref": "Policy"
- },
- "parameterOrder": [
- "resource"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "resource": {
- "description": "REQUIRED: The Cloud Spanner resource for which the policy is being retrieved. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:getIamPolicy",
- "id": "spanner.projects.instances.databases.getIamPolicy",
- "path": "v1/{+resource}:getIamPolicy",
- "request": {
- "$ref": "GetIamPolicyRequest"
- },
- "description": "Gets the access control policy for a database resource. Returns an empty\npolicy if a database exists but does not have a policy set.\n\nAuthorization requires `spanner.databases.getIamPolicy` permission on\nresource."
- },
- "get": {
- "httpMethod": "GET",
- "response": {
- "$ref": "Database"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
- "location": "path",
- "description": "Required. The name of the requested database. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e/databases/\u003cdatabase\u003e`."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}",
- "path": "v1/{+name}",
- "id": "spanner.projects.instances.databases.get",
- "description": "Gets the state of a Cloud Spanner database."
- },
- "dropDatabase": {
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "database"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "database": {
- "location": "path",
- "description": "Required. The database to be dropped.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}",
- "path": "v1/{+database}",
- "id": "spanner.projects.instances.databases.dropDatabase",
- "description": "Drops (aka deletes) a Cloud Spanner database."
- },
- "updateDdl": {
- "httpMethod": "PATCH",
- "parameterOrder": [
- "database"
- ],
- "response": {
- "$ref": "Operation"
- },
- "parameters": {
- "database": {
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
- "location": "path",
- "description": "Required. The database to update.",
- "type": "string",
- "required": true
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl",
- "path": "v1/{+database}/ddl",
- "id": "spanner.projects.instances.databases.updateDdl",
- "description": "Updates the schema of a Cloud Spanner database by\ncreating/altering/dropping tables, columns, indexes, etc. The returned\nlong-running operation will have a name of\nthe format `\u003cdatabase_name\u003e/operations/\u003coperation_id\u003e` and can be used to\ntrack execution of the schema change(s). The\nmetadata field type is\nUpdateDatabaseDdlMetadata. The operation has no response.",
- "request": {
- "$ref": "UpdateDatabaseDdlRequest"
- }
- },
- "testIamPermissions": {
- "path": "v1/{+resource}:testIamPermissions",
- "id": "spanner.projects.instances.databases.testIamPermissions",
- "description": "Returns permissions that the caller has on the specified database resource.\n\nAttempting this RPC on a non-existent Cloud Spanner database will result in\na NOT_FOUND error if the user has `spanner.databases.list` permission on\nthe containing Cloud Spanner instance. Otherwise returns an empty set of\npermissions.",
- "request": {
- "$ref": "TestIamPermissionsRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "resource"
- ],
- "response": {
- "$ref": "TestIamPermissionsResponse"
- },
- "parameters": {
- "resource": {
- "description": "REQUIRED: The Cloud Spanner resource for which permissions are being tested. The format is `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e` for instance resources and `projects/\u003cproject ID\u003e/instances/\u003cinstance ID\u003e/databases/\u003cdatabase ID\u003e` for database resources.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:testIamPermissions"
- }
- },
- "resources": {
- "sessions": {
- "methods": {
- "read": {
- "httpMethod": "POST",
- "parameterOrder": [
- "session"
- ],
- "response": {
- "$ref": "ResultSet"
- },
- "parameters": {
- "session": {
- "description": "Required. The session in which the read should be performed.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:read",
- "path": "v1/{+session}:read",
- "id": "spanner.projects.instances.databases.sessions.read",
- "description": "Reads rows from the database using key lookups and scans, as a\nsimple key/value style alternative to\nExecuteSql. This method cannot be used to\nreturn a result set larger than 10 MiB; if the read matches more\ndata than that, the read fails with a `FAILED_PRECONDITION`\nerror.\n\nReads inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be yielded in streaming fashion by calling\nStreamingRead instead.",
- "request": {
- "$ref": "ReadRequest"
- }
- },
- "get": {
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}",
- "path": "v1/{+name}",
- "id": "spanner.projects.instances.databases.sessions.get",
- "description": "Gets a session. Returns `NOT_FOUND` if the session does not exist.\nThis is mainly useful for determining whether a session is still\nalive.",
- "httpMethod": "GET",
- "response": {
- "$ref": "Session"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "Required. The name of the session to retrieve.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ]
- },
- "commit": {
- "description": "Commits a transaction. The request includes the mutations to be\napplied to rows in the database.\n\n`Commit` might return an `ABORTED` error. This can occur at any time;\ncommonly, the cause is conflicts with concurrent\ntransactions. However, it can also happen for a variety of other\nreasons. If `Commit` returns `ABORTED`, the caller should re-attempt\nthe transaction from the beginning, re-using the same session.",
- "request": {
- "$ref": "CommitRequest"
- },
- "response": {
- "$ref": "CommitResponse"
- },
- "parameterOrder": [
- "session"
- ],
- "httpMethod": "POST",
- "parameters": {
- "session": {
- "description": "Required. The session in which the transaction to be committed is running.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:commit",
- "id": "spanner.projects.instances.databases.sessions.commit",
- "path": "v1/{+session}:commit"
- },
- "beginTransaction": {
- "response": {
- "$ref": "Transaction"
- },
- "parameterOrder": [
- "session"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "parameters": {
- "session": {
- "description": "Required. The session in which the transaction runs.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:beginTransaction",
- "id": "spanner.projects.instances.databases.sessions.beginTransaction",
- "path": "v1/{+session}:beginTransaction",
- "request": {
- "$ref": "BeginTransactionRequest"
- },
- "description": "Begins a new transaction. This step can often be skipped:\nRead, ExecuteSql and\nCommit can begin a new transaction as a\nside-effect."
- },
- "delete": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "DELETE",
- "parameters": {
- "name": {
- "description": "Required. The name of the session to delete.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}",
- "id": "spanner.projects.instances.databases.sessions.delete",
- "path": "v1/{+name}",
- "description": "Ends a session, releasing server resources associated with it."
- },
- "executeStreamingSql": {
- "parameters": {
- "session": {
- "description": "Required. The session in which the SQL query should be performed.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeStreamingSql",
- "path": "v1/{+session}:executeStreamingSql",
- "id": "spanner.projects.instances.databases.sessions.executeStreamingSql",
- "description": "Like ExecuteSql, except returns the result\nset as a stream. Unlike ExecuteSql, there\nis no limit on the size of the returned result set. However, no\nindividual row in the result set can exceed 100 MiB, and no\ncolumn value can exceed 10 MiB.",
- "request": {
- "$ref": "ExecuteSqlRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "session"
- ],
- "response": {
- "$ref": "PartialResultSet"
- }
- },
- "executeSql": {
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeSql",
- "path": "v1/{+session}:executeSql",
- "id": "spanner.projects.instances.databases.sessions.executeSql",
- "description": "Executes an SQL query, returning all rows in a single reply. This\nmethod cannot be used to return a result set larger than 10 MiB;\nif the query yields more data than that, the query fails with\na `FAILED_PRECONDITION` error.\n\nQueries inside read-write transactions might return `ABORTED`. If\nthis occurs, the application should restart the transaction from\nthe beginning. See Transaction for more details.\n\nLarger result sets can be fetched in streaming fashion by calling\nExecuteStreamingSql instead.",
- "request": {
- "$ref": "ExecuteSqlRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "session"
- ],
- "response": {
- "$ref": "ResultSet"
- },
- "parameters": {
- "session": {
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
- "location": "path",
- "description": "Required. The session in which the SQL query should be performed."
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ]
- },
- "rollback": {
- "path": "v1/{+session}:rollback",
- "id": "spanner.projects.instances.databases.sessions.rollback",
- "description": "Rolls back a transaction, releasing any locks it holds. It is a good\nidea to call this for any transaction that includes one or more\nRead or ExecuteSql requests and\nultimately decides not to commit.\n\n`Rollback` returns `OK` if it successfully aborts the transaction, the\ntransaction was already aborted, or the transaction is not\nfound. `Rollback` never returns `ABORTED`.",
- "request": {
- "$ref": "RollbackRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "session"
- ],
- "response": {
- "$ref": "Empty"
- },
- "parameters": {
- "session": {
- "location": "path",
- "description": "Required. The session in which the transaction to roll back is running.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:rollback"
- },
- "streamingRead": {
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:streamingRead",
- "id": "spanner.projects.instances.databases.sessions.streamingRead",
- "path": "v1/{+session}:streamingRead",
- "request": {
- "$ref": "ReadRequest"
- },
- "description": "Like Read, except returns the result set as a\nstream. Unlike Read, there is no limit on the\nsize of the returned result set. However, no individual row in\nthe result set can exceed 100 MiB, and no column value can exceed\n10 MiB.",
- "response": {
- "$ref": "PartialResultSet"
- },
- "parameterOrder": [
- "session"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "parameters": {
- "session": {
- "description": "Required. The session in which the read should be performed.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$",
- "location": "path"
- }
- }
- },
- "create": {
- "response": {
- "$ref": "Session"
- },
- "parameterOrder": [
- "database"
- ],
- "httpMethod": "POST",
- "parameters": {
- "database": {
- "description": "Required. The database in which the new session is created.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.data"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions",
- "id": "spanner.projects.instances.databases.sessions.create",
- "path": "v1/{+database}/sessions",
- "description": "Creates a new session. A session can be used to perform\ntransactions that read and/or modify data in a Cloud Spanner database.\nSessions are meant to be reused for many consecutive\ntransactions.\n\nSessions can only execute one transaction at a time. To execute\nmultiple concurrent read-write/write-only transactions, create\nmultiple sessions. Note that standalone reads and queries use a\ntransaction internally, and count toward the one transaction\nlimit.\n\nCloud Spanner limits the number of sessions that can exist at any given\ntime; thus, it is a good idea to delete idle and/or unneeded sessions.\nAside from explicit deletes, Cloud Spanner can delete sessions for which no\noperations are sent for more than an hour. If a session is deleted,\nrequests to it return `NOT_FOUND`.\n\nIdle sessions can be kept alive by sending a trivial SQL query\nperiodically, e.g., `\"SELECT 1\"`."
- }
- }
- },
- "operations": {
- "methods": {
- "cancel": {
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "name": {
- "description": "The name of the operation resource to be cancelled.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}:cancel",
- "id": "spanner.projects.instances.databases.operations.cancel",
- "path": "v1/{+name}:cancel",
- "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`."
- },
- "delete": {
- "path": "v1/{+name}",
- "id": "spanner.projects.instances.databases.operations.delete",
- "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "name": {
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$",
- "location": "path",
- "description": "The name of the operation resource to be deleted.",
- "type": "string",
- "required": true
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}"
- },
- "get": {
- "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "parameters": {
- "name": {
- "description": "The name of the operation resource.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}",
- "id": "spanner.projects.instances.databases.operations.get",
- "path": "v1/{+name}"
- },
- "list": {
- "response": {
- "$ref": "ListOperationsResponse"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform",
- "https://www.googleapis.com/auth/spanner.admin"
- ],
- "parameters": {
- "filter": {
- "type": "string",
- "location": "query",
- "description": "The standard list filter."
- },
- "pageToken": {
- "location": "query",
- "description": "The standard list page token.",
- "type": "string"
- },
- "name": {
- "description": "The name of the operation's parent resource.",
- "type": "string",
- "required": true,
- "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$",
- "location": "path"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "The standard list page size.",
- "type": "integer"
- }
- },
- "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations",
- "id": "spanner.projects.instances.databases.operations.list",
- "path": "v1/{+name}",
- "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id."
- }
- }
- }
- }
- }
- }
- }
- }
- }
- },
- "parameters": {
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
- },
- "upload_protocol": {
- "type": "string",
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "default": "true",
- "type": "boolean",
- "location": "query"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "fields": {
- "location": "query",
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string"
- },
- "callback": {
- "description": "JSONP",
- "type": "string",
- "location": "query"
- },
- "$.xgafv": {
- "location": "query",
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ]
- },
- "alt": {
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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",
- "description": "Data format for response.",
- "default": "json"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "quotaUser": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "pp": {
- "default": "true",
- "type": "boolean",
- "location": "query",
- "description": "Pretty-print response."
- }
- },
- "version": "v1",
- "baseUrl": "https://spanner.googleapis.com/",
- "kind": "discovery#restDescription",
- "servicePath": "",
- "description": "Cloud Spanner is a managed, mission-critical, globally consistent and scalable relational database service.",
- "basePath": "",
- "id": "spanner:v1",
- "documentationLink": "https://cloud.google.com/spanner/",
- "revision": "20170613",
- "discoveryVersion": "v1",
- "version_module": "True"
+ "ownerName": "Google"
}
diff --git a/vendor/google.golang.org/api/spanner/v1/spanner-gen.go b/vendor/google.golang.org/api/spanner/v1/spanner-gen.go
index ffa9eb2..bf88a44 100644
--- a/vendor/google.golang.org/api/spanner/v1/spanner-gen.go
+++ b/vendor/google.golang.org/api/spanner/v1/spanner-gen.go
@@ -319,6 +319,43 @@ func (s *AuditLogConfig) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+// AuthorizationLoggingOptions: Authorization-related information used
+// by Cloud Audit Logging.
+type AuthorizationLoggingOptions struct {
+ // PermissionType: The type of the permission that was checked.
+ //
+ // Possible values:
+ // "PERMISSION_TYPE_UNSPECIFIED" - Default. Should not be used.
+ // "ADMIN_READ" - A read of admin (meta) data.
+ // "ADMIN_WRITE" - A write of admin (meta) data.
+ // "DATA_READ" - A read of standard data.
+ // "DATA_WRITE" - A write of standard data.
+ PermissionType string `json:"permissionType,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "PermissionType") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "PermissionType") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AuthorizationLoggingOptions) MarshalJSON() ([]byte, error) {
+ type noMethod AuthorizationLoggingOptions
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// BeginTransactionRequest: The request for BeginTransaction.
type BeginTransactionRequest struct {
// Options: Required. Options for the new transaction.
@@ -478,6 +515,10 @@ func (s *ChildLink) MarshalJSON() ([]byte, error) {
// CloudAuditOptions: Write a Cloud Audit log
type CloudAuditOptions struct {
+ // AuthorizationLoggingOptions: Information used by the Cloud Audit
+ // Logging pipeline.
+ AuthorizationLoggingOptions *AuthorizationLoggingOptions `json:"authorizationLoggingOptions,omitempty"`
+
// LogName: The log_name to populate in the Cloud Audit Record.
//
// Possible values:
@@ -488,20 +529,22 @@ type CloudAuditOptions struct {
// "cloudaudit.googleapis.com/data_access"
LogName string `json:"logName,omitempty"`
- // ForceSendFields is a list of field names (e.g. "LogName") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
+ // ForceSendFields is a list of field names (e.g.
+ // "AuthorizationLoggingOptions") to unconditionally include in API
+ // requests. By default, fields with empty values are omitted from API
+ // requests. However, any non-pointer, non-interface field appearing in
+ // ForceSendFields will be sent to the server regardless of whether the
+ // field is empty or not. This may be used to include empty fields in
+ // Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "LogName") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
+ // NullFields is a list of field names (e.g.
+ // "AuthorizationLoggingOptions") to include in API requests with the
+ // JSON null value. By default, fields with empty values are omitted
+ // from API requests. However, any field with an empty value appearing
+ // in NullFields will be sent to the server as null. It is an error if a
+ // field in this list has a non-empty value. This may be used to include
+ // null fields in Patch requests.
NullFields []string `json:"-"`
}
@@ -1097,7 +1140,7 @@ type Expr struct {
Description string `json:"description,omitempty"`
// Expression: Textual representation of an expression in
- // [Common Expression Language](http://go/api-expr) syntax.
+ // Common Expression Language syntax.
//
// The application context of the containing message determines
// which
@@ -1278,7 +1321,29 @@ type Instance struct {
// NodeCount: Required. The number of nodes allocated to this instance.
// This may be zero
- // in API responses for instances that are not yet in state `READY`.
+ // in API responses for instances that are not yet in state
+ // `READY`.
+ //
+ // Each Spanner node can provide up to 10,000 QPS of reads or 2000 QPS
+ // of
+ // writes (writing single rows at 1KB data per row), and 2 TiB
+ // storage.
+ //
+ // For optimal performance, we recommend provisioning enough nodes to
+ // keep
+ // overall CPU utilization under 75%.
+ //
+ // A minimum of 3 nodes is recommended for production environments.
+ // This
+ // minimum is required for SLAs to apply to your instance.
+ //
+ // Note that Cloud Spanner performance is highly dependent on workload,
+ // schema
+ // design, and dataset characteristics. The performance numbers above
+ // are
+ // estimates, and assume [best
+ // practices](https://cloud.google.com/spanner/docs/bulk-loading)
+ // are followed.
NodeCount int64 `json:"nodeCount,omitempty"`
// State: Output only. The current instance state. For
@@ -1716,6 +1781,35 @@ func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
}
// LogConfig: Specifies what kind of log the caller must write
+// Increment a streamz counter with the specified metric and field
+// names.
+//
+// Metric names should start with a '/', generally be
+// lowercase-only,
+// and end in "_count". Field names should not contain an initial
+// slash.
+// The actual exported metric names will have "/iam/policy"
+// prepended.
+//
+// Field names correspond to IAM request parameters and field values
+// are
+// their respective values.
+//
+// At present the only supported field names are
+// - "iam_principal", corresponding to IAMContext.principal;
+// - "" (empty string), resulting in one aggretated counter with no
+// field.
+//
+// Examples:
+// counter { metric: "/debug_access_count" field: "iam_principal" }
+// ==> increment counter /iam/policy/backend_debug_access_count
+// {iam_principal=[value of
+// IAMContext.principal]}
+//
+// At this time we do not support:
+// * multiple field names (though this may be supported in the future)
+// * decrementing the counter
+// * incrementing it by anything other than 1
type LogConfig struct {
// CloudAudit: Cloud audit options.
CloudAudit *CloudAuditOptions `json:"cloudAudit,omitempty"`
@@ -2866,9 +2960,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
diff --git a/vendor/google.golang.org/api/speech/v1/speech-api.json b/vendor/google.golang.org/api/speech/v1/speech-api.json
index 75c6d41..c851d4e 100644
--- a/vendor/google.golang.org/api/speech/v1/speech-api.json
+++ b/vendor/google.golang.org/api/speech/v1/speech-api.json
@@ -1,23 +1,366 @@
{
+ "ownerDomain": "google.com",
+ "name": "speech",
+ "batchPath": "batch",
+ "title": "Google Cloud Speech API",
+ "ownerName": "Google",
+ "resources": {
+ "operations": {
+ "methods": {
+ "cancel": {
+ "httpMethod": "POST",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {
+ "name": {
+ "pattern": "^[^/]+$",
+ "location": "path",
+ "description": "The name of the operation resource to be cancelled.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/operations/{operationsId}:cancel",
+ "path": "v1/operations/{+name}:cancel",
+ "id": "speech.operations.cancel",
+ "request": {
+ "$ref": "CancelOperationRequest"
+ },
+ "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`."
+ },
+ "delete": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "parameters": {
+ "name": {
+ "description": "The name of the operation resource to be deleted.",
+ "type": "string",
+ "required": true,
+ "pattern": "^[^/]+$",
+ "location": "path"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "flatPath": "v1/operations/{operationsId}",
+ "id": "speech.operations.delete",
+ "path": "v1/operations/{+name}",
+ "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`."
+ },
+ "get": {
+ "path": "v1/operations/{+name}",
+ "id": "speech.operations.get",
+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameters": {
+ "name": {
+ "pattern": "^[^/]+$",
+ "location": "path",
+ "description": "The name of the operation resource.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "flatPath": "v1/operations/{operationsId}"
+ },
+ "list": {
+ "id": "speech.operations.list",
+ "path": "v1/operations",
+ "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
+ "response": {
+ "$ref": "ListOperationsResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {
+ "filter": {
+ "description": "The standard list filter.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "The standard list page token.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the operation's parent resource.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "The standard list page size.",
+ "type": "integer"
+ }
+ },
+ "flatPath": "v1/operations"
+ }
+ }
+ },
+ "speech": {
+ "methods": {
+ "longrunningrecognize": {
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "Operation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {},
+ "flatPath": "v1/speech:longrunningrecognize",
+ "path": "v1/speech:longrunningrecognize",
+ "id": "speech.speech.longrunningrecognize",
+ "request": {
+ "$ref": "LongRunningRecognizeRequest"
+ },
+ "description": "Performs asynchronous speech recognition: receive results via the\ngoogle.longrunning.Operations interface. Returns either an\n`Operation.error` or an `Operation.response` which contains\na `LongRunningRecognizeResponse` message."
+ },
+ "recognize": {
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "RecognizeResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {},
+ "flatPath": "v1/speech:recognize",
+ "path": "v1/speech:recognize",
+ "id": "speech.speech.recognize",
+ "request": {
+ "$ref": "RecognizeRequest"
+ },
+ "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed."
+ }
+ }
+ }
+ },
+ "parameters": {
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
+ "location": "query"
+ },
+ "upload_protocol": {
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string"
+ },
+ "prettyPrint": {
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "callback": {
+ "location": "query",
+ "description": "JSONP",
+ "type": "string"
+ },
+ "$.xgafv": {
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string",
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query"
+ },
+ "alt": {
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "access_token": {
+ "location": "query",
+ "description": "OAuth access token.",
+ "type": "string"
+ },
+ "quotaUser": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ }
+ },
+ "version": "v1",
+ "baseUrl": "https://speech.googleapis.com/",
+ "kind": "discovery#restDescription",
+ "description": "Converts audio to text by applying powerful neural network models.",
+ "servicePath": "",
"basePath": "",
- "revision": "20170624",
+ "revision": "20170822",
"documentationLink": "https://cloud.google.com/speech/",
"id": "speech:v1",
"discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
+ "RecognizeRequest": {
+ "description": "The top-level message sent by the client for the `Recognize` method.",
+ "type": "object",
+ "properties": {
+ "audio": {
+ "description": "*Required* The audio data to be recognized.",
+ "$ref": "RecognitionAudio"
+ },
+ "config": {
+ "$ref": "RecognitionConfig",
+ "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request."
+ }
+ },
+ "id": "RecognizeRequest"
+ },
+ "ListOperationsResponse": {
+ "properties": {
+ "nextPageToken": {
+ "description": "The standard List next-page token.",
+ "type": "string"
+ },
+ "operations": {
+ "description": "A list of operations that matches the specified filter in the request.",
+ "items": {
+ "$ref": "Operation"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListOperationsResponse",
+ "description": "The response message for Operations.ListOperations.",
+ "type": "object"
+ },
+ "SpeechContext": {
+ "properties": {
+ "phrases": {
+ "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "SpeechContext",
+ "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.",
+ "type": "object"
+ },
+ "SpeechRecognitionAlternative": {
+ "properties": {
+ "confidence": {
+ "format": "float",
+ "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate or consistent.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.",
+ "type": "number"
+ },
+ "words": {
+ "description": "*Output-only* A list of word-specific information for each recognized word.",
+ "items": {
+ "$ref": "WordInfo"
+ },
+ "type": "array"
+ },
+ "transcript": {
+ "description": "*Output-only* Transcript text representing the words that the user spoke.",
+ "type": "string"
+ }
+ },
+ "id": "SpeechRecognitionAlternative",
+ "description": "Alternative hypotheses (a.k.a. n-best list).",
+ "type": "object"
+ },
+ "SpeechRecognitionResult": {
+ "description": "A speech recognition result corresponding to a portion of the audio.",
+ "type": "object",
+ "properties": {
+ "alternatives": {
+ "description": "*Output-only* May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).\nThese alternatives are ordered in terms of accuracy, with the top (first)\nalternative being the most probable, as ranked by the recognizer.",
+ "items": {
+ "$ref": "SpeechRecognitionAlternative"
+ },
+ "type": "array"
+ }
+ },
+ "id": "SpeechRecognitionResult"
+ },
"RecognitionAudio": {
"description": "Contains audio data in the encoding specified in the `RecognitionConfig`.\nEither `content` or `uri` must be supplied. Supplying both or neither\nreturns google.rpc.Code.INVALID_ARGUMENT. See\n[audio limits](https://cloud.google.com/speech/limits#content).",
"type": "object",
"properties": {
"content": {
- "description": "The audio data bytes encoded as specified in\n`RecognitionConfig`. Note: as with all bytes fields, protobuffers use a\npure binary representation, whereas JSON representations use base64.",
"format": "byte",
+ "description": "The audio data bytes encoded as specified in\n`RecognitionConfig`. Note: as with all bytes fields, protobuffers use a\npure binary representation, whereas JSON representations use base64.",
"type": "string"
},
"uri": {
- "type": "string",
- "description": "URI that points to a file that contains audio data bytes as specified in\n`RecognitionConfig`. Currently, only Google Cloud Storage URIs are\nsupported, which must be specified in the following format:\n`gs://bucket_name/object_name` (other URI formats return\ngoogle.rpc.Code.INVALID_ARGUMENT). For more information, see\n[Request URIs](https://cloud.google.com/storage/docs/reference-uris)."
+ "description": "URI that points to a file that contains audio data bytes as specified in\n`RecognitionConfig`. Currently, only Google Cloud Storage URIs are\nsupported, which must be specified in the following format:\n`gs://bucket_name/object_name` (other URI formats return\ngoogle.rpc.Code.INVALID_ARGUMENT). For more information, see\n[Request URIs](https://cloud.google.com/storage/docs/reference-uris).",
+ "type": "string"
}
},
"id": "RecognitionAudio"
@@ -26,13 +369,13 @@
"description": "The top-level message sent by the client for the `LongRunningRecognize`\nmethod.",
"type": "object",
"properties": {
- "config": {
- "$ref": "RecognitionConfig",
- "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request."
- },
"audio": {
"$ref": "RecognitionAudio",
"description": "*Required* The audio data to be recognized."
+ },
+ "config": {
+ "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.",
+ "$ref": "RecognitionConfig"
}
},
"id": "LongRunningRecognizeRequest"
@@ -41,10 +384,10 @@
"properties": {
"results": {
"description": "*Output-only* Sequential list of transcription results corresponding to\nsequential portions of audio.",
- "type": "array",
"items": {
"$ref": "SpeechRecognitionResult"
- }
+ },
+ "type": "array"
}
},
"id": "RecognizeResponse",
@@ -52,15 +395,12 @@
"type": "object"
},
"CancelOperationRequest": {
- "description": "The request message for Operations.CancelOperation.",
- "type": "object",
"properties": {},
- "id": "CancelOperationRequest"
+ "id": "CancelOperationRequest",
+ "description": "The request message for Operations.CancelOperation.",
+ "type": "object"
},
"Operation": {
- "id": "Operation",
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
- "type": "object",
"properties": {
"done": {
"description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
@@ -79,48 +419,49 @@
"type": "string"
},
"error": {
- "description": "The error result of the operation in case of failure or cancellation.",
- "$ref": "Status"
+ "$ref": "Status",
+ "description": "The error result of the operation in case of failure or cancellation."
},
"metadata": {
- "type": "object",
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
},
- "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any."
+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
+ "type": "object"
}
- }
+ },
+ "id": "Operation",
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
+ "type": "object"
},
"RecognitionConfig": {
- "description": "Provides information to the recognizer that specifies how to process the\nrequest.",
- "type": "object",
"properties": {
- "sampleRateHertz": {
- "type": "integer",
- "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).",
- "format": "int32"
+ "enableWordTimeOffsets": {
+ "description": "*Optional* If `true`, the top result includes a list of words and\nthe start and end time offsets (timestamps) for those words. If\n`false`, no word-level time offset information is returned. The default is\n`false`.",
+ "type": "boolean"
},
"maxAlternatives": {
- "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.",
"format": "int32",
+ "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.",
"type": "integer"
},
"languageCode": {
- "type": "string",
- "description": "*Required* The language of the supplied audio as a\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.\nExample: \"en-US\".\nSee [Language Support](https://cloud.google.com/speech/docs/languages)\nfor a list of the currently supported language codes."
+ "description": "*Required* The language of the supplied audio as a\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.\nExample: \"en-US\".\nSee [Language Support](https://cloud.google.com/speech/docs/languages)\nfor a list of the currently supported language codes.",
+ "type": "string"
+ },
+ "speechContexts": {
+ "description": "*Optional* A means to provide context to assist the speech recognition.",
+ "items": {
+ "$ref": "SpeechContext"
+ },
+ "type": "array"
+ },
+ "profanityFilter": {
+ "description": "*Optional* If set to `true`, the server will attempt to filter out\nprofanities, replacing all but the initial character in each filtered word\nwith asterisks, e.g. \"f***\". If set to `false` or omitted, profanities\nwon't be filtered out.",
+ "type": "boolean"
},
"encoding": {
- "enumDescriptions": [
- "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.",
- "Uncompressed 16-bit signed little-endian samples (Linear PCM).",
- "[`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio\nCodec) is the recommended encoding because it is\nlossless--therefore recognition is not compromised--and\nrequires only about half the bandwidth of `LINEAR16`. `FLAC` stream\nencoding supports 16-bit and 24-bit samples, however, not all fields in\n`STREAMINFO` are supported.",
- "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.",
- "Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.",
- "Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.",
- "Opus encoded audio frames in Ogg container\n([OggOpus](https://wiki.xiph.org/OggOpus)).\n`sample_rate_hertz` must be 16000.",
- "Although the use of lossy encodings is not recommended, if a very low\nbitrate encoding is required, `OGG_OPUS` is highly preferred over\nSpeex encoding. The [Speex](https://speex.org/) encoding supported by\nCloud Speech API has a header byte in each block, as in MIME type\n`audio/x-speex-with-header-byte`.\nIt is a variant of the RTP Speex encoding defined in\n[RFC 5574](https://tools.ietf.org/html/rfc5574).\nThe stream is a sequence of blocks, one block per RTP packet. Each block\nstarts with a byte containing the length of the block, in bytes, followed\nby one or more frames of Speex data, padded to an integral number of\nbytes (octets) as specified in RFC 5574. In other words, each RTP header\nis replaced with a single byte containing the block length. Only Speex\nwideband is supported. `sample_rate_hertz` must be 16000."
- ],
"enum": [
"ENCODING_UNSPECIFIED",
"LINEAR16",
@@ -132,137 +473,87 @@
"SPEEX_WITH_HEADER_BYTE"
],
"description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.",
- "type": "string"
+ "type": "string",
+ "enumDescriptions": [
+ "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.",
+ "Uncompressed 16-bit signed little-endian samples (Linear PCM).",
+ "[`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio\nCodec) is the recommended encoding because it is\nlossless--therefore recognition is not compromised--and\nrequires only about half the bandwidth of `LINEAR16`. `FLAC` stream\nencoding supports 16-bit and 24-bit samples, however, not all fields in\n`STREAMINFO` are supported.",
+ "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.",
+ "Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.",
+ "Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.",
+ "Opus encoded audio frames in Ogg container\n([OggOpus](https://wiki.xiph.org/OggOpus)).\n`sample_rate_hertz` must be 16000.",
+ "Although the use of lossy encodings is not recommended, if a very low\nbitrate encoding is required, `OGG_OPUS` is highly preferred over\nSpeex encoding. The [Speex](https://speex.org/) encoding supported by\nCloud Speech API has a header byte in each block, as in MIME type\n`audio/x-speex-with-header-byte`.\nIt is a variant of the RTP Speex encoding defined in\n[RFC 5574](https://tools.ietf.org/html/rfc5574).\nThe stream is a sequence of blocks, one block per RTP packet. Each block\nstarts with a byte containing the length of the block, in bytes, followed\nby one or more frames of Speex data, padded to an integral number of\nbytes (octets) as specified in RFC 5574. In other words, each RTP header\nis replaced with a single byte containing the block length. Only Speex\nwideband is supported. `sample_rate_hertz` must be 16000."
+ ]
},
- "profanityFilter": {
- "description": "*Optional* If set to `true`, the server will attempt to filter out\nprofanities, replacing all but the initial character in each filtered word\nwith asterisks, e.g. \"f***\". If set to `false` or omitted, profanities\nwon't be filtered out.",
- "type": "boolean"
- },
- "speechContexts": {
- "type": "array",
- "items": {
- "$ref": "SpeechContext"
- },
- "description": "*Optional* A means to provide context to assist the speech recognition."
+ "sampleRateHertz": {
+ "format": "int32",
+ "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).",
+ "type": "integer"
}
},
- "id": "RecognitionConfig"
+ "id": "RecognitionConfig",
+ "description": "Provides information to the recognizer that specifies how to process the\nrequest.",
+ "type": "object"
+ },
+ "WordInfo": {
+ "properties": {
+ "endTime": {
+ "format": "google-duration",
+ "description": "*Output-only* Time offset relative to the beginning of the audio,\nand corresponding to the end of the spoken word.\nThis field is only set if `enable_word_time_offsets=true` and only\nin the top hypothesis.\nThis is an experimental feature and the accuracy of the time offset can\nvary.",
+ "type": "string"
+ },
+ "startTime": {
+ "format": "google-duration",
+ "description": "*Output-only* Time offset relative to the beginning of the audio,\nand corresponding to the start of the spoken word.\nThis field is only set if `enable_word_time_offsets=true` and only\nin the top hypothesis.\nThis is an experimental feature and the accuracy of the time offset can\nvary.",
+ "type": "string"
+ },
+ "word": {
+ "description": "*Output-only* The word corresponding to this set of information.",
+ "type": "string"
+ }
+ },
+ "id": "WordInfo",
+ "description": "Word-specific information for recognized words. Word information is only\nincluded in the response when certain request parameters are set, such\nas `enable_word_time_offsets`.",
+ "type": "object"
},
"Status": {
- "type": "object",
"properties": {
"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"
},
"details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "type": "array",
+ "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"
},
"code": {
- "description": "The status code, which should be an enum value of google.rpc.Code.",
"format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
"type": "integer"
}
},
"id": "Status",
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons."
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object"
},
"Empty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
"type": "object",
"properties": {},
"id": "Empty"
- },
- "RecognizeRequest": {
- "properties": {
- "config": {
- "$ref": "RecognitionConfig",
- "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request."
- },
- "audio": {
- "$ref": "RecognitionAudio",
- "description": "*Required* The audio data to be recognized."
- }
- },
- "id": "RecognizeRequest",
- "description": "The top-level message sent by the client for the `Recognize` method.",
- "type": "object"
- },
- "SpeechContext": {
- "type": "object",
- "properties": {
- "phrases": {
- "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).",
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "id": "SpeechContext",
- "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results."
- },
- "SpeechRecognitionAlternative": {
- "properties": {
- "confidence": {
- "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate or consistent.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.",
- "format": "float",
- "type": "number"
- },
- "transcript": {
- "description": "*Output-only* Transcript text representing the words that the user spoke.",
- "type": "string"
- }
- },
- "id": "SpeechRecognitionAlternative",
- "description": "Alternative hypotheses (a.k.a. n-best list).",
- "type": "object"
- },
- "ListOperationsResponse": {
- "description": "The response message for Operations.ListOperations.",
- "type": "object",
- "properties": {
- "operations": {
- "description": "A list of operations that matches the specified filter in the request.",
- "type": "array",
- "items": {
- "$ref": "Operation"
- }
- },
- "nextPageToken": {
- "description": "The standard List next-page token.",
- "type": "string"
- }
- },
- "id": "ListOperationsResponse"
- },
- "SpeechRecognitionResult": {
- "id": "SpeechRecognitionResult",
- "description": "A speech recognition result corresponding to a portion of the audio.",
- "type": "object",
- "properties": {
- "alternatives": {
- "type": "array",
- "items": {
- "$ref": "SpeechRecognitionAlternative"
- },
- "description": "*Output-only* May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).\nThese alternatives are ordered in terms of accuracy, with the first/top\nalternative being the most probable, as ranked by the recognizer."
- }
- }
}
},
"protocol": "rest",
"icons": {
- "x16": "http://www.google.com/images/icons/product/search-16.gif",
- "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ "x32": "http://www.google.com/images/icons/product/search-32.gif",
+ "x16": "http://www.google.com/images/icons/product/search-16.gif"
},
"canonicalName": "Speech",
"auth": {
@@ -274,264 +565,5 @@
}
}
},
- "rootUrl": "https://speech.googleapis.com/",
- "ownerDomain": "google.com",
- "name": "speech",
- "batchPath": "batch",
- "title": "Google Cloud Speech API",
- "ownerName": "Google",
- "resources": {
- "operations": {
- "methods": {
- "cancel": {
- "parameters": {
- "name": {
- "description": "The name of the operation resource to be cancelled.",
- "required": true,
- "type": "string",
- "pattern": "^[^/]+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1/operations/{operationsId}:cancel",
- "path": "v1/operations/{+name}:cancel",
- "id": "speech.operations.cancel",
- "request": {
- "$ref": "CancelOperationRequest"
- },
- "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "POST"
- },
- "delete": {
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "pattern": "^[^/]+$",
- "location": "path",
- "description": "The name of the operation resource to be deleted.",
- "required": true,
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1/operations/{operationsId}",
- "id": "speech.operations.delete",
- "path": "v1/operations/{+name}",
- "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`."
- },
- "list": {
- "id": "speech.operations.list",
- "path": "v1/operations",
- "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "ListOperationsResponse"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "pageSize": {
- "description": "The standard list page size.",
- "format": "int32",
- "type": "integer",
- "location": "query"
- },
- "filter": {
- "description": "The standard list filter.",
- "type": "string",
- "location": "query"
- },
- "name": {
- "description": "The name of the operation's parent resource.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "location": "query",
- "description": "The standard list page token.",
- "type": "string"
- }
- },
- "flatPath": "v1/operations"
- },
- "get": {
- "response": {
- "$ref": "Operation"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "GET",
- "parameters": {
- "name": {
- "pattern": "^[^/]+$",
- "location": "path",
- "description": "The name of the operation resource.",
- "required": true,
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1/operations/{operationsId}",
- "path": "v1/operations/{+name}",
- "id": "speech.operations.get",
- "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice."
- }
- }
- },
- "speech": {
- "methods": {
- "longrunningrecognize": {
- "id": "speech.speech.longrunningrecognize",
- "path": "v1/speech:longrunningrecognize",
- "description": "Performs asynchronous speech recognition: receive results via the\ngoogle.longrunning.Operations interface. Returns either an\n`Operation.error` or an `Operation.response` which contains\na `LongRunningRecognizeResponse` message.",
- "request": {
- "$ref": "LongRunningRecognizeRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "Operation"
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {},
- "flatPath": "v1/speech:longrunningrecognize"
- },
- "recognize": {
- "httpMethod": "POST",
- "parameterOrder": [],
- "response": {
- "$ref": "RecognizeResponse"
- },
- "parameters": {},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1/speech:recognize",
- "id": "speech.speech.recognize",
- "path": "v1/speech:recognize",
- "request": {
- "$ref": "RecognizeRequest"
- },
- "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed."
- }
- }
- }
- },
- "parameters": {
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "type": "boolean",
- "default": "true",
- "location": "query"
- },
- "fields": {
- "type": "string",
- "location": "query",
- "description": "Selector specifying which fields to include in a partial response."
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
- },
- "$.xgafv": {
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query"
- },
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
- },
- "alt": {
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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",
- "description": "Data format for response.",
- "default": "json"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "pp": {
- "location": "query",
- "description": "Pretty-print response.",
- "type": "boolean",
- "default": "true"
- },
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
- },
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- }
- },
- "version": "v1",
- "baseUrl": "https://speech.googleapis.com/",
- "description": "Converts audio to text by applying powerful neural network models.",
- "servicePath": "",
- "kind": "discovery#restDescription"
+ "rootUrl": "https://speech.googleapis.com/"
}
diff --git a/vendor/google.golang.org/api/speech/v1/speech-gen.go b/vendor/google.golang.org/api/speech/v1/speech-gen.go
index a7f5cd2..9ec1c92 100644
--- a/vendor/google.golang.org/api/speech/v1/speech-gen.go
+++ b/vendor/google.golang.org/api/speech/v1/speech-gen.go
@@ -319,6 +319,15 @@ func (s *RecognitionAudio) MarshalJSON() ([]byte, error) {
// specifies how to process the
// request.
type RecognitionConfig struct {
+ // EnableWordTimeOffsets: *Optional* If `true`, the top result includes
+ // a list of words and
+ // the start and end time offsets (timestamps) for those words.
+ // If
+ // `false`, no word-level time offset information is returned. The
+ // default is
+ // `false`.
+ EnableWordTimeOffsets bool `json:"enableWordTimeOffsets,omitempty"`
+
// Encoding: *Required* Encoding of audio data sent in all
// `RecognitionAudio` messages.
//
@@ -415,20 +424,22 @@ type RecognitionConfig struct {
// speech recognition.
SpeechContexts []*SpeechContext `json:"speechContexts,omitempty"`
- // ForceSendFields is a list of field names (e.g. "Encoding") to
- // unconditionally include in API requests. By default, fields with
- // empty values are omitted from API requests. However, any non-pointer,
- // non-interface field appearing in ForceSendFields will be sent to the
- // server regardless of whether the field is empty or not. This may be
- // used to include empty fields in Patch requests.
+ // ForceSendFields is a list of field names (e.g.
+ // "EnableWordTimeOffsets") to unconditionally include in API requests.
+ // By default, fields with empty values are omitted from API requests.
+ // However, any non-pointer, non-interface field appearing in
+ // ForceSendFields will be sent to the server regardless of whether the
+ // field is empty or not. This may be used to include empty fields in
+ // Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "Encoding") to include in
- // API requests with the JSON null value. By default, fields with empty
- // values are omitted from API requests. However, any field with an
- // empty value appearing in NullFields will be sent to the server as
- // null. It is an error if a field in this list has a non-empty value.
- // This may be used to include null fields in Patch requests.
+ // NullFields is a list of field names (e.g. "EnableWordTimeOffsets") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
NullFields []string `json:"-"`
}
@@ -571,6 +582,10 @@ type SpeechRecognitionAlternative struct {
// the user spoke.
Transcript string `json:"transcript,omitempty"`
+ // Words: *Output-only* A list of word-specific information for each
+ // recognized word.
+ Words []*WordInfo `json:"words,omitempty"`
+
// ForceSendFields is a list of field names (e.g. "Confidence") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
@@ -614,8 +629,8 @@ type SpeechRecognitionResult struct {
// Alternatives: *Output-only* May contain one or more recognition
// hypotheses (up to the
// maximum specified in `max_alternatives`).
- // These alternatives are ordered in terms of accuracy, with the
- // first/top
+ // These alternatives are ordered in terms of accuracy, with the top
+ // (first)
// alternative being the most probable, as ranked by the recognizer.
Alternatives []*SpeechRecognitionAlternative `json:"alternatives,omitempty"`
@@ -726,9 +741,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -761,6 +776,59 @@ func (s *Status) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+// WordInfo: Word-specific information for recognized words. Word
+// information is only
+// included in the response when certain request parameters are set,
+// such
+// as `enable_word_time_offsets`.
+type WordInfo struct {
+ // EndTime: *Output-only* Time offset relative to the beginning of the
+ // audio,
+ // and corresponding to the end of the spoken word.
+ // This field is only set if `enable_word_time_offsets=true` and only
+ // in the top hypothesis.
+ // This is an experimental feature and the accuracy of the time offset
+ // can
+ // vary.
+ EndTime string `json:"endTime,omitempty"`
+
+ // StartTime: *Output-only* Time offset relative to the beginning of the
+ // audio,
+ // and corresponding to the start of the spoken word.
+ // This field is only set if `enable_word_time_offsets=true` and only
+ // in the top hypothesis.
+ // This is an experimental feature and the accuracy of the time offset
+ // can
+ // vary.
+ StartTime string `json:"startTime,omitempty"`
+
+ // Word: *Output-only* The word corresponding to this set of
+ // information.
+ Word string `json:"word,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "EndTime") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "EndTime") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *WordInfo) MarshalJSON() ([]byte, error) {
+ type noMethod WordInfo
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// method id "speech.operations.cancel":
type OperationsCancelCall struct {
diff --git a/vendor/google.golang.org/api/speech/v1beta1/speech-api.json b/vendor/google.golang.org/api/speech/v1beta1/speech-api.json
index 22ae6c9..35a020d 100644
--- a/vendor/google.golang.org/api/speech/v1beta1/speech-api.json
+++ b/vendor/google.golang.org/api/speech/v1beta1/speech-api.json
@@ -1,43 +1,147 @@
{
+ "version": "v1beta1",
+ "baseUrl": "https://speech.googleapis.com/",
+ "kind": "discovery#restDescription",
+ "servicePath": "",
+ "description": "Converts audio to text by applying powerful neural network models.",
+ "basePath": "",
+ "id": "speech:v1beta1",
+ "documentationLink": "https://cloud.google.com/speech/",
+ "revision": "20170822",
"discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
+ "SyncRecognizeRequest": {
+ "description": "The top-level message sent by the client for the `SyncRecognize` method.",
+ "type": "object",
+ "properties": {
+ "audio": {
+ "description": "*Required* The audio data to be recognized.",
+ "$ref": "RecognitionAudio"
+ },
+ "config": {
+ "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.",
+ "$ref": "RecognitionConfig"
+ }
+ },
+ "id": "SyncRecognizeRequest"
+ },
+ "Status": {
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object",
+ "properties": {
+ "details": {
+ "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "type": "array"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
+ }
+ },
+ "id": "Status"
+ },
+ "SyncRecognizeResponse": {
+ "description": "The only message returned to the client by `SyncRecognize`. method. It\ncontains the result as zero or more sequential `SpeechRecognitionResult`\nmessages.",
+ "type": "object",
+ "properties": {
+ "results": {
+ "description": "*Output-only* Sequential list of transcription results corresponding to\nsequential portions of audio.",
+ "items": {
+ "$ref": "SpeechRecognitionResult"
+ },
+ "type": "array"
+ }
+ },
+ "id": "SyncRecognizeResponse"
+ },
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
+ },
+ "ListOperationsResponse": {
+ "description": "The response message for Operations.ListOperations.",
+ "type": "object",
+ "properties": {
+ "operations": {
+ "description": "A list of operations that matches the specified filter in the request.",
+ "items": {
+ "$ref": "Operation"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "The standard List next-page token.",
+ "type": "string"
+ }
+ },
+ "id": "ListOperationsResponse"
+ },
+ "SpeechContext": {
+ "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.",
+ "type": "object",
+ "properties": {
+ "phrases": {
+ "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "SpeechContext"
+ },
+ "SpeechRecognitionAlternative": {
+ "description": "Alternative hypotheses (a.k.a. n-best list).",
+ "type": "object",
+ "properties": {
+ "confidence": {
+ "format": "float",
+ "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate, or even set, in\nany of the results.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.",
+ "type": "number"
+ },
+ "transcript": {
+ "description": "*Output-only* Transcript text representing the words that the user spoke.",
+ "type": "string"
+ }
+ },
+ "id": "SpeechRecognitionAlternative"
+ },
"SpeechRecognitionResult": {
"description": "A speech recognition result corresponding to a portion of the audio.",
"type": "object",
"properties": {
"alternatives": {
"description": "*Output-only* May contain one or more recognition hypotheses (up to the\nmaximum specified in `max_alternatives`).",
- "type": "array",
"items": {
"$ref": "SpeechRecognitionAlternative"
- }
+ },
+ "type": "array"
}
},
"id": "SpeechRecognitionResult"
},
- "AsyncRecognizeRequest": {
- "description": "The top-level message sent by the client for the `AsyncRecognize` method.",
- "type": "object",
- "properties": {
- "config": {
- "$ref": "RecognitionConfig",
- "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request."
- },
- "audio": {
- "description": "*Required* The audio data to be recognized.",
- "$ref": "RecognitionAudio"
- }
- },
- "id": "AsyncRecognizeRequest"
- },
"RecognitionAudio": {
"description": "Contains audio data in the encoding specified in the `RecognitionConfig`.\nEither `content` or `uri` must be supplied. Supplying both or neither\nreturns google.rpc.Code.INVALID_ARGUMENT. See\n[audio limits](https://cloud.google.com/speech/limits#content).",
"type": "object",
"properties": {
"content": {
- "description": "The audio data bytes encoded as specified in\n`RecognitionConfig`. Note: as with all bytes fields, protobuffers use a\npure binary representation, whereas JSON representations use base64.",
"format": "byte",
+ "description": "The audio data bytes encoded as specified in\n`RecognitionConfig`. Note: as with all bytes fields, protobuffers use a\npure binary representation, whereas JSON representations use base64.",
"type": "string"
},
"uri": {
@@ -47,29 +151,28 @@
},
"id": "RecognitionAudio"
},
+ "AsyncRecognizeRequest": {
+ "description": "The top-level message sent by the client for the `AsyncRecognize` method.",
+ "type": "object",
+ "properties": {
+ "audio": {
+ "$ref": "RecognitionAudio",
+ "description": "*Required* The audio data to be recognized."
+ },
+ "config": {
+ "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.",
+ "$ref": "RecognitionConfig"
+ }
+ },
+ "id": "AsyncRecognizeRequest"
+ },
"Operation": {
"description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
"type": "object",
"properties": {
- "done": {
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
- "type": "boolean"
- },
- "response": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
- "type": "object"
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
- "type": "string"
- },
"error": {
- "description": "The error result of the operation in case of failure or cancellation.",
- "$ref": "Status"
+ "$ref": "Status",
+ "description": "The error result of the operation in case of failure or cancellation."
},
"metadata": {
"description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
@@ -78,6 +181,22 @@
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
}
+ },
+ "done": {
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
+ "type": "boolean"
+ },
+ "response": {
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ }
+ },
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "type": "string"
}
},
"id": "Operation"
@@ -87,26 +206,20 @@
"type": "object",
"properties": {
"maxAlternatives": {
- "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.",
"format": "int32",
+ "description": "*Optional* Maximum number of recognition hypotheses to be returned.\nSpecifically, the maximum number of `SpeechRecognitionAlternative` messages\nwithin each `SpeechRecognitionResult`.\nThe server may return fewer than `max_alternatives`.\nValid values are `0`-`30`. A value of `0` or `1` will return a maximum of\none. If omitted, will return a maximum of one.",
"type": "integer"
},
"sampleRate": {
- "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).",
"format": "int32",
+ "description": "*Required* Sample rate in Hertz of the audio data sent in all\n`RecognitionAudio` messages. Valid values are: 8000-48000.\n16000 is optimal. For best results, set the sampling rate of the audio\nsource to 16000 Hz. If that's not possible, use the native sample rate of\nthe audio source (instead of re-sampling).",
"type": "integer"
},
"languageCode": {
"description": "*Optional* The language of the supplied audio as a BCP-47 language tag.\nExample: \"en-GB\" https://www.rfc-editor.org/rfc/bcp/bcp47.txt\nIf omitted, defaults to \"en-US\". See\n[Language Support](https://cloud.google.com/speech/docs/languages)\nfor a list of the currently supported language codes.",
"type": "string"
},
- "speechContext": {
- "$ref": "SpeechContext",
- "description": "*Optional* A means to provide context to assist the speech recognition."
- },
"encoding": {
- "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.",
- "type": "string",
"enumDescriptions": [
"Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.",
"Uncompressed 16-bit signed little-endian samples (Linear PCM).\nThis is the only encoding that may be used by `AsyncRecognize`.",
@@ -122,124 +235,20 @@
"MULAW",
"AMR",
"AMR_WB"
- ]
+ ],
+ "description": "*Required* Encoding of audio data sent in all `RecognitionAudio` messages.",
+ "type": "string"
},
"profanityFilter": {
"description": "*Optional* If set to `true`, the server will attempt to filter out\nprofanities, replacing all but the initial character in each filtered word\nwith asterisks, e.g. \"f***\". If set to `false` or omitted, profanities\nwon't be filtered out.",
"type": "boolean"
+ },
+ "speechContext": {
+ "description": "*Optional* A means to provide context to assist the speech recognition.",
+ "$ref": "SpeechContext"
}
},
"id": "RecognitionConfig"
- },
- "SyncRecognizeRequest": {
- "description": "The top-level message sent by the client for the `SyncRecognize` method.",
- "type": "object",
- "properties": {
- "config": {
- "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.",
- "$ref": "RecognitionConfig"
- },
- "audio": {
- "$ref": "RecognitionAudio",
- "description": "*Required* The audio data to be recognized."
- }
- },
- "id": "SyncRecognizeRequest"
- },
- "SyncRecognizeResponse": {
- "description": "The only message returned to the client by `SyncRecognize`. method. It\ncontains the result as zero or more sequential `SpeechRecognitionResult`\nmessages.",
- "type": "object",
- "properties": {
- "results": {
- "description": "*Output-only* Sequential list of transcription results corresponding to\nsequential portions of audio.",
- "type": "array",
- "items": {
- "$ref": "SpeechRecognitionResult"
- }
- }
- },
- "id": "SyncRecognizeResponse"
- },
- "Status": {
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object",
- "properties": {
- "code": {
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "format": "int32",
- "type": "integer"
- },
- "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"
- },
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "type": "array",
- "items": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- }
- }
- },
- "id": "Status"
- },
- "Empty": {
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object",
- "properties": {},
- "id": "Empty"
- },
- "ListOperationsResponse": {
- "description": "The response message for Operations.ListOperations.",
- "type": "object",
- "properties": {
- "operations": {
- "description": "A list of operations that matches the specified filter in the request.",
- "type": "array",
- "items": {
- "$ref": "Operation"
- }
- },
- "nextPageToken": {
- "description": "The standard List next-page token.",
- "type": "string"
- }
- },
- "id": "ListOperationsResponse"
- },
- "SpeechContext": {
- "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.",
- "type": "object",
- "properties": {
- "phrases": {
- "description": "*Optional* A list of strings containing words and phrases \"hints\" so that\nthe speech recognition is more likely to recognize them. This can be used\nto improve the accuracy for specific words and phrases, for example, if\nspecific commands are typically spoken by the user. This can also be used\nto add additional words to the vocabulary of the recognizer. See\n[usage limits](https://cloud.google.com/speech/limits#content).",
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- },
- "id": "SpeechContext"
- },
- "SpeechRecognitionAlternative": {
- "description": "Alternative hypotheses (a.k.a. n-best list).",
- "type": "object",
- "properties": {
- "confidence": {
- "description": "*Output-only* The confidence estimate between 0.0 and 1.0. A higher number\nindicates an estimated greater likelihood that the recognized words are\ncorrect. This field is typically provided only for the top hypothesis, and\nonly for `is_final=true` results. Clients should not rely on the\n`confidence` field as it is not guaranteed to be accurate, or even set, in\nany of the results.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.",
- "format": "float",
- "type": "number"
- },
- "transcript": {
- "description": "*Output-only* Transcript text representing the words that the user spoke.",
- "type": "string"
- }
- },
- "id": "SpeechRecognitionAlternative"
}
},
"protocol": "rest",
@@ -266,42 +275,55 @@
"resources": {
"operations": {
"methods": {
- "list": {
- "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
- "httpMethod": "GET",
- "parameterOrder": [],
+ "cancel": {
+ "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
"response": {
- "$ref": "ListOperationsResponse"
+ "$ref": "Empty"
},
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "POST",
"parameters": {
- "pageSize": {
- "location": "query",
- "description": "The standard list page size.",
- "format": "int32",
- "type": "integer"
- },
- "filter": {
- "description": "The standard list filter.",
- "type": "string",
- "location": "query"
- },
"name": {
- "location": "query",
- "description": "The name of the operation's parent resource.",
- "type": "string"
- },
- "pageToken": {
- "location": "query",
- "description": "The standard list page token.",
- "type": "string"
+ "location": "path",
+ "description": "The name of the operation resource to be cancelled.",
+ "type": "string",
+ "required": true,
+ "pattern": "^[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
- "flatPath": "v1beta1/operations",
- "id": "speech.operations.list",
- "path": "v1beta1/operations"
+ "flatPath": "v1beta1/operations/{operationsId}:cancel",
+ "id": "speech.operations.cancel",
+ "path": "v1beta1/operations/{+name}:cancel"
+ },
+ "delete": {
+ "flatPath": "v1beta1/operations/{operationsId}",
+ "id": "speech.operations.delete",
+ "path": "v1beta1/operations/{+name}",
+ "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The name of the operation resource to be deleted.",
+ "type": "string",
+ "required": true,
+ "pattern": "^[^/]+$",
+ "location": "path"
+ }
+ }
},
"get": {
"description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
@@ -312,35 +334,11 @@
"response": {
"$ref": "Operation"
},
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
"parameters": {
"name": {
"description": "The name of the operation resource.",
- "required": true,
"type": "string",
- "pattern": "^[^/]+$",
- "location": "path"
- }
- },
- "flatPath": "v1beta1/operations/{operationsId}",
- "id": "speech.operations.get",
- "path": "v1beta1/operations/{+name}"
- },
- "cancel": {
- "httpMethod": "POST",
- "parameterOrder": [
- "name"
- ],
- "response": {
- "$ref": "Empty"
- },
- "parameters": {
- "name": {
- "description": "The name of the operation resource to be cancelled.",
"required": true,
- "type": "string",
"pattern": "^[^/]+$",
"location": "path"
}
@@ -348,59 +346,74 @@
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
- "flatPath": "v1beta1/operations/{operationsId}:cancel",
- "id": "speech.operations.cancel",
- "path": "v1beta1/operations/{+name}:cancel",
- "description": "Starts asynchronous cancellation on a long-running operation. The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`. Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`."
- },
- "delete": {
"flatPath": "v1beta1/operations/{operationsId}",
- "id": "speech.operations.delete",
"path": "v1beta1/operations/{+name}",
- "description": "Deletes a long-running operation. This method indicates that the client is\nno longer interested in the operation result. It does not cancel the\noperation. If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.",
- "httpMethod": "DELETE",
- "parameterOrder": [
- "name"
- ],
+ "id": "speech.operations.get"
+ },
+ "list": {
+ "flatPath": "v1beta1/operations",
+ "id": "speech.operations.list",
+ "path": "v1beta1/operations",
+ "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
"response": {
- "$ref": "Empty"
+ "$ref": "ListOperationsResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "parameters": {
+ "filter": {
+ "description": "The standard list filter.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "description": "The standard list page token.",
+ "type": "string",
+ "location": "query"
+ },
+ "name": {
+ "location": "query",
+ "description": "The name of the operation's parent resource.",
+ "type": "string"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "The standard list page size.",
+ "type": "integer",
+ "location": "query"
+ }
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "The name of the operation resource to be deleted.",
- "required": true,
- "type": "string",
- "pattern": "^[^/]+$"
- }
- }
+ ]
}
}
},
"speech": {
"methods": {
"asyncrecognize": {
- "request": {
- "$ref": "AsyncRecognizeRequest"
- },
- "description": "Performs asynchronous speech recognition: receive results via the\n[google.longrunning.Operations]\n(/speech/reference/rest/v1beta1/operations#Operation)\ninterface. Returns either an\n`Operation.error` or an `Operation.response` which contains\nan `AsyncRecognizeResponse` message.",
- "httpMethod": "POST",
- "parameterOrder": [],
"response": {
"$ref": "Operation"
},
- "parameters": {},
+ "parameterOrder": [],
+ "httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
+ "parameters": {},
"flatPath": "v1beta1/speech:asyncrecognize",
"id": "speech.speech.asyncrecognize",
- "path": "v1beta1/speech:asyncrecognize"
+ "path": "v1beta1/speech:asyncrecognize",
+ "request": {
+ "$ref": "AsyncRecognizeRequest"
+ },
+ "description": "Performs asynchronous speech recognition: receive results via the\n[google.longrunning.Operations]\n(/speech/reference/rest/v1beta1/operations#Operation)\ninterface. Returns either an\n`Operation.error` or an `Operation.response` which contains\nan `AsyncRecognizeResponse` message."
},
"syncrecognize": {
+ "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.",
+ "request": {
+ "$ref": "SyncRecognizeRequest"
+ },
"response": {
"$ref": "SyncRecognizeResponse"
},
@@ -411,28 +424,58 @@
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1beta1/speech:syncrecognize",
- "path": "v1beta1/speech:syncrecognize",
"id": "speech.speech.syncrecognize",
- "request": {
- "$ref": "SyncRecognizeRequest"
- },
- "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed."
+ "path": "v1beta1/speech:syncrecognize"
}
}
}
},
"parameters": {
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
+ "location": "query"
+ },
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "prettyPrint": {
+ "location": "query",
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
"fields": {
"location": "query",
"description": "Selector specifying which fields to include in a partial response.",
"type": "string"
},
- "uploadType": {
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string"
- },
"$.xgafv": {
+ "description": "V1 error format.",
+ "type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
@@ -441,9 +484,7 @@
"enum": [
"1",
"2"
- ],
- "description": "V1 error format.",
- "type": "string"
+ ]
},
"callback": {
"description": "JSONP",
@@ -451,7 +492,6 @@
"location": "query"
},
"alt": {
- "type": "string",
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
@@ -464,7 +504,8 @@
"json",
"media",
"proto"
- ]
+ ],
+ "type": "string"
},
"access_token": {
"description": "OAuth access token.",
@@ -472,50 +513,9 @@
"location": "query"
},
"key": {
- "location": "query",
"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.",
- "type": "string"
- },
- "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.",
"type": "string",
"location": "query"
- },
- "pp": {
- "description": "Pretty-print response.",
- "type": "boolean",
- "default": "true",
- "location": "query"
- },
- "oauth_token": {
- "location": "query",
- "description": "OAuth 2.0 token for the current user.",
- "type": "string"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
- "prettyPrint": {
- "location": "query",
- "description": "Returns response with indentations and line breaks.",
- "type": "boolean",
- "default": "true"
}
- },
- "version": "v1beta1",
- "baseUrl": "https://speech.googleapis.com/",
- "servicePath": "",
- "kind": "discovery#restDescription",
- "description": "Converts audio to text by applying powerful neural network models.",
- "basePath": "",
- "id": "speech:v1beta1",
- "revision": "20170624",
- "documentationLink": "https://cloud.google.com/speech/"
+ }
}
diff --git a/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go b/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go
index c28dec1..941f437 100644
--- a/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go
+++ b/vendor/google.golang.org/api/speech/v1beta1/speech-gen.go
@@ -621,9 +621,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
diff --git a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json
index 991738e..11473da 100644
--- a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json
+++ b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-api.json
@@ -1,12 +1,12 @@
{
"kind": "discovery#restDescription",
- "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/49KRnzlsfCajyooOx9JRESIbzZg\"",
+ "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/lsRSA9rF-4KQu4xYN0id-kYxBtA\"",
"discoveryVersion": "v1",
"id": "sqladmin:v1beta3",
"name": "sqladmin",
"canonicalName": "SQL Admin",
"version": "v1beta3",
- "revision": "20170606",
+ "revision": "20170807",
"title": "Cloud SQL Administration API",
"description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.",
"ownerDomain": "google.com",
@@ -783,7 +783,7 @@
},
"requireSsl": {
"type": "boolean",
- "description": "Whether the mysqld should default to 'REQUIRE X509' for users connecting over IP."
+ "description": "Whether SSL connections over IP should be enforced or not."
}
}
},
diff --git a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go
index 4c704db..f54961b 100644
--- a/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go
+++ b/vendor/google.golang.org/api/sqladmin/v1beta3/sqladmin-gen.go
@@ -1341,8 +1341,8 @@ type IpConfiguration struct {
// Kind: This is always sql#ipConfiguration.
Kind string `json:"kind,omitempty"`
- // RequireSsl: Whether the mysqld should default to 'REQUIRE X509' for
- // users connecting over IP.
+ // RequireSsl: Whether SSL connections over IP should be enforced or
+ // not.
RequireSsl bool `json:"requireSsl,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuthorizedNetworks")
diff --git a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json
index b8fbc80..fea9a5a 100644
--- a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json
+++ b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-api.json
@@ -1,12 +1,12 @@
{
"kind": "discovery#restDescription",
- "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/XsY4JGYlYgyTyxbJioMS7bSip2s\"",
+ "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/odbYGRT1izLWfRhfVNwcTacV8sM\"",
"discoveryVersion": "v1",
"id": "sqladmin:v1beta4",
"name": "sqladmin",
"canonicalName": "SQL Admin",
"version": "v1beta4",
- "revision": "20170606",
+ "revision": "20170807",
"title": "Cloud SQL Administration API",
"description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.",
"ownerDomain": "google.com",
@@ -344,7 +344,7 @@
},
"databaseVersion": {
"type": "string",
- "description": "The database engine type and version. The databaseVersion can not be changed after instance creation. Can be MYSQL_5_5, MYSQL_5_6 or MYSQL_5_7. Defaults to MYSQL_5_6. MYSQL_5_7 is applicable only to Second Generation instances."
+ "description": "The database engine type and version. The databaseVersion field can not be changed after instance creation. MySQL Second Generation instances: MYSQL_5_7 (default) or MYSQL_5_6. PostgreSQL instances: POSTGRES_9_6 MySQL First Generation instances: MYSQL_5_6 (default) or MYSQL_5_5"
},
"etag": {
"type": "string",
@@ -364,6 +364,10 @@
}
}
},
+ "gceZone": {
+ "type": "string",
+ "description": "The GCE zone that the instance is serving from. In case when the instance is failed over to standby zone, this value may be different with what user specified in the settings."
+ },
"instanceType": {
"type": "string",
"description": "The instance type. This can be one of the following.\nCLOUD_SQL_INSTANCE: A Cloud SQL instance that is not replicating from a master.\nON_PREMISES_INSTANCE: An instance running on the customer's premises.\nREAD_REPLICA_INSTANCE: A Cloud SQL instance configured as a read-replica."
@@ -649,7 +653,7 @@
},
"importUser": {
"type": "string",
- "description": "The PostgreSQL user to use for this import operation. Defaults to cloudsqlsuperuser. Does not apply to MySQL instances."
+ "description": "The PostgreSQL user for this import operation. Defaults to cloudsqlsuperuser. Used only for PostgreSQL instances."
},
"kind": {
"type": "string",
@@ -769,7 +773,7 @@
},
"requireSsl": {
"type": "boolean",
- "description": "Whether the mysqld should default to 'REQUIRE X509' for users connecting over IP."
+ "description": "Whether SSL connections over IP should be enforced or not."
}
}
},
diff --git a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go
index e41bfa2..248cae0 100644
--- a/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go
+++ b/vendor/google.golang.org/api/sqladmin/v1beta4/sqladmin-gen.go
@@ -554,9 +554,10 @@ type DatabaseInstance struct {
CurrentDiskSize int64 `json:"currentDiskSize,omitempty,string"`
// DatabaseVersion: The database engine type and version. The
- // databaseVersion can not be changed after instance creation. Can be
- // MYSQL_5_5, MYSQL_5_6 or MYSQL_5_7. Defaults to MYSQL_5_6. MYSQL_5_7
- // is applicable only to Second Generation instances.
+ // databaseVersion field can not be changed after instance creation.
+ // MySQL Second Generation instances: MYSQL_5_7 (default) or MYSQL_5_6.
+ // PostgreSQL instances: POSTGRES_9_6 MySQL First Generation instances:
+ // MYSQL_5_6 (default) or MYSQL_5_5
DatabaseVersion string `json:"databaseVersion,omitempty"`
// Etag: HTTP 1.1 Entity tag for the resource.
@@ -566,6 +567,11 @@ type DatabaseInstance struct {
// property is applicable only to Second Generation instances.
FailoverReplica *DatabaseInstanceFailoverReplica `json:"failoverReplica,omitempty"`
+ // GceZone: The GCE zone that the instance is serving from. In case when
+ // the instance is failed over to standby zone, this value may be
+ // different with what user specified in the settings.
+ GceZone string `json:"gceZone,omitempty"`
+
// InstanceType: The instance type. This can be one of the
// following.
// CLOUD_SQL_INSTANCE: A Cloud SQL instance that is not replicating from
@@ -1005,8 +1011,8 @@ type ImportContext struct {
// CSV: The file contains CSV data.
FileType string `json:"fileType,omitempty"`
- // ImportUser: The PostgreSQL user to use for this import operation.
- // Defaults to cloudsqlsuperuser. Does not apply to MySQL instances.
+ // ImportUser: The PostgreSQL user for this import operation. Defaults
+ // to cloudsqlsuperuser. Used only for PostgreSQL instances.
ImportUser string `json:"importUser,omitempty"`
// Kind: This is always sql#importContext.
@@ -1299,8 +1305,8 @@ type IpConfiguration struct {
// not.
Ipv4Enabled bool `json:"ipv4Enabled,omitempty"`
- // RequireSsl: Whether the mysqld should default to 'REQUIRE X509' for
- // users connecting over IP.
+ // RequireSsl: Whether SSL connections over IP should be enforced or
+ // not.
RequireSsl bool `json:"requireSsl,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuthorizedNetworks")
diff --git a/vendor/google.golang.org/api/storage/v1/storage-api.json b/vendor/google.golang.org/api/storage/v1/storage-api.json
index b025cc9..5b7af41 100644
--- a/vendor/google.golang.org/api/storage/v1/storage-api.json
+++ b/vendor/google.golang.org/api/storage/v1/storage-api.json
@@ -1,11 +1,11 @@
{
"kind": "discovery#restDescription",
- "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/-XlPsGE1eaKzlxWDtbwmuSaBoqc\"",
+ "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/tlgWHRfLf7fwkqtOCpLemeoORxg\"",
"discoveryVersion": "v1",
"id": "storage:v1",
"name": "storage",
"version": "v1",
- "revision": "20170607",
+ "revision": "20170810",
"title": "Cloud Storage JSON API",
"description": "Stores and retrieves potentially large, immutable data objects.",
"ownerDomain": "google.com",
@@ -687,7 +687,7 @@
},
"contentType": {
"type": "string",
- "description": "Content-Type of the object data. If contentType is not specified, object downloads will be served as application/octet-stream."
+ "description": "Content-Type of the object data. If an object is stored without a Content-Type, it is served as application/octet-stream."
},
"crc32c": {
"type": "string",
@@ -990,7 +990,7 @@
},
"resourceId": {
"type": "string",
- "description": "The ID of the resource to which this policy belongs. Will be of the form buckets/bucket for buckets, and buckets/bucket/objects/object for objects. A specific generation may be specified by appending #generationNumber to the end of the object name, e.g. buckets/my-bucket/objects/data.txt#17. The current generation can be denoted with #0. This field is ignored on input."
+ "description": "The ID of the resource to which this policy belongs. Will be of the form projects/_/buckets/bucket for buckets, and projects/_/buckets/bucket/objects/object for objects. A specific generation may be specified by appending #generationNumber to the end of the object name, e.g. projects/_/buckets/my-bucket/objects/data.txt#17. The current generation can be denoted with #0. This field is ignored on input."
}
}
},
@@ -2176,7 +2176,7 @@
"parameters": {
"bucket": {
"type": "string",
- "description": "Name of a GCS bucket.",
+ "description": "Name of a Google Cloud Storage bucket.",
"required": true,
"location": "path"
},
@@ -2535,7 +2535,7 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
@@ -2615,13 +2615,13 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the destination object's current generation matches the given value.",
+ "description": "Makes the operation conditional on whether the destination object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
"ifGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
"format": "int64",
"location": "query"
},
@@ -2639,13 +2639,13 @@
},
"ifSourceGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the source object's generation matches the given value.",
+ "description": "Makes the operation conditional on whether the source object's current generation matches the given value.",
"format": "int64",
"location": "query"
},
"ifSourceGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the source object's generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.",
"format": "int64",
"location": "query"
},
@@ -2738,13 +2738,13 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
"ifGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
"format": "int64",
"location": "query"
},
@@ -2802,13 +2802,13 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's generation matches the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
"ifGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
"format": "int64",
"location": "query"
},
@@ -2930,13 +2930,13 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
"ifGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
"format": "int64",
"location": "query"
},
@@ -3129,13 +3129,13 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
"ifGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
"format": "int64",
"location": "query"
},
@@ -3258,13 +3258,13 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the destination object's current generation matches the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
"ifGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
"format": "int64",
"location": "query"
},
@@ -3282,13 +3282,13 @@
},
"ifSourceGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the source object's generation matches the given value.",
+ "description": "Makes the operation conditional on whether the source object's current generation matches the given value.",
"format": "int64",
"location": "query"
},
"ifSourceGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the source object's generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.",
"format": "int64",
"location": "query"
},
@@ -3489,13 +3489,13 @@
},
"ifGenerationMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
"format": "int64",
"location": "query"
},
"ifGenerationNotMatch": {
"type": "string",
- "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
"format": "int64",
"location": "query"
},
@@ -3662,7 +3662,7 @@
"id": "storage.projects.serviceAccount.get",
"path": "projects/{projectId}/serviceAccount",
"httpMethod": "GET",
- "description": "Get the email address of this project's GCS service account.",
+ "description": "Get the email address of this project's Google Cloud Storage service account.",
"parameters": {
"projectId": {
"type": "string",
diff --git a/vendor/google.golang.org/api/storage/v1/storage-gen.go b/vendor/google.golang.org/api/storage/v1/storage-gen.go
index 64860ab..05e618e 100644
--- a/vendor/google.golang.org/api/storage/v1/storage-gen.go
+++ b/vendor/google.golang.org/api/storage/v1/storage-gen.go
@@ -1168,9 +1168,8 @@ type Object struct {
// ContentLanguage: Content-Language of the object data.
ContentLanguage string `json:"contentLanguage,omitempty"`
- // ContentType: Content-Type of the object data. If contentType is not
- // specified, object downloads will be served as
- // application/octet-stream.
+ // ContentType: Content-Type of the object data. If an object is stored
+ // without a Content-Type, it is served as application/octet-stream.
ContentType string `json:"contentType,omitempty"`
// Crc32c: CRC32c checksum, as described in RFC 4960, Appendix B;
@@ -1556,10 +1555,11 @@ type Policy struct {
Kind string `json:"kind,omitempty"`
// ResourceId: The ID of the resource to which this policy belongs. Will
- // be of the form buckets/bucket for buckets, and
- // buckets/bucket/objects/object for objects. A specific generation may
- // be specified by appending #generationNumber to the end of the object
- // name, e.g. buckets/my-bucket/objects/data.txt#17. The current
+ // be of the form projects/_/buckets/bucket for buckets, and
+ // projects/_/buckets/bucket/objects/object for objects. A specific
+ // generation may be specified by appending #generationNumber to the end
+ // of the object name, e.g.
+ // projects/_/buckets/my-bucket/objects/data.txt#17. The current
// generation can be denoted with #0. This field is ignored on input.
ResourceId string `json:"resourceId,omitempty"`
@@ -6103,7 +6103,7 @@ func (c *NotificationsListCall) Do(opts ...googleapi.CallOption) (*Notifications
// ],
// "parameters": {
// "bucket": {
- // "description": "Name of a GCS bucket.",
+ // "description": "Name of a Google Cloud Storage bucket.",
// "location": "path",
// "required": true,
// "type": "string"
@@ -7207,7 +7207,8 @@ func (c *ObjectsComposeCall) DestinationPredefinedAcl(destinationPredefinedAcl s
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
// Makes the operation conditional on whether the object's current
-// generation matches the given value.
+// generation matches the given value. Setting to 0 makes the operation
+// succeed only if there are no live versions of the object.
func (c *ObjectsComposeCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsComposeCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -7383,7 +7384,7 @@ func (c *ObjectsComposeCall) Do(opts ...googleapi.CallOption) (*Object, error) {
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -7472,7 +7473,8 @@ func (c *ObjectsCopyCall) DestinationPredefinedAcl(destinationPredefinedAcl stri
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
// Makes the operation conditional on whether the destination object's
-// current generation matches the given value.
+// current generation matches the given value. Setting to 0 makes the
+// operation succeed only if there are no live versions of the object.
func (c *ObjectsCopyCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsCopyCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -7481,7 +7483,9 @@ func (c *ObjectsCopyCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsCop
// IfGenerationNotMatch sets the optional parameter
// "ifGenerationNotMatch": Makes the operation conditional on whether
// the destination object's current generation does not match the given
-// value.
+// value. If no live object exists, the precondition fails. Setting to 0
+// makes the operation succeed only if there is a live version of the
+// object.
func (c *ObjectsCopyCall) IfGenerationNotMatch(ifGenerationNotMatch int64) *ObjectsCopyCall {
c.urlParams_.Set("ifGenerationNotMatch", fmt.Sprint(ifGenerationNotMatch))
return c
@@ -7507,7 +7511,7 @@ func (c *ObjectsCopyCall) IfMetagenerationNotMatch(ifMetagenerationNotMatch int6
// IfSourceGenerationMatch sets the optional parameter
// "ifSourceGenerationMatch": Makes the operation conditional on whether
-// the source object's generation matches the given value.
+// the source object's current generation matches the given value.
func (c *ObjectsCopyCall) IfSourceGenerationMatch(ifSourceGenerationMatch int64) *ObjectsCopyCall {
c.urlParams_.Set("ifSourceGenerationMatch", fmt.Sprint(ifSourceGenerationMatch))
return c
@@ -7515,8 +7519,8 @@ func (c *ObjectsCopyCall) IfSourceGenerationMatch(ifSourceGenerationMatch int64)
// IfSourceGenerationNotMatch sets the optional parameter
// "ifSourceGenerationNotMatch": Makes the operation conditional on
-// whether the source object's generation does not match the given
-// value.
+// whether the source object's current generation does not match the
+// given value.
func (c *ObjectsCopyCall) IfSourceGenerationNotMatch(ifSourceGenerationNotMatch int64) *ObjectsCopyCall {
c.urlParams_.Set("ifSourceGenerationNotMatch", fmt.Sprint(ifSourceGenerationNotMatch))
return c
@@ -7716,13 +7720,13 @@ func (c *ObjectsCopyCall) Do(opts ...googleapi.CallOption) (*Object, error) {
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the destination object's current generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the destination object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -7740,13 +7744,13 @@ func (c *ObjectsCopyCall) Do(opts ...googleapi.CallOption) (*Object, error) {
// "type": "string"
// },
// "ifSourceGenerationMatch": {
- // "description": "Makes the operation conditional on whether the source object's generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the source object's current generation matches the given value.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifSourceGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the source object's generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -7849,7 +7853,8 @@ func (c *ObjectsDeleteCall) Generation(generation int64) *ObjectsDeleteCall {
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
// Makes the operation conditional on whether the object's current
-// generation matches the given value.
+// generation matches the given value. Setting to 0 makes the operation
+// succeed only if there are no live versions of the object.
func (c *ObjectsDeleteCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsDeleteCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -7857,7 +7862,9 @@ func (c *ObjectsDeleteCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsD
// IfGenerationNotMatch sets the optional parameter
// "ifGenerationNotMatch": Makes the operation conditional on whether
-// the object's current generation does not match the given value.
+// the object's current generation does not match the given value. If no
+// live object exists, the precondition fails. Setting to 0 makes the
+// operation succeed only if there is a live version of the object.
func (c *ObjectsDeleteCall) IfGenerationNotMatch(ifGenerationNotMatch int64) *ObjectsDeleteCall {
c.urlParams_.Set("ifGenerationNotMatch", fmt.Sprint(ifGenerationNotMatch))
return c
@@ -7965,13 +7972,13 @@ func (c *ObjectsDeleteCall) Do(opts ...googleapi.CallOption) error {
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -8039,8 +8046,9 @@ func (c *ObjectsGetCall) Generation(generation int64) *ObjectsGetCall {
}
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
-// Makes the operation conditional on whether the object's generation
-// matches the given value.
+// Makes the operation conditional on whether the object's current
+// generation matches the given value. Setting to 0 makes the operation
+// succeed only if there are no live versions of the object.
func (c *ObjectsGetCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsGetCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -8048,7 +8056,9 @@ func (c *ObjectsGetCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsGetC
// IfGenerationNotMatch sets the optional parameter
// "ifGenerationNotMatch": Makes the operation conditional on whether
-// the object's generation does not match the given value.
+// the object's current generation does not match the given value. If no
+// live object exists, the precondition fails. Setting to 0 makes the
+// operation succeed only if there is a live version of the object.
func (c *ObjectsGetCall) IfGenerationNotMatch(ifGenerationNotMatch int64) *ObjectsGetCall {
c.urlParams_.Set("ifGenerationNotMatch", fmt.Sprint(ifGenerationNotMatch))
return c
@@ -8221,13 +8231,13 @@ func (c *ObjectsGetCall) Do(opts ...googleapi.CallOption) (*Object, error) {
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the object's generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the object's generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -8500,7 +8510,8 @@ func (c *ObjectsInsertCall) ContentEncoding(contentEncoding string) *ObjectsInse
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
// Makes the operation conditional on whether the object's current
-// generation matches the given value.
+// generation matches the given value. Setting to 0 makes the operation
+// succeed only if there are no live versions of the object.
func (c *ObjectsInsertCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsInsertCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -8508,7 +8519,9 @@ func (c *ObjectsInsertCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsI
// IfGenerationNotMatch sets the optional parameter
// "ifGenerationNotMatch": Makes the operation conditional on whether
-// the object's current generation does not match the given value.
+// the object's current generation does not match the given value. If no
+// live object exists, the precondition fails. Setting to 0 makes the
+// operation succeed only if there is a live version of the object.
func (c *ObjectsInsertCall) IfGenerationNotMatch(ifGenerationNotMatch int64) *ObjectsInsertCall {
c.urlParams_.Set("ifGenerationNotMatch", fmt.Sprint(ifGenerationNotMatch))
return c
@@ -8808,13 +8821,13 @@ func (c *ObjectsInsertCall) Do(opts ...googleapi.CallOption) (*Object, error) {
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -9203,7 +9216,8 @@ func (c *ObjectsPatchCall) Generation(generation int64) *ObjectsPatchCall {
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
// Makes the operation conditional on whether the object's current
-// generation matches the given value.
+// generation matches the given value. Setting to 0 makes the operation
+// succeed only if there are no live versions of the object.
func (c *ObjectsPatchCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsPatchCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -9211,7 +9225,9 @@ func (c *ObjectsPatchCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsPa
// IfGenerationNotMatch sets the optional parameter
// "ifGenerationNotMatch": Makes the operation conditional on whether
-// the object's current generation does not match the given value.
+// the object's current generation does not match the given value. If no
+// live object exists, the precondition fails. Setting to 0 makes the
+// operation succeed only if there is a live version of the object.
func (c *ObjectsPatchCall) IfGenerationNotMatch(ifGenerationNotMatch int64) *ObjectsPatchCall {
c.urlParams_.Set("ifGenerationNotMatch", fmt.Sprint(ifGenerationNotMatch))
return c
@@ -9380,13 +9396,13 @@ func (c *ObjectsPatchCall) Do(opts ...googleapi.CallOption) (*Object, error) {
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -9523,8 +9539,9 @@ func (c *ObjectsRewriteCall) DestinationPredefinedAcl(destinationPredefinedAcl s
}
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
-// Makes the operation conditional on whether the destination object's
-// current generation matches the given value.
+// Makes the operation conditional on whether the object's current
+// generation matches the given value. Setting to 0 makes the operation
+// succeed only if there are no live versions of the object.
func (c *ObjectsRewriteCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsRewriteCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -9532,8 +9549,9 @@ func (c *ObjectsRewriteCall) IfGenerationMatch(ifGenerationMatch int64) *Objects
// IfGenerationNotMatch sets the optional parameter
// "ifGenerationNotMatch": Makes the operation conditional on whether
-// the destination object's current generation does not match the given
-// value.
+// the object's current generation does not match the given value. If no
+// live object exists, the precondition fails. Setting to 0 makes the
+// operation succeed only if there is a live version of the object.
func (c *ObjectsRewriteCall) IfGenerationNotMatch(ifGenerationNotMatch int64) *ObjectsRewriteCall {
c.urlParams_.Set("ifGenerationNotMatch", fmt.Sprint(ifGenerationNotMatch))
return c
@@ -9559,7 +9577,7 @@ func (c *ObjectsRewriteCall) IfMetagenerationNotMatch(ifMetagenerationNotMatch i
// IfSourceGenerationMatch sets the optional parameter
// "ifSourceGenerationMatch": Makes the operation conditional on whether
-// the source object's generation matches the given value.
+// the source object's current generation matches the given value.
func (c *ObjectsRewriteCall) IfSourceGenerationMatch(ifSourceGenerationMatch int64) *ObjectsRewriteCall {
c.urlParams_.Set("ifSourceGenerationMatch", fmt.Sprint(ifSourceGenerationMatch))
return c
@@ -9567,8 +9585,8 @@ func (c *ObjectsRewriteCall) IfSourceGenerationMatch(ifSourceGenerationMatch int
// IfSourceGenerationNotMatch sets the optional parameter
// "ifSourceGenerationNotMatch": Makes the operation conditional on
-// whether the source object's generation does not match the given
-// value.
+// whether the source object's current generation does not match the
+// given value.
func (c *ObjectsRewriteCall) IfSourceGenerationNotMatch(ifSourceGenerationNotMatch int64) *ObjectsRewriteCall {
c.urlParams_.Set("ifSourceGenerationNotMatch", fmt.Sprint(ifSourceGenerationNotMatch))
return c
@@ -9782,13 +9800,13 @@ func (c *ObjectsRewriteCall) Do(opts ...googleapi.CallOption) (*RewriteResponse,
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the destination object's current generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the destination object's current generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -9806,13 +9824,13 @@ func (c *ObjectsRewriteCall) Do(opts ...googleapi.CallOption) (*RewriteResponse,
// "type": "string"
// },
// "ifSourceGenerationMatch": {
- // "description": "Makes the operation conditional on whether the source object's generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the source object's current generation matches the given value.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifSourceGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the source object's generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the source object's current generation does not match the given value.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -10282,7 +10300,8 @@ func (c *ObjectsUpdateCall) Generation(generation int64) *ObjectsUpdateCall {
// IfGenerationMatch sets the optional parameter "ifGenerationMatch":
// Makes the operation conditional on whether the object's current
-// generation matches the given value.
+// generation matches the given value. Setting to 0 makes the operation
+// succeed only if there are no live versions of the object.
func (c *ObjectsUpdateCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsUpdateCall {
c.urlParams_.Set("ifGenerationMatch", fmt.Sprint(ifGenerationMatch))
return c
@@ -10290,7 +10309,9 @@ func (c *ObjectsUpdateCall) IfGenerationMatch(ifGenerationMatch int64) *ObjectsU
// IfGenerationNotMatch sets the optional parameter
// "ifGenerationNotMatch": Makes the operation conditional on whether
-// the object's current generation does not match the given value.
+// the object's current generation does not match the given value. If no
+// live object exists, the precondition fails. Setting to 0 makes the
+// operation succeed only if there is a live version of the object.
func (c *ObjectsUpdateCall) IfGenerationNotMatch(ifGenerationNotMatch int64) *ObjectsUpdateCall {
c.urlParams_.Set("ifGenerationNotMatch", fmt.Sprint(ifGenerationNotMatch))
return c
@@ -10475,13 +10496,13 @@ func (c *ObjectsUpdateCall) Do(opts ...googleapi.CallOption) (*Object, error) {
// "type": "string"
// },
// "ifGenerationMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation matches the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
// },
// "ifGenerationNotMatch": {
- // "description": "Makes the operation conditional on whether the object's current generation does not match the given value.",
+ // "description": "Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.",
// "format": "int64",
// "location": "query",
// "type": "string"
@@ -10819,7 +10840,8 @@ type ProjectsServiceAccountGetCall struct {
header_ http.Header
}
-// Get: Get the email address of this project's GCS service account.
+// Get: Get the email address of this project's Google Cloud Storage
+// service account.
func (r *ProjectsServiceAccountService) Get(projectId string) *ProjectsServiceAccountGetCall {
c := &ProjectsServiceAccountGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.projectId = projectId
@@ -10920,7 +10942,7 @@ func (c *ProjectsServiceAccountGetCall) Do(opts ...googleapi.CallOption) (*Servi
}
return ret, nil
// {
- // "description": "Get the email address of this project's GCS service account.",
+ // "description": "Get the email address of this project's Google Cloud Storage service account.",
// "httpMethod": "GET",
// "id": "storage.projects.serviceAccount.get",
// "parameterOrder": [
diff --git a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json
index ccc204a..ad3f0e7 100644
--- a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json
+++ b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-api.json
@@ -1,29 +1,13 @@
{
- "baseUrl": "https://storagetransfer.googleapis.com/",
- "auth": {
- "oauth2": {
- "scopes": {
- "https://www.googleapis.com/auth/cloud-platform": {
- "description": "View and manage your data across Google Cloud Platform services"
- }
- }
- }
- },
- "servicePath": "",
- "description": "Transfers data from external data sources to a Google Cloud Storage bucket or between Google Cloud Storage buckets.",
- "kind": "discovery#restDescription",
- "rootUrl": "https://storagetransfer.googleapis.com/",
- "basePath": "",
- "ownerDomain": "google.com",
"name": "storagetransfer",
"batchPath": "batch",
- "id": "storagetransfer:v1",
+ "revision": "20170824",
"documentationLink": "https://cloud.google.com/storage/transfer",
- "revision": "20170623",
+ "id": "storagetransfer:v1",
"title": "Google Storage Transfer API",
- "ownerName": "Google",
"discoveryVersion": "v1",
- "version_module": "True",
+ "ownerName": "Google",
+ "version_module": true,
"resources": {
"googleServiceAccounts": {
"methods": {
@@ -31,19 +15,19 @@
"response": {
"$ref": "GoogleServiceAccount"
},
+ "httpMethod": "GET",
"parameterOrder": [
"projectId"
],
- "httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"projectId": {
+ "location": "path",
"description": "The ID of the Google Cloud Platform Console project that the Google service\naccount is associated with.\nRequired.",
"type": "string",
- "required": true,
- "location": "path"
+ "required": true
}
},
"flatPath": "v1/googleServiceAccounts/{projectId}",
@@ -55,45 +39,71 @@
},
"transferOperations": {
"methods": {
- "pause": {
- "description": "Pauses a transfer operation.",
- "request": {
- "$ref": "PauseTransferOperationRequest"
- },
- "httpMethod": "POST",
- "parameterOrder": [
- "name"
- ],
+ "resume": {
"response": {
"$ref": "Empty"
},
- "parameters": {
- "name": {
- "description": "The name of the transfer operation.\nRequired.",
- "type": "string",
- "required": true,
- "pattern": "^transferOperations/.+$",
- "location": "path"
- }
- },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
- "flatPath": "v1/transferOperations/{transferOperationsId}:pause",
- "path": "v1/{+name}:pause",
- "id": "storagetransfer.transferOperations.pause"
+ "parameters": {
+ "name": {
+ "pattern": "^transferOperations/.+$",
+ "location": "path",
+ "description": "The name of the transfer operation.\nRequired.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/transferOperations/{transferOperationsId}:resume",
+ "id": "storagetransfer.transferOperations.resume",
+ "path": "v1/{+name}:resume",
+ "request": {
+ "$ref": "ResumeTransferOperationRequest"
+ },
+ "description": "Resumes a transfer operation that is paused."
},
- "delete": {
+ "cancel": {
"response": {
"$ref": "Empty"
},
"parameterOrder": [
"name"
],
- "httpMethod": "DELETE",
+ "httpMethod": "POST",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
"parameters": {
"name": {
- "description": "The name of the operation resource to be deleted.",
+ "location": "path",
+ "description": "The name of the operation resource to be cancelled.",
+ "type": "string",
+ "required": true,
+ "pattern": "^transferOperations/.+$"
+ }
+ },
+ "flatPath": "v1/transferOperations/{transferOperationsId}:cancel",
+ "id": "storagetransfer.transferOperations.cancel",
+ "path": "v1/{+name}:cancel",
+ "description": "Cancels a transfer. Use the get method to check whether the cancellation succeeded or whether the operation completed despite cancellation."
+ },
+ "get": {
+ "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameters": {
+ "name": {
+ "description": "The name of the operation resource.",
"type": "string",
"required": true,
"pattern": "^transferOperations/.+$",
@@ -104,133 +114,197 @@
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v1/transferOperations/{transferOperationsId}",
- "id": "storagetransfer.transferOperations.delete",
"path": "v1/{+name}",
- "description": "This method is not supported and the server returns `UNIMPLEMENTED`."
+ "id": "storagetransfer.transferOperations.get"
},
- "list": {
- "httpMethod": "GET",
+ "pause": {
"response": {
- "$ref": "ListOperationsResponse"
+ "$ref": "Empty"
},
"parameterOrder": [
"name"
],
+ "httpMethod": "POST",
+ "parameters": {
+ "name": {
+ "pattern": "^transferOperations/.+$",
+ "location": "path",
+ "description": "The name of the transfer operation.\nRequired.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "flatPath": "v1/transferOperations/{transferOperationsId}:pause",
+ "id": "storagetransfer.transferOperations.pause",
+ "path": "v1/{+name}:pause",
+ "description": "Pauses a transfer operation.",
+ "request": {
+ "$ref": "PauseTransferOperationRequest"
+ }
+ },
+ "delete": {
+ "description": "This method is not supported and the server returns `UNIMPLEMENTED`.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "httpMethod": "DELETE",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
+ "name": {
+ "pattern": "^transferOperations/.+$",
+ "location": "path",
+ "description": "The name of the operation resource to be deleted.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/transferOperations/{transferOperationsId}",
+ "id": "storagetransfer.transferOperations.delete",
+ "path": "v1/{+name}"
+ },
+ "list": {
+ "flatPath": "v1/transferOperations",
+ "path": "v1/{+name}",
+ "id": "storagetransfer.transferOperations.list",
+ "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "name"
+ ],
+ "response": {
+ "$ref": "ListOperationsResponse"
+ },
+ "parameters": {
+ "pageToken": {
+ "location": "query",
+ "description": "The list page token.",
+ "type": "string"
+ },
+ "name": {
+ "type": "string",
+ "required": true,
+ "pattern": "^transferOperations$",
+ "location": "path",
+ "description": "The value `transferOperations`."
+ },
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "The list page size. The max allowed value is 256.",
+ "type": "integer"
+ },
"filter": {
"description": "A list of query parameters specified as JSON text in the form of {\\\"project_id\\\" : \\\"my_project_id\\\", \\\"job_names\\\" : [\\\"jobid1\\\", \\\"jobid2\\\",...], \\\"operation_names\\\" : [\\\"opid1\\\", \\\"opid2\\\",...], \\\"transfer_statuses\\\":[\\\"status1\\\", \\\"status2\\\",...]}. Since `job_names`, `operation_names`, and `transfer_statuses` support multiple values, they must be specified with array notation. `job_names`, `operation_names`, and `transfer_statuses` are optional.",
"type": "string",
"location": "query"
- },
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ]
+ }
+ }
+ },
+ "transferJobs": {
+ "methods": {
+ "list": {
+ "response": {
+ "$ref": "ListTransferJobsResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "parameters": {
"pageToken": {
+ "location": "query",
"description": "The list page token.",
- "type": "string",
- "location": "query"
- },
- "name": {
- "description": "The value `transferOperations`.",
- "type": "string",
- "required": true,
- "pattern": "^transferOperations$",
- "location": "path"
+ "type": "string"
},
"pageSize": {
"format": "int32",
"description": "The list page size. The max allowed value is 256.",
"type": "integer",
"location": "query"
+ },
+ "filter": {
+ "location": "query",
+ "description": "A list of query parameters specified as JSON text in the form of\n{\"project_id\":\"my_project_id\",\n\"job_names\":[\"jobid1\",\"jobid2\",...],\n\"job_statuses\":[\"status1\",\"status2\",...]}.\nSince `job_names` and `job_statuses` support multiple values, their values\nmust be specified with array notation. `project_id` is required. `job_names`\nand `job_statuses` are optional. The valid values for `job_statuses` are\ncase-insensitive: `ENABLED`, `DISABLED`, and `DELETED`.",
+ "type": "string"
}
},
- "flatPath": "v1/transferOperations",
- "path": "v1/{+name}",
- "id": "storagetransfer.transferOperations.list",
- "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id."
- },
- "resume": {
- "request": {
- "$ref": "ResumeTransferOperationRequest"
- },
- "description": "Resumes a transfer operation that is paused.",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "name": {
- "location": "path",
- "description": "The name of the transfer operation.\nRequired.",
- "type": "string",
- "required": true,
- "pattern": "^transferOperations/.+$"
- }
- },
- "flatPath": "v1/transferOperations/{transferOperationsId}:resume",
- "id": "storagetransfer.transferOperations.resume",
- "path": "v1/{+name}:resume"
- },
- "cancel": {
- "description": "Cancels a transfer. Use the get method to check whether the cancellation succeeded or whether the operation completed despite cancellation.",
- "httpMethod": "POST",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "name"
- ],
- "parameters": {
- "name": {
- "description": "The name of the operation resource to be cancelled.",
- "type": "string",
- "required": true,
- "pattern": "^transferOperations/.+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1/transferOperations/{transferOperationsId}:cancel",
- "path": "v1/{+name}:cancel",
- "id": "storagetransfer.transferOperations.cancel"
+ "flatPath": "v1/transferJobs",
+ "id": "storagetransfer.transferJobs.list",
+ "path": "v1/transferJobs",
+ "description": "Lists transfer jobs."
},
"get": {
- "id": "storagetransfer.transferOperations.get",
- "path": "v1/{+name}",
- "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
+ "description": "Gets a transfer job.",
+ "httpMethod": "GET",
"response": {
- "$ref": "Operation"
+ "$ref": "TransferJob"
},
"parameterOrder": [
- "name"
+ "jobName"
],
- "httpMethod": "GET",
+ "parameters": {
+ "projectId": {
+ "location": "query",
+ "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.",
+ "type": "string"
+ },
+ "jobName": {
+ "pattern": "^transferJobs/.+$",
+ "location": "path",
+ "description": "The job to get.\nRequired.",
+ "type": "string",
+ "required": true
+ }
+ },
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
+ "flatPath": "v1/transferJobs/{transferJobsId}",
+ "path": "v1/{+jobName}",
+ "id": "storagetransfer.transferJobs.get"
+ },
+ "patch": {
+ "path": "v1/{+jobName}",
+ "id": "storagetransfer.transferJobs.patch",
+ "description": "Updates a transfer job. Updating a job's transfer spec does not affect\ntransfer operations that are running already. Updating the scheduling\nof a job is not allowed.",
+ "request": {
+ "$ref": "UpdateTransferJobRequest"
+ },
+ "httpMethod": "PATCH",
+ "parameterOrder": [
+ "jobName"
+ ],
+ "response": {
+ "$ref": "TransferJob"
+ },
"parameters": {
- "name": {
+ "jobName": {
+ "pattern": "^transferJobs/.+$",
"location": "path",
- "description": "The name of the operation resource.",
+ "description": "The name of job to update.\nRequired.",
"type": "string",
- "required": true,
- "pattern": "^transferOperations/.+$"
+ "required": true
}
},
- "flatPath": "v1/transferOperations/{transferOperationsId}"
- }
- }
- },
- "transferJobs": {
- "methods": {
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform"
+ ],
+ "flatPath": "v1/transferJobs/{transferJobsId}"
+ },
"create": {
"response": {
"$ref": "TransferJob"
@@ -248,136 +322,25 @@
"request": {
"$ref": "TransferJob"
}
- },
- "list": {
- "flatPath": "v1/transferJobs",
- "path": "v1/transferJobs",
- "id": "storagetransfer.transferJobs.list",
- "description": "Lists transfer jobs.",
- "httpMethod": "GET",
- "response": {
- "$ref": "ListTransferJobsResponse"
- },
- "parameterOrder": [],
- "parameters": {
- "filter": {
- "description": "A list of query parameters specified as JSON text in the form of\n{\"project_id\":\"my_project_id\",\n\"job_names\":[\"jobid1\",\"jobid2\",...],\n\"job_statuses\":[\"status1\",\"status2\",...]}.\nSince `job_names` and `job_statuses` support multiple values, their values\nmust be specified with array notation. `project_id` is required. `job_names`\nand `job_statuses` are optional. The valid values for `job_statuses` are\ncase-insensitive: `ENABLED`, `DISABLED`, and `DELETED`.",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "location": "query",
- "description": "The list page token.",
- "type": "string"
- },
- "pageSize": {
- "location": "query",
- "format": "int32",
- "description": "The list page size. The max allowed value is 256.",
- "type": "integer"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ]
- },
- "get": {
- "description": "Gets a transfer job.",
- "response": {
- "$ref": "TransferJob"
- },
- "parameterOrder": [
- "jobName"
- ],
- "httpMethod": "GET",
- "parameters": {
- "projectId": {
- "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.",
- "type": "string",
- "location": "query"
- },
- "jobName": {
- "description": "The job to get.\nRequired.",
- "type": "string",
- "required": true,
- "pattern": "^transferJobs/.+$",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "flatPath": "v1/transferJobs/{transferJobsId}",
- "id": "storagetransfer.transferJobs.get",
- "path": "v1/{+jobName}"
- },
- "patch": {
- "request": {
- "$ref": "UpdateTransferJobRequest"
- },
- "description": "Updates a transfer job. Updating a job's transfer spec does not affect\ntransfer operations that are running already. Updating the scheduling\nof a job is not allowed.",
- "response": {
- "$ref": "TransferJob"
- },
- "parameterOrder": [
- "jobName"
- ],
- "httpMethod": "PATCH",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {
- "jobName": {
- "type": "string",
- "required": true,
- "pattern": "^transferJobs/.+$",
- "location": "path",
- "description": "The name of job to update.\nRequired."
- }
- },
- "flatPath": "v1/transferJobs/{transferJobsId}",
- "id": "storagetransfer.transferJobs.patch",
- "path": "v1/{+jobName}"
}
}
}
},
"parameters": {
- "key": {
+ "bearer_token": {
+ "type": "string",
"location": "query",
- "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.",
- "type": "string"
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "quotaUser": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "pp": {
- "description": "Pretty-print response.",
- "default": "true",
- "type": "boolean",
- "location": "query"
+ "description": "OAuth bearer token."
},
"oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
- },
- "bearer_token": {
"location": "query",
- "description": "OAuth bearer token.",
+ "description": "OAuth 2.0 token for the current user.",
"type": "string"
},
"upload_protocol": {
- "location": "query",
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"prettyPrint": {
"description": "Returns response with indentations and line breaks.",
@@ -386,40 +349,34 @@
"location": "query"
},
"fields": {
+ "location": "query",
"description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
+ "type": "string"
},
"uploadType": {
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string",
"location": "query"
},
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
- },
"$.xgafv": {
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ],
"description": "V1 error format.",
"type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
- ],
- "location": "query",
- "enum": [
- "1",
- "2"
]
},
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
+ },
"alt": {
- "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",
"description": "Data format for response.",
"default": "json",
"enum": [
@@ -427,374 +384,39 @@
"media",
"proto"
],
- "type": "string"
+ "type": "string",
+ "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"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "pp": {
+ "location": "query",
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean"
}
},
"schemas": {
- "PauseTransferOperationRequest": {
- "description": "Request passed to PauseTransferOperation.",
- "type": "object",
- "properties": {},
- "id": "PauseTransferOperationRequest"
- },
- "TransferCounters": {
- "description": "A collection of counters that report the progress of a transfer operation.",
- "type": "object",
- "properties": {
- "bytesDeletedFromSource": {
- "format": "int64",
- "description": "Bytes that are deleted from the data source.",
- "type": "string"
- },
- "objectsFoundFromSource": {
- "format": "int64",
- "description": "Objects found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures.",
- "type": "string"
- },
- "objectsFailedToDeleteFromSink": {
- "type": "string",
- "format": "int64",
- "description": "Objects that failed to be deleted from the data sink."
- },
- "objectsFoundOnlyFromSink": {
- "format": "int64",
- "description": "Objects found only in the data sink that are scheduled to be deleted.",
- "type": "string"
- },
- "objectsDeletedFromSink": {
- "format": "int64",
- "description": "Objects that are deleted from the data sink.",
- "type": "string"
- },
- "bytesFromSourceSkippedBySync": {
- "format": "int64",
- "description": "Bytes in the data source that are not transferred because they already\nexist in the data sink.",
- "type": "string"
- },
- "bytesFailedToDeleteFromSink": {
- "format": "int64",
- "description": "Bytes that failed to be deleted from the data sink.",
- "type": "string"
- },
- "bytesDeletedFromSink": {
- "format": "int64",
- "description": "Bytes that are deleted from the data sink.",
- "type": "string"
- },
- "bytesFromSourceFailed": {
- "format": "int64",
- "description": "Bytes in the data source that failed during the transfer.",
- "type": "string"
- },
- "objectsCopiedToSink": {
- "format": "int64",
- "description": "Objects that are copied to the data sink.",
- "type": "string"
- },
- "objectsFromSourceFailed": {
- "type": "string",
- "format": "int64",
- "description": "Objects in the data source that failed during the transfer."
- },
- "bytesFoundOnlyFromSink": {
- "format": "int64",
- "description": "Bytes found only in the data sink that are scheduled to be deleted.",
- "type": "string"
- },
- "objectsDeletedFromSource": {
- "format": "int64",
- "description": "Objects that are deleted from the data source.",
- "type": "string"
- },
- "bytesCopiedToSink": {
- "format": "int64",
- "description": "Bytes that are copied to the data sink.",
- "type": "string"
- },
- "bytesFoundFromSource": {
- "format": "int64",
- "description": "Bytes found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures.",
- "type": "string"
- },
- "objectsFromSourceSkippedBySync": {
- "type": "string",
- "format": "int64",
- "description": "Objects in the data source that are not transferred because they already\nexist in the data sink."
- }
- },
- "id": "TransferCounters"
- },
- "ErrorSummary": {
- "id": "ErrorSummary",
- "description": "A summary of errors by error code, plus a count and sample error log\nentries.",
- "type": "object",
- "properties": {
- "errorCode": {
- "enumDescriptions": [
- "Not an error; returned on success\n\nHTTP Mapping: 200 OK",
- "The operation was cancelled, typically by the caller.\n\nHTTP Mapping: 499 Client Closed Request",
- "Unknown error. For example, this error may be returned when\na `Status` value received from another address space belongs to\nan error space that is not known in this address space. Also\nerrors raised by APIs that do not return enough error information\nmay be converted to this error.\n\nHTTP Mapping: 500 Internal Server Error",
- "The client specified an invalid argument. Note that this differs\nfrom `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments\nthat are problematic regardless of the state of the system\n(e.g., a malformed file name).\n\nHTTP Mapping: 400 Bad Request",
- "The deadline expired before the operation could complete. For operations\nthat change the state of the system, this error may be returned\neven if the operation has completed successfully. For example, a\nsuccessful response from a server could have been delayed long\nenough for the deadline to expire.\n\nHTTP Mapping: 504 Gateway Timeout",
- "Some requested entity (e.g., file or directory) was not found.\n\nNote to server developers: if a request is denied for an entire class\nof users, such as gradual feature rollout or undocumented whitelist,\n`NOT_FOUND` may be used. If a request is denied for some users within\na class of users, such as user-based access control, `PERMISSION_DENIED`\nmust be used.\n\nHTTP Mapping: 404 Not Found",
- "The entity that a client attempted to create (e.g., file or directory)\nalready exists.\n\nHTTP Mapping: 409 Conflict",
- "The caller does not have permission to execute the specified\noperation. `PERMISSION_DENIED` must not be used for rejections\ncaused by exhausting some resource (use `RESOURCE_EXHAUSTED`\ninstead for those errors). `PERMISSION_DENIED` must not be\nused if the caller can not be identified (use `UNAUTHENTICATED`\ninstead for those errors). This error code does not imply the\nrequest is valid or the requested entity exists or satisfies\nother pre-conditions.\n\nHTTP Mapping: 403 Forbidden",
- "The request does not have valid authentication credentials for the\noperation.\n\nHTTP Mapping: 401 Unauthorized",
- "Some resource has been exhausted, perhaps a per-user quota, or\nperhaps the entire file system is out of space.\n\nHTTP Mapping: 429 Too Many Requests",
- "The operation was rejected because the system is not in a state\nrequired for the operation's execution. For example, the directory\nto be deleted is non-empty, an rmdir operation is applied to\na non-directory, etc.\n\nService implementors can use the following guidelines to decide\nbetween `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`:\n (a) Use `UNAVAILABLE` if the client can retry just the failing call.\n (b) Use `ABORTED` if the client should retry at a higher level\n (e.g., when a client-specified test-and-set fails, indicating the\n client should restart a read-modify-write sequence).\n (c) Use `FAILED_PRECONDITION` if the client should not retry until\n the system state has been explicitly fixed. E.g., if an \"rmdir\"\n fails because the directory is non-empty, `FAILED_PRECONDITION`\n should be returned since the client should not retry unless\n the files are deleted from the directory.\n\nHTTP Mapping: 400 Bad Request",
- "The operation was aborted, typically due to a concurrency issue such as\na sequencer check failure or transaction abort.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 409 Conflict",
- "The operation was attempted past the valid range. E.g., seeking or\nreading past end-of-file.\n\nUnlike `INVALID_ARGUMENT`, this error indicates a problem that may\nbe fixed if the system state changes. For example, a 32-bit file\nsystem will generate `INVALID_ARGUMENT` if asked to read at an\noffset that is not in the range [0,2^32-1], but it will generate\n`OUT_OF_RANGE` if asked to read from an offset past the current\nfile size.\n\nThere is a fair bit of overlap between `FAILED_PRECONDITION` and\n`OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific\nerror) when it applies so that callers who are iterating through\na space can easily look for an `OUT_OF_RANGE` error to detect when\nthey are done.\n\nHTTP Mapping: 400 Bad Request",
- "The operation is not implemented or is not supported/enabled in this\nservice.\n\nHTTP Mapping: 501 Not Implemented",
- "Internal errors. This means that some invariants expected by the\nunderlying system have been broken. This error code is reserved\nfor serious errors.\n\nHTTP Mapping: 500 Internal Server Error",
- "The service is currently unavailable. This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable",
- "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error"
- ],
- "enum": [
- "OK",
- "CANCELLED",
- "UNKNOWN",
- "INVALID_ARGUMENT",
- "DEADLINE_EXCEEDED",
- "NOT_FOUND",
- "ALREADY_EXISTS",
- "PERMISSION_DENIED",
- "UNAUTHENTICATED",
- "RESOURCE_EXHAUSTED",
- "FAILED_PRECONDITION",
- "ABORTED",
- "OUT_OF_RANGE",
- "UNIMPLEMENTED",
- "INTERNAL",
- "UNAVAILABLE",
- "DATA_LOSS"
- ],
- "description": "Required.",
- "type": "string"
- },
- "errorCount": {
- "type": "string",
- "format": "int64",
- "description": "Count of this type of error.\nRequired."
- },
- "errorLogEntries": {
- "description": "Error samples.",
- "items": {
- "$ref": "ErrorLogEntry"
- },
- "type": "array"
- }
- }
- },
- "HttpData": {
- "properties": {
- "listUrl": {
- "description": "The URL that points to the file that stores the object list entries.\nThis file must allow public access. Currently, only URLs with HTTP and\nHTTPS schemes are supported.\nRequired.",
- "type": "string"
- }
- },
- "id": "HttpData",
- "description": "An HttpData specifies a list of objects on the web to be transferred over\nHTTP. The information of the objects to be transferred is contained in a\nfile referenced by a URL. The first line in the file must be\n\"TsvHttpData-1.0\", which specifies the format of the file. Subsequent lines\nspecify the information of the list of objects, one object per list entry.\nEach entry has the following tab-delimited fields:\n\n* HTTP URL - The location of the object.\n\n* Length - The size of the object in bytes.\n\n* MD5 - The base64-encoded MD5 hash of the object.\n\nFor an example of a valid TSV file, see\n[Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls)\n\nWhen transferring data based on a URL list, keep the following in mind:\n\n* When an object located at `http(s)://hostname:port/\u003cURL-path\u003e` is transferred\nto a data sink, the name of the object at the data sink is\n`\u003chostname\u003e/\u003cURL-path\u003e`.\n\n* If the specified size of an object does not match the actual size of the\nobject fetched, the object will not be transferred.\n\n* If the specified MD5 does not match the MD5 computed from the transferred\nbytes, the object transfer will fail. For more information, see\n[Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)\n\n* Ensure that each URL you specify is publicly accessible. For\nexample, in Google Cloud Storage you can\n[share an object publicly]\n(https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get\na link to it.\n\n* Storage Transfer Service obeys `robots.txt` rules and requires the source\nHTTP server to support `Range` requests and to return a `Content-Length`\nheader in each response.\n\n* [ObjectConditions](#ObjectConditions) have no effect when filtering objects\nto transfer.",
- "type": "object"
- },
- "GcsData": {
- "description": "In a GcsData, an object's name is the Google Cloud Storage object's name and\nits `lastModificationTime` refers to the object's updated time, which changes\nwhen the content or the metadata of the object is updated.",
- "type": "object",
- "properties": {
- "bucketName": {
- "type": "string",
- "description": "Google Cloud Storage bucket name (see\n[Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nRequired."
- }
- },
- "id": "GcsData"
- },
- "ListTransferJobsResponse": {
- "description": "Response from ListTransferJobs.",
- "type": "object",
- "properties": {
- "nextPageToken": {
- "description": "The list next page token.",
- "type": "string"
- },
- "transferJobs": {
- "items": {
- "$ref": "TransferJob"
- },
- "type": "array",
- "description": "A list of transfer jobs."
- }
- },
- "id": "ListTransferJobsResponse"
- },
- "UpdateTransferJobRequest": {
- "properties": {
- "projectId": {
- "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.",
- "type": "string"
- },
- "updateTransferJobFieldMask": {
- "format": "google-fieldmask",
- "description": "The field mask of the fields in `transferJob` that are to be updated in\nthis request. Fields in `transferJob` that can be updated are:\n`description`, `transferSpec`, and `status`. To update the `transferSpec`\nof the job, a complete transfer specification has to be provided. An\nincomplete specification which misses any required fields will be rejected\nwith the error `INVALID_ARGUMENT`.",
- "type": "string"
- },
- "transferJob": {
- "description": "The job to update.\nRequired.",
- "$ref": "TransferJob"
- }
- },
- "id": "UpdateTransferJobRequest",
- "description": "Request passed to UpdateTransferJob.",
- "type": "object"
- },
- "ObjectConditions": {
- "description": "Conditions that determine which objects will be transferred.",
- "type": "object",
- "properties": {
- "excludePrefixes": {
- "description": "`excludePrefixes` must follow the requirements described for\n`includePrefixes`.\n\nThe max size of `excludePrefixes` is 1000.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "minTimeElapsedSinceLastModification": {
- "format": "google-duration",
- "description": "If unspecified, `minTimeElapsedSinceLastModification` takes a zero value\nand `maxTimeElapsedSinceLastModification` takes the maximum possible\nvalue of Duration. Objects that satisfy the object conditions\nmust either have a `lastModificationTime` greater or equal to\n`NOW` - `maxTimeElapsedSinceLastModification` and less than\n`NOW` - `minTimeElapsedSinceLastModification`, or not have a\n`lastModificationTime`.",
- "type": "string"
- },
- "maxTimeElapsedSinceLastModification": {
- "type": "string",
- "format": "google-duration",
- "description": "`maxTimeElapsedSinceLastModification` is the complement to\n`minTimeElapsedSinceLastModification`."
- },
- "includePrefixes": {
- "description": "If `includePrefixes` is specified, objects that satisfy the object\nconditions must have names that start with one of the `includePrefixes`\nand that do not start with any of the `excludePrefixes`. If `includePrefixes`\nis not specified, all objects except those that have names starting with\none of the `excludePrefixes` must satisfy the object conditions.\n\nRequirements:\n\n * Each include-prefix and exclude-prefix can contain any sequence of\n Unicode characters, of max length 1024 bytes when UTF8-encoded, and\n must not contain Carriage Return or Line Feed characters. Wildcard\n matching and regular expression matching are not supported.\n\n * Each include-prefix and exclude-prefix must omit the leading slash.\n For example, to include the `requests.gz` object in a transfer from\n `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include\n prefix as `logs/y=2015/requests.gz`.\n\n * None of the include-prefix or the exclude-prefix values can be empty,\n if specified.\n\n * Each include-prefix must include a distinct portion of the object\n namespace, i.e., no include-prefix may be a prefix of another\n include-prefix.\n\n * Each exclude-prefix must exclude a distinct portion of the object\n namespace, i.e., no exclude-prefix may be a prefix of another\n exclude-prefix.\n\n * If `includePrefixes` is specified, then each exclude-prefix must start\n with the value of a path explicitly included by `includePrefixes`.\n\nThe max size of `includePrefixes` is 1000.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "id": "ObjectConditions"
- },
- "Operation": {
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
- "type": "object",
- "properties": {
- "metadata": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "Represents the transfer operation object.",
- "type": "object"
- },
- "done": {
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
- "type": "boolean"
- },
- "response": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
- "type": "object"
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should have the format of `transferOperations/some/unique/name`.",
- "type": "string"
- },
- "error": {
- "$ref": "Status",
- "description": "The error result of the operation in case of failure or cancellation."
- }
- },
- "id": "Operation"
- },
- "TransferOptions": {
- "description": "TransferOptions uses three boolean parameters to define the actions\nto be performed on objects in a transfer.",
- "type": "object",
- "properties": {
- "deleteObjectsFromSourceAfterTransfer": {
- "description": "Whether objects should be deleted from the source after they are\ntransferred to the sink. Note that this option and\n`deleteObjectsUniqueInSink` are mutually exclusive.",
- "type": "boolean"
- },
- "deleteObjectsUniqueInSink": {
- "description": "Whether objects that exist only in the sink should be deleted. Note that\nthis option and `deleteObjectsFromSourceAfterTransfer` are mutually\nexclusive.",
- "type": "boolean"
- },
- "overwriteObjectsAlreadyExistingInSink": {
- "description": "Whether overwriting objects that already exist in the sink is allowed.",
- "type": "boolean"
- }
- },
- "id": "TransferOptions"
- },
- "TransferSpec": {
- "description": "Configuration for running a transfer.",
- "type": "object",
- "properties": {
- "httpDataSource": {
- "description": "An HTTP URL data source.",
- "$ref": "HttpData"
- },
- "objectConditions": {
- "$ref": "ObjectConditions",
- "description": "Only objects that satisfy these object conditions are included in the set\nof data source and data sink objects. Object conditions based on\nobjects' `lastModificationTime` do not exclude objects in a data sink."
- },
- "gcsDataSink": {
- "$ref": "GcsData",
- "description": "A Google Cloud Storage data sink."
- },
- "gcsDataSource": {
- "description": "A Google Cloud Storage data source.",
- "$ref": "GcsData"
- },
- "transferOptions": {
- "$ref": "TransferOptions",
- "description": "If the option `deleteObjectsUniqueInSink` is `true`, object conditions\nbased on objects' `lastModificationTime` are ignored and do not exclude\nobjects in a data source or a data sink."
- },
- "awsS3DataSource": {
- "description": "An AWS S3 data source.",
- "$ref": "AwsS3Data"
- }
- },
- "id": "TransferSpec"
- },
- "ResumeTransferOperationRequest": {
- "id": "ResumeTransferOperationRequest",
- "description": "Request passed to ResumeTransferOperation.",
- "type": "object",
- "properties": {}
- },
- "Status": {
- "id": "Status",
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object",
- "properties": {
- "code": {
- "type": "integer",
- "format": "int32",
- "description": "The status code, which should be an enum value of google.rpc.Code."
- },
- "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"
- },
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "items": {
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "type": "array"
- }
- }
- },
"ListOperationsResponse": {
+ "description": "The response message for Operations.ListOperations.",
"type": "object",
"properties": {
"nextPageToken": {
@@ -809,8 +431,7 @@
"type": "array"
}
},
- "id": "ListOperationsResponse",
- "description": "The response message for Operations.ListOperations."
+ "id": "ListOperationsResponse"
},
"GoogleServiceAccount": {
"description": "Google service account",
@@ -824,6 +445,8 @@
"id": "GoogleServiceAccount"
},
"TimeOfDay": {
+ "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.",
+ "type": "object",
"properties": {
"minutes": {
"format": "int32",
@@ -831,9 +454,9 @@
"type": "integer"
},
"hours": {
+ "type": "integer",
"format": "int32",
- "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.",
- "type": "integer"
+ "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time."
},
"nanos": {
"format": "int32",
@@ -846,12 +469,9 @@
"type": "integer"
}
},
- "id": "TimeOfDay",
- "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.",
- "type": "object"
+ "id": "TimeOfDay"
},
"ErrorLogEntry": {
- "id": "ErrorLogEntry",
"description": "An entry describing an error that has occurred.",
"type": "object",
"properties": {
@@ -866,10 +486,10 @@
"description": "A URL that refers to the target (a data source, a data sink,\nor an object) with which the error is associated.\nRequired.",
"type": "string"
}
- }
+ },
+ "id": "ErrorLogEntry"
},
"TransferJob": {
- "id": "TransferJob",
"description": "This resource represents the configuration of a transfer job that runs\nperiodically.",
"type": "object",
"properties": {
@@ -921,15 +541,20 @@
"type": "string"
},
"projectId": {
- "type": "string",
- "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired."
+ "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.",
+ "type": "string"
}
- }
+ },
+ "id": "TransferJob"
},
"Schedule": {
"description": "Transfers can be scheduled to recur or to run just once.",
"type": "object",
"properties": {
+ "scheduleEndDate": {
+ "description": "The last day the recurring transfer will be run. If `scheduleEndDate`\nis the same as `scheduleStartDate`, the transfer will be executed only\nonce.",
+ "$ref": "Date"
+ },
"startTimeOfDay": {
"description": "The time in UTC at which the transfer will be scheduled to start in a day.\nTransfers may start later than this time. If not specified, recurring and\none-time transfers that are scheduled to run today will run immediately;\nrecurring transfers that are scheduled to run on a future date will start\nat approximately midnight UTC on that date. Note that when configuring a\ntransfer with the Cloud Platform Console, the transfer's start time in a\nday is specified in your local timezone.",
"$ref": "TimeOfDay"
@@ -937,10 +562,6 @@
"scheduleStartDate": {
"$ref": "Date",
"description": "The first day the recurring transfer is scheduled to run. If\n`scheduleStartDate` is in the past, the transfer will run for the first\ntime on the following day.\nRequired."
- },
- "scheduleEndDate": {
- "$ref": "Date",
- "description": "The last day the recurring transfer will be run. If `scheduleEndDate`\nis the same as `scheduleStartDate`, the transfer will be executed only\nonce."
}
},
"id": "Schedule"
@@ -950,9 +571,9 @@
"type": "object",
"properties": {
"day": {
- "type": "integer",
"format": "int32",
- "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant."
+ "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant.",
+ "type": "integer"
},
"year": {
"format": "int32",
@@ -971,9 +592,13 @@
"description": "A description of the execution of a transfer.",
"type": "object",
"properties": {
+ "transferJobName": {
+ "description": "The name of the transfer job that triggers this transfer operation.",
+ "type": "string"
+ },
"transferSpec": {
- "description": "Transfer specification.\nRequired.",
- "$ref": "TransferSpec"
+ "$ref": "TransferSpec",
+ "description": "Transfer specification.\nRequired."
},
"counters": {
"$ref": "TransferCounters",
@@ -1023,10 +648,6 @@
"format": "google-datetime",
"description": "Start time of this transfer execution.",
"type": "string"
- },
- "transferJobName": {
- "type": "string",
- "description": "The name of the transfer job that triggers this transfer operation."
}
},
"id": "TransferOperation"
@@ -1040,13 +661,16 @@
"type": "string"
},
"awsAccessKey": {
- "description": "AWS access key used to sign the API requests to the AWS S3 bucket.\nPermissions on the bucket must be granted to the access ID of the\nAWS access key.\nRequired.",
- "$ref": "AwsAccessKey"
+ "$ref": "AwsAccessKey",
+ "description": "AWS access key used to sign the API requests to the AWS S3 bucket.\nPermissions on the bucket must be granted to the access ID of the\nAWS access key.\nRequired."
}
},
"id": "AwsS3Data"
},
"AwsAccessKey": {
+ "id": "AwsAccessKey",
+ "description": "AWS access key (see\n[AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).",
+ "type": "object",
"properties": {
"accessKeyId": {
"description": "AWS access key ID.\nRequired.",
@@ -1056,16 +680,376 @@
"type": "string",
"description": "AWS secret access key. This field is not returned in RPC responses.\nRequired."
}
- },
- "id": "AwsAccessKey",
- "description": "AWS access key (see\n[AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).",
- "type": "object"
+ }
},
"Empty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
"type": "object",
"properties": {},
"id": "Empty"
+ },
+ "PauseTransferOperationRequest": {
+ "id": "PauseTransferOperationRequest",
+ "description": "Request passed to PauseTransferOperation.",
+ "type": "object",
+ "properties": {}
+ },
+ "TransferCounters": {
+ "properties": {
+ "bytesFromSourceFailed": {
+ "format": "int64",
+ "description": "Bytes in the data source that failed during the transfer.",
+ "type": "string"
+ },
+ "objectsFromSourceFailed": {
+ "type": "string",
+ "format": "int64",
+ "description": "Objects in the data source that failed during the transfer."
+ },
+ "objectsCopiedToSink": {
+ "format": "int64",
+ "description": "Objects that are copied to the data sink.",
+ "type": "string"
+ },
+ "bytesFoundOnlyFromSink": {
+ "format": "int64",
+ "description": "Bytes found only in the data sink that are scheduled to be deleted.",
+ "type": "string"
+ },
+ "objectsDeletedFromSource": {
+ "format": "int64",
+ "description": "Objects that are deleted from the data source.",
+ "type": "string"
+ },
+ "bytesCopiedToSink": {
+ "format": "int64",
+ "description": "Bytes that are copied to the data sink.",
+ "type": "string"
+ },
+ "bytesFoundFromSource": {
+ "format": "int64",
+ "description": "Bytes found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures.",
+ "type": "string"
+ },
+ "objectsFromSourceSkippedBySync": {
+ "format": "int64",
+ "description": "Objects in the data source that are not transferred because they already\nexist in the data sink.",
+ "type": "string"
+ },
+ "objectsFoundFromSource": {
+ "format": "int64",
+ "description": "Objects found in the data source that are scheduled to be transferred,\nwhich will be copied, excluded based on conditions, or skipped due to\nfailures.",
+ "type": "string"
+ },
+ "bytesDeletedFromSource": {
+ "format": "int64",
+ "description": "Bytes that are deleted from the data source.",
+ "type": "string"
+ },
+ "objectsFailedToDeleteFromSink": {
+ "type": "string",
+ "format": "int64",
+ "description": "Objects that failed to be deleted from the data sink."
+ },
+ "objectsDeletedFromSink": {
+ "format": "int64",
+ "description": "Objects that are deleted from the data sink.",
+ "type": "string"
+ },
+ "objectsFoundOnlyFromSink": {
+ "format": "int64",
+ "description": "Objects found only in the data sink that are scheduled to be deleted.",
+ "type": "string"
+ },
+ "bytesFromSourceSkippedBySync": {
+ "type": "string",
+ "format": "int64",
+ "description": "Bytes in the data source that are not transferred because they already\nexist in the data sink."
+ },
+ "bytesFailedToDeleteFromSink": {
+ "format": "int64",
+ "description": "Bytes that failed to be deleted from the data sink.",
+ "type": "string"
+ },
+ "bytesDeletedFromSink": {
+ "format": "int64",
+ "description": "Bytes that are deleted from the data sink.",
+ "type": "string"
+ }
+ },
+ "id": "TransferCounters",
+ "description": "A collection of counters that report the progress of a transfer operation.",
+ "type": "object"
+ },
+ "ErrorSummary": {
+ "id": "ErrorSummary",
+ "description": "A summary of errors by error code, plus a count and sample error log\nentries.",
+ "type": "object",
+ "properties": {
+ "errorLogEntries": {
+ "description": "Error samples.",
+ "items": {
+ "$ref": "ErrorLogEntry"
+ },
+ "type": "array"
+ },
+ "errorCode": {
+ "description": "Required.",
+ "type": "string",
+ "enumDescriptions": [
+ "Not an error; returned on success\n\nHTTP Mapping: 200 OK",
+ "The operation was cancelled, typically by the caller.\n\nHTTP Mapping: 499 Client Closed Request",
+ "Unknown error. For example, this error may be returned when\na `Status` value received from another address space belongs to\nan error space that is not known in this address space. Also\nerrors raised by APIs that do not return enough error information\nmay be converted to this error.\n\nHTTP Mapping: 500 Internal Server Error",
+ "The client specified an invalid argument. Note that this differs\nfrom `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments\nthat are problematic regardless of the state of the system\n(e.g., a malformed file name).\n\nHTTP Mapping: 400 Bad Request",
+ "The deadline expired before the operation could complete. For operations\nthat change the state of the system, this error may be returned\neven if the operation has completed successfully. For example, a\nsuccessful response from a server could have been delayed long\nenough for the deadline to expire.\n\nHTTP Mapping: 504 Gateway Timeout",
+ "Some requested entity (e.g., file or directory) was not found.\n\nNote to server developers: if a request is denied for an entire class\nof users, such as gradual feature rollout or undocumented whitelist,\n`NOT_FOUND` may be used. If a request is denied for some users within\na class of users, such as user-based access control, `PERMISSION_DENIED`\nmust be used.\n\nHTTP Mapping: 404 Not Found",
+ "The entity that a client attempted to create (e.g., file or directory)\nalready exists.\n\nHTTP Mapping: 409 Conflict",
+ "The caller does not have permission to execute the specified\noperation. `PERMISSION_DENIED` must not be used for rejections\ncaused by exhausting some resource (use `RESOURCE_EXHAUSTED`\ninstead for those errors). `PERMISSION_DENIED` must not be\nused if the caller can not be identified (use `UNAUTHENTICATED`\ninstead for those errors). This error code does not imply the\nrequest is valid or the requested entity exists or satisfies\nother pre-conditions.\n\nHTTP Mapping: 403 Forbidden",
+ "The request does not have valid authentication credentials for the\noperation.\n\nHTTP Mapping: 401 Unauthorized",
+ "Some resource has been exhausted, perhaps a per-user quota, or\nperhaps the entire file system is out of space.\n\nHTTP Mapping: 429 Too Many Requests",
+ "The operation was rejected because the system is not in a state\nrequired for the operation's execution. For example, the directory\nto be deleted is non-empty, an rmdir operation is applied to\na non-directory, etc.\n\nService implementors can use the following guidelines to decide\nbetween `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`:\n (a) Use `UNAVAILABLE` if the client can retry just the failing call.\n (b) Use `ABORTED` if the client should retry at a higher level\n (e.g., when a client-specified test-and-set fails, indicating the\n client should restart a read-modify-write sequence).\n (c) Use `FAILED_PRECONDITION` if the client should not retry until\n the system state has been explicitly fixed. E.g., if an \"rmdir\"\n fails because the directory is non-empty, `FAILED_PRECONDITION`\n should be returned since the client should not retry unless\n the files are deleted from the directory.\n\nHTTP Mapping: 400 Bad Request",
+ "The operation was aborted, typically due to a concurrency issue such as\na sequencer check failure or transaction abort.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 409 Conflict",
+ "The operation was attempted past the valid range. E.g., seeking or\nreading past end-of-file.\n\nUnlike `INVALID_ARGUMENT`, this error indicates a problem that may\nbe fixed if the system state changes. For example, a 32-bit file\nsystem will generate `INVALID_ARGUMENT` if asked to read at an\noffset that is not in the range [0,2^32-1], but it will generate\n`OUT_OF_RANGE` if asked to read from an offset past the current\nfile size.\n\nThere is a fair bit of overlap between `FAILED_PRECONDITION` and\n`OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific\nerror) when it applies so that callers who are iterating through\na space can easily look for an `OUT_OF_RANGE` error to detect when\nthey are done.\n\nHTTP Mapping: 400 Bad Request",
+ "The operation is not implemented or is not supported/enabled in this\nservice.\n\nHTTP Mapping: 501 Not Implemented",
+ "Internal errors. This means that some invariants expected by the\nunderlying system have been broken. This error code is reserved\nfor serious errors.\n\nHTTP Mapping: 500 Internal Server Error",
+ "The service is currently unavailable. This is most likely a\ntransient condition, which can be corrected by retrying with\na backoff.\n\nSee the guidelines above for deciding between `FAILED_PRECONDITION`,\n`ABORTED`, and `UNAVAILABLE`.\n\nHTTP Mapping: 503 Service Unavailable",
+ "Unrecoverable data loss or corruption.\n\nHTTP Mapping: 500 Internal Server Error"
+ ],
+ "enum": [
+ "OK",
+ "CANCELLED",
+ "UNKNOWN",
+ "INVALID_ARGUMENT",
+ "DEADLINE_EXCEEDED",
+ "NOT_FOUND",
+ "ALREADY_EXISTS",
+ "PERMISSION_DENIED",
+ "UNAUTHENTICATED",
+ "RESOURCE_EXHAUSTED",
+ "FAILED_PRECONDITION",
+ "ABORTED",
+ "OUT_OF_RANGE",
+ "UNIMPLEMENTED",
+ "INTERNAL",
+ "UNAVAILABLE",
+ "DATA_LOSS"
+ ]
+ },
+ "errorCount": {
+ "format": "int64",
+ "description": "Count of this type of error.\nRequired.",
+ "type": "string"
+ }
+ }
+ },
+ "HttpData": {
+ "description": "An HttpData specifies a list of objects on the web to be transferred over\nHTTP. The information of the objects to be transferred is contained in a\nfile referenced by a URL. The first line in the file must be\n\"TsvHttpData-1.0\", which specifies the format of the file. Subsequent lines\nspecify the information of the list of objects, one object per list entry.\nEach entry has the following tab-delimited fields:\n\n* HTTP URL - The location of the object.\n\n* Length - The size of the object in bytes.\n\n* MD5 - The base64-encoded MD5 hash of the object.\n\nFor an example of a valid TSV file, see\n[Transferring data from URLs](https://cloud.google.com/storage/transfer/create-url-list).\n\nWhen transferring data based on a URL list, keep the following in mind:\n\n* When an object located at `http(s)://hostname:port/\u003cURL-path\u003e` is transferred\nto a data sink, the name of the object at the data sink is\n`\u003chostname\u003e/\u003cURL-path\u003e`.\n\n* If the specified size of an object does not match the actual size of the\nobject fetched, the object will not be transferred.\n\n* If the specified MD5 does not match the MD5 computed from the transferred\nbytes, the object transfer will fail. For more information, see\n[Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)\n\n* Ensure that each URL you specify is publicly accessible. For\nexample, in Google Cloud Storage you can\n[share an object publicly]\n(https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get\na link to it.\n\n* Storage Transfer Service obeys `robots.txt` rules and requires the source\nHTTP server to support `Range` requests and to return a `Content-Length`\nheader in each response.\n\n* [ObjectConditions](#ObjectConditions) have no effect when filtering objects\nto transfer.",
+ "type": "object",
+ "properties": {
+ "listUrl": {
+ "description": "The URL that points to the file that stores the object list entries.\nThis file must allow public access. Currently, only URLs with HTTP and\nHTTPS schemes are supported.\nRequired.",
+ "type": "string"
+ }
+ },
+ "id": "HttpData"
+ },
+ "GcsData": {
+ "id": "GcsData",
+ "description": "In a GcsData, an object's name is the Google Cloud Storage object's name and\nits `lastModificationTime` refers to the object's updated time, which changes\nwhen the content or the metadata of the object is updated.",
+ "type": "object",
+ "properties": {
+ "bucketName": {
+ "description": "Google Cloud Storage bucket name (see\n[Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).\nRequired.",
+ "type": "string"
+ }
+ }
+ },
+ "ListTransferJobsResponse": {
+ "description": "Response from ListTransferJobs.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "The list next page token.",
+ "type": "string"
+ },
+ "transferJobs": {
+ "description": "A list of transfer jobs.",
+ "items": {
+ "$ref": "TransferJob"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListTransferJobsResponse"
+ },
+ "UpdateTransferJobRequest": {
+ "type": "object",
+ "properties": {
+ "transferJob": {
+ "description": "The job to update. `transferJob` is expected to specify only three fields:\n`description`, `transferSpec`, and `status`. An UpdateTransferJobRequest\nthat specifies other fields will be rejected with an error\n`INVALID_ARGUMENT`.\nRequired.",
+ "$ref": "TransferJob"
+ },
+ "projectId": {
+ "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.",
+ "type": "string"
+ },
+ "updateTransferJobFieldMask": {
+ "format": "google-fieldmask",
+ "description": "The field mask of the fields in `transferJob` that are to be updated in\nthis request. Fields in `transferJob` that can be updated are:\n`description`, `transferSpec`, and `status`. To update the `transferSpec`\nof the job, a complete transfer specification has to be provided. An\nincomplete specification which misses any required fields will be rejected\nwith the error `INVALID_ARGUMENT`.",
+ "type": "string"
+ }
+ },
+ "id": "UpdateTransferJobRequest",
+ "description": "Request passed to UpdateTransferJob."
+ },
+ "ObjectConditions": {
+ "description": "Conditions that determine which objects will be transferred.",
+ "type": "object",
+ "properties": {
+ "excludePrefixes": {
+ "description": "`excludePrefixes` must follow the requirements described for\n`includePrefixes`.\n\nThe max size of `excludePrefixes` is 1000.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "minTimeElapsedSinceLastModification": {
+ "format": "google-duration",
+ "description": "If unspecified, `minTimeElapsedSinceLastModification` takes a zero value\nand `maxTimeElapsedSinceLastModification` takes the maximum possible\nvalue of Duration. Objects that satisfy the object conditions\nmust either have a `lastModificationTime` greater or equal to\n`NOW` - `maxTimeElapsedSinceLastModification` and less than\n`NOW` - `minTimeElapsedSinceLastModification`, or not have a\n`lastModificationTime`.",
+ "type": "string"
+ },
+ "maxTimeElapsedSinceLastModification": {
+ "format": "google-duration",
+ "description": "`maxTimeElapsedSinceLastModification` is the complement to\n`minTimeElapsedSinceLastModification`.",
+ "type": "string"
+ },
+ "includePrefixes": {
+ "description": "If `includePrefixes` is specified, objects that satisfy the object\nconditions must have names that start with one of the `includePrefixes`\nand that do not start with any of the `excludePrefixes`. If `includePrefixes`\nis not specified, all objects except those that have names starting with\none of the `excludePrefixes` must satisfy the object conditions.\n\nRequirements:\n\n * Each include-prefix and exclude-prefix can contain any sequence of\n Unicode characters, of max length 1024 bytes when UTF8-encoded, and\n must not contain Carriage Return or Line Feed characters. Wildcard\n matching and regular expression matching are not supported.\n\n * Each include-prefix and exclude-prefix must omit the leading slash.\n For example, to include the `requests.gz` object in a transfer from\n `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include\n prefix as `logs/y=2015/requests.gz`.\n\n * None of the include-prefix or the exclude-prefix values can be empty,\n if specified.\n\n * Each include-prefix must include a distinct portion of the object\n namespace, i.e., no include-prefix may be a prefix of another\n include-prefix.\n\n * Each exclude-prefix must exclude a distinct portion of the object\n namespace, i.e., no exclude-prefix may be a prefix of another\n exclude-prefix.\n\n * If `includePrefixes` is specified, then each exclude-prefix must start\n with the value of a path explicitly included by `includePrefixes`.\n\nThe max size of `includePrefixes` is 1000.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ObjectConditions"
+ },
+ "Operation": {
+ "type": "object",
+ "properties": {
+ "done": {
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.",
+ "type": "boolean"
+ },
+ "response": {
+ "type": "object",
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`."
+ },
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should have the format of `transferOperations/some/unique/name`.",
+ "type": "string"
+ },
+ "error": {
+ "description": "The error result of the operation in case of failure or cancellation.",
+ "$ref": "Status"
+ },
+ "metadata": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "Represents the transfer operation object.",
+ "type": "object"
+ }
+ },
+ "id": "Operation",
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call."
+ },
+ "TransferSpec": {
+ "id": "TransferSpec",
+ "description": "Configuration for running a transfer.",
+ "type": "object",
+ "properties": {
+ "objectConditions": {
+ "$ref": "ObjectConditions",
+ "description": "Only objects that satisfy these object conditions are included in the set\nof data source and data sink objects. Object conditions based on\nobjects' `lastModificationTime` do not exclude objects in a data sink."
+ },
+ "gcsDataSink": {
+ "$ref": "GcsData",
+ "description": "A Google Cloud Storage data sink."
+ },
+ "gcsDataSource": {
+ "$ref": "GcsData",
+ "description": "A Google Cloud Storage data source."
+ },
+ "transferOptions": {
+ "description": "If the option `deleteObjectsUniqueInSink` is `true`, object conditions\nbased on objects' `lastModificationTime` are ignored and do not exclude\nobjects in a data source or a data sink.",
+ "$ref": "TransferOptions"
+ },
+ "awsS3DataSource": {
+ "$ref": "AwsS3Data",
+ "description": "An AWS S3 data source."
+ },
+ "httpDataSource": {
+ "description": "An HTTP URL data source.",
+ "$ref": "HttpData"
+ }
+ }
+ },
+ "TransferOptions": {
+ "id": "TransferOptions",
+ "description": "TransferOptions uses three boolean parameters to define the actions\nto be performed on objects in a transfer.",
+ "type": "object",
+ "properties": {
+ "deleteObjectsUniqueInSink": {
+ "description": "Whether objects that exist only in the sink should be deleted. Note that\nthis option and `deleteObjectsFromSourceAfterTransfer` are mutually\nexclusive.",
+ "type": "boolean"
+ },
+ "overwriteObjectsAlreadyExistingInSink": {
+ "description": "Whether overwriting objects that already exist in the sink is allowed.",
+ "type": "boolean"
+ },
+ "deleteObjectsFromSourceAfterTransfer": {
+ "type": "boolean",
+ "description": "Whether objects should be deleted from the source after they are\ntransferred to the sink. Note that this option and\n`deleteObjectsUniqueInSink` are mutually exclusive."
+ }
+ }
+ },
+ "ResumeTransferOperationRequest": {
+ "type": "object",
+ "properties": {},
+ "id": "ResumeTransferOperationRequest",
+ "description": "Request passed to ResumeTransferOperation."
+ },
+ "Status": {
+ "type": "object",
+ "properties": {
+ "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"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
+ }
+ },
+ "id": "Status",
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons."
}
},
"protocol": "rest",
@@ -1073,5 +1057,21 @@
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
- "version": "v1"
+ "version": "v1",
+ "baseUrl": "https://storagetransfer.googleapis.com/",
+ "auth": {
+ "oauth2": {
+ "scopes": {
+ "https://www.googleapis.com/auth/cloud-platform": {
+ "description": "View and manage your data across Google Cloud Platform services"
+ }
+ }
+ }
+ },
+ "kind": "discovery#restDescription",
+ "description": "Transfers data from external data sources to a Google Cloud Storage bucket or between Google Cloud Storage buckets.",
+ "servicePath": "",
+ "rootUrl": "https://storagetransfer.googleapis.com/",
+ "basePath": "",
+ "ownerDomain": "google.com"
}
diff --git a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go
index 1e34763..64ec0dc 100644
--- a/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go
+++ b/vendor/google.golang.org/api/storagetransfer/v1/storagetransfer-gen.go
@@ -566,9 +566,10 @@ func (s *GoogleServiceAccount) MarshalJSON() ([]byte, error) {
//
// For an example of a valid TSV file, see
// [Transferring data from
-// URLs](https://cloud.google.com/storage/transfer/#urls)
+// URLs](https://cloud.google.com/storage/transfer/create-url-list).
//
-// When transferring data based on a URL list, keep the following in
+// Whe
+// n transferring data based on a URL list, keep the following in
// mind:
//
// * When an object located at `http(s)://hostname:port/` is
@@ -819,8 +820,8 @@ func (s *ObjectConditions) MarshalJSON() ([]byte, error) {
type Operation struct {
// Done: If the value is `false`, it means the operation is still in
// progress.
- // If true, the operation is completed, and either `error` or `response`
- // is
+ // If `true`, the operation is completed, and either `error` or
+ // `response` is
// available.
Done bool `json:"done,omitempty"`
@@ -1031,9 +1032,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -1468,7 +1469,13 @@ type UpdateTransferJobRequest struct {
// Required.
ProjectId string `json:"projectId,omitempty"`
- // TransferJob: The job to update.
+ // TransferJob: The job to update. `transferJob` is expected to specify
+ // only three fields:
+ // `description`, `transferSpec`, and `status`. An
+ // UpdateTransferJobRequest
+ // that specifies other fields will be rejected with an
+ // error
+ // `INVALID_ARGUMENT`.
// Required.
TransferJob *TransferJob `json:"transferJob,omitempty"`
diff --git a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json
index bcbd35f..a8506bd 100644
--- a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json
+++ b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-api.json
@@ -1,12 +1,12 @@
{
"kind": "discovery#restDescription",
- "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/CxEKB-82Kcy_kTedWntFs27HJMg\"",
+ "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/TdjAcGRUDskRBNNbXs3PGqnucOE\"",
"discoveryVersion": "v1",
"id": "toolresults:v1beta3",
"name": "toolresults",
"canonicalName": "Tool Results",
"version": "v1beta3",
- "revision": "20170607",
+ "revision": "20170818",
"title": "Cloud Tool Results API",
"description": "Reads and publishes results from Firebase Test Lab.",
"ownerDomain": "google.com",
@@ -77,6 +77,107 @@
}
},
"schemas": {
+ "AndroidAppInfo": {
+ "id": "AndroidAppInfo",
+ "type": "object",
+ "description": "Android app information.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the app. Optional"
+ },
+ "packageName": {
+ "type": "string",
+ "description": "The package name of the app. Required."
+ },
+ "versionCode": {
+ "type": "string",
+ "description": "The internal version code of the app. Optional."
+ },
+ "versionName": {
+ "type": "string",
+ "description": "The version name of the app. Optional."
+ }
+ }
+ },
+ "AndroidInstrumentationTest": {
+ "id": "AndroidInstrumentationTest",
+ "type": "object",
+ "description": "A test of an Android application that can control an Android component independently of its normal lifecycle.\n\nSee for more information on types of Android tests.",
+ "properties": {
+ "testPackageId": {
+ "type": "string",
+ "description": "The java package for the test to be executed. Required"
+ },
+ "testRunnerClass": {
+ "type": "string",
+ "description": "The InstrumentationTestRunner class. Required"
+ },
+ "testTargets": {
+ "type": "array",
+ "description": "Each target must be fully qualified with the package name or class name, in one of these formats: - \"package package_name\" - \"class package_name.class_name\" - \"class package_name.class_name#method_name\"\n\nIf empty, all targets in the module will be run.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "useOrchestrator": {
+ "type": "boolean",
+ "description": "The flag indicates whether Android Test Orchestrator will be used to run test or not. Test orchestrator is used if either: - orchestrator_option field is USE_ORCHESTRATOR, and test runner is compatible with orchestrator. Or - orchestrator_option field is unspecified or ORCHESTRATOR_OPTION_UNSPECIFIED, and test runner is compatible with orchestrator."
+ }
+ }
+ },
+ "AndroidRoboTest": {
+ "id": "AndroidRoboTest",
+ "type": "object",
+ "description": "A test of an android application that explores the application on a virtual or physical Android device, finding culprits and crashes as it goes.",
+ "properties": {
+ "appInitialActivity": {
+ "type": "string",
+ "description": "The initial activity that should be used to start the app. Optional"
+ },
+ "bootstrapPackageId": {
+ "type": "string",
+ "description": "The java package for the bootstrap. Optional"
+ },
+ "bootstrapRunnerClass": {
+ "type": "string",
+ "description": "The runner class for the bootstrap. Optional"
+ },
+ "maxDepth": {
+ "type": "integer",
+ "description": "The max depth of the traversal stack Robo can explore. Optional",
+ "format": "int32"
+ },
+ "maxSteps": {
+ "type": "integer",
+ "description": "The max number of steps/actions Robo can execute. Default is no limit (0). Optional",
+ "format": "int32"
+ }
+ }
+ },
+ "AndroidTest": {
+ "id": "AndroidTest",
+ "type": "object",
+ "description": "An Android mobile test specification.",
+ "properties": {
+ "androidAppInfo": {
+ "$ref": "AndroidAppInfo",
+ "description": "Infomation about the application under test."
+ },
+ "androidInstrumentationTest": {
+ "$ref": "AndroidInstrumentationTest",
+ "description": "An Android instrumentation test."
+ },
+ "androidRoboTest": {
+ "$ref": "AndroidRoboTest",
+ "description": "An Android robo test."
+ },
+ "testTimeout": {
+ "$ref": "Duration",
+ "description": "Max time a test is allowed to run before it is automatically cancelled."
+ }
+ }
+ },
"Any": {
"id": "Any",
"type": "object",
@@ -93,6 +194,20 @@
}
}
},
+ "AppStartTime": {
+ "id": "AppStartTime",
+ "type": "object",
+ "properties": {
+ "fullyDrawnTime": {
+ "$ref": "Duration",
+ "description": "Optional. The time from app start to reaching the developer-reported \"fully drawn\" time. This is only stored if the app includes a call to Activity.reportFullyDrawn(). See https://developer.android.com/topic/performance/launch-time.html#time-full"
+ },
+ "initialDisplayTime": {
+ "$ref": "Duration",
+ "description": "The time from app start to the first displayed activity being drawn, as reported in Logcat. See https://developer.android.com/topic/performance/launch-time.html#time-initial"
+ }
+ }
+ },
"BasicPerfSampleSeries": {
"id": "BasicPerfSampleSeries",
"type": "object",
@@ -253,6 +368,10 @@
"$ref": "Outcome",
"description": "Classify the result, for example into SUCCESS or FAILURE\n\n- In response: present if set by create/update request - In create/update request: optional"
},
+ "specification": {
+ "$ref": "Specification",
+ "description": "Lightweight information about execution request.\n\n- In response: present if set by create - In create: optional - In update: optional"
+ },
"state": {
"type": "string",
"description": "The initial state is IN_PROGRESS.\n\nThe only legal state transitions is from IN_PROGRESS to COMPLETE.\n\nA PRECONDITION_FAILED will be returned if an invalid transition is requested.\n\nThe state can only be set to COMPLETE once. A FAILED_PRECONDITION will be returned if the state is set to COMPLETE multiple times.\n\nIf the state is set to COMPLETE, all the in-progress steps within the execution will be set as COMPLETE. If the outcome of the step is not set, the outcome will be set to INCONCLUSIVE.\n\n- In response always set - In create/update request: optional",
@@ -271,7 +390,7 @@
},
"testExecutionMatrixId": {
"type": "string",
- "description": "TestExecution Matrix ID that the Test Service uses.\n\n- In response: present if set by create - In create: optional - In update: never set"
+ "description": "TestExecution Matrix ID that the TestExecutionService uses.\n\n- In response: present if set by create - In create: optional - In update: never set"
}
}
},
@@ -432,6 +551,19 @@
}
}
},
+ "ListScreenshotClustersResponse": {
+ "id": "ListScreenshotClustersResponse",
+ "type": "object",
+ "properties": {
+ "clusters": {
+ "type": "array",
+ "description": "The set of clustres associated with an execution Always set",
+ "items": {
+ "$ref": "ScreenshotCluster"
+ }
+ }
+ }
+ },
"ListStepThumbnailsResponse": {
"id": "ListStepThumbnailsResponse",
"type": "object",
@@ -545,6 +677,9 @@
"type": "object",
"description": "A summary of perf metrics collected and performance environment info",
"properties": {
+ "appStartTime": {
+ "$ref": "AppStartTime"
+ },
"executionId": {
"type": "string",
"description": "A tool results execution ID."
@@ -664,6 +799,53 @@
}
}
},
+ "Screen": {
+ "id": "Screen",
+ "type": "object",
+ "properties": {
+ "fileReference": {
+ "type": "string",
+ "description": "File reference of the png file. Required."
+ },
+ "locale": {
+ "type": "string",
+ "description": "Locale of the device that the screenshot was taken on. Required."
+ },
+ "model": {
+ "type": "string",
+ "description": "Model of the device that the screenshot was taken on. Required."
+ },
+ "version": {
+ "type": "string",
+ "description": "OS version of the device that the screenshot was taken on. Required."
+ }
+ }
+ },
+ "ScreenshotCluster": {
+ "id": "ScreenshotCluster",
+ "type": "object",
+ "properties": {
+ "activity": {
+ "type": "string",
+ "description": "A string that describes the activity of every screen in the cluster."
+ },
+ "clusterId": {
+ "type": "string",
+ "description": "A unique identifier for the cluster."
+ },
+ "keyScreen": {
+ "$ref": "Screen",
+ "description": "A singular screen that represents the cluster as a whole. This screen will act as the \"cover\" of the entire cluster. When users look at the clusters, only the key screen from each cluster will be shown. Which screen is the key screen is determined by the ClusteringAlgorithm"
+ },
+ "screens": {
+ "type": "array",
+ "description": "Full list of screens.",
+ "items": {
+ "$ref": "Screen"
+ }
+ }
+ }
+ },
"SkippedDetail": {
"id": "SkippedDetail",
"type": "object",
@@ -682,14 +864,33 @@
}
}
},
+ "Specification": {
+ "id": "Specification",
+ "type": "object",
+ "description": "The details about how to run the execution.",
+ "properties": {
+ "androidTest": {
+ "$ref": "AndroidTest",
+ "description": "An Android mobile test execution specification."
+ }
+ }
+ },
"StackTrace": {
"id": "StackTrace",
"type": "object",
"description": "A stacktrace.",
"properties": {
+ "clusterId": {
+ "type": "string",
+ "description": "Exception cluster ID"
+ },
"exception": {
"type": "string",
"description": "The stack trace message.\n\nRequired"
+ },
+ "reportId": {
+ "type": "string",
+ "description": "Exception report ID"
}
}
},
@@ -705,7 +906,7 @@
},
"details": {
"type": "array",
- "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.",
+ "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.",
"items": {
"$ref": "Any"
}
@@ -882,15 +1083,51 @@
"TestIssue": {
"id": "TestIssue",
"type": "object",
- "description": "An abnormal event observed during the test execution.",
+ "description": "An issue detected occurring during a test execution.",
"properties": {
"errorMessage": {
"type": "string",
- "description": "A brief human-readable message describing the abnormal event.\n\nRequired."
+ "description": "A brief human-readable message describing the issue. Required."
+ },
+ "severity": {
+ "type": "string",
+ "description": "Severity of issue. Required.",
+ "enum": [
+ "info",
+ "severe",
+ "unspecifiedSeverity",
+ "warning"
+ ],
+ "enumDescriptions": [
+ "",
+ "",
+ "",
+ ""
+ ]
},
"stackTrace": {
"$ref": "StackTrace",
- "description": "Optional."
+ "description": "Deprecated in favor of stack trace fields inside specific warnings."
+ },
+ "type": {
+ "type": "string",
+ "description": "Type of issue. Required.",
+ "enum": [
+ "anr",
+ "fatalException",
+ "nativeCrash",
+ "unspecifiedType"
+ ],
+ "enumDescriptions": [
+ "",
+ "",
+ "",
+ ""
+ ]
+ },
+ "warning": {
+ "$ref": "Any",
+ "description": "Warning message with additional details of the issue. Should always be a message from com.google.devtools.toolresults.v1.warnings Required."
}
}
},
@@ -1378,6 +1615,44 @@
}
},
"resources": {
+ "clusters": {
+ "methods": {
+ "list": {
+ "id": "toolresults.projects.histories.executions.clusters.list",
+ "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters",
+ "httpMethod": "GET",
+ "description": "Lists Screenshot Clusters\n\nReturns the list of screenshot clusters corresponding to an execution. Screenshot clusters are created after the execution is finished. Clusters are created from a set of screenshots. Between any two screenshots, a matching score is calculated based off their metadata that determines how similar they are. Screenshots are placed in the cluster that has screens which have the highest matching scores.",
+ "parameters": {
+ "executionId": {
+ "type": "string",
+ "description": "An Execution id.\n\nRequired.",
+ "required": true,
+ "location": "path"
+ },
+ "historyId": {
+ "type": "string",
+ "description": "A History id.\n\nRequired.",
+ "required": true,
+ "location": "path"
+ },
+ "projectId": {
+ "type": "string",
+ "description": "A Project id.\n\nRequired.",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "parameterOrder": [
+ "projectId",
+ "historyId",
+ "executionId"
+ ],
+ "response": {
+ "$ref": "ListScreenshotClustersResponse"
+ }
+ }
+ }
+ },
"steps": {
"methods": {
"create": {
diff --git a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go
index 384b31d..df98bf4 100644
--- a/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go
+++ b/vendor/google.golang.org/api/toolresults/v1beta3/toolresults-gen.go
@@ -101,6 +101,7 @@ type ProjectsHistoriesService struct {
func NewProjectsHistoriesExecutionsService(s *Service) *ProjectsHistoriesExecutionsService {
rs := &ProjectsHistoriesExecutionsService{s: s}
+ rs.Clusters = NewProjectsHistoriesExecutionsClustersService(s)
rs.Steps = NewProjectsHistoriesExecutionsStepsService(s)
return rs
}
@@ -108,9 +109,20 @@ func NewProjectsHistoriesExecutionsService(s *Service) *ProjectsHistoriesExecuti
type ProjectsHistoriesExecutionsService struct {
s *Service
+ Clusters *ProjectsHistoriesExecutionsClustersService
+
Steps *ProjectsHistoriesExecutionsStepsService
}
+func NewProjectsHistoriesExecutionsClustersService(s *Service) *ProjectsHistoriesExecutionsClustersService {
+ rs := &ProjectsHistoriesExecutionsClustersService{s: s}
+ return rs
+}
+
+type ProjectsHistoriesExecutionsClustersService struct {
+ s *Service
+}
+
func NewProjectsHistoriesExecutionsStepsService(s *Service) *ProjectsHistoriesExecutionsStepsService {
rs := &ProjectsHistoriesExecutionsStepsService{s: s}
rs.PerfMetricsSummary = NewProjectsHistoriesExecutionsStepsPerfMetricsSummaryService(s)
@@ -168,6 +180,179 @@ type ProjectsHistoriesExecutionsStepsThumbnailsService struct {
s *Service
}
+// AndroidAppInfo: Android app information.
+type AndroidAppInfo struct {
+ // Name: The name of the app. Optional
+ Name string `json:"name,omitempty"`
+
+ // PackageName: The package name of the app. Required.
+ PackageName string `json:"packageName,omitempty"`
+
+ // VersionCode: The internal version code of the app. Optional.
+ VersionCode string `json:"versionCode,omitempty"`
+
+ // VersionName: The version name of the app. Optional.
+ VersionName string `json:"versionName,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Name") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Name") to include in API
+ // requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidAppInfo) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidAppInfo
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// AndroidInstrumentationTest: A test of an Android application that can
+// control an Android component independently of its normal
+// lifecycle.
+//
+// See for more information on types of Android tests.
+type AndroidInstrumentationTest struct {
+ // TestPackageId: The java package for the test to be executed. Required
+ TestPackageId string `json:"testPackageId,omitempty"`
+
+ // TestRunnerClass: The InstrumentationTestRunner class. Required
+ TestRunnerClass string `json:"testRunnerClass,omitempty"`
+
+ // TestTargets: Each target must be fully qualified with the package
+ // name or class name, in one of these formats: - "package package_name"
+ // - "class package_name.class_name" - "class
+ // package_name.class_name#method_name"
+ //
+ // If empty, all targets in the module will be run.
+ TestTargets []string `json:"testTargets,omitempty"`
+
+ // UseOrchestrator: The flag indicates whether Android Test Orchestrator
+ // will be used to run test or not. Test orchestrator is used if either:
+ // - orchestrator_option field is USE_ORCHESTRATOR, and test runner is
+ // compatible with orchestrator. Or - orchestrator_option field is
+ // unspecified or ORCHESTRATOR_OPTION_UNSPECIFIED, and test runner is
+ // compatible with orchestrator.
+ UseOrchestrator bool `json:"useOrchestrator,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "TestPackageId") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "TestPackageId") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidInstrumentationTest) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidInstrumentationTest
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// AndroidRoboTest: A test of an android application that explores the
+// application on a virtual or physical Android device, finding culprits
+// and crashes as it goes.
+type AndroidRoboTest struct {
+ // AppInitialActivity: The initial activity that should be used to start
+ // the app. Optional
+ AppInitialActivity string `json:"appInitialActivity,omitempty"`
+
+ // BootstrapPackageId: The java package for the bootstrap. Optional
+ BootstrapPackageId string `json:"bootstrapPackageId,omitempty"`
+
+ // BootstrapRunnerClass: The runner class for the bootstrap. Optional
+ BootstrapRunnerClass string `json:"bootstrapRunnerClass,omitempty"`
+
+ // MaxDepth: The max depth of the traversal stack Robo can explore.
+ // Optional
+ MaxDepth int64 `json:"maxDepth,omitempty"`
+
+ // MaxSteps: The max number of steps/actions Robo can execute. Default
+ // is no limit (0). Optional
+ MaxSteps int64 `json:"maxSteps,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "AppInitialActivity")
+ // to unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "AppInitialActivity") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidRoboTest) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidRoboTest
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// AndroidTest: An Android mobile test specification.
+type AndroidTest struct {
+ // AndroidAppInfo: Infomation about the application under test.
+ AndroidAppInfo *AndroidAppInfo `json:"androidAppInfo,omitempty"`
+
+ // AndroidInstrumentationTest: An Android instrumentation test.
+ AndroidInstrumentationTest *AndroidInstrumentationTest `json:"androidInstrumentationTest,omitempty"`
+
+ // AndroidRoboTest: An Android robo test.
+ AndroidRoboTest *AndroidRoboTest `json:"androidRoboTest,omitempty"`
+
+ // TestTimeout: Max time a test is allowed to run before it is
+ // automatically cancelled.
+ TestTimeout *Duration `json:"testTimeout,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "AndroidAppInfo") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "AndroidAppInfo") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidTest) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidTest
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// Any: `Any` contains an arbitrary serialized protocol buffer message
// along with a URL that describes the type of the serialized
// message.
@@ -272,6 +457,42 @@ func (s *Any) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+type AppStartTime struct {
+ // FullyDrawnTime: Optional. The time from app start to reaching the
+ // developer-reported "fully drawn" time. This is only stored if the app
+ // includes a call to Activity.reportFullyDrawn(). See
+ // https://developer.android.com/topic/performance/launch-time.html#time-full
+ FullyDrawnTime *Duration `json:"fullyDrawnTime,omitempty"`
+
+ // InitialDisplayTime: The time from app start to the first displayed
+ // activity being drawn, as reported in Logcat. See
+ // https://developer.android.com/topic/performance/launch-time.html#time-initial
+ InitialDisplayTime *Duration `json:"initialDisplayTime,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "FullyDrawnTime") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "FullyDrawnTime") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AppStartTime) MarshalJSON() ([]byte, error) {
+ type noMethod AppStartTime
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// BasicPerfSampleSeries: Encapsulates the metadata for basic sample
// series represented by a line chart
type BasicPerfSampleSeries struct {
@@ -572,6 +793,12 @@ type Execution struct {
// create/update request: optional
Outcome *Outcome `json:"outcome,omitempty"`
+ // Specification: Lightweight information about execution request.
+ //
+ // - In response: present if set by create - In create: optional - In
+ // update: optional
+ Specification *Specification `json:"specification,omitempty"`
+
// State: The initial state is IN_PROGRESS.
//
// The only legal state transitions is from IN_PROGRESS to COMPLETE.
@@ -595,8 +822,8 @@ type Execution struct {
// "unknownState"
State string `json:"state,omitempty"`
- // TestExecutionMatrixId: TestExecution Matrix ID that the Test Service
- // uses.
+ // TestExecutionMatrixId: TestExecution Matrix ID that the
+ // TestExecutionService uses.
//
// - In response: present if set by create - In create: optional - In
// update: never set
@@ -1001,6 +1228,37 @@ func (s *ListPerfSamplesResponse) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+type ListScreenshotClustersResponse struct {
+ // Clusters: The set of clustres associated with an execution Always set
+ Clusters []*ScreenshotCluster `json:"clusters,omitempty"`
+
+ // ServerResponse contains the HTTP response code and headers from the
+ // server.
+ googleapi.ServerResponse `json:"-"`
+
+ // ForceSendFields is a list of field names (e.g. "Clusters") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Clusters") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *ListScreenshotClustersResponse) MarshalJSON() ([]byte, error) {
+ type noMethod ListScreenshotClustersResponse
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// ListStepThumbnailsResponse: A response containing the thumbnails in a
// step.
type ListStepThumbnailsResponse struct {
@@ -1225,6 +1483,8 @@ func (s *PerfEnvironment) MarshalJSON() ([]byte, error) {
// PerfMetricsSummary: A summary of perf metrics collected and
// performance environment info
type PerfMetricsSummary struct {
+ AppStartTime *AppStartTime `json:"appStartTime,omitempty"`
+
// ExecutionId: A tool results execution ID.
ExecutionId string `json:"executionId,omitempty"`
@@ -1255,7 +1515,7 @@ type PerfMetricsSummary struct {
// server.
googleapi.ServerResponse `json:"-"`
- // ForceSendFields is a list of field names (e.g. "ExecutionId") to
+ // ForceSendFields is a list of field names (e.g. "AppStartTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
@@ -1263,7 +1523,7 @@ type PerfMetricsSummary struct {
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "ExecutionId") to include
+ // NullFields is a list of field names (e.g. "AppStartTime") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
@@ -1452,6 +1712,86 @@ func (s *PublishXunitXmlFilesRequest) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+type Screen struct {
+ // FileReference: File reference of the png file. Required.
+ FileReference string `json:"fileReference,omitempty"`
+
+ // Locale: Locale of the device that the screenshot was taken on.
+ // Required.
+ Locale string `json:"locale,omitempty"`
+
+ // Model: Model of the device that the screenshot was taken on.
+ // Required.
+ Model string `json:"model,omitempty"`
+
+ // Version: OS version of the device that the screenshot was taken on.
+ // Required.
+ Version string `json:"version,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "FileReference") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "FileReference") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *Screen) MarshalJSON() ([]byte, error) {
+ type noMethod Screen
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+type ScreenshotCluster struct {
+ // Activity: A string that describes the activity of every screen in the
+ // cluster.
+ Activity string `json:"activity,omitempty"`
+
+ // ClusterId: A unique identifier for the cluster.
+ ClusterId string `json:"clusterId,omitempty"`
+
+ // KeyScreen: A singular screen that represents the cluster as a whole.
+ // This screen will act as the "cover" of the entire cluster. When users
+ // look at the clusters, only the key screen from each cluster will be
+ // shown. Which screen is the key screen is determined by the
+ // ClusteringAlgorithm
+ KeyScreen *Screen `json:"keyScreen,omitempty"`
+
+ // Screens: Full list of screens.
+ Screens []*Screen `json:"screens,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Activity") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Activity") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *ScreenshotCluster) MarshalJSON() ([]byte, error) {
+ type noMethod ScreenshotCluster
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
type SkippedDetail struct {
// IncompatibleAppVersion: If the App doesn't support the specific API
// level.
@@ -1490,14 +1830,12 @@ func (s *SkippedDetail) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// StackTrace: A stacktrace.
-type StackTrace struct {
- // Exception: The stack trace message.
- //
- // Required
- Exception string `json:"exception,omitempty"`
+// Specification: The details about how to run the execution.
+type Specification struct {
+ // AndroidTest: An Android mobile test execution specification.
+ AndroidTest *AndroidTest `json:"androidTest,omitempty"`
- // ForceSendFields is a list of field names (e.g. "Exception") to
+ // ForceSendFields is a list of field names (e.g. "AndroidTest") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
@@ -1505,7 +1843,43 @@ type StackTrace struct {
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "Exception") to include in
+ // NullFields is a list of field names (e.g. "AndroidTest") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *Specification) MarshalJSON() ([]byte, error) {
+ type noMethod Specification
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// StackTrace: A stacktrace.
+type StackTrace struct {
+ // ClusterId: Exception cluster ID
+ ClusterId string `json:"clusterId,omitempty"`
+
+ // Exception: The stack trace message.
+ //
+ // Required
+ Exception string `json:"exception,omitempty"`
+
+ // ReportId: Exception report ID
+ ReportId string `json:"reportId,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "ClusterId") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "ClusterId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
@@ -1581,8 +1955,8 @@ type Status struct {
// [google.rpc.Code][].
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of message types for APIs to use.
Details []*Any `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -2020,17 +2394,39 @@ func (s *TestExecutionStep) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// TestIssue: An abnormal event observed during the test execution.
+// TestIssue: An issue detected occurring during a test execution.
type TestIssue struct {
- // ErrorMessage: A brief human-readable message describing the abnormal
- // event.
- //
+ // ErrorMessage: A brief human-readable message describing the issue.
// Required.
ErrorMessage string `json:"errorMessage,omitempty"`
- // StackTrace: Optional.
+ // Severity: Severity of issue. Required.
+ //
+ // Possible values:
+ // "info"
+ // "severe"
+ // "unspecifiedSeverity"
+ // "warning"
+ Severity string `json:"severity,omitempty"`
+
+ // StackTrace: Deprecated in favor of stack trace fields inside specific
+ // warnings.
StackTrace *StackTrace `json:"stackTrace,omitempty"`
+ // Type: Type of issue. Required.
+ //
+ // Possible values:
+ // "anr"
+ // "fatalException"
+ // "nativeCrash"
+ // "unspecifiedType"
+ Type string `json:"type,omitempty"`
+
+ // Warning: Warning message with additional details of the issue. Should
+ // always be a message from com.google.devtools.toolresults.v1.warnings
+ // Required.
+ Warning *Any `json:"warning,omitempty"`
+
// ForceSendFields is a list of field names (e.g. "ErrorMessage") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
@@ -4014,6 +4410,168 @@ func (c *ProjectsHistoriesExecutionsPatchCall) Do(opts ...googleapi.CallOption)
}
+// method id "toolresults.projects.histories.executions.clusters.list":
+
+type ProjectsHistoriesExecutionsClustersListCall struct {
+ s *Service
+ projectId string
+ historyId string
+ executionId string
+ urlParams_ gensupport.URLParams
+ ifNoneMatch_ string
+ ctx_ context.Context
+ header_ http.Header
+}
+
+// List: Lists Screenshot Clusters
+//
+// Returns the list of screenshot clusters corresponding to an
+// execution. Screenshot clusters are created after the execution is
+// finished. Clusters are created from a set of screenshots. Between any
+// two screenshots, a matching score is calculated based off their
+// metadata that determines how similar they are. Screenshots are placed
+// in the cluster that has screens which have the highest matching
+// scores.
+func (r *ProjectsHistoriesExecutionsClustersService) List(projectId string, historyId string, executionId string) *ProjectsHistoriesExecutionsClustersListCall {
+ c := &ProjectsHistoriesExecutionsClustersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+ c.projectId = projectId
+ c.historyId = historyId
+ c.executionId = executionId
+ return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Fields(s ...googleapi.Field) *ProjectsHistoriesExecutionsClustersListCall {
+ c.urlParams_.Set("fields", googleapi.CombineFields(s))
+ return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *ProjectsHistoriesExecutionsClustersListCall) IfNoneMatch(entityTag string) *ProjectsHistoriesExecutionsClustersListCall {
+ c.ifNoneMatch_ = entityTag
+ return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Context(ctx context.Context) *ProjectsHistoriesExecutionsClustersListCall {
+ c.ctx_ = ctx
+ return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Header() http.Header {
+ if c.header_ == nil {
+ c.header_ = make(http.Header)
+ }
+ return c.header_
+}
+
+func (c *ProjectsHistoriesExecutionsClustersListCall) doRequest(alt string) (*http.Response, error) {
+ reqHeaders := make(http.Header)
+ for k, v := range c.header_ {
+ reqHeaders[k] = v
+ }
+ reqHeaders.Set("User-Agent", c.s.userAgent())
+ if c.ifNoneMatch_ != "" {
+ reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+ }
+ var body io.Reader = nil
+ c.urlParams_.Set("alt", alt)
+ urls := googleapi.ResolveRelative(c.s.BasePath, "{projectId}/histories/{historyId}/executions/{executionId}/clusters")
+ urls += "?" + c.urlParams_.Encode()
+ req, _ := http.NewRequest("GET", urls, body)
+ req.Header = reqHeaders
+ googleapi.Expand(req.URL, map[string]string{
+ "projectId": c.projectId,
+ "historyId": c.historyId,
+ "executionId": c.executionId,
+ })
+ return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "toolresults.projects.histories.executions.clusters.list" call.
+// Exactly one of *ListScreenshotClustersResponse or error will be
+// non-nil. Any non-2xx status code is an error. Response headers are in
+// either *ListScreenshotClustersResponse.ServerResponse.Header or (if a
+// response was returned at all) in error.(*googleapi.Error).Header. Use
+// googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Do(opts ...googleapi.CallOption) (*ListScreenshotClustersResponse, error) {
+ gensupport.SetOptions(c.urlParams_, opts...)
+ res, err := c.doRequest("json")
+ if res != nil && res.StatusCode == http.StatusNotModified {
+ if res.Body != nil {
+ res.Body.Close()
+ }
+ return nil, &googleapi.Error{
+ Code: res.StatusCode,
+ Header: res.Header,
+ }
+ }
+ if err != nil {
+ return nil, err
+ }
+ defer googleapi.CloseBody(res)
+ if err := googleapi.CheckResponse(res); err != nil {
+ return nil, err
+ }
+ ret := &ListScreenshotClustersResponse{
+ ServerResponse: googleapi.ServerResponse{
+ Header: res.Header,
+ HTTPStatusCode: res.StatusCode,
+ },
+ }
+ target := &ret
+ if err := json.NewDecoder(res.Body).Decode(target); err != nil {
+ return nil, err
+ }
+ return ret, nil
+ // {
+ // "description": "Lists Screenshot Clusters\n\nReturns the list of screenshot clusters corresponding to an execution. Screenshot clusters are created after the execution is finished. Clusters are created from a set of screenshots. Between any two screenshots, a matching score is calculated based off their metadata that determines how similar they are. Screenshots are placed in the cluster that has screens which have the highest matching scores.",
+ // "httpMethod": "GET",
+ // "id": "toolresults.projects.histories.executions.clusters.list",
+ // "parameterOrder": [
+ // "projectId",
+ // "historyId",
+ // "executionId"
+ // ],
+ // "parameters": {
+ // "executionId": {
+ // "description": "An Execution id.\n\nRequired.",
+ // "location": "path",
+ // "required": true,
+ // "type": "string"
+ // },
+ // "historyId": {
+ // "description": "A History id.\n\nRequired.",
+ // "location": "path",
+ // "required": true,
+ // "type": "string"
+ // },
+ // "projectId": {
+ // "description": "A Project id.\n\nRequired.",
+ // "location": "path",
+ // "required": true,
+ // "type": "string"
+ // }
+ // },
+ // "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters",
+ // "response": {
+ // "$ref": "ListScreenshotClustersResponse"
+ // }
+ // }
+
+}
+
// method id "toolresults.projects.histories.executions.steps.create":
type ProjectsHistoriesExecutionsStepsCreateCall struct {
diff --git a/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-api.json b/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-api.json
index 98c1f67..08c1ddc 100644
--- a/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-api.json
+++ b/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-api.json
@@ -1,12 +1,12 @@
{
"kind": "discovery#restDescription",
- "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/FH4w9B_pRHq9pTaQIMU_qmeewDE\"",
+ "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/dlMcK_O5qqvy3yxCr-z4e9qy7Xs\"",
"discoveryVersion": "v1",
"id": "toolresults:v1beta3firstparty",
"name": "toolresults",
"canonicalName": "Tool Results",
"version": "v1beta3firstparty",
- "revision": "20170607",
+ "revision": "20170818",
"title": "Cloud Tool Results firstparty API",
"description": "Reads and publishes results from Firebase Test Lab.",
"ownerDomain": "google.com",
@@ -68,6 +68,107 @@
}
},
"schemas": {
+ "AndroidAppInfo": {
+ "id": "AndroidAppInfo",
+ "type": "object",
+ "description": "Android app information.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the app. Optional"
+ },
+ "packageName": {
+ "type": "string",
+ "description": "The package name of the app. Required."
+ },
+ "versionCode": {
+ "type": "string",
+ "description": "The internal version code of the app. Optional."
+ },
+ "versionName": {
+ "type": "string",
+ "description": "The version name of the app. Optional."
+ }
+ }
+ },
+ "AndroidInstrumentationTest": {
+ "id": "AndroidInstrumentationTest",
+ "type": "object",
+ "description": "A test of an Android application that can control an Android component independently of its normal lifecycle.\n\nSee for more information on types of Android tests.",
+ "properties": {
+ "testPackageId": {
+ "type": "string",
+ "description": "The java package for the test to be executed. Required"
+ },
+ "testRunnerClass": {
+ "type": "string",
+ "description": "The InstrumentationTestRunner class. Required"
+ },
+ "testTargets": {
+ "type": "array",
+ "description": "Each target must be fully qualified with the package name or class name, in one of these formats: - \"package package_name\" - \"class package_name.class_name\" - \"class package_name.class_name#method_name\"\n\nIf empty, all targets in the module will be run.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "useOrchestrator": {
+ "type": "boolean",
+ "description": "The flag indicates whether Android Test Orchestrator will be used to run test or not. Test orchestrator is used if either: - orchestrator_option field is USE_ORCHESTRATOR, and test runner is compatible with orchestrator. Or - orchestrator_option field is unspecified or ORCHESTRATOR_OPTION_UNSPECIFIED, and test runner is compatible with orchestrator."
+ }
+ }
+ },
+ "AndroidRoboTest": {
+ "id": "AndroidRoboTest",
+ "type": "object",
+ "description": "A test of an android application that explores the application on a virtual or physical Android device, finding culprits and crashes as it goes.",
+ "properties": {
+ "appInitialActivity": {
+ "type": "string",
+ "description": "The initial activity that should be used to start the app. Optional"
+ },
+ "bootstrapPackageId": {
+ "type": "string",
+ "description": "The java package for the bootstrap. Optional"
+ },
+ "bootstrapRunnerClass": {
+ "type": "string",
+ "description": "The runner class for the bootstrap. Optional"
+ },
+ "maxDepth": {
+ "type": "integer",
+ "description": "The max depth of the traversal stack Robo can explore. Optional",
+ "format": "int32"
+ },
+ "maxSteps": {
+ "type": "integer",
+ "description": "The max number of steps/actions Robo can execute. Default is no limit (0). Optional",
+ "format": "int32"
+ }
+ }
+ },
+ "AndroidTest": {
+ "id": "AndroidTest",
+ "type": "object",
+ "description": "An Android mobile test specification.",
+ "properties": {
+ "androidAppInfo": {
+ "$ref": "AndroidAppInfo",
+ "description": "Infomation about the application under test."
+ },
+ "androidInstrumentationTest": {
+ "$ref": "AndroidInstrumentationTest",
+ "description": "An Android instrumentation test."
+ },
+ "androidRoboTest": {
+ "$ref": "AndroidRoboTest",
+ "description": "An Android robo test."
+ },
+ "testTimeout": {
+ "$ref": "Duration",
+ "description": "Max time a test is allowed to run before it is automatically cancelled."
+ }
+ }
+ },
"Any": {
"id": "Any",
"type": "object",
@@ -84,6 +185,20 @@
}
}
},
+ "AppStartTime": {
+ "id": "AppStartTime",
+ "type": "object",
+ "properties": {
+ "fullyDrawnTime": {
+ "$ref": "Duration",
+ "description": "Optional. The time from app start to reaching the developer-reported \"fully drawn\" time. This is only stored if the app includes a call to Activity.reportFullyDrawn(). See https://developer.android.com/topic/performance/launch-time.html#time-full"
+ },
+ "initialDisplayTime": {
+ "$ref": "Duration",
+ "description": "The time from app start to the first displayed activity being drawn, as reported in Logcat. See https://developer.android.com/topic/performance/launch-time.html#time-initial"
+ }
+ }
+ },
"BasicPerfSampleSeries": {
"id": "BasicPerfSampleSeries",
"type": "object",
@@ -244,6 +359,10 @@
"$ref": "Outcome",
"description": "Classify the result, for example into SUCCESS or FAILURE\n\n- In response: present if set by create/update request - In create/update request: optional"
},
+ "specification": {
+ "$ref": "Specification",
+ "description": "Lightweight information about execution request.\n\n- In response: present if set by create - In create: optional - In update: optional"
+ },
"state": {
"type": "string",
"description": "The initial state is IN_PROGRESS.\n\nThe only legal state transitions is from IN_PROGRESS to COMPLETE.\n\nA PRECONDITION_FAILED will be returned if an invalid transition is requested.\n\nThe state can only be set to COMPLETE once. A FAILED_PRECONDITION will be returned if the state is set to COMPLETE multiple times.\n\nIf the state is set to COMPLETE, all the in-progress steps within the execution will be set as COMPLETE. If the outcome of the step is not set, the outcome will be set to INCONCLUSIVE.\n\n- In response always set - In create/update request: optional",
@@ -262,7 +381,7 @@
},
"testExecutionMatrixId": {
"type": "string",
- "description": "TestExecution Matrix ID that the Test Service uses.\n\n- In response: present if set by create - In create: optional - In update: never set"
+ "description": "TestExecution Matrix ID that the TestExecutionService uses.\n\n- In response: present if set by create - In create: optional - In update: never set"
}
}
},
@@ -423,6 +542,19 @@
}
}
},
+ "ListScreenshotClustersResponse": {
+ "id": "ListScreenshotClustersResponse",
+ "type": "object",
+ "properties": {
+ "clusters": {
+ "type": "array",
+ "description": "The set of clustres associated with an execution Always set",
+ "items": {
+ "$ref": "ScreenshotCluster"
+ }
+ }
+ }
+ },
"ListStepThumbnailsResponse": {
"id": "ListStepThumbnailsResponse",
"type": "object",
@@ -536,6 +668,9 @@
"type": "object",
"description": "A summary of perf metrics collected and performance environment info",
"properties": {
+ "appStartTime": {
+ "$ref": "AppStartTime"
+ },
"executionId": {
"type": "string",
"description": "A tool results execution ID."
@@ -655,6 +790,53 @@
}
}
},
+ "Screen": {
+ "id": "Screen",
+ "type": "object",
+ "properties": {
+ "fileReference": {
+ "type": "string",
+ "description": "File reference of the png file. Required."
+ },
+ "locale": {
+ "type": "string",
+ "description": "Locale of the device that the screenshot was taken on. Required."
+ },
+ "model": {
+ "type": "string",
+ "description": "Model of the device that the screenshot was taken on. Required."
+ },
+ "version": {
+ "type": "string",
+ "description": "OS version of the device that the screenshot was taken on. Required."
+ }
+ }
+ },
+ "ScreenshotCluster": {
+ "id": "ScreenshotCluster",
+ "type": "object",
+ "properties": {
+ "activity": {
+ "type": "string",
+ "description": "A string that describes the activity of every screen in the cluster."
+ },
+ "clusterId": {
+ "type": "string",
+ "description": "A unique identifier for the cluster."
+ },
+ "keyScreen": {
+ "$ref": "Screen",
+ "description": "A singular screen that represents the cluster as a whole. This screen will act as the \"cover\" of the entire cluster. When users look at the clusters, only the key screen from each cluster will be shown. Which screen is the key screen is determined by the ClusteringAlgorithm"
+ },
+ "screens": {
+ "type": "array",
+ "description": "Full list of screens.",
+ "items": {
+ "$ref": "Screen"
+ }
+ }
+ }
+ },
"SkippedDetail": {
"id": "SkippedDetail",
"type": "object",
@@ -673,14 +855,33 @@
}
}
},
+ "Specification": {
+ "id": "Specification",
+ "type": "object",
+ "description": "The details about how to run the execution.",
+ "properties": {
+ "androidTest": {
+ "$ref": "AndroidTest",
+ "description": "An Android mobile test execution specification."
+ }
+ }
+ },
"StackTrace": {
"id": "StackTrace",
"type": "object",
"description": "A stacktrace.",
"properties": {
+ "clusterId": {
+ "type": "string",
+ "description": "Exception cluster ID"
+ },
"exception": {
"type": "string",
"description": "The stack trace message.\n\nRequired"
+ },
+ "reportId": {
+ "type": "string",
+ "description": "Exception report ID"
}
}
},
@@ -696,7 +897,7 @@
},
"details": {
"type": "array",
- "description": "A list of messages that carry the error details. There will be a common set of message types for APIs to use.",
+ "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.",
"items": {
"$ref": "Any"
}
@@ -873,15 +1074,51 @@
"TestIssue": {
"id": "TestIssue",
"type": "object",
- "description": "An abnormal event observed during the test execution.",
+ "description": "An issue detected occurring during a test execution.",
"properties": {
"errorMessage": {
"type": "string",
- "description": "A brief human-readable message describing the abnormal event.\n\nRequired."
+ "description": "A brief human-readable message describing the issue. Required."
+ },
+ "severity": {
+ "type": "string",
+ "description": "Severity of issue. Required.",
+ "enum": [
+ "info",
+ "severe",
+ "unspecifiedSeverity",
+ "warning"
+ ],
+ "enumDescriptions": [
+ "",
+ "",
+ "",
+ ""
+ ]
},
"stackTrace": {
"$ref": "StackTrace",
- "description": "Optional."
+ "description": "Deprecated in favor of stack trace fields inside specific warnings."
+ },
+ "type": {
+ "type": "string",
+ "description": "Type of issue. Required.",
+ "enum": [
+ "anr",
+ "fatalException",
+ "nativeCrash",
+ "unspecifiedType"
+ ],
+ "enumDescriptions": [
+ "",
+ "",
+ "",
+ ""
+ ]
+ },
+ "warning": {
+ "$ref": "Any",
+ "description": "Warning message with additional details of the issue. Should always be a message from com.google.devtools.toolresults.v1.warnings Required."
}
}
},
@@ -1342,6 +1579,44 @@
}
},
"resources": {
+ "clusters": {
+ "methods": {
+ "list": {
+ "id": "toolresults.projects.histories.executions.clusters.list",
+ "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters",
+ "httpMethod": "GET",
+ "description": "Lists Screenshot Clusters\n\nReturns the list of screenshot clusters corresponding to an execution. Screenshot clusters are created after the execution is finished. Clusters are created from a set of screenshots. Between any two screenshots, a matching score is calculated based off their metadata that determines how similar they are. Screenshots are placed in the cluster that has screens which have the highest matching scores.",
+ "parameters": {
+ "executionId": {
+ "type": "string",
+ "description": "An Execution id.\n\nRequired.",
+ "required": true,
+ "location": "path"
+ },
+ "historyId": {
+ "type": "string",
+ "description": "A History id.\n\nRequired.",
+ "required": true,
+ "location": "path"
+ },
+ "projectId": {
+ "type": "string",
+ "description": "A Project id.\n\nRequired.",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "parameterOrder": [
+ "projectId",
+ "historyId",
+ "executionId"
+ ],
+ "response": {
+ "$ref": "ListScreenshotClustersResponse"
+ }
+ }
+ }
+ },
"steps": {
"methods": {
"create": {
diff --git a/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go b/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go
index 62d7426..ddf1aac 100644
--- a/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go
+++ b/vendor/google.golang.org/api/toolresults/v1beta3firstparty/toolresults-gen.go
@@ -95,6 +95,7 @@ type ProjectsHistoriesService struct {
func NewProjectsHistoriesExecutionsService(s *Service) *ProjectsHistoriesExecutionsService {
rs := &ProjectsHistoriesExecutionsService{s: s}
+ rs.Clusters = NewProjectsHistoriesExecutionsClustersService(s)
rs.Steps = NewProjectsHistoriesExecutionsStepsService(s)
return rs
}
@@ -102,9 +103,20 @@ func NewProjectsHistoriesExecutionsService(s *Service) *ProjectsHistoriesExecuti
type ProjectsHistoriesExecutionsService struct {
s *Service
+ Clusters *ProjectsHistoriesExecutionsClustersService
+
Steps *ProjectsHistoriesExecutionsStepsService
}
+func NewProjectsHistoriesExecutionsClustersService(s *Service) *ProjectsHistoriesExecutionsClustersService {
+ rs := &ProjectsHistoriesExecutionsClustersService{s: s}
+ return rs
+}
+
+type ProjectsHistoriesExecutionsClustersService struct {
+ s *Service
+}
+
func NewProjectsHistoriesExecutionsStepsService(s *Service) *ProjectsHistoriesExecutionsStepsService {
rs := &ProjectsHistoriesExecutionsStepsService{s: s}
rs.PerfMetricsSummary = NewProjectsHistoriesExecutionsStepsPerfMetricsSummaryService(s)
@@ -162,6 +174,179 @@ type ProjectsHistoriesExecutionsStepsThumbnailsService struct {
s *Service
}
+// AndroidAppInfo: Android app information.
+type AndroidAppInfo struct {
+ // Name: The name of the app. Optional
+ Name string `json:"name,omitempty"`
+
+ // PackageName: The package name of the app. Required.
+ PackageName string `json:"packageName,omitempty"`
+
+ // VersionCode: The internal version code of the app. Optional.
+ VersionCode string `json:"versionCode,omitempty"`
+
+ // VersionName: The version name of the app. Optional.
+ VersionName string `json:"versionName,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Name") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Name") to include in API
+ // requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidAppInfo) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidAppInfo
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// AndroidInstrumentationTest: A test of an Android application that can
+// control an Android component independently of its normal
+// lifecycle.
+//
+// See for more information on types of Android tests.
+type AndroidInstrumentationTest struct {
+ // TestPackageId: The java package for the test to be executed. Required
+ TestPackageId string `json:"testPackageId,omitempty"`
+
+ // TestRunnerClass: The InstrumentationTestRunner class. Required
+ TestRunnerClass string `json:"testRunnerClass,omitempty"`
+
+ // TestTargets: Each target must be fully qualified with the package
+ // name or class name, in one of these formats: - "package package_name"
+ // - "class package_name.class_name" - "class
+ // package_name.class_name#method_name"
+ //
+ // If empty, all targets in the module will be run.
+ TestTargets []string `json:"testTargets,omitempty"`
+
+ // UseOrchestrator: The flag indicates whether Android Test Orchestrator
+ // will be used to run test or not. Test orchestrator is used if either:
+ // - orchestrator_option field is USE_ORCHESTRATOR, and test runner is
+ // compatible with orchestrator. Or - orchestrator_option field is
+ // unspecified or ORCHESTRATOR_OPTION_UNSPECIFIED, and test runner is
+ // compatible with orchestrator.
+ UseOrchestrator bool `json:"useOrchestrator,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "TestPackageId") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "TestPackageId") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidInstrumentationTest) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidInstrumentationTest
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// AndroidRoboTest: A test of an android application that explores the
+// application on a virtual or physical Android device, finding culprits
+// and crashes as it goes.
+type AndroidRoboTest struct {
+ // AppInitialActivity: The initial activity that should be used to start
+ // the app. Optional
+ AppInitialActivity string `json:"appInitialActivity,omitempty"`
+
+ // BootstrapPackageId: The java package for the bootstrap. Optional
+ BootstrapPackageId string `json:"bootstrapPackageId,omitempty"`
+
+ // BootstrapRunnerClass: The runner class for the bootstrap. Optional
+ BootstrapRunnerClass string `json:"bootstrapRunnerClass,omitempty"`
+
+ // MaxDepth: The max depth of the traversal stack Robo can explore.
+ // Optional
+ MaxDepth int64 `json:"maxDepth,omitempty"`
+
+ // MaxSteps: The max number of steps/actions Robo can execute. Default
+ // is no limit (0). Optional
+ MaxSteps int64 `json:"maxSteps,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "AppInitialActivity")
+ // to unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "AppInitialActivity") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidRoboTest) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidRoboTest
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// AndroidTest: An Android mobile test specification.
+type AndroidTest struct {
+ // AndroidAppInfo: Infomation about the application under test.
+ AndroidAppInfo *AndroidAppInfo `json:"androidAppInfo,omitempty"`
+
+ // AndroidInstrumentationTest: An Android instrumentation test.
+ AndroidInstrumentationTest *AndroidInstrumentationTest `json:"androidInstrumentationTest,omitempty"`
+
+ // AndroidRoboTest: An Android robo test.
+ AndroidRoboTest *AndroidRoboTest `json:"androidRoboTest,omitempty"`
+
+ // TestTimeout: Max time a test is allowed to run before it is
+ // automatically cancelled.
+ TestTimeout *Duration `json:"testTimeout,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "AndroidAppInfo") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "AndroidAppInfo") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AndroidTest) MarshalJSON() ([]byte, error) {
+ type noMethod AndroidTest
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// Any: `Any` contains an arbitrary serialized protocol buffer message
// along with a URL that describes the type of the serialized
// message.
@@ -266,6 +451,42 @@ func (s *Any) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+type AppStartTime struct {
+ // FullyDrawnTime: Optional. The time from app start to reaching the
+ // developer-reported "fully drawn" time. This is only stored if the app
+ // includes a call to Activity.reportFullyDrawn(). See
+ // https://developer.android.com/topic/performance/launch-time.html#time-full
+ FullyDrawnTime *Duration `json:"fullyDrawnTime,omitempty"`
+
+ // InitialDisplayTime: The time from app start to the first displayed
+ // activity being drawn, as reported in Logcat. See
+ // https://developer.android.com/topic/performance/launch-time.html#time-initial
+ InitialDisplayTime *Duration `json:"initialDisplayTime,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "FullyDrawnTime") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "FullyDrawnTime") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *AppStartTime) MarshalJSON() ([]byte, error) {
+ type noMethod AppStartTime
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// BasicPerfSampleSeries: Encapsulates the metadata for basic sample
// series represented by a line chart
type BasicPerfSampleSeries struct {
@@ -566,6 +787,12 @@ type Execution struct {
// create/update request: optional
Outcome *Outcome `json:"outcome,omitempty"`
+ // Specification: Lightweight information about execution request.
+ //
+ // - In response: present if set by create - In create: optional - In
+ // update: optional
+ Specification *Specification `json:"specification,omitempty"`
+
// State: The initial state is IN_PROGRESS.
//
// The only legal state transitions is from IN_PROGRESS to COMPLETE.
@@ -589,8 +816,8 @@ type Execution struct {
// "unknownState"
State string `json:"state,omitempty"`
- // TestExecutionMatrixId: TestExecution Matrix ID that the Test Service
- // uses.
+ // TestExecutionMatrixId: TestExecution Matrix ID that the
+ // TestExecutionService uses.
//
// - In response: present if set by create - In create: optional - In
// update: never set
@@ -995,6 +1222,37 @@ func (s *ListPerfSamplesResponse) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+type ListScreenshotClustersResponse struct {
+ // Clusters: The set of clustres associated with an execution Always set
+ Clusters []*ScreenshotCluster `json:"clusters,omitempty"`
+
+ // ServerResponse contains the HTTP response code and headers from the
+ // server.
+ googleapi.ServerResponse `json:"-"`
+
+ // ForceSendFields is a list of field names (e.g. "Clusters") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Clusters") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *ListScreenshotClustersResponse) MarshalJSON() ([]byte, error) {
+ type noMethod ListScreenshotClustersResponse
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// ListStepThumbnailsResponse: A response containing the thumbnails in a
// step.
type ListStepThumbnailsResponse struct {
@@ -1219,6 +1477,8 @@ func (s *PerfEnvironment) MarshalJSON() ([]byte, error) {
// PerfMetricsSummary: A summary of perf metrics collected and
// performance environment info
type PerfMetricsSummary struct {
+ AppStartTime *AppStartTime `json:"appStartTime,omitempty"`
+
// ExecutionId: A tool results execution ID.
ExecutionId string `json:"executionId,omitempty"`
@@ -1249,7 +1509,7 @@ type PerfMetricsSummary struct {
// server.
googleapi.ServerResponse `json:"-"`
- // ForceSendFields is a list of field names (e.g. "ExecutionId") to
+ // ForceSendFields is a list of field names (e.g. "AppStartTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
@@ -1257,7 +1517,7 @@ type PerfMetricsSummary struct {
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "ExecutionId") to include
+ // NullFields is a list of field names (e.g. "AppStartTime") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
@@ -1446,6 +1706,86 @@ func (s *PublishXunitXmlFilesRequest) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
+type Screen struct {
+ // FileReference: File reference of the png file. Required.
+ FileReference string `json:"fileReference,omitempty"`
+
+ // Locale: Locale of the device that the screenshot was taken on.
+ // Required.
+ Locale string `json:"locale,omitempty"`
+
+ // Model: Model of the device that the screenshot was taken on.
+ // Required.
+ Model string `json:"model,omitempty"`
+
+ // Version: OS version of the device that the screenshot was taken on.
+ // Required.
+ Version string `json:"version,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "FileReference") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "FileReference") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *Screen) MarshalJSON() ([]byte, error) {
+ type noMethod Screen
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+type ScreenshotCluster struct {
+ // Activity: A string that describes the activity of every screen in the
+ // cluster.
+ Activity string `json:"activity,omitempty"`
+
+ // ClusterId: A unique identifier for the cluster.
+ ClusterId string `json:"clusterId,omitempty"`
+
+ // KeyScreen: A singular screen that represents the cluster as a whole.
+ // This screen will act as the "cover" of the entire cluster. When users
+ // look at the clusters, only the key screen from each cluster will be
+ // shown. Which screen is the key screen is determined by the
+ // ClusteringAlgorithm
+ KeyScreen *Screen `json:"keyScreen,omitempty"`
+
+ // Screens: Full list of screens.
+ Screens []*Screen `json:"screens,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Activity") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Activity") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *ScreenshotCluster) MarshalJSON() ([]byte, error) {
+ type noMethod ScreenshotCluster
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
type SkippedDetail struct {
// IncompatibleAppVersion: If the App doesn't support the specific API
// level.
@@ -1484,14 +1824,12 @@ func (s *SkippedDetail) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// StackTrace: A stacktrace.
-type StackTrace struct {
- // Exception: The stack trace message.
- //
- // Required
- Exception string `json:"exception,omitempty"`
+// Specification: The details about how to run the execution.
+type Specification struct {
+ // AndroidTest: An Android mobile test execution specification.
+ AndroidTest *AndroidTest `json:"androidTest,omitempty"`
- // ForceSendFields is a list of field names (e.g. "Exception") to
+ // ForceSendFields is a list of field names (e.g. "AndroidTest") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
@@ -1499,7 +1837,43 @@ type StackTrace struct {
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
- // NullFields is a list of field names (e.g. "Exception") to include in
+ // NullFields is a list of field names (e.g. "AndroidTest") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *Specification) MarshalJSON() ([]byte, error) {
+ type noMethod Specification
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// StackTrace: A stacktrace.
+type StackTrace struct {
+ // ClusterId: Exception cluster ID
+ ClusterId string `json:"clusterId,omitempty"`
+
+ // Exception: The stack trace message.
+ //
+ // Required
+ Exception string `json:"exception,omitempty"`
+
+ // ReportId: Exception report ID
+ ReportId string `json:"reportId,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "ClusterId") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "ClusterId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
@@ -1575,8 +1949,8 @@ type Status struct {
// [google.rpc.Code][].
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of message types for APIs to use.
Details []*Any `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -2014,17 +2388,39 @@ func (s *TestExecutionStep) MarshalJSON() ([]byte, error) {
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
-// TestIssue: An abnormal event observed during the test execution.
+// TestIssue: An issue detected occurring during a test execution.
type TestIssue struct {
- // ErrorMessage: A brief human-readable message describing the abnormal
- // event.
- //
+ // ErrorMessage: A brief human-readable message describing the issue.
// Required.
ErrorMessage string `json:"errorMessage,omitempty"`
- // StackTrace: Optional.
+ // Severity: Severity of issue. Required.
+ //
+ // Possible values:
+ // "info"
+ // "severe"
+ // "unspecifiedSeverity"
+ // "warning"
+ Severity string `json:"severity,omitempty"`
+
+ // StackTrace: Deprecated in favor of stack trace fields inside specific
+ // warnings.
StackTrace *StackTrace `json:"stackTrace,omitempty"`
+ // Type: Type of issue. Required.
+ //
+ // Possible values:
+ // "anr"
+ // "fatalException"
+ // "nativeCrash"
+ // "unspecifiedType"
+ Type string `json:"type,omitempty"`
+
+ // Warning: Warning message with additional details of the issue. Should
+ // always be a message from com.google.devtools.toolresults.v1.warnings
+ // Required.
+ Warning *Any `json:"warning,omitempty"`
+
// ForceSendFields is a list of field names (e.g. "ErrorMessage") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
@@ -3981,6 +4377,168 @@ func (c *ProjectsHistoriesExecutionsPatchCall) Do(opts ...googleapi.CallOption)
}
+// method id "toolresults.projects.histories.executions.clusters.list":
+
+type ProjectsHistoriesExecutionsClustersListCall struct {
+ s *Service
+ projectId string
+ historyId string
+ executionId string
+ urlParams_ gensupport.URLParams
+ ifNoneMatch_ string
+ ctx_ context.Context
+ header_ http.Header
+}
+
+// List: Lists Screenshot Clusters
+//
+// Returns the list of screenshot clusters corresponding to an
+// execution. Screenshot clusters are created after the execution is
+// finished. Clusters are created from a set of screenshots. Between any
+// two screenshots, a matching score is calculated based off their
+// metadata that determines how similar they are. Screenshots are placed
+// in the cluster that has screens which have the highest matching
+// scores.
+func (r *ProjectsHistoriesExecutionsClustersService) List(projectId string, historyId string, executionId string) *ProjectsHistoriesExecutionsClustersListCall {
+ c := &ProjectsHistoriesExecutionsClustersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
+ c.projectId = projectId
+ c.historyId = historyId
+ c.executionId = executionId
+ return c
+}
+
+// Fields allows partial responses to be retrieved. See
+// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
+// for more information.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Fields(s ...googleapi.Field) *ProjectsHistoriesExecutionsClustersListCall {
+ c.urlParams_.Set("fields", googleapi.CombineFields(s))
+ return c
+}
+
+// IfNoneMatch sets the optional parameter which makes the operation
+// fail if the object's ETag matches the given value. This is useful for
+// getting updates only after the object has changed since the last
+// request. Use googleapi.IsNotModified to check whether the response
+// error from Do is the result of In-None-Match.
+func (c *ProjectsHistoriesExecutionsClustersListCall) IfNoneMatch(entityTag string) *ProjectsHistoriesExecutionsClustersListCall {
+ c.ifNoneMatch_ = entityTag
+ return c
+}
+
+// Context sets the context to be used in this call's Do method. Any
+// pending HTTP request will be aborted if the provided context is
+// canceled.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Context(ctx context.Context) *ProjectsHistoriesExecutionsClustersListCall {
+ c.ctx_ = ctx
+ return c
+}
+
+// Header returns an http.Header that can be modified by the caller to
+// add HTTP headers to the request.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Header() http.Header {
+ if c.header_ == nil {
+ c.header_ = make(http.Header)
+ }
+ return c.header_
+}
+
+func (c *ProjectsHistoriesExecutionsClustersListCall) doRequest(alt string) (*http.Response, error) {
+ reqHeaders := make(http.Header)
+ for k, v := range c.header_ {
+ reqHeaders[k] = v
+ }
+ reqHeaders.Set("User-Agent", c.s.userAgent())
+ if c.ifNoneMatch_ != "" {
+ reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
+ }
+ var body io.Reader = nil
+ c.urlParams_.Set("alt", alt)
+ urls := googleapi.ResolveRelative(c.s.BasePath, "{projectId}/histories/{historyId}/executions/{executionId}/clusters")
+ urls += "?" + c.urlParams_.Encode()
+ req, _ := http.NewRequest("GET", urls, body)
+ req.Header = reqHeaders
+ googleapi.Expand(req.URL, map[string]string{
+ "projectId": c.projectId,
+ "historyId": c.historyId,
+ "executionId": c.executionId,
+ })
+ return gensupport.SendRequest(c.ctx_, c.s.client, req)
+}
+
+// Do executes the "toolresults.projects.histories.executions.clusters.list" call.
+// Exactly one of *ListScreenshotClustersResponse or error will be
+// non-nil. Any non-2xx status code is an error. Response headers are in
+// either *ListScreenshotClustersResponse.ServerResponse.Header or (if a
+// response was returned at all) in error.(*googleapi.Error).Header. Use
+// googleapi.IsNotModified to check whether the returned error was
+// because http.StatusNotModified was returned.
+func (c *ProjectsHistoriesExecutionsClustersListCall) Do(opts ...googleapi.CallOption) (*ListScreenshotClustersResponse, error) {
+ gensupport.SetOptions(c.urlParams_, opts...)
+ res, err := c.doRequest("json")
+ if res != nil && res.StatusCode == http.StatusNotModified {
+ if res.Body != nil {
+ res.Body.Close()
+ }
+ return nil, &googleapi.Error{
+ Code: res.StatusCode,
+ Header: res.Header,
+ }
+ }
+ if err != nil {
+ return nil, err
+ }
+ defer googleapi.CloseBody(res)
+ if err := googleapi.CheckResponse(res); err != nil {
+ return nil, err
+ }
+ ret := &ListScreenshotClustersResponse{
+ ServerResponse: googleapi.ServerResponse{
+ Header: res.Header,
+ HTTPStatusCode: res.StatusCode,
+ },
+ }
+ target := &ret
+ if err := json.NewDecoder(res.Body).Decode(target); err != nil {
+ return nil, err
+ }
+ return ret, nil
+ // {
+ // "description": "Lists Screenshot Clusters\n\nReturns the list of screenshot clusters corresponding to an execution. Screenshot clusters are created after the execution is finished. Clusters are created from a set of screenshots. Between any two screenshots, a matching score is calculated based off their metadata that determines how similar they are. Screenshots are placed in the cluster that has screens which have the highest matching scores.",
+ // "httpMethod": "GET",
+ // "id": "toolresults.projects.histories.executions.clusters.list",
+ // "parameterOrder": [
+ // "projectId",
+ // "historyId",
+ // "executionId"
+ // ],
+ // "parameters": {
+ // "executionId": {
+ // "description": "An Execution id.\n\nRequired.",
+ // "location": "path",
+ // "required": true,
+ // "type": "string"
+ // },
+ // "historyId": {
+ // "description": "A History id.\n\nRequired.",
+ // "location": "path",
+ // "required": true,
+ // "type": "string"
+ // },
+ // "projectId": {
+ // "description": "A Project id.\n\nRequired.",
+ // "location": "path",
+ // "required": true,
+ // "type": "string"
+ // }
+ // },
+ // "path": "{projectId}/histories/{historyId}/executions/{executionId}/clusters",
+ // "response": {
+ // "$ref": "ListScreenshotClustersResponse"
+ // }
+ // }
+
+}
+
// method id "toolresults.projects.histories.executions.steps.create":
type ProjectsHistoriesExecutionsStepsCreateCall struct {
diff --git a/vendor/google.golang.org/api/translate/v2/translate-api.json b/vendor/google.golang.org/api/translate/v2/translate-api.json
index f10e6e3..1ec48e8 100644
--- a/vendor/google.golang.org/api/translate/v2/translate-api.json
+++ b/vendor/google.golang.org/api/translate/v2/translate-api.json
@@ -1,20 +1,60 @@
{
- "basePath": "/language/translate/",
"revision": "20170525",
"documentationLink": "https://code.google.com/apis/language/translate/v2/getting_started.html",
"id": "translate:v2",
"discoveryVersion": "v1",
"schemas": {
+ "TranslationsResource": {
+ "type": "object",
+ "properties": {
+ "translatedText": {
+ "description": "Text translated into the target language.",
+ "type": "string"
+ },
+ "detectedSourceLanguage": {
+ "description": "The source language of the initial request, detected automatically, if\nno source language was passed within the initial request. If the\nsource language was passed, auto-detection of the language will not\noccur and this field will be empty.",
+ "type": "string"
+ },
+ "model": {
+ "description": "The `model` type used for this translation. Valid values are\nlisted in public documentation. Can be different from requested `model`.\nPresent only if specific model type was explicitly requested.",
+ "type": "string"
+ }
+ },
+ "id": "TranslationsResource"
+ },
+ "DetectionsResource": {
+ "description": "An array of languages which we detect for the given text The most likely language list first.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "confidence": {
+ "format": "float",
+ "description": "The confidence of the detection result of this language.",
+ "type": "number"
+ },
+ "language": {
+ "description": "The language we detected.",
+ "type": "string"
+ },
+ "isReliable": {
+ "description": "A boolean to indicate is the language detection result reliable.",
+ "type": "boolean"
+ }
+ }
+ },
+ "type": "array",
+ "id": "DetectionsResource"
+ },
"TranslationsListResponse": {
"description": "The main language translation response message.",
"type": "object",
"properties": {
"translations": {
"description": "Translations contains list of translation results of given text",
- "type": "array",
"items": {
"$ref": "TranslationsResource"
- }
+ },
+ "type": "array"
}
},
"id": "TranslationsListResponse"
@@ -23,20 +63,16 @@
"description": "The main translation request message for the Cloud Translation API.",
"type": "object",
"properties": {
- "target": {
- "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support.",
+ "format": {
+ "description": "The format of the source text, in either HTML (default) or plain-text. A\nvalue of \"html\" indicates HTML and a value of \"text\" indicates plain-text.",
"type": "string"
},
"q": {
"description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.",
- "type": "array",
"items": {
"type": "string"
- }
- },
- "format": {
- "description": "The format of the source text, in either HTML (default) or plain-text. A\nvalue of \"html\" indicates HTML and a value of \"text\" indicates plain-text.",
- "type": "string"
+ },
+ "type": "array"
},
"source": {
"description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.",
@@ -45,6 +81,10 @@
"model": {
"description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.",
"type": "string"
+ },
+ "target": {
+ "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support.",
+ "type": "string"
}
},
"id": "TranslateTextRequest"
@@ -55,37 +95,37 @@
"properties": {
"q": {
"description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.",
- "type": "array",
"items": {
"type": "string"
- }
+ },
+ "type": "array"
}
},
"id": "DetectLanguageRequest"
},
"LanguagesResource": {
- "id": "LanguagesResource",
"type": "object",
"properties": {
- "language": {
- "description": "Supported language code, generally consisting of its ISO 639-1\nidentifier. (E.g. 'en', 'ja'). In certain cases, BCP-47 codes including\nlanguage + region identifiers are returned (e.g. 'zh-TW' and 'zh-CH')",
- "type": "string"
- },
"name": {
"description": "Human readable name of the language localized to the target language.",
"type": "string"
+ },
+ "language": {
+ "description": "Supported language code, generally consisting of its ISO 639-1\nidentifier. (E.g. 'en', 'ja'). In certain cases, BCP-47 codes including\nlanguage + region identifiers are returned (e.g. 'zh-TW' and 'zh-CH')",
+ "type": "string"
}
- }
+ },
+ "id": "LanguagesResource"
},
"DetectionsListResponse": {
"type": "object",
"properties": {
"detections": {
"description": "A detections contains detection results of several text",
- "type": "array",
"items": {
"$ref": "DetectionsResource"
- }
+ },
+ "type": "array"
}
},
"id": "DetectionsListResponse"
@@ -106,61 +146,20 @@
"properties": {
"languages": {
"description": "List of source/target languages supported by the translation API. If target parameter is unspecified, the list is sorted by the ASCII code point order of the language code. If target parameter is specified, the list is sorted by the collation order of the language name in the target language.",
- "type": "array",
"items": {
"$ref": "LanguagesResource"
- }
+ },
+ "type": "array"
}
},
"id": "LanguagesListResponse"
- },
- "TranslationsResource": {
- "properties": {
- "translatedText": {
- "description": "Text translated into the target language.",
- "type": "string"
- },
- "detectedSourceLanguage": {
- "description": "The source language of the initial request, detected automatically, if\nno source language was passed within the initial request. If the\nsource language was passed, auto-detection of the language will not\noccur and this field will be empty.",
- "type": "string"
- },
- "model": {
- "description": "The `model` type used for this translation. Valid values are\nlisted in public documentation. Can be different from requested `model`.\nPresent only if specific model type was explicitly requested.",
- "type": "string"
- }
- },
- "id": "TranslationsResource",
- "type": "object"
- },
- "DetectionsResource": {
- "id": "DetectionsResource",
- "description": "An array of languages which we detect for the given text The most likely language list first.",
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "isReliable": {
- "description": "A boolean to indicate is the language detection result reliable.",
- "type": "boolean"
- },
- "language": {
- "description": "The language we detected.",
- "type": "string"
- },
- "confidence": {
- "description": "The confidence of the detection result of this language.",
- "format": "float",
- "type": "number"
- }
- }
- }
}
},
- "protocol": "rest",
"icons": {
"x16": "https://www.google.com/images/icons/product/translate-16.png",
"x32": "https://www.google.com/images/icons/product/translate-32.png"
},
+ "protocol": "rest",
"canonicalName": "Translate",
"auth": {
"oauth2": {
@@ -178,15 +177,17 @@
"ownerDomain": "google.com",
"name": "translate",
"batchPath": "batch/translate",
- "title": "Google Cloud Translation API",
"features": [
"dataWrapper"
],
+ "title": "Google Cloud Translation API",
"ownerName": "Google",
"resources": {
"languages": {
"methods": {
"list": {
+ "id": "language.languages.list",
+ "path": "v2/languages",
"description": "Returns a list of supported languages for translation.",
"response": {
"$ref": "LanguagesListResponse"
@@ -199,63 +200,49 @@
"type": "string"
},
"target": {
- "type": "string",
"location": "query",
- "description": "The language to use to return localized, human readable names of supported\nlanguages."
+ "description": "The language to use to return localized, human readable names of supported\nlanguages.",
+ "type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-translation",
"https://www.googleapis.com/auth/cloud-platform"
- ],
- "path": "v2/languages",
- "id": "language.languages.list"
+ ]
}
}
},
"translations": {
"methods": {
- "list": {
- "id": "language.translations.list",
- "path": "v2",
+ "translate": {
+ "request": {
+ "$ref": "TranslateTextRequest"
+ },
"description": "Translates input text, returning translated text.",
- "httpMethod": "GET",
"response": {
"$ref": "TranslationsListResponse"
},
- "parameterOrder": [
- "q",
- "target"
- ],
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {},
"scopes": [
"https://www.googleapis.com/auth/cloud-translation",
"https://www.googleapis.com/auth/cloud-platform"
],
+ "id": "language.translations.translate",
+ "path": "v2"
+ },
+ "list": {
+ "description": "Translates input text, returning translated text.",
+ "parameterOrder": [
+ "q",
+ "target"
+ ],
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "TranslationsListResponse"
+ },
"parameters": {
- "q": {
- "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.",
- "type": "string",
- "required": true,
- "repeated": true,
- "location": "query"
- },
- "source": {
- "location": "query",
- "description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.",
- "type": "string"
- },
- "cid": {
- "repeated": true,
- "location": "query",
- "description": "The customization id for translate",
- "type": "string"
- },
- "target": {
- "location": "query",
- "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support.",
- "type": "string",
- "required": true
- },
"format": {
"description": "The format of the source text, in either HTML (default) or plain-text. A\nvalue of \"html\" indicates HTML and a value of \"text\" indicates plain-text.",
"type": "string",
@@ -270,149 +257,124 @@
]
},
"model": {
+ "location": "query",
"description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.",
+ "type": "string"
+ },
+ "q": {
+ "location": "query",
+ "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs.",
+ "required": true,
"type": "string",
+ "repeated": true
+ },
+ "source": {
+ "location": "query",
+ "description": "The language of the source text, set to one of the language codes listed in\nLanguage Support. If the source language is not specified, the API will\nattempt to identify the source language automatically and return it within\nthe response.",
+ "type": "string"
+ },
+ "cid": {
+ "description": "The customization id for translate",
+ "type": "string",
+ "repeated": true,
"location": "query"
+ },
+ "target": {
+ "location": "query",
+ "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support.",
+ "required": true,
+ "type": "string"
}
- }
- },
- "translate": {
- "description": "Translates input text, returning translated text.",
- "request": {
- "$ref": "TranslateTextRequest"
},
- "response": {
- "$ref": "TranslationsListResponse"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "parameters": {},
"scopes": [
"https://www.googleapis.com/auth/cloud-translation",
"https://www.googleapis.com/auth/cloud-platform"
],
- "path": "v2",
- "id": "language.translations.translate"
+ "id": "language.translations.list",
+ "path": "v2"
}
}
},
"detections": {
"methods": {
- "list": {
- "parameters": {
- "q": {
- "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.",
- "type": "string",
- "required": true,
- "repeated": true,
- "location": "query"
- }
+ "detect": {
+ "request": {
+ "$ref": "DetectLanguageRequest"
},
+ "description": "Detects the language of text within a request.",
+ "httpMethod": "POST",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "DetectionsListResponse"
+ },
+ "parameters": {},
"scopes": [
"https://www.googleapis.com/auth/cloud-translation",
"https://www.googleapis.com/auth/cloud-platform"
],
"path": "v2/detect",
- "id": "language.detections.list",
- "description": "Detects the language of text within a request.",
+ "id": "language.detections.detect"
+ },
+ "list": {
"response": {
"$ref": "DetectionsListResponse"
},
"parameterOrder": [
"q"
],
- "httpMethod": "GET"
- },
- "detect": {
- "response": {
- "$ref": "DetectionsListResponse"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
+ "httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-translation",
"https://www.googleapis.com/auth/cloud-platform"
],
- "parameters": {},
- "path": "v2/detect",
- "id": "language.detections.detect",
- "request": {
- "$ref": "DetectLanguageRequest"
+ "parameters": {
+ "q": {
+ "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.",
+ "required": true,
+ "type": "string",
+ "repeated": true,
+ "location": "query"
+ }
},
+ "id": "language.detections.list",
+ "path": "v2/detect",
"description": "Detects the language of text within a request."
}
}
}
},
"parameters": {
- "alt": {
- "type": "string",
- "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",
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ]
- },
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "type": "string"
- },
- "key": {
- "location": "query",
- "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.",
- "type": "string"
- },
- "quotaUser": {
- "location": "query",
- "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. Overrides userIp if both are provided.",
- "type": "string"
- },
- "pp": {
- "description": "Pretty-print response.",
- "type": "boolean",
- "default": "true",
- "location": "query"
- },
- "bearer_token": {
- "type": "string",
- "location": "query",
- "description": "OAuth bearer token."
- },
"oauth_token": {
"description": "OAuth 2.0 token for the current user.",
"type": "string",
"location": "query"
},
- "upload_protocol": {
+ "bearer_token": {
"location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "description": "OAuth bearer token.",
"type": "string"
},
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
"prettyPrint": {
- "location": "query",
"description": "Returns response with indentations and line breaks.",
+ "default": "true",
"type": "boolean",
- "default": "true"
+ "location": "query"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
},
"uploadType": {
"location": "query",
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string"
},
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
"$.xgafv": {
"enumDescriptions": [
"v1 error format",
@@ -430,11 +392,49 @@
"description": "JSONP",
"type": "string",
"location": "query"
+ },
+ "alt": {
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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",
+ "description": "Data format for response.",
+ "default": "json"
+ },
+ "key": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "access_token": {
+ "description": "OAuth access token.",
+ "type": "string",
+ "location": "query"
+ },
+ "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. Overrides userIp if both are provided.",
+ "type": "string",
+ "location": "query"
+ },
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
}
},
"version": "v2",
"baseUrl": "https://translation.googleapis.com/language/translate/",
"servicePath": "language/translate/",
"description": "The Google Cloud Translation API lets websites and programs integrate with\n Google Translate programmatically.",
- "kind": "discovery#restDescription"
+ "kind": "discovery#restDescription",
+ "basePath": "/language/translate/"
}
diff --git a/vendor/google.golang.org/api/transport/dial.go b/vendor/google.golang.org/api/transport/dial.go
index e1434ba..91d8325 100644
--- a/vendor/google.golang.org/api/transport/dial.go
+++ b/vendor/google.golang.org/api/transport/dial.go
@@ -18,184 +18,44 @@
package transport
import (
- "errors"
- "fmt"
- "io/ioutil"
"net/http"
"golang.org/x/net/context"
- "golang.org/x/oauth2"
"golang.org/x/oauth2/google"
"google.golang.org/grpc"
- "google.golang.org/grpc/credentials"
- "google.golang.org/grpc/credentials/oauth"
- gtransport "google.golang.org/api/googleapi/transport"
"google.golang.org/api/internal"
"google.golang.org/api/option"
+ gtransport "google.golang.org/api/transport/grpc"
+ htransport "google.golang.org/api/transport/http"
)
// NewHTTPClient returns an HTTP client for use communicating with a Google cloud
// service, configured with the given ClientOptions. It also returns the endpoint
// for the service as specified in the options.
func NewHTTPClient(ctx context.Context, opts ...option.ClientOption) (*http.Client, string, error) {
- var o internal.DialSettings
- for _, opt := range opts {
- opt.Apply(&o)
- }
- if o.GRPCConn != nil {
- return nil, "", errors.New("unsupported gRPC connection specified")
- }
- // TODO(cbro): consider injecting the User-Agent even if an explicit HTTP client is provided?
- if o.HTTPClient != nil {
- return o.HTTPClient, o.Endpoint, nil
- }
- if o.APIKey != "" {
- hc := &http.Client{
- Transport: >ransport.APIKey{
- Key: o.APIKey,
- Transport: userAgentTransport{
- base: baseTransport(ctx),
- userAgent: o.UserAgent,
- },
- },
- }
- return hc, o.Endpoint, nil
- }
- if o.ServiceAccountJSONFilename != "" {
- ts, err := serviceAcctTokenSource(ctx, o.ServiceAccountJSONFilename, o.Scopes...)
- if err != nil {
- return nil, "", err
- }
- o.TokenSource = ts
- }
- if o.TokenSource == nil {
- var err error
- o.TokenSource, err = google.DefaultTokenSource(ctx, o.Scopes...)
- if err != nil {
- return nil, "", fmt.Errorf("google.DefaultTokenSource: %v", err)
- }
- }
- hc := &http.Client{
- Transport: &oauth2.Transport{
- Source: o.TokenSource,
- Base: userAgentTransport{
- base: baseTransport(ctx),
- userAgent: o.UserAgent,
- },
- },
- }
- return hc, o.Endpoint, nil
-}
-
-type userAgentTransport struct {
- userAgent string
- base http.RoundTripper
-}
-
-func (t userAgentTransport) RoundTrip(req *http.Request) (*http.Response, error) {
- rt := t.base
- if rt == nil {
- return nil, errors.New("transport: no Transport specified")
- }
- if t.userAgent == "" {
- return rt.RoundTrip(req)
- }
- newReq := *req
- newReq.Header = make(http.Header)
- for k, vv := range req.Header {
- newReq.Header[k] = vv
- }
- // TODO(cbro): append to existing User-Agent header?
- newReq.Header["User-Agent"] = []string{t.userAgent}
- return rt.RoundTrip(&newReq)
-}
-
-// Set at init time by dial_appengine.go. If nil, we're not on App Engine.
-var appengineDialerHook func(context.Context) grpc.DialOption
-var appengineUrlfetchHook func(context.Context) http.RoundTripper
-
-// baseTransport returns the base HTTP transport.
-// On App Engine, this is urlfetch.Transport, otherwise it's http.DefaultTransport.
-func baseTransport(ctx context.Context) http.RoundTripper {
- if appengineUrlfetchHook != nil {
- return appengineUrlfetchHook(ctx)
- }
- return http.DefaultTransport
+ return htransport.NewClient(ctx, opts...)
}
// DialGRPC returns a GRPC connection for use communicating with a Google cloud
// service, configured with the given ClientOptions.
func DialGRPC(ctx context.Context, opts ...option.ClientOption) (*grpc.ClientConn, error) {
- var o internal.DialSettings
- for _, opt := range opts {
- opt.Apply(&o)
- }
- if o.HTTPClient != nil {
- return nil, errors.New("unsupported HTTP client specified")
- }
- if o.GRPCConn != nil {
- return o.GRPCConn, nil
- }
- if o.ServiceAccountJSONFilename != "" {
- ts, err := serviceAcctTokenSource(ctx, o.ServiceAccountJSONFilename, o.Scopes...)
- if err != nil {
- return nil, err
- }
- o.TokenSource = ts
- }
- if o.TokenSource == nil {
- var err error
- o.TokenSource, err = google.DefaultTokenSource(ctx, o.Scopes...)
- if err != nil {
- return nil, fmt.Errorf("google.DefaultTokenSource: %v", err)
- }
- }
- grpcOpts := []grpc.DialOption{
- grpc.WithPerRPCCredentials(oauth.TokenSource{o.TokenSource}),
- grpc.WithTransportCredentials(credentials.NewClientTLSFromCert(nil, "")),
- }
- if appengineDialerHook != nil {
- // Use the Socket API on App Engine.
- grpcOpts = append(grpcOpts, appengineDialerHook(ctx))
- }
- grpcOpts = append(grpcOpts, o.GRPCDialOpts...)
- if o.UserAgent != "" {
- grpcOpts = append(grpcOpts, grpc.WithUserAgent(o.UserAgent))
- }
- return grpc.DialContext(ctx, o.Endpoint, grpcOpts...)
-}
-
-func serviceAcctTokenSource(ctx context.Context, filename string, scope ...string) (oauth2.TokenSource, error) {
- data, err := ioutil.ReadFile(filename)
- if err != nil {
- return nil, fmt.Errorf("cannot read service account file: %v", err)
- }
- cfg, err := google.JWTConfigFromJSON(data, scope...)
- if err != nil {
- return nil, fmt.Errorf("google.JWTConfigFromJSON: %v", err)
- }
- return cfg.TokenSource(ctx), nil
+ return gtransport.Dial(ctx, opts...)
}
// DialGRPCInsecure returns an insecure GRPC connection for use communicating
// with fake or mock Google cloud service implementations, such as emulators.
// The connection is configured with the given ClientOptions.
func DialGRPCInsecure(ctx context.Context, opts ...option.ClientOption) (*grpc.ClientConn, error) {
- var o internal.DialSettings
- for _, opt := range opts {
- opt.Apply(&o)
- }
- if o.HTTPClient != nil {
- return nil, errors.New("unsupported HTTP client specified")
- }
- if o.GRPCConn != nil {
- return o.GRPCConn, nil
- }
- grpcOpts := []grpc.DialOption{grpc.WithInsecure()}
- grpcOpts = append(grpcOpts, o.GRPCDialOpts...)
- if o.UserAgent != "" {
- grpcOpts = append(grpcOpts, grpc.WithUserAgent(o.UserAgent))
- }
- return grpc.DialContext(ctx, o.Endpoint, grpcOpts...)
+ return gtransport.DialInsecure(ctx, opts...)
+}
+
+// Creds constructs a google.DefaultCredentials from the information in the options,
+// or obtains the default credentials in the same way as google.FindDefaultCredentials.
+func Creds(ctx context.Context, opts ...option.ClientOption) (*google.DefaultCredentials, error) {
+ var ds internal.DialSettings
+ for _, opt := range opts {
+ opt.Apply(&ds)
+ }
+ return internal.Creds(ctx, &ds)
}
diff --git a/vendor/google.golang.org/api/transport/dial_appengine.go b/vendor/google.golang.org/api/transport/dial_appengine.go
deleted file mode 100644
index fdac1f3..0000000
--- a/vendor/google.golang.org/api/transport/dial_appengine.go
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright 2016 Google Inc. All Rights Reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-// +build appengine
-
-package transport
-
-import (
- "net"
- "net/http"
- "time"
-
- "golang.org/x/net/context"
- "google.golang.org/appengine/socket"
- "google.golang.org/appengine/urlfetch"
- "google.golang.org/grpc"
-)
-
-func init() {
- appengineDialerHook = func(ctx context.Context) grpc.DialOption {
- return grpc.WithDialer(func(addr string, timeout time.Duration) (net.Conn, error) {
- return socket.DialTimeout(ctx, "tcp", addr, timeout)
- })
- }
-
- appengineUrlfetchHook = func(ctx context.Context) http.RoundTripper {
- return &urlfetch.Transport{Context: ctx}
- }
-}
diff --git a/vendor/google.golang.org/api/transport/dial_test.go b/vendor/google.golang.org/api/transport/dial_test.go
deleted file mode 100644
index dcfa21c..0000000
--- a/vendor/google.golang.org/api/transport/dial_test.go
+++ /dev/null
@@ -1,66 +0,0 @@
-// Copyright 2016 Google Inc. All Rights Reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package transport
-
-import (
- "errors"
- "net"
- "testing"
- "time"
-
- "golang.org/x/net/context"
- "golang.org/x/oauth2"
- "google.golang.org/api/option"
- "google.golang.org/grpc"
-)
-
-// Check that user optioned grpc.WithDialer option overrides the App Engine hook.
-func TestGRPCHook(t *testing.T) {
- ctx, cancel := context.WithTimeout(context.Background(), 10*time.Millisecond)
- expected := false
-
- appengineDialerHook = (func(ctx context.Context) grpc.DialOption {
- return grpc.WithDialer(func(addr string, timeout time.Duration) (net.Conn, error) {
- t.Error("did not expect a call to notExpected dialer, got one")
- cancel()
- return nil, errors.New("not expected")
- })
- })
- defer func() {
- appengineDialerHook = nil
- }()
-
- expectedDialer := grpc.WithDialer(func(addr string, timeout time.Duration) (net.Conn, error) {
- expected = true
- cancel()
- return nil, errors.New("expected")
- })
-
- conn, err := DialGRPC(ctx,
- option.WithTokenSource(oauth2.StaticTokenSource(nil)), // No creds.
- option.WithGRPCDialOption(expectedDialer),
- option.WithEndpoint("example.google.com:443"))
- if err != nil {
- t.Errorf("DialGRPC: error %v, want nil", err)
- }
-
- // gRPC doesn't connect before the first call.
- grpc.Invoke(ctx, "foo", nil, nil, conn)
- conn.Close()
-
- if !expected {
- t.Error("expected a call to expected dialer, didn't get one")
- }
-}
diff --git a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json
index 1a74743..bc93a67 100644
--- a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json
+++ b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-api.json
@@ -1,29 +1,349 @@
{
- "version": "v1beta1",
- "baseUrl": "https://videointelligence.googleapis.com/",
- "servicePath": "",
- "description": "Google Cloud Video Intelligence API.",
- "kind": "discovery#restDescription",
- "basePath": "",
- "revision": "20170511",
- "id": "videointelligence:v1beta1",
- "documentationLink": "https://cloud.google.com/video-intelligence/docs/",
"discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
- "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress": {
- "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.",
+ "GoogleCloudVideointelligenceV1_VideoAnnotationResults": {
+ "properties": {
+ "error": {
+ "$ref": "GoogleRpc_Status",
+ "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail."
+ },
+ "shotAnnotations": {
+ "description": "Shot annotations. Each shot is represented as a video segment.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1_VideoSegment"
+ },
+ "type": "array"
+ },
+ "safeSearchAnnotations": {
+ "description": "Safe search annotations.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1_SafeSearchAnnotation"
+ },
+ "type": "array"
+ },
+ "inputUri": {
+ "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).",
+ "type": "string"
+ },
+ "labelAnnotations": {
+ "description": "Label annotations. There is exactly one element for each unique label.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation"
+ },
+ "type": "array"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults",
+ "description": "Annotation results for a single video.",
+ "type": "object"
+ },
+ "GoogleCloudVideointelligenceV1_LabelLocation": {
+ "description": "Label location.",
"type": "object",
+ "properties": {
+ "confidence": {
+ "format": "float",
+ "description": "Confidence that the label is accurate. Range: [0, 1].",
+ "type": "number"
+ },
+ "segment": {
+ "description": "Video segment. Unset for video-level labels.\nSet to a frame timestamp for frame-level labels.\nOtherwise, corresponds to one of `AnnotateSpec.segments`\n(if specified) or to shot boundaries (if requested).",
+ "$ref": "GoogleCloudVideointelligenceV1_VideoSegment"
+ },
+ "level": {
+ "enum": [
+ "LABEL_LEVEL_UNSPECIFIED",
+ "VIDEO_LEVEL",
+ "SEGMENT_LEVEL",
+ "SHOT_LEVEL",
+ "FRAME_LEVEL"
+ ],
+ "description": "Label level.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified.",
+ "Video-level. Corresponds to the whole video.",
+ "Segment-level. Corresponds to one of `AnnotateSpec.segments`.",
+ "Shot-level. Corresponds to a single shot (i.e. a series of frames\nwithout a major camera position or background change).",
+ "Frame-level. Corresponds to a single video frame."
+ ]
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1_LabelLocation"
+ },
+ "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": {
"properties": {
"annotationProgress": {
"description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.",
- "type": "array",
"items": {
- "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress"
- }
+ "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress"
+ },
+ "type": "array"
}
},
- "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress"
+ "id": "GoogleCloudVideointelligenceV1_AnnotateVideoProgress",
+ "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.",
+ "type": "object"
+ },
+ "GoogleLongrunning_Operation": {
+ "properties": {
+ "done": {
+ "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
+ "type": "boolean"
+ },
+ "response": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
+ "type": "object"
+ },
+ "name": {
+ "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "type": "string"
+ },
+ "error": {
+ "$ref": "GoogleRpc_Status",
+ "description": "The error result of the operation in case of failure or cancellation."
+ },
+ "metadata": {
+ "additionalProperties": {
+ "description": "Properties of the object. Contains field @type with type URL.",
+ "type": "any"
+ },
+ "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
+ "type": "object"
+ }
+ },
+ "id": "GoogleLongrunning_Operation",
+ "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
+ "type": "object"
+ },
+ "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": {
+ "properties": {
+ "error": {
+ "$ref": "GoogleRpc_Status",
+ "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail."
+ },
+ "shotAnnotations": {
+ "description": "Shot annotations. Each shot is represented as a video segment.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment"
+ },
+ "type": "array"
+ },
+ "safeSearchAnnotations": {
+ "description": "Safe search annotations.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation"
+ },
+ "type": "array"
+ },
+ "inputUri": {
+ "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).",
+ "type": "string"
+ },
+ "labelAnnotations": {
+ "description": "Label annotations. There is exactly one element for each unique label.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation"
+ },
+ "type": "array"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults",
+ "description": "Annotation results for a single video.",
+ "type": "object"
+ },
+ "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": {
+ "properties": {
+ "description": {
+ "description": "Textual description, e.g. `Fixed-gear bicycle`.",
+ "type": "string"
+ },
+ "locations": {
+ "description": "Where the label was detected and with what confidence.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_LabelLocation"
+ },
+ "type": "array"
+ },
+ "languageCode": {
+ "description": "Language code for `description` in BCP-47 format.",
+ "type": "string"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation",
+ "description": "Label annotation.",
+ "type": "object"
+ },
+ "GoogleCloudVideointelligenceV1_AnnotateVideoResponse": {
+ "properties": {
+ "annotationResults": {
+ "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults"
+ },
+ "type": "array"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1_AnnotateVideoResponse",
+ "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.",
+ "type": "object"
+ },
+ "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse": {
+ "properties": {
+ "annotationResults": {
+ "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults"
+ },
+ "type": "array"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse",
+ "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.",
+ "type": "object"
+ },
+ "GoogleCloudVideointelligenceV1beta1_VideoContext": {
+ "description": "Video context and/or feature-specific parameters.",
+ "type": "object",
+ "properties": {
+ "stationaryCamera": {
+ "description": "Whether the video has been shot from a stationary (i.e. non-moving) camera.\nWhen set to true, might improve detection accuracy for moving objects.",
+ "type": "boolean"
+ },
+ "labelDetectionMode": {
+ "enumDescriptions": [
+ "Unspecified.",
+ "Detect shot-level labels.",
+ "Detect frame-level labels.",
+ "Detect both shot-level and frame-level labels."
+ ],
+ "enum": [
+ "LABEL_DETECTION_MODE_UNSPECIFIED",
+ "SHOT_MODE",
+ "FRAME_MODE",
+ "SHOT_AND_FRAME_MODE"
+ ],
+ "description": "If label detection has been requested, what labels should be detected\nin addition to video-level labels or segment-level labels. If unspecified,\ndefaults to `SHOT_MODE`.",
+ "type": "string"
+ },
+ "safeSearchDetectionModel": {
+ "description": "Model to use for safe search detection.\nSupported values: \"latest\" and \"stable\" (the default).",
+ "type": "string"
+ },
+ "segments": {
+ "description": "Video segments to annotate. The segments may overlap and are not required\nto be contiguous or span the whole video. If unspecified, each video\nis treated as a single segment.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment"
+ },
+ "type": "array"
+ },
+ "labelDetectionModel": {
+ "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).",
+ "type": "string"
+ },
+ "shotChangeDetectionModel": {
+ "description": "Model to use for shot change detection.\nSupported values: \"latest\" and \"stable\" (the default).",
+ "type": "string"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1beta1_VideoContext"
+ },
+ "GoogleCloudVideointelligenceV1_LabelAnnotation": {
+ "description": "Label annotation.",
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "Textual description, e.g. `Fixed-gear bicycle`.",
+ "type": "string"
+ },
+ "locations": {
+ "description": "Where the label was detected and with what confidence.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1_LabelLocation"
+ },
+ "type": "array"
+ },
+ "languageCode": {
+ "description": "Language code for `description` in BCP-47 format.",
+ "type": "string"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1_LabelAnnotation"
+ },
+ "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": {
+ "properties": {
+ "inputUri": {
+ "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).",
+ "type": "string"
+ },
+ "progressPercent": {
+ "format": "int32",
+ "description": "Approximate percentage processed thus far.\nGuaranteed to be 100 when fully processed.",
+ "type": "integer"
+ },
+ "updateTime": {
+ "format": "google-datetime",
+ "description": "Time of the most recent update.",
+ "type": "string"
+ },
+ "startTime": {
+ "format": "google-datetime",
+ "description": "Time when the request was received.",
+ "type": "string"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress",
+ "description": "Annotation progress for a single video.",
+ "type": "object"
+ },
+ "GoogleRpc_Status": {
+ "properties": {
+ "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"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
+ }
+ },
+ "id": "GoogleRpc_Status",
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object"
+ },
+ "GoogleCloudVideointelligenceV1_VideoSegment": {
+ "properties": {
+ "startTime": {
+ "format": "google-duration",
+ "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).",
+ "type": "string"
+ },
+ "endTime": {
+ "format": "google-duration",
+ "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).",
+ "type": "string"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1_VideoSegment",
+ "description": "Video segment.",
+ "type": "object"
},
"GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest": {
"description": "Video annotation request.",
@@ -39,19 +359,21 @@
},
"features": {
"description": "Requested video annotation features.",
- "type": "array",
"items": {
"enum": [
"FEATURE_UNSPECIFIED",
"LABEL_DETECTION",
- "SHOT_CHANGE_DETECTION"
+ "SHOT_CHANGE_DETECTION",
+ "SAFE_SEARCH_DETECTION"
],
"type": "string"
},
+ "type": "array",
"enumDescriptions": [
"Unspecified.",
"Label detection. Detect objects, such as dog or flower.",
- "Shot change detection."
+ "Shot change detection.",
+ "Safe search detection."
]
},
"videoContext": {
@@ -73,14 +395,16 @@
"description": "Label location.",
"type": "object",
"properties": {
+ "confidence": {
+ "format": "float",
+ "description": "Confidence that the label is accurate. Range: [0, 1].",
+ "type": "number"
+ },
+ "segment": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment",
+ "description": "Video segment. Set to [-1, -1] for video-level labels.\nSet to [timestamp, timestamp] for frame-level labels.\nOtherwise, corresponds to one of `AnnotateSpec.segments`\n(if specified) or to shot boundaries (if requested)."
+ },
"level": {
- "enumDescriptions": [
- "Unspecified.",
- "Video-level. Corresponds to the whole video.",
- "Segment-level. Corresponds to one of `AnnotateSpec.segments`.",
- "Shot-level. Corresponds to a single shot (i.e. a series of frames\nwithout a major camera position or background change).",
- "Frame-level. Corresponds to a single video frame."
- ],
"enum": [
"LABEL_LEVEL_UNSPECIFIED",
"VIDEO_LEVEL",
@@ -89,16 +413,14 @@
"FRAME_LEVEL"
],
"description": "Label level.",
- "type": "string"
- },
- "confidence": {
- "description": "Confidence that the label is accurate. Range: [0, 1].",
- "format": "float",
- "type": "number"
- },
- "segment": {
- "description": "Video segment. Set to [-1, -1] for video-level labels.\nSet to [timestamp, timestamp] for frame-level labels.\nOtherwise, corresponds to one of `AnnotateSpec.segments`\n(if specified) or to shot boundaries (if requested).",
- "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment"
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified.",
+ "Video-level. Corresponds to the whole video.",
+ "Segment-level. Corresponds to one of `AnnotateSpec.segments`.",
+ "Shot-level. Corresponds to a single shot (i.e. a series of frames\nwithout a major camera position or background change).",
+ "Frame-level. Corresponds to a single video frame."
+ ]
}
},
"id": "GoogleCloudVideointelligenceV1beta1_LabelLocation"
@@ -106,13 +428,13 @@
"GoogleCloudVideointelligenceV1beta1_VideoSegment": {
"properties": {
"endTimeOffset": {
- "description": "End offset in microseconds (inclusive). Unset means 0.",
"format": "int64",
+ "description": "End offset in microseconds (inclusive). Unset means 0.",
"type": "string"
},
"startTimeOffset": {
- "description": "Start offset in microseconds (inclusive). Unset means 0.",
"format": "int64",
+ "description": "Start offset in microseconds (inclusive). Unset means 0.",
"type": "string"
}
},
@@ -120,156 +442,174 @@
"description": "Video segment.",
"type": "object"
},
- "GoogleLongrunning_Operation": {
- "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
- "type": "object",
+ "GoogleCloudVideointelligenceV1_SafeSearchAnnotation": {
"properties": {
- "done": {
- "description": "If the value is `false`, it means the operation is still in progress.\nIf true, the operation is completed, and either `error` or `response` is\navailable.",
- "type": "boolean"
- },
- "response": {
- "description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
- "type": "object",
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- }
- },
- "name": {
- "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
+ "time": {
+ "format": "google-duration",
+ "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this annotation.",
"type": "string"
},
- "error": {
- "$ref": "GoogleRpc_Status",
- "description": "The error result of the operation in case of failure or cancellation."
- },
- "metadata": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
- "type": "object"
- }
- },
- "id": "GoogleLongrunning_Operation"
- },
- "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": {
- "description": "Annotation results for a single video.",
- "type": "object",
- "properties": {
- "error": {
- "$ref": "GoogleRpc_Status",
- "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail."
- },
- "shotAnnotations": {
- "description": "Shot annotations. Each shot is represented as a video segment.",
- "type": "array",
- "items": {
- "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment"
- }
- },
- "inputUri": {
- "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).",
- "type": "string"
- },
- "labelAnnotations": {
- "description": "Label annotations. There is exactly one element for each unique label.",
- "type": "array",
- "items": {
- "$ref": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation"
- }
- }
- },
- "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults"
- },
- "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": {
- "description": "Label annotation.",
- "type": "object",
- "properties": {
- "languageCode": {
- "description": "Language code for `description` in BCP-47 format.",
- "type": "string"
- },
- "description": {
- "description": "Textual description, e.g. `Fixed-gear bicycle`.",
- "type": "string"
- },
- "locations": {
- "description": "Where the label was detected and with what confidence.",
- "type": "array",
- "items": {
- "$ref": "GoogleCloudVideointelligenceV1beta1_LabelLocation"
- }
- }
- },
- "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation"
- },
- "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse": {
- "description": "Video annotation response. Included in the `response`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.",
- "type": "object",
- "properties": {
- "annotationResults": {
- "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.",
- "type": "array",
- "items": {
- "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults"
- }
- }
- },
- "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse"
- },
- "GoogleCloudVideointelligenceV1beta1_VideoContext": {
- "properties": {
- "shotChangeDetectionModel": {
- "description": "Model to use for shot change detection.\nSupported values: \"latest\" and \"stable\" (the default).",
- "type": "string"
- },
- "segments": {
- "description": "Video segments to annotate. The segments may overlap and are not required\nto be contiguous or span the whole video. If unspecified, each video\nis treated as a single segment.",
- "type": "array",
- "items": {
- "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment"
- }
- },
- "labelDetectionModel": {
- "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).",
- "type": "string"
- },
- "labelDetectionMode": {
+ "adult": {
"enumDescriptions": [
- "Unspecified.",
- "Detect shot-level labels.",
- "Detect frame-level labels.",
- "Detect both shot-level and frame-level labels."
+ "Unknown likelihood.",
+ "Very unlikely.",
+ "Unlikely.",
+ "Possible.",
+ "Likely.",
+ "Very likely."
],
"enum": [
- "LABEL_DETECTION_MODE_UNSPECIFIED",
- "SHOT_MODE",
- "FRAME_MODE",
- "SHOT_AND_FRAME_MODE"
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
],
- "description": "If label detection has been requested, what labels should be detected\nin addition to video-level labels or segment-level labels. If unspecified,\ndefaults to `SHOT_MODE`.",
+ "description": "Likelihood of adult content.",
"type": "string"
}
},
- "id": "GoogleCloudVideointelligenceV1beta1_VideoContext",
- "description": "Video context and/or feature-specific parameters.",
+ "id": "GoogleCloudVideointelligenceV1_SafeSearchAnnotation",
+ "description": "Safe search annotation (based on per-frame visual signals only).\nIf no unsafe content has been detected in a frame, no annotations\nare present for that frame.",
"type": "object"
},
- "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": {
- "description": "Annotation progress for a single video.",
+ "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation": {
+ "description": "Safe search annotation (based on per-frame visual signals only).\nIf no unsafe content has been detected in a frame, no annotations\nare present for that frame. If only some types of unsafe content\nhave been detected in a frame, the likelihood is set to `UNKNOWN`\nfor all other types of unsafe content.",
"type": "object",
+ "properties": {
+ "timeOffset": {
+ "format": "int64",
+ "description": "Video time offset in microseconds.",
+ "type": "string"
+ },
+ "spoof": {
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Likelihood that an obvious modification was made to the original\nversion to make it appear funny or offensive.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "Very unlikely.",
+ "Unlikely.",
+ "Possible.",
+ "Likely.",
+ "Very likely."
+ ]
+ },
+ "violent": {
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "Very unlikely.",
+ "Unlikely.",
+ "Possible.",
+ "Likely.",
+ "Very likely."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Likelihood of violent content.",
+ "type": "string"
+ },
+ "medical": {
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "Very unlikely.",
+ "Unlikely.",
+ "Possible.",
+ "Likely.",
+ "Very likely."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Likelihood of medical content.",
+ "type": "string"
+ },
+ "adult": {
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Likelihood of adult content.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "Very unlikely.",
+ "Unlikely.",
+ "Possible.",
+ "Likely.",
+ "Very likely."
+ ]
+ },
+ "racy": {
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Likelihood of racy content.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "Very unlikely.",
+ "Unlikely.",
+ "Possible.",
+ "Likely.",
+ "Very likely."
+ ]
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation"
+ },
+ "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress": {
+ "description": "Video annotation progress. Included in the `metadata`\nfield of the `Operation` returned by the `GetOperation`\ncall of the `google::longrunning::Operations` service.",
+ "type": "object",
+ "properties": {
+ "annotationProgress": {
+ "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.",
+ "items": {
+ "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress"
+ },
+ "type": "array"
+ }
+ },
+ "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress"
+ },
+ "GoogleCloudVideointelligenceV1_VideoAnnotationProgress": {
"properties": {
"updateTime": {
- "description": "Time of the most recent update.",
"format": "google-datetime",
+ "description": "Time of the most recent update.",
"type": "string"
},
"startTime": {
- "description": "Time when the request was received.",
"format": "google-datetime",
+ "description": "Time when the request was received.",
"type": "string"
},
"inputUri": {
@@ -277,38 +617,13 @@
"type": "string"
},
"progressPercent": {
+ "format": "int32",
"description": "Approximate percentage processed thus far.\nGuaranteed to be 100 when fully processed.",
- "format": "int32",
"type": "integer"
}
},
- "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress"
- },
- "GoogleRpc_Status": {
- "properties": {
- "code": {
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "format": "int32",
- "type": "integer"
- },
- "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"
- },
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "type": "array",
- "items": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "type": "object"
- }
- }
- },
- "id": "GoogleRpc_Status",
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress",
+ "description": "Annotation progress for a single video.",
"type": "object"
}
},
@@ -337,47 +652,57 @@
"videos": {
"methods": {
"annotate": {
- "flatPath": "v1beta1/videos:annotate",
- "id": "videointelligence.videos.annotate",
- "path": "v1beta1/videos:annotate",
"request": {
"$ref": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest"
},
"description": "Performs asynchronous video annotation. Progress and results can be\nretrieved through the `google.longrunning.Operations` interface.\n`Operation.metadata` contains `AnnotateVideoProgress` (progress).\n`Operation.response` contains `AnnotateVideoResponse` (results).",
- "httpMethod": "POST",
- "parameterOrder": [],
"response": {
"$ref": "GoogleLongrunning_Operation"
},
- "parameters": {},
+ "parameterOrder": [],
+ "httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
- ]
+ ],
+ "parameters": {},
+ "flatPath": "v1beta1/videos:annotate",
+ "id": "videointelligence.videos.annotate",
+ "path": "v1beta1/videos:annotate"
}
}
}
},
"parameters": {
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
+ "location": "query"
+ },
+ "oauth_token": {
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string",
+ "location": "query"
+ },
"upload_protocol": {
- "location": "query",
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"prettyPrint": {
+ "location": "query",
"description": "Returns response with indentations and line breaks.",
- "type": "boolean",
"default": "true",
- "location": "query"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string",
- "location": "query"
+ "type": "boolean"
},
"fields": {
+ "location": "query",
"description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
+ "type": "string"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
},
"$.xgafv": {
"enumDescriptions": [
@@ -398,8 +723,6 @@
"type": "string"
},
"alt": {
- "description": "Data format for response.",
- "default": "json",
"enum": [
"json",
"media",
@@ -411,7 +734,9 @@
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
- "location": "query"
+ "location": "query",
+ "description": "Data format for response.",
+ "default": "json"
},
"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.",
@@ -424,25 +749,24 @@
"location": "query"
},
"quotaUser": {
- "location": "query",
"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.",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"pp": {
+ "location": "query",
"description": "Pretty-print response.",
- "type": "boolean",
"default": "true",
- "location": "query"
- },
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
- "type": "string",
- "location": "query"
+ "type": "boolean"
}
- }
+ },
+ "version": "v1beta1",
+ "baseUrl": "https://videointelligence.googleapis.com/",
+ "servicePath": "",
+ "description": "Google Cloud Video Intelligence API.",
+ "kind": "discovery#restDescription",
+ "basePath": "",
+ "revision": "20170807",
+ "documentationLink": "https://cloud.google.com/video-intelligence/docs/",
+ "id": "videointelligence:v1beta1"
}
diff --git a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go
index 114f65e..c859de9 100644
--- a/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go
+++ b/vendor/google.golang.org/api/videointelligence/v1beta1/videointelligence-gen.go
@@ -84,6 +84,333 @@ type VideosService struct {
s *Service
}
+// GoogleCloudVideointelligenceV1AnnotateVideoProgress: Video annotation
+// progress. Included in the `metadata`
+// field of the `Operation` returned by the `GetOperation`
+// call of the `google::longrunning::Operations` service.
+type GoogleCloudVideointelligenceV1AnnotateVideoProgress struct {
+ // AnnotationProgress: Progress metadata for all videos specified in
+ // `AnnotateVideoRequest`.
+ AnnotationProgress []*GoogleCloudVideointelligenceV1VideoAnnotationProgress `json:"annotationProgress,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "AnnotationProgress")
+ // to unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "AnnotationProgress") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1AnnotateVideoProgress) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1AnnotateVideoProgress
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudVideointelligenceV1AnnotateVideoResponse: Video annotation
+// response. Included in the `response`
+// field of the `Operation` returned by the `GetOperation`
+// call of the `google::longrunning::Operations` service.
+type GoogleCloudVideointelligenceV1AnnotateVideoResponse struct {
+ // AnnotationResults: Annotation results for all videos specified in
+ // `AnnotateVideoRequest`.
+ AnnotationResults []*GoogleCloudVideointelligenceV1VideoAnnotationResults `json:"annotationResults,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "AnnotationResults")
+ // to unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "AnnotationResults") to
+ // include in API requests with the JSON null value. By default, fields
+ // with empty values are omitted from API requests. However, any field
+ // with an empty value appearing in NullFields will be sent to the
+ // server as null. It is an error if a field in this list has a
+ // non-empty value. This may be used to include null fields in Patch
+ // requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1AnnotateVideoResponse) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1AnnotateVideoResponse
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudVideointelligenceV1LabelAnnotation: Label annotation.
+type GoogleCloudVideointelligenceV1LabelAnnotation struct {
+ // Description: Textual description, e.g. `Fixed-gear bicycle`.
+ Description string `json:"description,omitempty"`
+
+ // LanguageCode: Language code for `description` in BCP-47 format.
+ LanguageCode string `json:"languageCode,omitempty"`
+
+ // Locations: Where the label was detected and with what confidence.
+ Locations []*GoogleCloudVideointelligenceV1LabelLocation `json:"locations,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Description") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Description") to include
+ // in API requests with the JSON null value. By default, fields with
+ // empty values are omitted from API requests. However, any field with
+ // an empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1LabelAnnotation) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1LabelAnnotation
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudVideointelligenceV1LabelLocation: Label location.
+type GoogleCloudVideointelligenceV1LabelLocation struct {
+ // Confidence: Confidence that the label is accurate. Range: [0, 1].
+ Confidence float64 `json:"confidence,omitempty"`
+
+ // Level: Label level.
+ //
+ // Possible values:
+ // "LABEL_LEVEL_UNSPECIFIED" - Unspecified.
+ // "VIDEO_LEVEL" - Video-level. Corresponds to the whole video.
+ // "SEGMENT_LEVEL" - Segment-level. Corresponds to one of
+ // `AnnotateSpec.segments`.
+ // "SHOT_LEVEL" - Shot-level. Corresponds to a single shot (i.e. a
+ // series of frames
+ // without a major camera position or background change).
+ // "FRAME_LEVEL" - Frame-level. Corresponds to a single video frame.
+ Level string `json:"level,omitempty"`
+
+ // Segment: Video segment. Unset for video-level labels.
+ // Set to a frame timestamp for frame-level labels.
+ // Otherwise, corresponds to one of `AnnotateSpec.segments`
+ // (if specified) or to shot boundaries (if requested).
+ Segment *GoogleCloudVideointelligenceV1VideoSegment `json:"segment,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Confidence") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Confidence") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1LabelLocation) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1LabelLocation
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+func (s *GoogleCloudVideointelligenceV1LabelLocation) UnmarshalJSON(data []byte) error {
+ type noMethod GoogleCloudVideointelligenceV1LabelLocation
+ var s1 struct {
+ Confidence gensupport.JSONFloat64 `json:"confidence"`
+ *noMethod
+ }
+ s1.noMethod = (*noMethod)(s)
+ if err := json.Unmarshal(data, &s1); err != nil {
+ return err
+ }
+ s.Confidence = float64(s1.Confidence)
+ return nil
+}
+
+// GoogleCloudVideointelligenceV1SafeSearchAnnotation: Safe search
+// annotation (based on per-frame visual signals only).
+// If no unsafe content has been detected in a frame, no annotations
+// are present for that frame.
+type GoogleCloudVideointelligenceV1SafeSearchAnnotation struct {
+ // Adult: Likelihood of adult content.
+ //
+ // Possible values:
+ // "UNKNOWN" - Unknown likelihood.
+ // "VERY_UNLIKELY" - Very unlikely.
+ // "UNLIKELY" - Unlikely.
+ // "POSSIBLE" - Possible.
+ // "LIKELY" - Likely.
+ // "VERY_LIKELY" - Very likely.
+ Adult string `json:"adult,omitempty"`
+
+ // Time: Time-offset, relative to the beginning of the
+ // video,
+ // corresponding to the video frame for this annotation.
+ Time string `json:"time,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Adult") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Adult") to include in API
+ // requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1SafeSearchAnnotation) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1SafeSearchAnnotation
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudVideointelligenceV1VideoAnnotationProgress: Annotation
+// progress for a single video.
+type GoogleCloudVideointelligenceV1VideoAnnotationProgress struct {
+ // InputUri: Video file location in
+ // [Google Cloud Storage](https://cloud.google.com/storage/).
+ InputUri string `json:"inputUri,omitempty"`
+
+ // ProgressPercent: Approximate percentage processed thus
+ // far.
+ // Guaranteed to be 100 when fully processed.
+ ProgressPercent int64 `json:"progressPercent,omitempty"`
+
+ // StartTime: Time when the request was received.
+ StartTime string `json:"startTime,omitempty"`
+
+ // UpdateTime: Time of the most recent update.
+ UpdateTime string `json:"updateTime,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "InputUri") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "InputUri") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1VideoAnnotationProgress) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1VideoAnnotationProgress
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudVideointelligenceV1VideoAnnotationResults: Annotation
+// results for a single video.
+type GoogleCloudVideointelligenceV1VideoAnnotationResults struct {
+ // Error: If set, indicates an error. Note that for a single
+ // `AnnotateVideoRequest`
+ // some videos may succeed and some may fail.
+ Error *GoogleRpcStatus `json:"error,omitempty"`
+
+ // InputUri: Video file location in
+ // [Google Cloud Storage](https://cloud.google.com/storage/).
+ InputUri string `json:"inputUri,omitempty"`
+
+ // LabelAnnotations: Label annotations. There is exactly one element for
+ // each unique label.
+ LabelAnnotations []*GoogleCloudVideointelligenceV1LabelAnnotation `json:"labelAnnotations,omitempty"`
+
+ // SafeSearchAnnotations: Safe search annotations.
+ SafeSearchAnnotations []*GoogleCloudVideointelligenceV1SafeSearchAnnotation `json:"safeSearchAnnotations,omitempty"`
+
+ // ShotAnnotations: Shot annotations. Each shot is represented as a
+ // video segment.
+ ShotAnnotations []*GoogleCloudVideointelligenceV1VideoSegment `json:"shotAnnotations,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Error") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Error") to include in API
+ // requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1VideoAnnotationResults) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1VideoAnnotationResults
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
+// GoogleCloudVideointelligenceV1VideoSegment: Video segment.
+type GoogleCloudVideointelligenceV1VideoSegment struct {
+ // EndTime: Time-offset, relative to the beginning of the
+ // video,
+ // corresponding to the end of the segment (inclusive).
+ EndTime string `json:"endTime,omitempty"`
+
+ // StartTime: Time-offset, relative to the beginning of the
+ // video,
+ // corresponding to the start of the segment (inclusive).
+ StartTime string `json:"startTime,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "EndTime") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "EndTime") to include in
+ // API requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1VideoSegment) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1VideoSegment
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// GoogleCloudVideointelligenceV1beta1AnnotateVideoProgress: Video
// annotation progress. Included in the `metadata`
// field of the `Operation` returned by the `GetOperation`
@@ -127,6 +454,7 @@ type GoogleCloudVideointelligenceV1beta1AnnotateVideoRequest struct {
// "LABEL_DETECTION" - Label detection. Detect objects, such as dog or
// flower.
// "SHOT_CHANGE_DETECTION" - Shot change detection.
+ // "SAFE_SEARCH_DETECTION" - Safe search detection.
Features []string `json:"features,omitempty"`
// InputContent: The video data bytes. Encoding: base64. If unset, the
@@ -329,6 +657,96 @@ func (s *GoogleCloudVideointelligenceV1beta1LabelLocation) UnmarshalJSON(data []
return nil
}
+// GoogleCloudVideointelligenceV1beta1SafeSearchAnnotation: Safe search
+// annotation (based on per-frame visual signals only).
+// If no unsafe content has been detected in a frame, no annotations
+// are present for that frame. If only some types of unsafe content
+// have been detected in a frame, the likelihood is set to `UNKNOWN`
+// for all other types of unsafe content.
+type GoogleCloudVideointelligenceV1beta1SafeSearchAnnotation struct {
+ // Adult: Likelihood of adult content.
+ //
+ // Possible values:
+ // "UNKNOWN" - Unknown likelihood.
+ // "VERY_UNLIKELY" - Very unlikely.
+ // "UNLIKELY" - Unlikely.
+ // "POSSIBLE" - Possible.
+ // "LIKELY" - Likely.
+ // "VERY_LIKELY" - Very likely.
+ Adult string `json:"adult,omitempty"`
+
+ // Medical: Likelihood of medical content.
+ //
+ // Possible values:
+ // "UNKNOWN" - Unknown likelihood.
+ // "VERY_UNLIKELY" - Very unlikely.
+ // "UNLIKELY" - Unlikely.
+ // "POSSIBLE" - Possible.
+ // "LIKELY" - Likely.
+ // "VERY_LIKELY" - Very likely.
+ Medical string `json:"medical,omitempty"`
+
+ // Racy: Likelihood of racy content.
+ //
+ // Possible values:
+ // "UNKNOWN" - Unknown likelihood.
+ // "VERY_UNLIKELY" - Very unlikely.
+ // "UNLIKELY" - Unlikely.
+ // "POSSIBLE" - Possible.
+ // "LIKELY" - Likely.
+ // "VERY_LIKELY" - Very likely.
+ Racy string `json:"racy,omitempty"`
+
+ // Spoof: Likelihood that an obvious modification was made to the
+ // original
+ // version to make it appear funny or offensive.
+ //
+ // Possible values:
+ // "UNKNOWN" - Unknown likelihood.
+ // "VERY_UNLIKELY" - Very unlikely.
+ // "UNLIKELY" - Unlikely.
+ // "POSSIBLE" - Possible.
+ // "LIKELY" - Likely.
+ // "VERY_LIKELY" - Very likely.
+ Spoof string `json:"spoof,omitempty"`
+
+ // TimeOffset: Video time offset in microseconds.
+ TimeOffset int64 `json:"timeOffset,omitempty,string"`
+
+ // Violent: Likelihood of violent content.
+ //
+ // Possible values:
+ // "UNKNOWN" - Unknown likelihood.
+ // "VERY_UNLIKELY" - Very unlikely.
+ // "UNLIKELY" - Unlikely.
+ // "POSSIBLE" - Possible.
+ // "LIKELY" - Likely.
+ // "VERY_LIKELY" - Very likely.
+ Violent string `json:"violent,omitempty"`
+
+ // ForceSendFields is a list of field names (e.g. "Adult") to
+ // unconditionally include in API requests. By default, fields with
+ // empty values are omitted from API requests. However, any non-pointer,
+ // non-interface field appearing in ForceSendFields will be sent to the
+ // server regardless of whether the field is empty or not. This may be
+ // used to include empty fields in Patch requests.
+ ForceSendFields []string `json:"-"`
+
+ // NullFields is a list of field names (e.g. "Adult") to include in API
+ // requests with the JSON null value. By default, fields with empty
+ // values are omitted from API requests. However, any field with an
+ // empty value appearing in NullFields will be sent to the server as
+ // null. It is an error if a field in this list has a non-empty value.
+ // This may be used to include null fields in Patch requests.
+ NullFields []string `json:"-"`
+}
+
+func (s *GoogleCloudVideointelligenceV1beta1SafeSearchAnnotation) MarshalJSON() ([]byte, error) {
+ type noMethod GoogleCloudVideointelligenceV1beta1SafeSearchAnnotation
+ raw := noMethod(*s)
+ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
+}
+
// GoogleCloudVideointelligenceV1beta1VideoAnnotationProgress:
// Annotation progress for a single video.
type GoogleCloudVideointelligenceV1beta1VideoAnnotationProgress struct {
@@ -386,6 +804,9 @@ type GoogleCloudVideointelligenceV1beta1VideoAnnotationResults struct {
// each unique label.
LabelAnnotations []*GoogleCloudVideointelligenceV1beta1LabelAnnotation `json:"labelAnnotations,omitempty"`
+ // SafeSearchAnnotations: Safe search annotations.
+ SafeSearchAnnotations []*GoogleCloudVideointelligenceV1beta1SafeSearchAnnotation `json:"safeSearchAnnotations,omitempty"`
+
// ShotAnnotations: Shot annotations. Each shot is represented as a
// video segment.
ShotAnnotations []*GoogleCloudVideointelligenceV1beta1VideoSegment `json:"shotAnnotations,omitempty"`
@@ -434,6 +855,11 @@ type GoogleCloudVideointelligenceV1beta1VideoContext struct {
// Supported values: "latest" and "stable" (the default).
LabelDetectionModel string `json:"labelDetectionModel,omitempty"`
+ // SafeSearchDetectionModel: Model to use for safe search
+ // detection.
+ // Supported values: "latest" and "stable" (the default).
+ SafeSearchDetectionModel string `json:"safeSearchDetectionModel,omitempty"`
+
// Segments: Video segments to annotate. The segments may overlap and
// are not required
// to be contiguous or span the whole video. If unspecified, each
@@ -446,6 +872,12 @@ type GoogleCloudVideointelligenceV1beta1VideoContext struct {
// Supported values: "latest" and "stable" (the default).
ShotChangeDetectionModel string `json:"shotChangeDetectionModel,omitempty"`
+ // StationaryCamera: Whether the video has been shot from a stationary
+ // (i.e. non-moving) camera.
+ // When set to true, might improve detection accuracy for moving
+ // objects.
+ StationaryCamera bool `json:"stationaryCamera,omitempty"`
+
// ForceSendFields is a list of field names (e.g. "LabelDetectionMode")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
@@ -661,9 +1093,9 @@ type GoogleRpcStatus struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
diff --git a/vendor/google.golang.org/api/vision/v1/vision-api.json b/vendor/google.golang.org/api/vision/v1/vision-api.json
index eeff5cf..3ec9db0 100644
--- a/vendor/google.golang.org/api/vision/v1/vision-api.json
+++ b/vendor/google.golang.org/api/vision/v1/vision-api.json
@@ -1,135 +1,706 @@
{
- "title": "Google Cloud Vision API",
- "ownerName": "Google",
- "resources": {
- "images": {
- "methods": {
- "annotate": {
- "path": "v1/images:annotate",
- "id": "vision.images.annotate",
- "description": "Run image detection and annotation for a batch of images.",
- "request": {
- "$ref": "BatchAnnotateImagesRequest"
- },
- "response": {
- "$ref": "BatchAnnotateImagesResponse"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/cloud-platform"
- ],
- "parameters": {},
- "flatPath": "v1/images:annotate"
- }
- }
- }
- },
- "parameters": {
- "access_token": {
- "location": "query",
- "description": "OAuth access token.",
- "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.",
- "type": "string",
- "location": "query"
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "pp": {
- "location": "query",
- "description": "Pretty-print response.",
- "type": "boolean",
- "default": "true"
- },
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
- },
- "bearer_token": {
- "location": "query",
- "description": "OAuth bearer token.",
- "type": "string"
- },
- "upload_protocol": {
- "location": "query",
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "type": "string"
- },
- "prettyPrint": {
- "description": "Returns response with indentations and line breaks.",
- "type": "boolean",
- "default": "true",
- "location": "query"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "type": "string",
- "location": "query"
- },
- "uploadType": {
- "location": "query",
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "type": "string"
- },
- "$.xgafv": {
- "enum": [
- "1",
- "2"
- ],
- "description": "V1 error format.",
- "type": "string",
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query"
- },
- "callback": {
- "location": "query",
- "description": "JSONP",
- "type": "string"
- },
- "alt": {
- "description": "Data format for response.",
- "default": "json",
- "enum": [
- "json",
- "media",
- "proto"
- ],
- "type": "string",
- "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"
- }
- },
- "version": "v1",
- "baseUrl": "https://vision.googleapis.com/",
- "servicePath": "",
- "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.",
- "kind": "discovery#restDescription",
- "basePath": "",
- "revision": "20170523",
"id": "vision:v1",
"documentationLink": "https://cloud.google.com/vision/",
+ "revision": "20170821",
"discoveryVersion": "v1",
- "version_module": "True",
+ "version_module": true,
"schemas": {
+ "Page": {
+ "description": "Detected page from OCR.",
+ "type": "object",
+ "properties": {
+ "width": {
+ "format": "int32",
+ "description": "Page width in pixels.",
+ "type": "integer"
+ },
+ "blocks": {
+ "description": "List of blocks of text, images etc on this page.",
+ "items": {
+ "$ref": "Block"
+ },
+ "type": "array"
+ },
+ "property": {
+ "description": "Additional information detected on the page.",
+ "$ref": "TextProperty"
+ },
+ "height": {
+ "format": "int32",
+ "description": "Page height in pixels.",
+ "type": "integer"
+ }
+ },
+ "id": "Page"
+ },
+ "AnnotateImageRequest": {
+ "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.",
+ "type": "object",
+ "properties": {
+ "features": {
+ "description": "Requested features.",
+ "items": {
+ "$ref": "Feature"
+ },
+ "type": "array"
+ },
+ "image": {
+ "description": "The image to be processed.",
+ "$ref": "Image"
+ },
+ "imageContext": {
+ "$ref": "ImageContext",
+ "description": "Additional context that may accompany the image."
+ }
+ },
+ "id": "AnnotateImageRequest"
+ },
+ "Status": {
+ "properties": {
+ "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"
+ },
+ "code": {
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code.",
+ "type": "integer"
+ },
+ "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"
+ }
+ },
+ "id": "Status",
+ "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
+ "type": "object"
+ },
+ "Symbol": {
+ "properties": {
+ "property": {
+ "$ref": "TextProperty",
+ "description": "Additional information detected for the symbol."
+ },
+ "boundingBox": {
+ "description": "The bounding box for the symbol.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3).",
+ "$ref": "BoundingPoly"
+ },
+ "text": {
+ "description": "The actual UTF-8 representation of the symbol.",
+ "type": "string"
+ }
+ },
+ "id": "Symbol",
+ "description": "A single symbol representation.",
+ "type": "object"
+ },
+ "LatLongRect": {
+ "description": "Rectangle determined by min and max `LatLng` pairs.",
+ "type": "object",
+ "properties": {
+ "minLatLng": {
+ "$ref": "LatLng",
+ "description": "Min lat/long pair."
+ },
+ "maxLatLng": {
+ "$ref": "LatLng",
+ "description": "Max lat/long pair."
+ }
+ },
+ "id": "LatLongRect"
+ },
+ "CropHintsAnnotation": {
+ "properties": {
+ "cropHints": {
+ "description": "Crop hint results.",
+ "items": {
+ "$ref": "CropHint"
+ },
+ "type": "array"
+ }
+ },
+ "id": "CropHintsAnnotation",
+ "description": "Set of crop hints that are used to generate new crops when serving images.",
+ "type": "object"
+ },
+ "LatLng": {
+ "properties": {
+ "latitude": {
+ "format": "double",
+ "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].",
+ "type": "number"
+ },
+ "longitude": {
+ "format": "double",
+ "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].",
+ "type": "number"
+ }
+ },
+ "id": "LatLng",
+ "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)",
+ "type": "object"
+ },
+ "Color": {
+ "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...",
+ "type": "object",
+ "properties": {
+ "red": {
+ "format": "float",
+ "description": "The amount of red in the color as a value in the interval [0, 1].",
+ "type": "number"
+ },
+ "alpha": {
+ "format": "float",
+ "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).",
+ "type": "number"
+ },
+ "blue": {
+ "format": "float",
+ "description": "The amount of blue in the color as a value in the interval [0, 1].",
+ "type": "number"
+ },
+ "green": {
+ "format": "float",
+ "description": "The amount of green in the color as a value in the interval [0, 1].",
+ "type": "number"
+ }
+ },
+ "id": "Color"
+ },
+ "ImageProperties": {
+ "properties": {
+ "dominantColors": {
+ "$ref": "DominantColorsAnnotation",
+ "description": "If present, dominant colors completed successfully."
+ }
+ },
+ "id": "ImageProperties",
+ "description": "Stores image properties, such as dominant colors.",
+ "type": "object"
+ },
+ "Feature": {
+ "properties": {
+ "maxResults": {
+ "format": "int32",
+ "description": "Maximum number of results of this type.",
+ "type": "integer"
+ },
+ "type": {
+ "enumDescriptions": [
+ "Unspecified feature type.",
+ "Run face detection.",
+ "Run landmark detection.",
+ "Run logo detection.",
+ "Run label detection.",
+ "Run OCR.",
+ "Run dense text document OCR. Takes precedence when both\nDOCUMENT_TEXT_DETECTION and TEXT_DETECTION are present.",
+ "Run computer vision models to compute image safe-search properties.",
+ "Compute a set of image properties, such as the image's dominant colors.",
+ "Run crop hints.",
+ "Run web detection."
+ ],
+ "enum": [
+ "TYPE_UNSPECIFIED",
+ "FACE_DETECTION",
+ "LANDMARK_DETECTION",
+ "LOGO_DETECTION",
+ "LABEL_DETECTION",
+ "TEXT_DETECTION",
+ "DOCUMENT_TEXT_DETECTION",
+ "SAFE_SEARCH_DETECTION",
+ "IMAGE_PROPERTIES",
+ "CROP_HINTS",
+ "WEB_DETECTION"
+ ],
+ "description": "The feature type.",
+ "type": "string"
+ }
+ },
+ "id": "Feature",
+ "description": "Users describe the type of Google Cloud Vision API tasks to perform over\nimages by using *Feature*s. Each Feature indicates a type of image\ndetection task to perform. Features encode the Cloud Vision API\nvertical to operate on and the number of top-scoring results to return.",
+ "type": "object"
+ },
+ "SafeSearchAnnotation": {
+ "properties": {
+ "adult": {
+ "description": "Represents the adult content likelihood for the image.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "It is very unlikely that the image belongs to the specified vertical.",
+ "It is unlikely that the image belongs to the specified vertical.",
+ "It is possible that the image belongs to the specified vertical.",
+ "It is likely that the image belongs to the specified vertical.",
+ "It is very likely that the image belongs to the specified vertical."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ]
+ },
+ "spoof": {
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "It is very unlikely that the image belongs to the specified vertical.",
+ "It is unlikely that the image belongs to the specified vertical.",
+ "It is possible that the image belongs to the specified vertical.",
+ "It is likely that the image belongs to the specified vertical.",
+ "It is very likely that the image belongs to the specified vertical."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.",
+ "type": "string"
+ },
+ "medical": {
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "It is very unlikely that the image belongs to the specified vertical.",
+ "It is unlikely that the image belongs to the specified vertical.",
+ "It is possible that the image belongs to the specified vertical.",
+ "It is likely that the image belongs to the specified vertical.",
+ "It is very likely that the image belongs to the specified vertical."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Likelihood that this is a medical image.",
+ "type": "string"
+ },
+ "violence": {
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ],
+ "description": "Violence likelihood.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "It is very unlikely that the image belongs to the specified vertical.",
+ "It is unlikely that the image belongs to the specified vertical.",
+ "It is possible that the image belongs to the specified vertical.",
+ "It is likely that the image belongs to the specified vertical.",
+ "It is very likely that the image belongs to the specified vertical."
+ ]
+ }
+ },
+ "id": "SafeSearchAnnotation",
+ "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).",
+ "type": "object"
+ },
+ "DominantColorsAnnotation": {
+ "description": "Set of dominant colors and their corresponding scores.",
+ "type": "object",
+ "properties": {
+ "colors": {
+ "description": "RGB color values with their score and pixel fraction.",
+ "items": {
+ "$ref": "ColorInfo"
+ },
+ "type": "array"
+ }
+ },
+ "id": "DominantColorsAnnotation"
+ },
+ "TextAnnotation": {
+ "description": "TextAnnotation contains a structured representation of OCR extracted text.\nThe hierarchy of an OCR extracted text structure is like this:\n TextAnnotation -\u003e Page -\u003e Block -\u003e Paragraph -\u003e Word -\u003e Symbol\nEach structural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc.. Please\nrefer to the google.cloud.vision.v1.TextAnnotation.TextProperty message\ndefinition below for more detail.",
+ "type": "object",
+ "properties": {
+ "pages": {
+ "description": "List of pages detected by OCR.",
+ "items": {
+ "$ref": "Page"
+ },
+ "type": "array"
+ },
+ "text": {
+ "description": "UTF-8 text detected on the pages.",
+ "type": "string"
+ }
+ },
+ "id": "TextAnnotation"
+ },
+ "Vertex": {
+ "description": "A vertex represents a 2D point in the image.\nNOTE: the vertex coordinates are in the same scale as the original image.",
+ "type": "object",
+ "properties": {
+ "y": {
+ "format": "int32",
+ "description": "Y coordinate.",
+ "type": "integer"
+ },
+ "x": {
+ "format": "int32",
+ "description": "X coordinate.",
+ "type": "integer"
+ }
+ },
+ "id": "Vertex"
+ },
+ "DetectedLanguage": {
+ "description": "Detected language for a structural component.",
+ "type": "object",
+ "properties": {
+ "languageCode": {
+ "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.",
+ "type": "string"
+ },
+ "confidence": {
+ "format": "float",
+ "description": "Confidence of detected language. Range [0, 1].",
+ "type": "number"
+ }
+ },
+ "id": "DetectedLanguage"
+ },
+ "TextProperty": {
+ "description": "Additional information detected on the structural component.",
+ "type": "object",
+ "properties": {
+ "detectedLanguages": {
+ "description": "A list of detected languages together with confidence.",
+ "items": {
+ "$ref": "DetectedLanguage"
+ },
+ "type": "array"
+ },
+ "detectedBreak": {
+ "description": "Detected start or end of a text segment.",
+ "$ref": "DetectedBreak"
+ }
+ },
+ "id": "TextProperty"
+ },
+ "WebEntity": {
+ "properties": {
+ "description": {
+ "description": "Canonical description of the entity, in English.",
+ "type": "string"
+ },
+ "score": {
+ "format": "float",
+ "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.",
+ "type": "number"
+ },
+ "entityId": {
+ "description": "Opaque entity ID.",
+ "type": "string"
+ }
+ },
+ "id": "WebEntity",
+ "description": "Entity deduced from similar images on the Internet.",
+ "type": "object"
+ },
+ "BoundingPoly": {
+ "description": "A bounding polygon for the detected image annotation.",
+ "type": "object",
+ "properties": {
+ "vertices": {
+ "description": "The bounding polygon vertices.",
+ "items": {
+ "$ref": "Vertex"
+ },
+ "type": "array"
+ }
+ },
+ "id": "BoundingPoly"
+ },
+ "AnnotateImageResponse": {
+ "description": "Response to an image annotation request.",
+ "type": "object",
+ "properties": {
+ "safeSearchAnnotation": {
+ "description": "If present, safe-search annotation has completed successfully.",
+ "$ref": "SafeSearchAnnotation"
+ },
+ "labelAnnotations": {
+ "description": "If present, label detection has completed successfully.",
+ "items": {
+ "$ref": "EntityAnnotation"
+ },
+ "type": "array"
+ },
+ "error": {
+ "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set.",
+ "$ref": "Status"
+ },
+ "fullTextAnnotation": {
+ "$ref": "TextAnnotation",
+ "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext."
+ },
+ "landmarkAnnotations": {
+ "description": "If present, landmark detection has completed successfully.",
+ "items": {
+ "$ref": "EntityAnnotation"
+ },
+ "type": "array"
+ },
+ "textAnnotations": {
+ "description": "If present, text (OCR) detection has completed successfully.",
+ "items": {
+ "$ref": "EntityAnnotation"
+ },
+ "type": "array"
+ },
+ "imagePropertiesAnnotation": {
+ "description": "If present, image properties were extracted successfully.",
+ "$ref": "ImageProperties"
+ },
+ "faceAnnotations": {
+ "description": "If present, face detection has completed successfully.",
+ "items": {
+ "$ref": "FaceAnnotation"
+ },
+ "type": "array"
+ },
+ "logoAnnotations": {
+ "description": "If present, logo detection has completed successfully.",
+ "items": {
+ "$ref": "EntityAnnotation"
+ },
+ "type": "array"
+ },
+ "webDetection": {
+ "$ref": "WebDetection",
+ "description": "If present, web detection has completed successfully."
+ },
+ "cropHintsAnnotation": {
+ "$ref": "CropHintsAnnotation",
+ "description": "If present, crop hints have completed successfully."
+ }
+ },
+ "id": "AnnotateImageResponse"
+ },
+ "CropHintsParams": {
+ "description": "Parameters for crop hints annotation request.",
+ "type": "object",
+ "properties": {
+ "aspectRatios": {
+ "description": "Aspect ratios in floats, representing the ratio of the width to the height\nof the image. For example, if the desired aspect ratio is 4/3, the\ncorresponding float value should be 1.33333. If not specified, the\nbest possible crop is returned. The number of provided aspect ratios is\nlimited to a maximum of 16; any aspect ratios provided after the 16th are\nignored.",
+ "items": {
+ "format": "float",
+ "type": "number"
+ },
+ "type": "array"
+ }
+ },
+ "id": "CropHintsParams"
+ },
+ "Block": {
+ "description": "Logical element on the page.",
+ "type": "object",
+ "properties": {
+ "property": {
+ "description": "Additional information detected for the block.",
+ "$ref": "TextProperty"
+ },
+ "blockType": {
+ "description": "Detected block type (text, image etc) for this block.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown block type.",
+ "Regular text block.",
+ "Table block.",
+ "Image block.",
+ "Horizontal/vertical line box.",
+ "Barcode block."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "TEXT",
+ "TABLE",
+ "PICTURE",
+ "RULER",
+ "BARCODE"
+ ]
+ },
+ "boundingBox": {
+ "$ref": "BoundingPoly",
+ "description": "The bounding box for the block.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)."
+ },
+ "paragraphs": {
+ "description": "List of paragraphs in this block (if this blocks is of type text).",
+ "items": {
+ "$ref": "Paragraph"
+ },
+ "type": "array"
+ }
+ },
+ "id": "Block"
+ },
+ "WebDetection": {
+ "description": "Relevant information for the image from the Internet.",
+ "type": "object",
+ "properties": {
+ "fullMatchingImages": {
+ "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.",
+ "items": {
+ "$ref": "WebImage"
+ },
+ "type": "array"
+ },
+ "webEntities": {
+ "description": "Deduced entities from similar images on the Internet.",
+ "items": {
+ "$ref": "WebEntity"
+ },
+ "type": "array"
+ },
+ "pagesWithMatchingImages": {
+ "description": "Web pages containing the matching images from the Internet.",
+ "items": {
+ "$ref": "WebPage"
+ },
+ "type": "array"
+ },
+ "visuallySimilarImages": {
+ "description": "The visually similar image results.",
+ "items": {
+ "$ref": "WebImage"
+ },
+ "type": "array"
+ },
+ "partialMatchingImages": {
+ "description": "Partial matching images from the Internet.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its crops.",
+ "items": {
+ "$ref": "WebImage"
+ },
+ "type": "array"
+ }
+ },
+ "id": "WebDetection"
+ },
+ "BatchAnnotateImagesResponse": {
+ "properties": {
+ "responses": {
+ "description": "Individual responses to image annotation requests within the batch.",
+ "items": {
+ "$ref": "AnnotateImageResponse"
+ },
+ "type": "array"
+ }
+ },
+ "id": "BatchAnnotateImagesResponse",
+ "description": "Response to a batch image annotation request.",
+ "type": "object"
+ },
+ "ImageSource": {
+ "description": "External image source (Google Cloud Storage image location).",
+ "type": "object",
+ "properties": {
+ "gcsImageUri": {
+ "description": "NOTE: For new code `image_uri` below is preferred.\nGoogle Cloud Storage image URI, which must be in the following form:\n`gs://bucket_name/object_name` (for details, see\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris)).\nNOTE: Cloud Storage object versioning is not supported.",
+ "type": "string"
+ },
+ "imageUri": {
+ "description": "Image URI which supports:\n1) Google Cloud Storage image URI, which must be in the following form:\n`gs://bucket_name/object_name` (for details, see\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris)).\nNOTE: Cloud Storage object versioning is not supported.\n2) Publicly accessible image HTTP/HTTPS URL.\nThis is preferred over the legacy `gcs_image_uri` above. When both\n`gcs_image_uri` and `image_uri` are specified, `image_uri` takes\nprecedence.",
+ "type": "string"
+ }
+ },
+ "id": "ImageSource"
+ },
+ "LocationInfo": {
+ "description": "Detected entity location information.",
+ "type": "object",
+ "properties": {
+ "latLng": {
+ "$ref": "LatLng",
+ "description": "lat/long location coordinates."
+ }
+ },
+ "id": "LocationInfo"
+ },
+ "Property": {
+ "description": "A `Property` consists of a user-supplied name/value pair.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Value of the property.",
+ "type": "string"
+ },
+ "uint64Value": {
+ "format": "uint64",
+ "description": "Value of numeric properties.",
+ "type": "string"
+ },
+ "name": {
+ "description": "Name of the property.",
+ "type": "string"
+ }
+ },
+ "id": "Property"
+ },
+ "Position": {
+ "properties": {
+ "z": {
+ "format": "float",
+ "description": "Z coordinate (or depth).",
+ "type": "number"
+ },
+ "x": {
+ "format": "float",
+ "description": "X coordinate.",
+ "type": "number"
+ },
+ "y": {
+ "format": "float",
+ "description": "Y coordinate.",
+ "type": "number"
+ }
+ },
+ "id": "Position",
+ "description": "A 3D position in the image, used primarily for Face detection landmarks.\nA valid Position must have both x and y coordinates.\nThe position coordinates are in the same scale as the original image.",
+ "type": "object"
+ },
+ "WebPage": {
+ "description": "Metadata for web pages.",
+ "type": "object",
+ "properties": {
+ "score": {
+ "format": "float",
+ "description": "(Deprecated) Overall relevancy score for the web page.",
+ "type": "number"
+ },
+ "url": {
+ "description": "The result web page URL.",
+ "type": "string"
+ }
+ },
+ "id": "WebPage"
+ },
"ColorInfo": {
+ "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.",
+ "type": "object",
"properties": {
"pixelFraction": {
- "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].",
"format": "float",
+ "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].",
"type": "number"
},
"color": {
@@ -137,79 +708,61 @@
"$ref": "Color"
},
"score": {
+ "format": "float",
"description": "Image-specific score for this color. Value in range [0, 1].",
- "format": "float",
"type": "number"
}
},
- "id": "ColorInfo",
- "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.",
- "type": "object"
- },
- "WebPage": {
- "properties": {
- "url": {
- "description": "The result web page URL.",
- "type": "string"
- },
- "score": {
- "description": "Overall relevancy score for the web page.\nNot normalized and not comparable across different image queries.",
- "format": "float",
- "type": "number"
- }
- },
- "id": "WebPage",
- "description": "Metadata for web pages.",
- "type": "object"
+ "id": "ColorInfo"
},
"EntityAnnotation": {
"description": "Set of detected entity features.",
"type": "object",
"properties": {
- "confidence": {
- "description": "The accuracy of the entity detection in an image.\nFor example, for an image in which the \"Eiffel Tower\" entity is detected,\nthis field represents the confidence that there is a tower in the query\nimage. Range [0, 1].",
+ "description": {
+ "description": "Entity textual description, expressed in its `locale` language.",
+ "type": "string"
+ },
+ "topicality": {
"format": "float",
+ "description": "The relevancy of the ICA (Image Content Annotation) label to the\nimage. For example, the relevancy of \"tower\" is likely higher to an image\ncontaining the detected \"Eiffel Tower\" than to an image containing a\ndetected distant towering building, even though the confidence that\nthere is a tower in each image may be the same. Range [0, 1].",
"type": "number"
},
- "boundingPoly": {
- "$ref": "BoundingPoly",
- "description": "Image region to which this entity belongs. Currently not produced\nfor `LABEL_DETECTION` features. For `TEXT_DETECTION` (OCR), `boundingPoly`s\nare produced for the entire text detected in an image region, followed by\n`boundingPoly`s for each word within the detected text."
+ "properties": {
+ "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.",
+ "items": {
+ "$ref": "Property"
+ },
+ "type": "array"
+ },
+ "score": {
+ "format": "float",
+ "description": "Overall score of the result. Range [0, 1].",
+ "type": "number"
+ },
+ "locations": {
+ "description": "The location information for the detected entity. Multiple\n`LocationInfo` elements can be present because one location may\nindicate the location of the scene in the image, and another location\nmay indicate the location of the place where the image was taken.\nLocation information is usually present for landmarks.",
+ "items": {
+ "$ref": "LocationInfo"
+ },
+ "type": "array"
+ },
+ "mid": {
+ "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search API](https://developers.google.com/knowledge-graph/).",
+ "type": "string"
+ },
+ "confidence": {
+ "format": "float",
+ "description": "The accuracy of the entity detection in an image.\nFor example, for an image in which the \"Eiffel Tower\" entity is detected,\nthis field represents the confidence that there is a tower in the query\nimage. Range [0, 1].",
+ "type": "number"
},
"locale": {
"description": "The language code for the locale in which the entity textual\n`description` is expressed.",
"type": "string"
},
- "topicality": {
- "description": "The relevancy of the ICA (Image Content Annotation) label to the\nimage. For example, the relevancy of \"tower\" is likely higher to an image\ncontaining the detected \"Eiffel Tower\" than to an image containing a\ndetected distant towering building, even though the confidence that\nthere is a tower in each image may be the same. Range [0, 1].",
- "format": "float",
- "type": "number"
- },
- "description": {
- "description": "Entity textual description, expressed in its `locale` language.",
- "type": "string"
- },
- "properties": {
- "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.",
- "type": "array",
- "items": {
- "$ref": "Property"
- }
- },
- "score": {
- "description": "Overall score of the result. Range [0, 1].",
- "format": "float",
- "type": "number"
- },
- "locations": {
- "description": "The location information for the detected entity. Multiple\n`LocationInfo` elements can be present because one location may\nindicate the location of the scene in the image, and another location\nmay indicate the location of the place where the image was taken.\nLocation information is usually present for landmarks.",
- "type": "array",
- "items": {
- "$ref": "LocationInfo"
- }
- },
- "mid": {
- "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search API](https://developers.google.com/knowledge-graph/).",
- "type": "string"
+ "boundingPoly": {
+ "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features.",
+ "$ref": "BoundingPoly"
}
},
"id": "EntityAnnotation"
@@ -218,32 +771,32 @@
"description": "Single crop hint that is used to generate a new crop when serving an image.",
"type": "object",
"properties": {
- "confidence": {
- "description": "Confidence of this being a salient region. Range [0, 1].",
+ "importanceFraction": {
"format": "float",
+ "description": "Fraction of importance of this salient region with respect to the original\nimage.",
"type": "number"
},
- "importanceFraction": {
- "description": "Fraction of importance of this salient region with respect to the original\nimage.",
+ "confidence": {
"format": "float",
+ "description": "Confidence of this being a salient region. Range [0, 1].",
"type": "number"
},
"boundingPoly": {
- "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`.",
- "$ref": "BoundingPoly"
+ "$ref": "BoundingPoly",
+ "description": "The bounding polygon for the crop region. The coordinates of the bounding\nbox are in the original image's scale, as returned in `ImageParams`."
}
},
"id": "CropHint"
},
"Landmark": {
- "description": "A face-specific landmark (for example, a face feature).\nLandmark positions may fall outside the bounds of the image\nif the face is near one or more edges of the image.\nTherefore it is NOT guaranteed that `0 \u003c= x \u003c width` or\n`0 \u003c= y \u003c height`.",
- "type": "object",
"properties": {
"position": {
- "$ref": "Position",
- "description": "Face landmark position."
+ "description": "Face landmark position.",
+ "$ref": "Position"
},
"type": {
+ "description": "Face landmark type.",
+ "type": "string",
"enumDescriptions": [
"Unknown face landmark detected. Should not be filled.",
"Left eye.",
@@ -317,47 +870,47 @@
"CHIN_GNATHION",
"CHIN_LEFT_GONION",
"CHIN_RIGHT_GONION"
- ],
- "description": "Face landmark type.",
- "type": "string"
+ ]
}
},
- "id": "Landmark"
+ "id": "Landmark",
+ "description": "A face-specific landmark (for example, a face feature).\nLandmark positions may fall outside the bounds of the image\nif the face is near one or more edges of the image.\nTherefore it is NOT guaranteed that `0 \u003c= x \u003c width` or\n`0 \u003c= y \u003c height`.",
+ "type": "object"
},
"WebImage": {
+ "description": "Metadata for online images.",
+ "type": "object",
"properties": {
+ "score": {
+ "format": "float",
+ "description": "(Deprecated) Overall relevancy score for the image.",
+ "type": "number"
+ },
"url": {
"description": "The result image URL.",
"type": "string"
- },
- "score": {
- "description": "Overall relevancy score for the image.\nNot normalized and not comparable across different image queries.",
- "format": "float",
- "type": "number"
}
},
- "id": "WebImage",
- "description": "Metadata for online images.",
- "type": "object"
+ "id": "WebImage"
},
"Word": {
"description": "A word representation.",
"type": "object",
"properties": {
+ "symbols": {
+ "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.",
+ "items": {
+ "$ref": "Symbol"
+ },
+ "type": "array"
+ },
"property": {
- "$ref": "TextProperty",
- "description": "Additional information detected for the word."
+ "description": "Additional information detected for the word.",
+ "$ref": "TextProperty"
},
"boundingBox": {
"description": "The bounding box for the word.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3).",
"$ref": "BoundingPoly"
- },
- "symbols": {
- "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.",
- "type": "array",
- "items": {
- "$ref": "Symbol"
- }
}
},
"id": "Word"
@@ -366,60 +919,54 @@
"description": "Client image to perform Google Cloud Vision API tasks over.",
"type": "object",
"properties": {
- "content": {
- "description": "Image content, represented as a stream of bytes.\nNote: as with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.",
- "format": "byte",
- "type": "string"
- },
"source": {
- "$ref": "ImageSource",
- "description": "Google Cloud Storage image location. If both `content` and `source`\nare provided for an image, `content` takes precedence and is\nused to perform the image annotation request."
+ "description": "Google Cloud Storage image location. If both `content` and `source`\nare provided for an image, `content` takes precedence and is\nused to perform the image annotation request.",
+ "$ref": "ImageSource"
+ },
+ "content": {
+ "format": "byte",
+ "description": "Image content, represented as a stream of bytes.\nNote: as with all `bytes` fields, protobuffers use a pure binary\nrepresentation, whereas JSON representations use base64.",
+ "type": "string"
}
},
"id": "Image"
},
"Paragraph": {
+ "description": "Structural unit of text representing a number of words in certain order.",
+ "type": "object",
"properties": {
"property": {
- "$ref": "TextProperty",
- "description": "Additional information detected for the paragraph."
+ "description": "Additional information detected for the paragraph.",
+ "$ref": "TextProperty"
},
"boundingBox": {
- "description": "The bounding box for the paragraph.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3).",
- "$ref": "BoundingPoly"
+ "$ref": "BoundingPoly",
+ "description": "The bounding box for the paragraph.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)."
},
"words": {
"description": "List of words in this paragraph.",
- "type": "array",
"items": {
"$ref": "Word"
- }
+ },
+ "type": "array"
}
},
- "id": "Paragraph",
- "description": "Structural unit of text representing a number of words in certain order.",
- "type": "object"
+ "id": "Paragraph"
},
"FaceAnnotation": {
+ "description": "A face annotation object contains the results of face detection.",
+ "type": "object",
"properties": {
"tiltAngle": {
- "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].",
"format": "float",
+ "description": "Pitch angle, which indicates the upwards/downwards angle that the face is\npointing relative to the image's horizontal plane. Range [-180,180].",
"type": "number"
},
"fdBoundingPoly": {
- "$ref": "BoundingPoly",
- "description": "The `fd_bounding_poly` bounding polygon is tighter than the\n`boundingPoly`, and encloses only the skin part of the face. Typically, it\nis used to eliminate the face from any image analysis that detects the\n\"amount of skin\" visible in an image. It is not based on the\nlandmarker results, only on the initial face detection, hence\nthe \u003ccode\u003efd\u003c/code\u003e (face detection) prefix."
+ "description": "The `fd_bounding_poly` bounding polygon is tighter than the\n`boundingPoly`, and encloses only the skin part of the face. Typically, it\nis used to eliminate the face from any image analysis that detects the\n\"amount of skin\" visible in an image. It is not based on the\nlandmarker results, only on the initial face detection, hence\nthe \u003ccode\u003efd\u003c/code\u003e (face detection) prefix.",
+ "$ref": "BoundingPoly"
},
"surpriseLikelihood": {
- "enumDescriptions": [
- "Unknown likelihood.",
- "It is very unlikely that the image belongs to the specified vertical.",
- "It is unlikely that the image belongs to the specified vertical.",
- "It is possible that the image belongs to the specified vertical.",
- "It is likely that the image belongs to the specified vertical.",
- "It is very likely that the image belongs to the specified vertical."
- ],
"enum": [
"UNKNOWN",
"VERY_UNLIKELY",
@@ -429,18 +976,6 @@
"VERY_LIKELY"
],
"description": "Surprise likelihood.",
- "type": "string"
- },
- "angerLikelihood": {
- "enum": [
- "UNKNOWN",
- "VERY_UNLIKELY",
- "UNLIKELY",
- "POSSIBLE",
- "LIKELY",
- "VERY_LIKELY"
- ],
- "description": "Anger likelihood.",
"type": "string",
"enumDescriptions": [
"Unknown likelihood.",
@@ -453,17 +988,40 @@
},
"landmarks": {
"description": "Detected face landmarks.",
- "type": "array",
"items": {
"$ref": "Landmark"
- }
+ },
+ "type": "array"
},
- "landmarkingConfidence": {
- "description": "Face landmarking confidence. Range [0, 1].",
- "format": "float",
- "type": "number"
+ "angerLikelihood": {
+ "description": "Anger likelihood.",
+ "type": "string",
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "It is very unlikely that the image belongs to the specified vertical.",
+ "It is unlikely that the image belongs to the specified vertical.",
+ "It is possible that the image belongs to the specified vertical.",
+ "It is likely that the image belongs to the specified vertical.",
+ "It is very likely that the image belongs to the specified vertical."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
+ ]
},
"joyLikelihood": {
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "It is very unlikely that the image belongs to the specified vertical.",
+ "It is unlikely that the image belongs to the specified vertical.",
+ "It is possible that the image belongs to the specified vertical.",
+ "It is likely that the image belongs to the specified vertical.",
+ "It is very likely that the image belongs to the specified vertical."
+ ],
"enum": [
"UNKNOWN",
"VERY_UNLIKELY",
@@ -473,15 +1031,22 @@
"VERY_LIKELY"
],
"description": "Joy likelihood.",
- "type": "string",
- "enumDescriptions": [
- "Unknown likelihood.",
- "It is very unlikely that the image belongs to the specified vertical.",
- "It is unlikely that the image belongs to the specified vertical.",
- "It is possible that the image belongs to the specified vertical.",
- "It is likely that the image belongs to the specified vertical.",
- "It is very likely that the image belongs to the specified vertical."
- ]
+ "type": "string"
+ },
+ "landmarkingConfidence": {
+ "format": "float",
+ "description": "Face landmarking confidence. Range [0, 1].",
+ "type": "number"
+ },
+ "detectionConfidence": {
+ "format": "float",
+ "description": "Detection confidence. Range [0, 1].",
+ "type": "number"
+ },
+ "panAngle": {
+ "format": "float",
+ "description": "Yaw angle, which indicates the leftward/rightward angle that the face is\npointing relative to the vertical plane perpendicular to the image. Range\n[-180,180].",
+ "type": "number"
},
"underExposedLikelihood": {
"enumDescriptions": [
@@ -503,16 +1068,6 @@
"description": "Under-exposed likelihood.",
"type": "string"
},
- "panAngle": {
- "description": "Yaw angle, which indicates the leftward/rightward angle that the face is\npointing relative to the vertical plane perpendicular to the image. Range\n[-180,180].",
- "format": "float",
- "type": "number"
- },
- "detectionConfidence": {
- "description": "Detection confidence. Range [0, 1].",
- "format": "float",
- "type": "number"
- },
"blurredLikelihood": {
"enumDescriptions": [
"Unknown likelihood.",
@@ -534,6 +1089,14 @@
"type": "string"
},
"headwearLikelihood": {
+ "enumDescriptions": [
+ "Unknown likelihood.",
+ "It is very unlikely that the image belongs to the specified vertical.",
+ "It is unlikely that the image belongs to the specified vertical.",
+ "It is possible that the image belongs to the specified vertical.",
+ "It is likely that the image belongs to the specified vertical.",
+ "It is very likely that the image belongs to the specified vertical."
+ ],
"enum": [
"UNKNOWN",
"VERY_UNLIKELY",
@@ -543,34 +1106,18 @@
"VERY_LIKELY"
],
"description": "Headwear likelihood.",
- "type": "string",
- "enumDescriptions": [
- "Unknown likelihood.",
- "It is very unlikely that the image belongs to the specified vertical.",
- "It is unlikely that the image belongs to the specified vertical.",
- "It is possible that the image belongs to the specified vertical.",
- "It is likely that the image belongs to the specified vertical.",
- "It is very likely that the image belongs to the specified vertical."
- ]
+ "type": "string"
},
"boundingPoly": {
"description": "The bounding polygon around the face. The coordinates of the bounding box\nare in the original image's scale, as returned in `ImageParams`.\nThe bounding box is computed to \"frame\" the face in accordance with human\nexpectations. It is based on the landmarker results.\nNote that one or more x and/or y coordinates may not be generated in the\n`BoundingPoly` (the polygon will be unbounded) if only a partial face\nappears in the image to be annotated.",
"$ref": "BoundingPoly"
},
"rollAngle": {
- "description": "Roll angle, which indicates the amount of clockwise/anti-clockwise rotation\nof the face relative to the image vertical about the axis perpendicular to\nthe face. Range [-180,180].",
"format": "float",
+ "description": "Roll angle, which indicates the amount of clockwise/anti-clockwise rotation\nof the face relative to the image vertical about the axis perpendicular to\nthe face. Range [-180,180].",
"type": "number"
},
"sorrowLikelihood": {
- "enum": [
- "UNKNOWN",
- "VERY_UNLIKELY",
- "UNLIKELY",
- "POSSIBLE",
- "LIKELY",
- "VERY_LIKELY"
- ],
"description": "Sorrow likelihood.",
"type": "string",
"enumDescriptions": [
@@ -580,34 +1127,46 @@
"It is possible that the image belongs to the specified vertical.",
"It is likely that the image belongs to the specified vertical.",
"It is very likely that the image belongs to the specified vertical."
+ ],
+ "enum": [
+ "UNKNOWN",
+ "VERY_UNLIKELY",
+ "UNLIKELY",
+ "POSSIBLE",
+ "LIKELY",
+ "VERY_LIKELY"
]
}
},
- "id": "FaceAnnotation",
- "description": "A face annotation object contains the results of face detection.",
- "type": "object"
+ "id": "FaceAnnotation"
},
"BatchAnnotateImagesRequest": {
+ "description": "Multiple image annotation requests are batched into a single service call.",
+ "type": "object",
"properties": {
"requests": {
"description": "Individual image annotation requests for this batch.",
- "type": "array",
"items": {
"$ref": "AnnotateImageRequest"
- }
+ },
+ "type": "array"
}
},
- "id": "BatchAnnotateImagesRequest",
- "description": "Multiple image annotation requests are batched into a single service call.",
- "type": "object"
+ "id": "BatchAnnotateImagesRequest"
},
"DetectedBreak": {
+ "description": "Detected start or end of a structural component.",
+ "type": "object",
"properties": {
- "isPrefix": {
- "description": "True if break prepends the element.",
- "type": "boolean"
- },
"type": {
+ "enumDescriptions": [
+ "Unknown break label type.",
+ "Regular space.",
+ "Sure space (very wide).",
+ "Line-wrapping break.",
+ "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.",
+ "Line break that ends a paragraph."
+ ],
"enum": [
"UNKNOWN",
"SPACE",
@@ -617,715 +1176,36 @@
"LINE_BREAK"
],
"description": "Detected break type.",
- "type": "string",
- "enumDescriptions": [
- "Unknown break label type.",
- "Regular space.",
- "Sure space (very wide).",
- "Line-wrapping break.",
- "End-line hyphen that is not present in text; does not co-occur with\n`SPACE`, `LEADER_SPACE`, or `LINE_BREAK`.",
- "Line break that ends a paragraph."
- ]
+ "type": "string"
+ },
+ "isPrefix": {
+ "description": "True if break prepends the element.",
+ "type": "boolean"
}
},
- "id": "DetectedBreak",
- "description": "Detected start or end of a structural component.",
- "type": "object"
+ "id": "DetectedBreak"
},
"ImageContext": {
"description": "Image context and/or feature-specific parameters.",
"type": "object",
"properties": {
+ "cropHintsParams": {
+ "$ref": "CropHintsParams",
+ "description": "Parameters for crop hints annotation request."
+ },
"languageHints": {
"description": "List of languages to use for TEXT_DETECTION. In most cases, an empty value\nyields the best results since it enables automatic language detection. For\nlanguages based on the Latin alphabet, setting `language_hints` is not\nneeded. In rare cases, when the language of the text in the image is known,\nsetting a hint will help get better results (although it will be a\nsignificant hindrance if the hint is wrong). Text detection returns an\nerror if one or more of the specified languages is not one of the\n[supported languages](/vision/docs/languages).",
- "type": "array",
"items": {
"type": "string"
- }
+ },
+ "type": "array"
},
"latLongRect": {
"description": "lat/long rectangle that specifies the location of the image.",
"$ref": "LatLongRect"
- },
- "cropHintsParams": {
- "description": "Parameters for crop hints annotation request.",
- "$ref": "CropHintsParams"
}
},
"id": "ImageContext"
- },
- "Page": {
- "description": "Detected page from OCR.",
- "type": "object",
- "properties": {
- "width": {
- "description": "Page width in pixels.",
- "format": "int32",
- "type": "integer"
- },
- "blocks": {
- "description": "List of blocks of text, images etc on this page.",
- "type": "array",
- "items": {
- "$ref": "Block"
- }
- },
- "property": {
- "description": "Additional information detected on the page.",
- "$ref": "TextProperty"
- },
- "height": {
- "description": "Page height in pixels.",
- "format": "int32",
- "type": "integer"
- }
- },
- "id": "Page"
- },
- "AnnotateImageRequest": {
- "properties": {
- "imageContext": {
- "$ref": "ImageContext",
- "description": "Additional context that may accompany the image."
- },
- "image": {
- "description": "The image to be processed.",
- "$ref": "Image"
- },
- "features": {
- "description": "Requested features.",
- "type": "array",
- "items": {
- "$ref": "Feature"
- }
- }
- },
- "id": "AnnotateImageRequest",
- "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.",
- "type": "object"
- },
- "Status": {
- "properties": {
- "details": {
- "description": "A list of messages that carry the error details. There will be a\ncommon set of message types for APIs to use.",
- "type": "array",
- "items": {
- "additionalProperties": {
- "description": "Properties of the object. Contains field @type with type URL.",
- "type": "any"
- },
- "type": "object"
- }
- },
- "code": {
- "description": "The status code, which should be an enum value of google.rpc.Code.",
- "format": "int32",
- "type": "integer"
- },
- "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"
- }
- },
- "id": "Status",
- "description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
- "type": "object"
- },
- "Symbol": {
- "properties": {
- "property": {
- "$ref": "TextProperty",
- "description": "Additional information detected for the symbol."
- },
- "boundingBox": {
- "$ref": "BoundingPoly",
- "description": "The bounding box for the symbol.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)."
- },
- "text": {
- "description": "The actual UTF-8 representation of the symbol.",
- "type": "string"
- }
- },
- "id": "Symbol",
- "description": "A single symbol representation.",
- "type": "object"
- },
- "LatLongRect": {
- "description": "Rectangle determined by min and max `LatLng` pairs.",
- "type": "object",
- "properties": {
- "maxLatLng": {
- "$ref": "LatLng",
- "description": "Max lat/long pair."
- },
- "minLatLng": {
- "$ref": "LatLng",
- "description": "Min lat/long pair."
- }
- },
- "id": "LatLongRect"
- },
- "CropHintsAnnotation": {
- "properties": {
- "cropHints": {
- "description": "Crop hint results.",
- "type": "array",
- "items": {
- "$ref": "CropHint"
- }
- }
- },
- "id": "CropHintsAnnotation",
- "description": "Set of crop hints that are used to generate new crops when serving images.",
- "type": "object"
- },
- "LatLng": {
- "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.\n\nExample of normalization code in Python:\n\n def NormalizeLongitude(longitude):\n \"\"\"Wraps decimal degrees longitude to [-180.0, 180.0].\"\"\"\n q, r = divmod(longitude, 360.0)\n if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0):\n return r - 360.0\n return r\n\n def NormalizeLatLng(latitude, longitude):\n \"\"\"Wraps decimal degrees latitude and longitude to\n [-90.0, 90.0] and [-180.0, 180.0], respectively.\"\"\"\n r = latitude % 360.0\n if r \u003c= 90.0:\n return r, NormalizeLongitude(longitude)\n elif r \u003e= 270.0:\n return r - 360, NormalizeLongitude(longitude)\n else:\n return 180 - r, NormalizeLongitude(longitude + 180.0)\n\n assert 180.0 == NormalizeLongitude(180.0)\n assert -180.0 == NormalizeLongitude(-180.0)\n assert -179.0 == NormalizeLongitude(181.0)\n assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)\n assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)\n assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)\n assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)\n assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)\n assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)\n assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)\n assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)\n assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)",
- "type": "object",
- "properties": {
- "longitude": {
- "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].",
- "format": "double",
- "type": "number"
- },
- "latitude": {
- "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].",
- "format": "double",
- "type": "number"
- }
- },
- "id": "LatLng"
- },
- "Color": {
- "properties": {
- "red": {
- "description": "The amount of red in the color as a value in the interval [0, 1].",
- "format": "float",
- "type": "number"
- },
- "green": {
- "description": "The amount of green in the color as a value in the interval [0, 1].",
- "format": "float",
- "type": "number"
- },
- "blue": {
- "description": "The amount of blue in the color as a value in the interval [0, 1].",
- "format": "float",
- "type": "number"
- },
- "alpha": {
- "description": "The fraction of this color that should be applied to the pixel. That is,\nthe final pixel color is defined by the equation:\n\n pixel color = alpha * (this color) + (1.0 - alpha) * (background color)\n\nThis means that a value of 1.0 corresponds to a solid color, whereas\na value of 0.0 corresponds to a completely transparent color. This\nuses a wrapper message rather than a simple float scalar so that it is\npossible to distinguish between a default value and the value being unset.\nIf omitted, this color object is to be rendered as a solid color\n(as if the alpha value had been explicitly given with a value of 1.0).",
- "format": "float",
- "type": "number"
- }
- },
- "id": "Color",
- "description": "Represents a color in the RGBA color space. This representation is designed\nfor simplicity of conversion to/from color representations in various\nlanguages over compactness; for example, the fields of this representation\ncan be trivially provided to the constructor of \"java.awt.Color\" in Java; it\ncan also be trivially provided to UIColor's \"+colorWithRed:green:blue:alpha\"\nmethod in iOS; and, with just a little work, it can be easily formatted into\na CSS \"rgba()\" string in JavaScript, as well. Here are some examples:\n\nExample (Java):\n\n import com.google.type.Color;\n\n // ...\n public static java.awt.Color fromProto(Color protocolor) {\n float alpha = protocolor.hasAlpha()\n ? protocolor.getAlpha().getValue()\n : 1.0;\n\n return new java.awt.Color(\n protocolor.getRed(),\n protocolor.getGreen(),\n protocolor.getBlue(),\n alpha);\n }\n\n public static Color toProto(java.awt.Color color) {\n float red = (float) color.getRed();\n float green = (float) color.getGreen();\n float blue = (float) color.getBlue();\n float denominator = 255.0;\n Color.Builder resultBuilder =\n Color\n .newBuilder()\n .setRed(red / denominator)\n .setGreen(green / denominator)\n .setBlue(blue / denominator);\n int alpha = color.getAlpha();\n if (alpha != 255) {\n result.setAlpha(\n FloatValue\n .newBuilder()\n .setValue(((float) alpha) / denominator)\n .build());\n }\n return resultBuilder.build();\n }\n // ...\n\nExample (iOS / Obj-C):\n\n // ...\n static UIColor* fromProto(Color* protocolor) {\n float red = [protocolor red];\n float green = [protocolor green];\n float blue = [protocolor blue];\n FloatValue* alpha_wrapper = [protocolor alpha];\n float alpha = 1.0;\n if (alpha_wrapper != nil) {\n alpha = [alpha_wrapper value];\n }\n return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];\n }\n\n static Color* toProto(UIColor* color) {\n CGFloat red, green, blue, alpha;\n if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {\n return nil;\n }\n Color* result = [Color alloc] init];\n [result setRed:red];\n [result setGreen:green];\n [result setBlue:blue];\n if (alpha \u003c= 0.9999) {\n [result setAlpha:floatWrapperWithValue(alpha)];\n }\n [result autorelease];\n return result;\n }\n // ...\n\n Example (JavaScript):\n\n // ...\n\n var protoToCssColor = function(rgb_color) {\n var redFrac = rgb_color.red || 0.0;\n var greenFrac = rgb_color.green || 0.0;\n var blueFrac = rgb_color.blue || 0.0;\n var red = Math.floor(redFrac * 255);\n var green = Math.floor(greenFrac * 255);\n var blue = Math.floor(blueFrac * 255);\n\n if (!('alpha' in rgb_color)) {\n return rgbToCssColor_(red, green, blue);\n }\n\n var alphaFrac = rgb_color.alpha.value || 0.0;\n var rgbParams = [red, green, blue].join(',');\n return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');\n };\n\n var rgbToCssColor_ = function(red, green, blue) {\n var rgbNumber = new Number((red \u003c\u003c 16) | (green \u003c\u003c 8) | blue);\n var hexString = rgbNumber.toString(16);\n var missingZeros = 6 - hexString.length;\n var resultBuilder = ['#'];\n for (var i = 0; i \u003c missingZeros; i++) {\n resultBuilder.push('0');\n }\n resultBuilder.push(hexString);\n return resultBuilder.join('');\n };\n\n // ...",
- "type": "object"
- },
- "ImageProperties": {
- "description": "Stores image properties, such as dominant colors.",
- "type": "object",
- "properties": {
- "dominantColors": {
- "description": "If present, dominant colors completed successfully.",
- "$ref": "DominantColorsAnnotation"
- }
- },
- "id": "ImageProperties"
- },
- "Feature": {
- "description": "Users describe the type of Google Cloud Vision API tasks to perform over\nimages by using *Feature*s. Each Feature indicates a type of image\ndetection task to perform. Features encode the Cloud Vision API\nvertical to operate on and the number of top-scoring results to return.",
- "type": "object",
- "properties": {
- "type": {
- "enum": [
- "TYPE_UNSPECIFIED",
- "FACE_DETECTION",
- "LANDMARK_DETECTION",
- "LOGO_DETECTION",
- "LABEL_DETECTION",
- "TEXT_DETECTION",
- "DOCUMENT_TEXT_DETECTION",
- "SAFE_SEARCH_DETECTION",
- "IMAGE_PROPERTIES",
- "CROP_HINTS",
- "WEB_DETECTION"
- ],
- "description": "The feature type.",
- "type": "string",
- "enumDescriptions": [
- "Unspecified feature type.",
- "Run face detection.",
- "Run landmark detection.",
- "Run logo detection.",
- "Run label detection.",
- "Run OCR.",
- "Run dense text document OCR. Takes precedence when both\nDOCUMENT_TEXT_DETECTION and TEXT_DETECTION are present.",
- "Run computer vision models to compute image safe-search properties.",
- "Compute a set of image properties, such as the image's dominant colors.",
- "Run crop hints.",
- "Run web detection."
- ]
- },
- "maxResults": {
- "description": "Maximum number of results of this type.",
- "format": "int32",
- "type": "integer"
- }
- },
- "id": "Feature"
- },
- "SafeSearchAnnotation": {
- "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).",
- "type": "object",
- "properties": {
- "spoof": {
- "enum": [
- "UNKNOWN",
- "VERY_UNLIKELY",
- "UNLIKELY",
- "POSSIBLE",
- "LIKELY",
- "VERY_LIKELY"
- ],
- "description": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.",
- "type": "string",
- "enumDescriptions": [
- "Unknown likelihood.",
- "It is very unlikely that the image belongs to the specified vertical.",
- "It is unlikely that the image belongs to the specified vertical.",
- "It is possible that the image belongs to the specified vertical.",
- "It is likely that the image belongs to the specified vertical.",
- "It is very likely that the image belongs to the specified vertical."
- ]
- },
- "medical": {
- "enumDescriptions": [
- "Unknown likelihood.",
- "It is very unlikely that the image belongs to the specified vertical.",
- "It is unlikely that the image belongs to the specified vertical.",
- "It is possible that the image belongs to the specified vertical.",
- "It is likely that the image belongs to the specified vertical.",
- "It is very likely that the image belongs to the specified vertical."
- ],
- "enum": [
- "UNKNOWN",
- "VERY_UNLIKELY",
- "UNLIKELY",
- "POSSIBLE",
- "LIKELY",
- "VERY_LIKELY"
- ],
- "description": "Likelihood that this is a medical image.",
- "type": "string"
- },
- "violence": {
- "enum": [
- "UNKNOWN",
- "VERY_UNLIKELY",
- "UNLIKELY",
- "POSSIBLE",
- "LIKELY",
- "VERY_LIKELY"
- ],
- "description": "Violence likelihood.",
- "type": "string",
- "enumDescriptions": [
- "Unknown likelihood.",
- "It is very unlikely that the image belongs to the specified vertical.",
- "It is unlikely that the image belongs to the specified vertical.",
- "It is possible that the image belongs to the specified vertical.",
- "It is likely that the image belongs to the specified vertical.",
- "It is very likely that the image belongs to the specified vertical."
- ]
- },
- "adult": {
- "enum": [
- "UNKNOWN",
- "VERY_UNLIKELY",
- "UNLIKELY",
- "POSSIBLE",
- "LIKELY",
- "VERY_LIKELY"
- ],
- "description": "Represents the adult content likelihood for the image.",
- "type": "string",
- "enumDescriptions": [
- "Unknown likelihood.",
- "It is very unlikely that the image belongs to the specified vertical.",
- "It is unlikely that the image belongs to the specified vertical.",
- "It is possible that the image belongs to the specified vertical.",
- "It is likely that the image belongs to the specified vertical.",
- "It is very likely that the image belongs to the specified vertical."
- ]
- }
- },
- "id": "SafeSearchAnnotation"
- },
- "DominantColorsAnnotation": {
- "description": "Set of dominant colors and their corresponding scores.",
- "type": "object",
- "properties": {
- "colors": {
- "description": "RGB color values with their score and pixel fraction.",
- "type": "array",
- "items": {
- "$ref": "ColorInfo"
- }
- }
- },
- "id": "DominantColorsAnnotation"
- },
- "TextAnnotation": {
- "properties": {
- "pages": {
- "description": "List of pages detected by OCR.",
- "type": "array",
- "items": {
- "$ref": "Page"
- }
- },
- "text": {
- "description": "UTF-8 text detected on the pages.",
- "type": "string"
- }
- },
- "id": "TextAnnotation",
- "description": "TextAnnotation contains a structured representation of OCR extracted text.\nThe hierarchy of an OCR extracted text structure is like this:\n TextAnnotation -\u003e Page -\u003e Block -\u003e Paragraph -\u003e Word -\u003e Symbol\nEach structural component, starting from Page, may further have their own\nproperties. Properties describe detected languages, breaks etc.. Please\nrefer to the google.cloud.vision.v1.TextAnnotation.TextProperty message\ndefinition below for more detail.",
- "type": "object"
- },
- "DetectedLanguage": {
- "description": "Detected language for a structural component.",
- "type": "object",
- "properties": {
- "confidence": {
- "description": "Confidence of detected language. Range [0, 1].",
- "format": "float",
- "type": "number"
- },
- "languageCode": {
- "description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\". For more\ninformation, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.",
- "type": "string"
- }
- },
- "id": "DetectedLanguage"
- },
- "Vertex": {
- "properties": {
- "y": {
- "description": "Y coordinate.",
- "format": "int32",
- "type": "integer"
- },
- "x": {
- "description": "X coordinate.",
- "format": "int32",
- "type": "integer"
- }
- },
- "id": "Vertex",
- "description": "A vertex represents a 2D point in the image.\nNOTE: the vertex coordinates are in the same scale as the original image.",
- "type": "object"
- },
- "TextProperty": {
- "properties": {
- "detectedLanguages": {
- "description": "A list of detected languages together with confidence.",
- "type": "array",
- "items": {
- "$ref": "DetectedLanguage"
- }
- },
- "detectedBreak": {
- "description": "Detected start or end of a text segment.",
- "$ref": "DetectedBreak"
- }
- },
- "id": "TextProperty",
- "description": "Additional information detected on the structural component.",
- "type": "object"
- },
- "BoundingPoly": {
- "properties": {
- "vertices": {
- "description": "The bounding polygon vertices.",
- "type": "array",
- "items": {
- "$ref": "Vertex"
- }
- }
- },
- "id": "BoundingPoly",
- "description": "A bounding polygon for the detected image annotation.",
- "type": "object"
- },
- "WebEntity": {
- "properties": {
- "entityId": {
- "description": "Opaque entity ID.",
- "type": "string"
- },
- "description": {
- "description": "Canonical description of the entity, in English.",
- "type": "string"
- },
- "score": {
- "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.",
- "format": "float",
- "type": "number"
- }
- },
- "id": "WebEntity",
- "description": "Entity deduced from similar images on the Internet.",
- "type": "object"
- },
- "AnnotateImageResponse": {
- "description": "Response to an image annotation request.",
- "type": "object",
- "properties": {
- "fullTextAnnotation": {
- "$ref": "TextAnnotation",
- "description": "If present, text (OCR) detection or document (OCR) text detection has\ncompleted successfully.\nThis annotation provides the structural hierarchy for the OCR detected\ntext."
- },
- "landmarkAnnotations": {
- "description": "If present, landmark detection has completed successfully.",
- "type": "array",
- "items": {
- "$ref": "EntityAnnotation"
- }
- },
- "textAnnotations": {
- "description": "If present, text (OCR) detection has completed successfully.",
- "type": "array",
- "items": {
- "$ref": "EntityAnnotation"
- }
- },
- "imagePropertiesAnnotation": {
- "description": "If present, image properties were extracted successfully.",
- "$ref": "ImageProperties"
- },
- "faceAnnotations": {
- "description": "If present, face detection has completed successfully.",
- "type": "array",
- "items": {
- "$ref": "FaceAnnotation"
- }
- },
- "logoAnnotations": {
- "description": "If present, logo detection has completed successfully.",
- "type": "array",
- "items": {
- "$ref": "EntityAnnotation"
- }
- },
- "webDetection": {
- "description": "If present, web detection has completed successfully.",
- "$ref": "WebDetection"
- },
- "cropHintsAnnotation": {
- "$ref": "CropHintsAnnotation",
- "description": "If present, crop hints have completed successfully."
- },
- "safeSearchAnnotation": {
- "description": "If present, safe-search annotation has completed successfully.",
- "$ref": "SafeSearchAnnotation"
- },
- "labelAnnotations": {
- "description": "If present, label detection has completed successfully.",
- "type": "array",
- "items": {
- "$ref": "EntityAnnotation"
- }
- },
- "error": {
- "description": "If set, represents the error message for the operation.\nNote that filled-in image annotations are guaranteed to be\ncorrect, even when `error` is set.",
- "$ref": "Status"
- }
- },
- "id": "AnnotateImageResponse"
- },
- "CropHintsParams": {
- "description": "Parameters for crop hints annotation request.",
- "type": "object",
- "properties": {
- "aspectRatios": {
- "description": "Aspect ratios in floats, representing the ratio of the width to the height\nof the image. For example, if the desired aspect ratio is 4/3, the\ncorresponding float value should be 1.33333. If not specified, the\nbest possible crop is returned. The number of provided aspect ratios is\nlimited to a maximum of 16; any aspect ratios provided after the 16th are\nignored.",
- "type": "array",
- "items": {
- "format": "float",
- "type": "number"
- }
- }
- },
- "id": "CropHintsParams"
- },
- "Block": {
- "properties": {
- "property": {
- "description": "Additional information detected for the block.",
- "$ref": "TextProperty"
- },
- "blockType": {
- "enumDescriptions": [
- "Unknown block type.",
- "Regular text block.",
- "Table block.",
- "Image block.",
- "Horizontal/vertical line box.",
- "Barcode block."
- ],
- "enum": [
- "UNKNOWN",
- "TEXT",
- "TABLE",
- "PICTURE",
- "RULER",
- "BARCODE"
- ],
- "description": "Detected block type (text, image etc) for this block.",
- "type": "string"
- },
- "boundingBox": {
- "$ref": "BoundingPoly",
- "description": "The bounding box for the block.\nThe vertices are in the order of top-left, top-right, bottom-right,\nbottom-left. When a rotation of the bounding box is detected the rotation\nis represented as around the top-left corner as defined when the text is\nread in the 'natural' orientation.\nFor example:\n * when the text is horizontal it might look like:\n 0----1\n | |\n 3----2\n * when it's rotated 180 degrees around the top-left corner it becomes:\n 2----3\n | |\n 1----0\n and the vertice order will still be (0, 1, 2, 3)."
- },
- "paragraphs": {
- "description": "List of paragraphs in this block (if this blocks is of type text).",
- "type": "array",
- "items": {
- "$ref": "Paragraph"
- }
- }
- },
- "id": "Block",
- "description": "Logical element on the page.",
- "type": "object"
- },
- "Property": {
- "description": "A `Property` consists of a user-supplied name/value pair.",
- "type": "object",
- "properties": {
- "uint64Value": {
- "description": "Value of numeric properties.",
- "format": "uint64",
- "type": "string"
- },
- "name": {
- "description": "Name of the property.",
- "type": "string"
- },
- "value": {
- "description": "Value of the property.",
- "type": "string"
- }
- },
- "id": "Property"
- },
- "LocationInfo": {
- "properties": {
- "latLng": {
- "$ref": "LatLng",
- "description": "lat/long location coordinates."
- }
- },
- "id": "LocationInfo",
- "description": "Detected entity location information.",
- "type": "object"
- },
- "ImageSource": {
- "properties": {
- "gcsImageUri": {
- "description": "NOTE: For new code `image_uri` below is preferred.\nGoogle Cloud Storage image URI, which must be in the following form:\n`gs://bucket_name/object_name` (for details, see\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris)).\nNOTE: Cloud Storage object versioning is not supported.",
- "type": "string"
- },
- "imageUri": {
- "description": "Image URI which supports:\n1) Google Cloud Storage image URI, which must be in the following form:\n`gs://bucket_name/object_name` (for details, see\n[Google Cloud Storage Request\nURIs](https://cloud.google.com/storage/docs/reference-uris)).\nNOTE: Cloud Storage object versioning is not supported.\n2) Publicly accessible image HTTP/HTTPS URL.\nThis is preferred over the legacy `gcs_image_uri` above. When both\n`gcs_image_uri` and `image_uri` are specified, `image_uri` takes\nprecedence.",
- "type": "string"
- }
- },
- "id": "ImageSource",
- "description": "External image source (Google Cloud Storage image location).",
- "type": "object"
- },
- "BatchAnnotateImagesResponse": {
- "properties": {
- "responses": {
- "description": "Individual responses to image annotation requests within the batch.",
- "type": "array",
- "items": {
- "$ref": "AnnotateImageResponse"
- }
- }
- },
- "id": "BatchAnnotateImagesResponse",
- "description": "Response to a batch image annotation request.",
- "type": "object"
- },
- "WebDetection": {
- "description": "Relevant information for the image from the Internet.",
- "type": "object",
- "properties": {
- "fullMatchingImages": {
- "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.",
- "type": "array",
- "items": {
- "$ref": "WebImage"
- }
- },
- "webEntities": {
- "description": "Deduced entities from similar images on the Internet.",
- "type": "array",
- "items": {
- "$ref": "WebEntity"
- }
- },
- "pagesWithMatchingImages": {
- "description": "Web pages containing the matching images from the Internet.",
- "type": "array",
- "items": {
- "$ref": "WebPage"
- }
- },
- "partialMatchingImages": {
- "description": "Partial matching images from the Internet.\nThose images are similar enough to share some key-point features. For\nexample an original image will likely have partial matching for its crops.",
- "type": "array",
- "items": {
- "$ref": "WebImage"
- }
- },
- "visuallySimilarImages": {
- "description": "The visually similar image results.",
- "type": "array",
- "items": {
- "$ref": "WebImage"
- }
- }
- },
- "id": "WebDetection"
- },
- "Position": {
- "description": "A 3D position in the image, used primarily for Face detection landmarks.\nA valid Position must have both x and y coordinates.\nThe position coordinates are in the same scale as the original image.",
- "type": "object",
- "properties": {
- "y": {
- "description": "Y coordinate.",
- "format": "float",
- "type": "number"
- },
- "x": {
- "description": "X coordinate.",
- "format": "float",
- "type": "number"
- },
- "z": {
- "description": "Z coordinate (or depth).",
- "format": "float",
- "type": "number"
- }
- },
- "id": "Position"
}
},
"icons": {
@@ -1337,6 +1217,9 @@
"auth": {
"oauth2": {
"scopes": {
+ "https://www.googleapis.com/auth/cloud-vision": {
+ "description": "Apply machine learning models to understand and label images"
+ },
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
}
@@ -1346,5 +1229,126 @@
"rootUrl": "https://vision.googleapis.com/",
"ownerDomain": "google.com",
"name": "vision",
- "batchPath": "batch"
+ "batchPath": "batch",
+ "title": "Google Cloud Vision API",
+ "ownerName": "Google",
+ "resources": {
+ "images": {
+ "methods": {
+ "annotate": {
+ "description": "Run image detection and annotation for a batch of images.",
+ "request": {
+ "$ref": "BatchAnnotateImagesRequest"
+ },
+ "response": {
+ "$ref": "BatchAnnotateImagesResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {},
+ "scopes": [
+ "https://www.googleapis.com/auth/cloud-platform",
+ "https://www.googleapis.com/auth/cloud-vision"
+ ],
+ "flatPath": "v1/images:annotate",
+ "id": "vision.images.annotate",
+ "path": "v1/images:annotate"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string",
+ "location": "query"
+ },
+ "prettyPrint": {
+ "location": "query",
+ "description": "Returns response with indentations and line breaks.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "fields": {
+ "location": "query",
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string"
+ },
+ "uploadType": {
+ "location": "query",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "type": "string"
+ },
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
+ },
+ "$.xgafv": {
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "enum": [
+ "1",
+ "2"
+ ],
+ "description": "V1 error format.",
+ "type": "string"
+ },
+ "alt": {
+ "description": "Data format for response.",
+ "default": "json",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "type": "string",
+ "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"
+ },
+ "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.",
+ "type": "string",
+ "location": "query"
+ },
+ "access_token": {
+ "location": "query",
+ "description": "OAuth access token.",
+ "type": "string"
+ },
+ "quotaUser": {
+ "location": "query",
+ "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.",
+ "type": "string"
+ },
+ "pp": {
+ "location": "query",
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean"
+ },
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "bearer_token": {
+ "description": "OAuth bearer token.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "version": "v1",
+ "baseUrl": "https://vision.googleapis.com/",
+ "servicePath": "",
+ "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.",
+ "kind": "discovery#restDescription",
+ "basePath": ""
}
diff --git a/vendor/google.golang.org/api/vision/v1/vision-gen.go b/vendor/google.golang.org/api/vision/v1/vision-gen.go
index 7af1c74..d85c021 100644
--- a/vendor/google.golang.org/api/vision/v1/vision-gen.go
+++ b/vendor/google.golang.org/api/vision/v1/vision-gen.go
@@ -49,6 +49,9 @@ const basePath = "https://vision.googleapis.com/"
const (
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
+
+ // Apply machine learning models to understand and label images
+ CloudVisionScope = "https://www.googleapis.com/auth/cloud-vision"
)
func New(client *http.Client) (*Service, error) {
@@ -845,13 +848,9 @@ func (s *DominantColorsAnnotation) MarshalJSON() ([]byte, error) {
// EntityAnnotation: Set of detected entity features.
type EntityAnnotation struct {
- // BoundingPoly: Image region to which this entity belongs. Currently
- // not produced
- // for `LABEL_DETECTION` features. For `TEXT_DETECTION` (OCR),
- // `boundingPoly`s
- // are produced for the entire text detected in an image region,
- // followed by
- // `boundingPoly`s for each word within the detected text.
+ // BoundingPoly: Image region to which this entity belongs. Not
+ // produced
+ // for `LABEL_DETECTION` features.
BoundingPoly *BoundingPoly `json:"boundingPoly,omitempty"`
// Confidence: The accuracy of the entity detection in an image.
@@ -1969,9 +1968,9 @@ type Status struct {
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
- // Details: A list of messages that carry the error details. There will
- // be a
- // common set of message types for APIs to use.
+ // Details: A list of messages that carry the error details. There is a
+ // common set of
+ // message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
@@ -2263,8 +2262,7 @@ func (s *WebEntity) UnmarshalJSON(data []byte) error {
// WebImage: Metadata for online images.
type WebImage struct {
- // Score: Overall relevancy score for the image.
- // Not normalized and not comparable across different image queries.
+ // Score: (Deprecated) Overall relevancy score for the image.
Score float64 `json:"score,omitempty"`
// Url: The result image URL.
@@ -2309,8 +2307,7 @@ func (s *WebImage) UnmarshalJSON(data []byte) error {
// WebPage: Metadata for web pages.
type WebPage struct {
- // Score: Overall relevancy score for the web page.
- // Not normalized and not comparable across different image queries.
+ // Score: (Deprecated) Overall relevancy score for the web page.
Score float64 `json:"score,omitempty"`
// Url: The result web page URL.
@@ -2520,7 +2517,8 @@ func (c *ImagesAnnotateCall) Do(opts ...googleapi.CallOption) (*BatchAnnotateIma
// "$ref": "BatchAnnotateImagesResponse"
// },
// "scopes": [
- // "https://www.googleapis.com/auth/cloud-platform"
+ // "https://www.googleapis.com/auth/cloud-platform",
+ // "https://www.googleapis.com/auth/cloud-vision"
// ]
// }
diff --git a/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json b/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json
index 984d4e8..5622541 100644
--- a/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json
+++ b/vendor/google.golang.org/api/youtubereporting/v1/youtubereporting-api.json
@@ -1,14 +1,342 @@
{
+ "title": "YouTube Reporting API",
+ "discoveryVersion": "v1",
+ "ownerName": "Google",
+ "resources": {
+ "reportTypes": {
+ "methods": {
+ "list": {
+ "description": "Lists report types.",
+ "response": {
+ "$ref": "ListReportTypesResponse"
+ },
+ "parameterOrder": [],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ],
+ "parameters": {
+ "includeSystemManaged": {
+ "description": "If set to true, also system-managed report types will be returned;\notherwise only the report types that can be used to create new reporting\njobs will be returned.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListReportTypes` method.",
+ "type": "string"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.",
+ "type": "integer",
+ "location": "query"
+ },
+ "onBehalfOfContentOwner": {
+ "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v1/reportTypes",
+ "id": "youtubereporting.reportTypes.list",
+ "path": "v1/reportTypes"
+ }
+ }
+ },
+ "media": {
+ "methods": {
+ "download": {
+ "description": "Method for media download. Download is supported\non the URI `/v1/media/{+name}?alt=media`.",
+ "supportsMediaDownload": true,
+ "response": {
+ "$ref": "Media"
+ },
+ "parameterOrder": [
+ "resourceName"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ],
+ "parameters": {
+ "resourceName": {
+ "location": "path",
+ "description": "Name of the media that is being downloaded. See\nReadRequest.resource_name.",
+ "type": "string",
+ "required": true,
+ "pattern": "^.+$"
+ }
+ },
+ "flatPath": "v1/media/{mediaId}",
+ "id": "youtubereporting.media.download",
+ "path": "v1/media/{+resourceName}"
+ }
+ }
+ },
+ "jobs": {
+ "methods": {
+ "delete": {
+ "flatPath": "v1/jobs/{jobId}",
+ "path": "v1/jobs/{jobId}",
+ "id": "youtubereporting.jobs.delete",
+ "description": "Deletes a job.",
+ "httpMethod": "DELETE",
+ "parameterOrder": [
+ "jobId"
+ ],
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameters": {
+ "jobId": {
+ "description": "The ID of the job to delete.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
+ "onBehalfOfContentOwner": {
+ "location": "query",
+ "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ]
+ },
+ "get": {
+ "flatPath": "v1/jobs/{jobId}",
+ "id": "youtubereporting.jobs.get",
+ "path": "v1/jobs/{jobId}",
+ "description": "Gets a job.",
+ "response": {
+ "$ref": "Job"
+ },
+ "parameterOrder": [
+ "jobId"
+ ],
+ "httpMethod": "GET",
+ "parameters": {
+ "jobId": {
+ "description": "The ID of the job to retrieve.",
+ "type": "string",
+ "required": true,
+ "location": "path"
+ },
+ "onBehalfOfContentOwner": {
+ "location": "query",
+ "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
+ "type": "string"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ]
+ },
+ "list": {
+ "httpMethod": "GET",
+ "parameterOrder": [],
+ "response": {
+ "$ref": "ListJobsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ],
+ "parameters": {
+ "pageSize": {
+ "location": "query",
+ "format": "int32",
+ "description": "Requested page size. Server may return fewer jobs than requested.\nIf unspecified, server will pick an appropriate default.",
+ "type": "integer"
+ },
+ "onBehalfOfContentOwner": {
+ "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
+ "type": "string",
+ "location": "query"
+ },
+ "includeSystemManaged": {
+ "description": "If set to true, also system-managed jobs will be returned; otherwise only\nuser-created jobs will be returned. System-managed jobs can neither be\nmodified nor deleted.",
+ "type": "boolean",
+ "location": "query"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListJobs` method.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "flatPath": "v1/jobs",
+ "path": "v1/jobs",
+ "id": "youtubereporting.jobs.list",
+ "description": "Lists jobs."
+ },
+ "create": {
+ "description": "Creates a job and returns it.",
+ "request": {
+ "$ref": "Job"
+ },
+ "response": {
+ "$ref": "Job"
+ },
+ "parameterOrder": [],
+ "httpMethod": "POST",
+ "parameters": {
+ "onBehalfOfContentOwner": {
+ "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ],
+ "flatPath": "v1/jobs",
+ "id": "youtubereporting.jobs.create",
+ "path": "v1/jobs"
+ }
+ },
+ "resources": {
+ "reports": {
+ "methods": {
+ "get": {
+ "description": "Gets the metadata of a specific report.",
+ "response": {
+ "$ref": "Report"
+ },
+ "parameterOrder": [
+ "jobId",
+ "reportId"
+ ],
+ "httpMethod": "GET",
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ],
+ "parameters": {
+ "jobId": {
+ "location": "path",
+ "description": "The ID of the job.",
+ "type": "string",
+ "required": true
+ },
+ "onBehalfOfContentOwner": {
+ "location": "query",
+ "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
+ "type": "string"
+ },
+ "reportId": {
+ "location": "path",
+ "description": "The ID of the report to retrieve.",
+ "type": "string",
+ "required": true
+ }
+ },
+ "flatPath": "v1/jobs/{jobId}/reports/{reportId}",
+ "id": "youtubereporting.jobs.reports.get",
+ "path": "v1/jobs/{jobId}/reports/{reportId}"
+ },
+ "list": {
+ "description": "Lists reports created by a specific job.\nReturns NOT_FOUND if the job does not exist.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "jobId"
+ ],
+ "response": {
+ "$ref": "ListReportsResponse"
+ },
+ "parameters": {
+ "jobId": {
+ "location": "path",
+ "description": "The ID of the job.",
+ "type": "string",
+ "required": true
+ },
+ "createdAfter": {
+ "format": "google-datetime",
+ "description": "If set, only reports created after the specified date/time are returned.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageToken": {
+ "location": "query",
+ "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportsResponse.next_page_token\nreturned in response to the previous call to the `ListReports` method.",
+ "type": "string"
+ },
+ "startTimeAtOrAfter": {
+ "format": "google-datetime",
+ "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.",
+ "type": "string",
+ "location": "query"
+ },
+ "pageSize": {
+ "format": "int32",
+ "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.",
+ "type": "integer",
+ "location": "query"
+ },
+ "onBehalfOfContentOwner": {
+ "location": "query",
+ "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
+ "type": "string"
+ },
+ "startTimeBefore": {
+ "format": "google-datetime",
+ "description": "If set, only reports whose start time is smaller than the specified\ndate/time are returned.",
+ "type": "string",
+ "location": "query"
+ }
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
+ "https://www.googleapis.com/auth/yt-analytics.readonly"
+ ],
+ "flatPath": "v1/jobs/{jobId}/reports",
+ "path": "v1/jobs/{jobId}/reports",
+ "id": "youtubereporting.jobs.reports.list"
+ }
+ }
+ }
+ }
+ }
+ },
"parameters": {
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "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.",
"type": "string",
"location": "query"
},
+ "pp": {
+ "description": "Pretty-print response.",
+ "default": "true",
+ "type": "boolean",
+ "location": "query"
+ },
+ "bearer_token": {
+ "location": "query",
+ "description": "OAuth bearer token.",
+ "type": "string"
+ },
+ "oauth_token": {
+ "location": "query",
+ "description": "OAuth 2.0 token for the current user.",
+ "type": "string"
+ },
+ "upload_protocol": {
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "type": "string"
+ },
"prettyPrint": {
"description": "Returns response with indentations and line breaks.",
- "type": "boolean",
"default": "true",
+ "type": "boolean",
"location": "query"
},
"uploadType": {
@@ -35,11 +363,12 @@
]
},
"callback": {
- "location": "query",
"description": "JSONP",
- "type": "string"
+ "type": "string",
+ "location": "query"
},
"alt": {
+ "type": "string",
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
@@ -52,149 +381,21 @@
"json",
"media",
"proto"
- ],
+ ]
+ },
+ "access_token": {
+ "location": "query",
+ "description": "OAuth access token.",
"type": "string"
},
"key": {
- "location": "query",
"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.",
- "type": "string"
- },
- "access_token": {
- "description": "OAuth access token.",
- "type": "string",
- "location": "query"
- },
- "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.",
- "type": "string",
- "location": "query"
- },
- "pp": {
- "location": "query",
- "description": "Pretty-print response.",
- "type": "boolean",
- "default": "true"
- },
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "type": "string",
- "location": "query"
- },
- "bearer_token": {
- "description": "OAuth bearer token.",
"type": "string",
"location": "query"
}
},
"schemas": {
- "Empty": {
- "id": "Empty",
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "type": "object",
- "properties": {}
- },
- "Report": {
- "id": "Report",
- "description": "A report's metadata including the URL from which the report itself can be\ndownloaded.",
- "type": "object",
- "properties": {
- "id": {
- "description": "The server-generated ID of the report.",
- "type": "string"
- },
- "jobExpireTime": {
- "description": "The date/time when the job this report belongs to will expire/expired.",
- "format": "google-datetime",
- "type": "string"
- },
- "endTime": {
- "description": "The end of the time period that the report instance covers. The value is\nexclusive.",
- "format": "google-datetime",
- "type": "string"
- },
- "downloadUrl": {
- "description": "The URL from which the report can be downloaded (max. 1000 characters).",
- "type": "string"
- },
- "startTime": {
- "description": "The start of the time period that the report instance covers. The value is\ninclusive.",
- "format": "google-datetime",
- "type": "string"
- },
- "createTime": {
- "description": "The date/time when this report was created.",
- "format": "google-datetime",
- "type": "string"
- },
- "jobId": {
- "description": "The ID of the job that created this report.",
- "type": "string"
- }
- }
- },
- "ReportType": {
- "id": "ReportType",
- "description": "A report type.",
- "type": "object",
- "properties": {
- "name": {
- "description": "The name of the report type (max. 100 characters).",
- "type": "string"
- },
- "id": {
- "description": "The ID of the report type (max. 100 characters).",
- "type": "string"
- },
- "systemManaged": {
- "description": "True if this a system-managed report type; otherwise false. Reporting jobs\nfor system-managed report types are created automatically and can thus not\nbe used in the `CreateJob` method.",
- "type": "boolean"
- },
- "deprecateTime": {
- "description": "The date/time when this report type was/will be deprecated.",
- "format": "google-datetime",
- "type": "string"
- }
- }
- },
- "ListReportTypesResponse": {
- "id": "ListReportTypesResponse",
- "description": "Response message for ReportingService.ListReportTypes.",
- "type": "object",
- "properties": {
- "reportTypes": {
- "description": "The list of report types.",
- "type": "array",
- "items": {
- "$ref": "ReportType"
- }
- },
- "nextPageToken": {
- "description": "A token to retrieve next page of results.\nPass this value in the\nListReportTypesRequest.page_token\nfield in the subsequent call to `ListReportTypes` method to retrieve the next\npage of results.",
- "type": "string"
- }
- }
- },
- "ListJobsResponse": {
- "id": "ListJobsResponse",
- "description": "Response message for ReportingService.ListJobs.",
- "type": "object",
- "properties": {
- "jobs": {
- "description": "The list of jobs.",
- "type": "array",
- "items": {
- "$ref": "Job"
- }
- },
- "nextPageToken": {
- "description": "A token to retrieve next page of results.\nPass this value in the\nListJobsRequest.page_token\nfield in the subsequent call to `ListJobs` method to retrieve the next\npage of results.",
- "type": "string"
- }
- }
- },
"Job": {
- "id": "Job",
"description": "A job creating reports of a specific type.",
"type": "object",
"properties": {
@@ -207,24 +408,25 @@
"type": "boolean"
},
"createTime": {
+ "format": "google-datetime",
"description": "The creation date/time of the job.",
- "format": "google-datetime",
- "type": "string"
- },
- "expireTime": {
- "description": "The date/time when this job will expire/expired. After a job expired, no\nnew reports are generated.",
- "format": "google-datetime",
"type": "string"
},
"reportTypeId": {
"description": "The type of reports this job creates. Corresponds to the ID of a\nReportType.",
"type": "string"
},
+ "expireTime": {
+ "format": "google-datetime",
+ "description": "The date/time when this job will expire/expired. After a job expired, no\nnew reports are generated.",
+ "type": "string"
+ },
"name": {
"description": "The name of the job (max. 100 characters).",
"type": "string"
}
- }
+ },
+ "id": "Job"
},
"ListReportsResponse": {
"description": "Response message for ReportingService.ListReports.",
@@ -232,10 +434,10 @@
"properties": {
"reports": {
"description": "The list of report types.",
- "type": "array",
"items": {
"$ref": "Report"
- }
+ },
+ "type": "array"
},
"nextPageToken": {
"description": "A token to retrieve next page of results.\nPass this value in the\nListReportsRequest.page_token\nfield in the subsequent call to `ListReports` method to retrieve the next\npage of results.",
@@ -245,7 +447,6 @@
"id": "ListReportsResponse"
},
"Media": {
- "id": "Media",
"description": "Media resource.",
"type": "object",
"properties": {
@@ -253,12 +454,118 @@
"description": "Name of the media resource.",
"type": "string"
}
- }
+ },
+ "id": "Media"
+ },
+ "ReportType": {
+ "description": "A report type.",
+ "type": "object",
+ "properties": {
+ "deprecateTime": {
+ "format": "google-datetime",
+ "description": "The date/time when this report type was/will be deprecated.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the report type (max. 100 characters).",
+ "type": "string"
+ },
+ "systemManaged": {
+ "description": "True if this a system-managed report type; otherwise false. Reporting jobs\nfor system-managed report types are created automatically and can thus not\nbe used in the `CreateJob` method.",
+ "type": "boolean"
+ },
+ "id": {
+ "description": "The ID of the report type (max. 100 characters).",
+ "type": "string"
+ }
+ },
+ "id": "ReportType"
+ },
+ "ListReportTypesResponse": {
+ "description": "Response message for ReportingService.ListReportTypes.",
+ "type": "object",
+ "properties": {
+ "reportTypes": {
+ "description": "The list of report types.",
+ "items": {
+ "$ref": "ReportType"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve next page of results.\nPass this value in the\nListReportTypesRequest.page_token\nfield in the subsequent call to `ListReportTypes` method to retrieve the next\npage of results.",
+ "type": "string"
+ }
+ },
+ "id": "ListReportTypesResponse"
+ },
+ "Report": {
+ "description": "A report's metadata including the URL from which the report itself can be\ndownloaded.",
+ "type": "object",
+ "properties": {
+ "jobExpireTime": {
+ "format": "google-datetime",
+ "description": "The date/time when the job this report belongs to will expire/expired.",
+ "type": "string"
+ },
+ "endTime": {
+ "format": "google-datetime",
+ "description": "The end of the time period that the report instance covers. The value is\nexclusive.",
+ "type": "string"
+ },
+ "downloadUrl": {
+ "description": "The URL from which the report can be downloaded (max. 1000 characters).",
+ "type": "string"
+ },
+ "startTime": {
+ "format": "google-datetime",
+ "description": "The start of the time period that the report instance covers. The value is\ninclusive.",
+ "type": "string"
+ },
+ "createTime": {
+ "format": "google-datetime",
+ "description": "The date/time when this report was created.",
+ "type": "string"
+ },
+ "jobId": {
+ "description": "The ID of the job that created this report.",
+ "type": "string"
+ },
+ "id": {
+ "description": "The server-generated ID of the report.",
+ "type": "string"
+ }
+ },
+ "id": "Report"
+ },
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "type": "object",
+ "properties": {},
+ "id": "Empty"
+ },
+ "ListJobsResponse": {
+ "description": "Response message for ReportingService.ListJobs.",
+ "type": "object",
+ "properties": {
+ "nextPageToken": {
+ "description": "A token to retrieve next page of results.\nPass this value in the\nListJobsRequest.page_token\nfield in the subsequent call to `ListJobs` method to retrieve the next\npage of results.",
+ "type": "string"
+ },
+ "jobs": {
+ "description": "The list of jobs.",
+ "items": {
+ "$ref": "Job"
+ },
+ "type": "array"
+ }
+ },
+ "id": "ListJobsResponse"
}
},
"icons": {
- "x16": "http://www.google.com/images/icons/product/search-16.gif",
- "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ "x32": "http://www.google.com/images/icons/product/search-32.gif",
+ "x16": "http://www.google.com/images/icons/product/search-16.gif"
},
"protocol": "rest",
"version": "v1",
@@ -276,322 +583,15 @@
}
}
},
- "kind": "discovery#restDescription",
- "description": "Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files.",
"servicePath": "",
+ "description": "Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files.",
+ "kind": "discovery#restDescription",
"rootUrl": "https://youtubereporting.googleapis.com/",
"basePath": "",
"ownerDomain": "google.com",
"name": "youtubereporting",
"batchPath": "batch",
- "id": "youtubereporting:v1",
+ "revision": "20170823",
"documentationLink": "https://developers.google.com/youtube/reporting/v1/reports/",
- "revision": "20170607",
- "title": "YouTube Reporting API",
- "discoveryVersion": "v1",
- "ownerName": "Google",
- "resources": {
- "jobs": {
- "methods": {
- "create": {
- "response": {
- "$ref": "Job"
- },
- "parameterOrder": [],
- "httpMethod": "POST",
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "parameters": {
- "onBehalfOfContentOwner": {
- "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
- "type": "string",
- "location": "query"
- }
- },
- "flatPath": "v1/jobs",
- "path": "v1/jobs",
- "id": "youtubereporting.jobs.create",
- "description": "Creates a job and returns it.",
- "request": {
- "$ref": "Job"
- }
- },
- "delete": {
- "httpMethod": "DELETE",
- "response": {
- "$ref": "Empty"
- },
- "parameterOrder": [
- "jobId"
- ],
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "parameters": {
- "onBehalfOfContentOwner": {
- "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
- "type": "string",
- "location": "query"
- },
- "jobId": {
- "location": "path",
- "description": "The ID of the job to delete.",
- "required": true,
- "type": "string"
- }
- },
- "flatPath": "v1/jobs/{jobId}",
- "id": "youtubereporting.jobs.delete",
- "path": "v1/jobs/{jobId}",
- "description": "Deletes a job."
- },
- "list": {
- "id": "youtubereporting.jobs.list",
- "path": "v1/jobs",
- "description": "Lists jobs.",
- "httpMethod": "GET",
- "parameterOrder": [],
- "response": {
- "$ref": "ListJobsResponse"
- },
- "parameters": {
- "onBehalfOfContentOwner": {
- "location": "query",
- "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
- "type": "string"
- },
- "pageToken": {
- "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListJobs` method.",
- "type": "string",
- "location": "query"
- },
- "includeSystemManaged": {
- "location": "query",
- "description": "If set to true, also system-managed jobs will be returned; otherwise only\nuser-created jobs will be returned. System-managed jobs can neither be\nmodified nor deleted.",
- "type": "boolean"
- },
- "pageSize": {
- "location": "query",
- "description": "Requested page size. Server may return fewer jobs than requested.\nIf unspecified, server will pick an appropriate default.",
- "format": "int32",
- "type": "integer"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "flatPath": "v1/jobs"
- },
- "get": {
- "parameters": {
- "jobId": {
- "location": "path",
- "description": "The ID of the job to retrieve.",
- "required": true,
- "type": "string"
- },
- "onBehalfOfContentOwner": {
- "location": "query",
- "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "flatPath": "v1/jobs/{jobId}",
- "id": "youtubereporting.jobs.get",
- "path": "v1/jobs/{jobId}",
- "description": "Gets a job.",
- "httpMethod": "GET",
- "response": {
- "$ref": "Job"
- },
- "parameterOrder": [
- "jobId"
- ]
- }
- },
- "resources": {
- "reports": {
- "methods": {
- "list": {
- "path": "v1/jobs/{jobId}/reports",
- "id": "youtubereporting.jobs.reports.list",
- "description": "Lists reports created by a specific job.\nReturns NOT_FOUND if the job does not exist.",
- "response": {
- "$ref": "ListReportsResponse"
- },
- "httpMethod": "GET",
- "parameterOrder": [
- "jobId"
- ],
- "parameters": {
- "jobId": {
- "location": "path",
- "description": "The ID of the job.",
- "required": true,
- "type": "string"
- },
- "createdAfter": {
- "description": "If set, only reports created after the specified date/time are returned.",
- "format": "google-datetime",
- "type": "string",
- "location": "query"
- },
- "pageToken": {
- "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportsResponse.next_page_token\nreturned in response to the previous call to the `ListReports` method.",
- "type": "string",
- "location": "query"
- },
- "startTimeAtOrAfter": {
- "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.",
- "format": "google-datetime",
- "type": "string",
- "location": "query"
- },
- "pageSize": {
- "location": "query",
- "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.",
- "format": "int32",
- "type": "integer"
- },
- "onBehalfOfContentOwner": {
- "location": "query",
- "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
- "type": "string"
- },
- "startTimeBefore": {
- "location": "query",
- "description": "If set, only reports whose start time is smaller than the specified\ndate/time are returned.",
- "format": "google-datetime",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "flatPath": "v1/jobs/{jobId}/reports"
- },
- "get": {
- "parameterOrder": [
- "jobId",
- "reportId"
- ],
- "response": {
- "$ref": "Report"
- },
- "httpMethod": "GET",
- "parameters": {
- "onBehalfOfContentOwner": {
- "location": "query",
- "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
- "type": "string"
- },
- "reportId": {
- "location": "path",
- "description": "The ID of the report to retrieve.",
- "required": true,
- "type": "string"
- },
- "jobId": {
- "description": "The ID of the job.",
- "required": true,
- "type": "string",
- "location": "path"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "flatPath": "v1/jobs/{jobId}/reports/{reportId}",
- "id": "youtubereporting.jobs.reports.get",
- "path": "v1/jobs/{jobId}/reports/{reportId}",
- "description": "Gets the metadata of a specific report."
- }
- }
- }
- }
- },
- "reportTypes": {
- "methods": {
- "list": {
- "parameters": {
- "pageToken": {
- "location": "query",
- "description": "A token identifying a page of results the server should return. Typically,\nthis is the value of\nListReportTypesResponse.next_page_token\nreturned in response to the previous call to the `ListReportTypes` method.",
- "type": "string"
- },
- "includeSystemManaged": {
- "description": "If set to true, also system-managed report types will be returned;\notherwise only the report types that can be used to create new reporting\njobs will be returned.",
- "type": "boolean",
- "location": "query"
- },
- "pageSize": {
- "location": "query",
- "description": "Requested page size. Server may return fewer report types than requested.\nIf unspecified, server will pick an appropriate default.",
- "format": "int32",
- "type": "integer"
- },
- "onBehalfOfContentOwner": {
- "location": "query",
- "description": "The content owner's external ID on which behalf the user is acting on. If\nnot set, the user is acting for himself (his own channel).",
- "type": "string"
- }
- },
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "flatPath": "v1/reportTypes",
- "id": "youtubereporting.reportTypes.list",
- "path": "v1/reportTypes",
- "description": "Lists report types.",
- "httpMethod": "GET",
- "response": {
- "$ref": "ListReportTypesResponse"
- },
- "parameterOrder": []
- }
- }
- },
- "media": {
- "methods": {
- "download": {
- "description": "Method for media download. Download is supported\non the URI `/v1/media/{+name}?alt=media`.",
- "supportsMediaDownload": true,
- "httpMethod": "GET",
- "parameterOrder": [
- "resourceName"
- ],
- "response": {
- "$ref": "Media"
- },
- "scopes": [
- "https://www.googleapis.com/auth/yt-analytics-monetary.readonly",
- "https://www.googleapis.com/auth/yt-analytics.readonly"
- ],
- "parameters": {
- "resourceName": {
- "description": "Name of the media that is being downloaded. See\nReadRequest.resource_name.",
- "required": true,
- "type": "string",
- "pattern": "^.+$",
- "location": "path"
- }
- },
- "flatPath": "v1/media/{mediaId}",
- "id": "youtubereporting.media.download",
- "path": "v1/media/{+resourceName}"
- }
- }
- }
- }
+ "id": "youtubereporting:v1"
}