{
  "ownerDomain": "google.com",
  "batchPath": "batch",
  "parameters": {
    "prettyPrint": {
      "description": "Returns response with indentations and line breaks.",
      "type": "boolean",
      "default": "true",
      "location": "query"
    },
    "callback": {
      "type": "string",
      "location": "query",
      "description": "JSONP"
    },
    "fields": {
      "location": "query",
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response."
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "type": "string",
      "location": "query"
    },
    "alt": {
      "type": "string",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "default": "json",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "description": "Data format for response.",
      "location": "query"
    },
    "key": {
      "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."
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "type": "string",
      "location": "query"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "$.xgafv": {
      "enum": [
        "1",
        "2"
      ],
      "type": "string",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "description": "V1 error format."
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    }
  },
  "basePath": "",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "baseUrl": "https://deploymentmanager.googleapis.com/",
  "id": "deploymentmanager:alpha",
  "title": "Cloud Deployment Manager V2 API",
  "revision": "20201113",
  "kind": "discovery#restDescription",
  "documentationLink": "https://cloud.google.com/deployment-manager",
  "version": "alpha",
  "rootUrl": "https://deploymentmanager.googleapis.com/",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/ndev.cloudman.readonly": {
          "description": "View your Google Cloud Platform management resources and deployment status information"
        },
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        },
        "https://www.googleapis.com/auth/ndev.cloudman": {
          "description": "View and manage your Google Cloud Platform management resources and deployment status information"
        },
        "https://www.googleapis.com/auth/cloud-platform.read-only": {
          "description": "View your data across Google Cloud Platform services"
        }
      }
    }
  },
  "schemas": {
    "CompositeTypesListResponse": {
      "properties": {
        "compositeTypes": {
          "type": "array",
          "description": "Output only. A list of resource composite types supported by Deployment Manager.",
          "items": {
            "$ref": "CompositeType"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "A token used to continue a truncated list request."
        }
      },
      "id": "CompositeTypesListResponse",
      "description": "A response that returns all Composite Types supported by Deployment Manager",
      "type": "object"
    },
    "TestPermissionsResponse": {
      "type": "object",
      "id": "TestPermissionsResponse",
      "properties": {
        "permissions": {
          "items": {
            "type": "string"
          },
          "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.",
          "type": "array"
        }
      }
    },
    "PollingOptions": {
      "type": "object",
      "id": "PollingOptions",
      "properties": {
        "failCondition": {
          "type": "string",
          "description": "JsonPath expression that determines if the request failed."
        },
        "pollingLink": {
          "type": "string",
          "description": "JsonPath expression that evaluates to string, it indicates where to poll."
        },
        "diagnostics": {
          "type": "array",
          "items": {
            "$ref": "Diagnostic"
          },
          "description": "An array of diagnostics to be collected by Deployment Manager, these diagnostics will be displayed to the user."
        },
        "finishCondition": {
          "description": "JsonPath expression that determines if the request is completed.",
          "type": "string"
        },
        "targetLink": {
          "description": "JsonPath expression, after polling is completed, indicates where to fetch the resource.",
          "type": "string"
        }
      }
    },
    "Resource": {
      "properties": {
        "properties": {
          "type": "string",
          "description": "Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML."
        },
        "updateTime": {
          "type": "string",
          "description": "Output only. Update timestamp in RFC3339 text format."
        },
        "update": {
          "$ref": "ResourceUpdate",
          "description": "Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here."
        },
        "finalProperties": {
          "type": "string",
          "description": "Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML."
        },
        "lastUsedCredential": {
          "$ref": "Credential",
          "description": "Output only. The last used credential that successfully created/updated the resource."
        },
        "id": {
          "format": "uint64",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Output only. The name of the resource as it appears in the YAML config."
        },
        "manifest": {
          "type": "string",
          "description": "Output only. URL of the manifest representing the current configuration of this resource."
        },
        "url": {
          "description": "Output only. The URL of the actual resource.",
          "type": "string"
        },
        "accessControl": {
          "$ref": "ResourceAccessControl",
          "description": "The Access Control Policy set on this resource."
        },
        "insertTime": {
          "type": "string",
          "description": "Output only. Creation timestamp in RFC3339 text format."
        },
        "runtimePolicies": {
          "type": "array",
          "description": "Output only. In case this is an action, it will show the runtimePolicies on which this action will run in the deployment",
          "items": {
            "type": "string",
            "enum": [
              "CREATE",
              "DELETE",
              "UPDATE_ON_CHANGE",
              "UPDATE_ALWAYS"
            ],
            "enumDescriptions": [
              "The action will only be fired during create.",
              "The action will only be fired when the action is removed from the deployment.",
              "The action will fire during create, and if there is any changes on the inputs.",
              "The action will fire during create, and every time there is an update to the deployment."
            ]
          }
        },
        "type": {
          "type": "string",
          "description": "Output only. The type of the resource, for example `compute.v1.instance`, or `cloudfunctions.v1beta1.function`."
        },
        "warnings": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string",
                      "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)."
                    },
                    "value": {
                      "type": "string",
                      "description": "[Output Only] A warning data value corresponding to the key."
                    }
                  }
                },
                "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } "
              },
              "message": {
                "type": "string",
                "description": "[Output Only] A human-readable description of the warning code."
              },
              "code": {
                "type": "string",
                "enumDescriptions": [
                  "A link to a deprecated resource was created.",
                  "No results are present on a particular list page.",
                  "A given scope cannot be reached.",
                  "The route's nextHopIp address is not assigned to an instance on the network.",
                  "The route's nextHopInstance URL refers to an instance that does not exist.",
                  "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.",
                  "The route's next hop instance cannot ip forward.",
                  "The route's next hop instance does not have a status of RUNNING.",
                  "The operation involved use of an injected kernel, which is deprecated.",
                  "The user attempted to use a resource that requires a TOS they have not accepted.",
                  "The user created a boot disk that is larger than image size.",
                  "One or more of the resources set to auto-delete could not be deleted because they were in use.",
                  "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.",
                  "Error which is not critical. We decided to continue the process despite the mentioned error.",
                  "Warning about failed cleanup of transient changes made by a failed operation.",
                  "Warning that value of a field has been overridden. Deprecated unused field.",
                  "Warning that a resource is in use.",
                  "A resource depends on a missing type",
                  "Warning that is present in an external api call",
                  "When a resource schema validation is ignored.",
                  "When undeclared properties in the schema are present",
                  "When deploying and at least one of the resources has a type marked as experimental",
                  "When deploying and at least one of the resources has a type marked as deprecated",
                  "Success is reported, but some results may be missing due to errors",
                  "When deploying a deployment with a exceedingly large number of resources"
                ],
                "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.",
                "enum": [
                  "DEPRECATED_RESOURCE_USED",
                  "NO_RESULTS_ON_PAGE",
                  "UNREACHABLE",
                  "NEXT_HOP_ADDRESS_NOT_ASSIGNED",
                  "NEXT_HOP_INSTANCE_NOT_FOUND",
                  "NEXT_HOP_INSTANCE_NOT_ON_NETWORK",
                  "NEXT_HOP_CANNOT_IP_FORWARD",
                  "NEXT_HOP_NOT_RUNNING",
                  "INJECTED_KERNELS_DEPRECATED",
                  "REQUIRED_TOS_AGREEMENT",
                  "DISK_SIZE_LARGER_THAN_IMAGE_SIZE",
                  "RESOURCE_NOT_DELETED",
                  "SINGLE_INSTANCE_PROPERTY_TEMPLATE",
                  "NOT_CRITICAL_ERROR",
                  "CLEANUP_FAILED",
                  "FIELD_VALUE_OVERRIDEN",
                  "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING",
                  "MISSING_TYPE_DEPENDENCY",
                  "EXTERNAL_API_WARNING",
                  "SCHEMA_VALIDATION_IGNORED",
                  "UNDECLARED_PROPERTIES",
                  "EXPERIMENTAL_TYPE_USED",
                  "DEPRECATED_TYPE_USED",
                  "PARTIAL_SUCCESS",
                  "LARGE_DEPLOYMENT_WARNING"
                ]
              }
            }
          },
          "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated."
        }
      },
      "type": "object",
      "id": "Resource"
    },
    "TypeLabelEntry": {
      "properties": {
        "key": {
          "type": "string",
          "description": "Key of the label"
        },
        "value": {
          "type": "string",
          "description": "Value of the label"
        }
      },
      "id": "TypeLabelEntry",
      "description": "Label object for Types",
      "type": "object"
    },
    "ImportFile": {
      "type": "object",
      "id": "ImportFile",
      "properties": {
        "name": {
          "type": "string",
          "description": "The name of the file."
        },
        "content": {
          "description": "The contents of the file.",
          "type": "string"
        }
      }
    },
    "ManifestsListResponse": {
      "description": "A response containing a partial list of manifests and a page token used to build the next request if the request has been truncated.",
      "id": "ManifestsListResponse",
      "type": "object",
      "properties": {
        "manifests": {
          "items": {
            "$ref": "Manifest"
          },
          "description": "Output only. Manifests contained in this list response.",
          "type": "array"
        },
        "nextPageToken": {
          "description": "Output only. A token used to continue a truncated list request.",
          "type": "string"
        }
      }
    },
    "TargetConfiguration": {
      "properties": {
        "config": {
          "description": "The configuration to use for this deployment.",
          "$ref": "ConfigFile"
        },
        "imports": {
          "description": "Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template.",
          "items": {
            "$ref": "ImportFile"
          },
          "type": "array"
        }
      },
      "id": "TargetConfiguration",
      "type": "object"
    },
    "TypeInfo": {
      "type": "object",
      "description": "Type Information. Contains detailed information about a composite type, base type, or base type with specific collection.",
      "id": "TypeInfo",
      "properties": {
        "title": {
          "description": "The title on the API descriptor URL provided.",
          "type": "string"
        },
        "kind": {
          "description": "Output only. Type of the output. Always `deploymentManager#TypeInfo` for TypeInfo.",
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "The description of the type."
        },
        "documentationLink": {
          "type": "string",
          "description": "For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field will be empty."
        },
        "selfLink": {
          "description": "Output only. Self link for the type provider.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "The base type or composite type name."
        },
        "schema": {
          "$ref": "TypeInfoSchemaInfo",
          "description": "For base types with a collection, we return a schema and documentation link For template types, we return only a schema"
        }
      }
    },
    "DeploymentsCancelPreviewRequest": {
      "properties": {
        "fingerprint": {
          "type": "string",
          "format": "byte",
          "description": "Specifies a fingerprint for `cancelPreview()` requests. A fingerprint is a randomly generated value that must be provided in `cancelPreview()` requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to cancel a preview, this would prevent one of the requests). The fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a `get()` request on the deployment."
        }
      },
      "type": "object",
      "id": "DeploymentsCancelPreviewRequest"
    },
    "Options": {
      "description": "Options allows customized resource handling by Deployment Manager.",
      "properties": {
        "validationOptions": {
          "$ref": "ValidationOptions",
          "description": "Options for how to validate and process properties on a resource."
        },
        "asyncOptions": {
          "items": {
            "$ref": "AsyncOptions"
          },
          "description": "Options regarding how to thread async requests.",
          "type": "array"
        },
        "nameProperty": {
          "description": "The json path to the field in the resource JSON body into which the resource name should be mapped. Leaving this empty indicates that there should be no mapping performed.",
          "type": "string"
        },
        "inputMappings": {
          "type": "array",
          "description": "The mappings that apply for requests.",
          "items": {
            "$ref": "InputMapping"
          }
        }
      },
      "type": "object",
      "id": "Options"
    },
    "TypeInfoSchemaInfo": {
      "type": "object",
      "id": "TypeInfoSchemaInfo",
      "properties": {
        "output": {
          "type": "string",
          "description": "The properties that this composite type or base type collection exposes as output, these properties can be used for references, represented as json blob, format is: JSON Schema Draft V4"
        },
        "input": {
          "description": "The properties that this composite type or base type collection accept as input, represented as a json blob, format is: JSON Schema Draft V4",
          "type": "string"
        }
      }
    },
    "Policy": {
      "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members` to a single `role`. Members can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).",
      "type": "object",
      "id": "Policy",
      "properties": {
        "version": {
          "description": "Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
          "format": "int32",
          "type": "integer"
        },
        "etag": {
          "description": "`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. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost.",
          "format": "byte",
          "type": "string"
        },
        "bindings": {
          "items": {
            "$ref": "Binding"
          },
          "description": "Associates a list of `members` to a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one member.",
          "type": "array"
        },
        "auditConfigs": {
          "items": {
            "$ref": "AuditConfig"
          },
          "type": "array",
          "description": "Specifies cloud audit logging configuration for this policy."
        }
      }
    },
    "TypeProvidersListTypesResponse": {
      "properties": {
        "nextPageToken": {
          "description": "A token used to continue a truncated list request.",
          "type": "string"
        },
        "types": {
          "type": "array",
          "description": "Output only. A list of resource type info.",
          "items": {
            "$ref": "TypeInfo"
          }
        }
      },
      "id": "TypeProvidersListTypesResponse",
      "type": "object"
    },
    "ResourcesListResponse": {
      "id": "ResourcesListResponse",
      "description": "A response containing a partial list of resources and a page token used to build the next request if the request has been truncated.",
      "type": "object",
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "A token used to continue a truncated list request."
        },
        "resources": {
          "items": {
            "$ref": "Resource"
          },
          "description": "Resources contained in this list response.",
          "type": "array"
        }
      }
    },
    "DeploymentOutputEntry": {
      "properties": {
        "value": {
          "description": "Value of the label",
          "type": "string"
        },
        "key": {
          "type": "string",
          "description": "Key of the output"
        }
      },
      "type": "object",
      "id": "DeploymentOutputEntry",
      "description": "Output object for Deployments"
    },
    "Type": {
      "properties": {
        "base": {
          "$ref": "BaseType",
          "description": "Base Type (configurable service) that backs this Type."
        },
        "selfLink": {
          "type": "string",
          "description": "Output only. Server defined URL for the resource."
        },
        "description": {
          "type": "string",
          "description": "An optional textual description of the resource; provided by the client when the resource is created."
        },
        "insertTime": {
          "type": "string",
          "description": "Output only. Creation timestamp in RFC3339 text format."
        },
        "labels": {
          "type": "array",
          "description": "Map of One Platform labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?` Label values must be between 0 and 63 characters long and must conform to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.",
          "items": {
            "$ref": "TypeLabelEntry"
          }
        },
        "name": {
          "description": "Name of the type.",
          "type": "string"
        },
        "operation": {
          "description": "Output only. The Operation that most recently ran, or is currently running, on this type.",
          "$ref": "Operation"
        },
        "id": {
          "format": "uint64",
          "type": "string"
        }
      },
      "type": "object",
      "id": "Type",
      "description": "A resource type supported by Deployment Manager."
    },
    "Credential": {
      "description": "The credential used by Deployment Manager and TypeProvider. Only one of the options is permitted.",
      "id": "Credential",
      "properties": {
        "basicAuth": {
          "description": "Basic Auth Credential, only used by TypeProvider.",
          "$ref": "BasicAuth"
        },
        "serviceAccount": {
          "$ref": "ServiceAccount",
          "description": "Service Account Credential, only used by Deployment."
        },
        "useProjectDefault": {
          "type": "boolean",
          "description": "Specify to use the project default credential, only supported by Deployment."
        }
      },
      "type": "object"
    },
    "BaseType": {
      "id": "BaseType",
      "description": "BaseType that describes a service-backed Type.",
      "type": "object",
      "properties": {
        "descriptorUrl": {
          "description": "Descriptor Url for the this type.",
          "type": "string"
        },
        "credential": {
          "$ref": "Credential",
          "description": "Credential used when interacting with this type."
        },
        "options": {
          "description": "Options to apply when handling any resources in this service.",
          "$ref": "Options"
        },
        "collectionOverrides": {
          "type": "array",
          "description": "Allows resource handling overrides for specific collections",
          "items": {
            "$ref": "CollectionOverride"
          }
        }
      }
    },
    "TestPermissionsRequest": {
      "properties": {
        "permissions": {
          "items": {
            "type": "string"
          },
          "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.",
          "type": "array"
        }
      },
      "id": "TestPermissionsRequest",
      "type": "object"
    },
    "CollectionOverride": {
      "description": "CollectionOverride allows resource handling overrides for specific resources within a BaseType",
      "id": "CollectionOverride",
      "type": "object",
      "properties": {
        "collection": {
          "description": "The collection that identifies this resource within its service.",
          "type": "string"
        },
        "options": {
          "$ref": "Options",
          "description": "The options to apply to this resource-level override"
        },
        "methodMap": {
          "description": "Custom verb method mappings to support unordered list API mappings.",
          "$ref": "MethodMap"
        }
      }
    },
    "ConfigFile": {
      "id": "ConfigFile",
      "properties": {
        "content": {
          "description": "The contents of the file.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ResourceAccessControl": {
      "type": "object",
      "properties": {
        "gcpIamPolicy": {
          "type": "string",
          "description": "The GCP IAM Policy to set on the resource."
        }
      },
      "description": "The access controls set on the resource.",
      "id": "ResourceAccessControl"
    },
    "BasicAuth": {
      "type": "object",
      "properties": {
        "password": {
          "type": "string"
        },
        "user": {
          "type": "string"
        }
      },
      "id": "BasicAuth",
      "description": "Basic Auth used as a credential."
    },
    "Binding": {
      "id": "Binding",
      "type": "object",
      "description": "Associates `members` with a `role`.",
      "properties": {
        "members": {
          "items": {
            "type": "string"
          },
          "description": "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@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`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ",
          "type": "array"
        },
        "role": {
          "type": "string",
          "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`."
        },
        "condition": {
          "$ref": "Expr",
          "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)."
        }
      }
    },
    "GlobalSetPolicyRequest": {
      "properties": {
        "policy": {
          "$ref": "Policy",
          "description": "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 in general a valid policy but certain services (like Projects) might reject them."
        },
        "bindings": {
          "items": {
            "$ref": "Binding"
          },
          "type": "array",
          "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings."
        },
        "etag": {
          "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag.",
          "type": "string",
          "format": "byte"
        }
      },
      "type": "object",
      "id": "GlobalSetPolicyRequest"
    },
    "AuditLogConfig": {
      "id": "AuditLogConfig",
      "description": "Provides the configuration for logging a type of permissions. Example: { \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.",
      "properties": {
        "exemptedMembers": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members."
        },
        "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"
          ],
          "type": "string",
          "enum": [
            "LOG_TYPE_UNSPECIFIED",
            "ADMIN_READ",
            "DATA_WRITE",
            "DATA_READ"
          ],
          "description": "The log type that this config enables."
        }
      },
      "type": "object"
    },
    "AsyncOptions": {
      "description": "Async options that determine when a resource should finish.",
      "type": "object",
      "id": "AsyncOptions",
      "properties": {
        "pollingOptions": {
          "$ref": "PollingOptions",
          "description": "Deployment manager will poll instances for this API resource setting a RUNNING state, and blocking until polling conditions tell whether the resource is completed or failed."
        },
        "methodMatch": {
          "description": "Method regex where this policy will apply.",
          "type": "string"
        }
      }
    },
    "ResourceUpdate": {
      "properties": {
        "credential": {
          "description": "Output only. The credential that will be used creating/updating this resource.",
          "$ref": "Credential"
        },
        "finalProperties": {
          "description": "Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML.",
          "type": "string"
        },
        "error": {
          "description": "Output only. If errors are generated during update of the resource, this field will be populated.",
          "type": "object",
          "properties": {
            "errors": {
              "items": {
                "type": "object",
                "properties": {
                  "message": {
                    "description": "[Output Only] An optional, human-readable error message.",
                    "type": "string"
                  },
                  "location": {
                    "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.",
                    "type": "string"
                  },
                  "code": {
                    "type": "string",
                    "description": "[Output Only] The error type identifier for this error."
                  }
                }
              },
              "type": "array",
              "description": "[Output Only] The array of errors encountered while processing this operation."
            }
          }
        },
        "properties": {
          "description": "Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML.",
          "type": "string"
        },
        "warnings": {
          "type": "array",
          "description": "Output only. If warning messages are generated during processing of this resource, this field will be populated.",
          "items": {
            "properties": {
              "data": {
                "items": {
                  "properties": {
                    "value": {
                      "type": "string",
                      "description": "[Output Only] A warning data value corresponding to the key."
                    },
                    "key": {
                      "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).",
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ",
                "type": "array"
              },
              "message": {
                "type": "string",
                "description": "[Output Only] A human-readable description of the warning code."
              },
              "code": {
                "enumDescriptions": [
                  "A link to a deprecated resource was created.",
                  "No results are present on a particular list page.",
                  "A given scope cannot be reached.",
                  "The route's nextHopIp address is not assigned to an instance on the network.",
                  "The route's nextHopInstance URL refers to an instance that does not exist.",
                  "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.",
                  "The route's next hop instance cannot ip forward.",
                  "The route's next hop instance does not have a status of RUNNING.",
                  "The operation involved use of an injected kernel, which is deprecated.",
                  "The user attempted to use a resource that requires a TOS they have not accepted.",
                  "The user created a boot disk that is larger than image size.",
                  "One or more of the resources set to auto-delete could not be deleted because they were in use.",
                  "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.",
                  "Error which is not critical. We decided to continue the process despite the mentioned error.",
                  "Warning about failed cleanup of transient changes made by a failed operation.",
                  "Warning that value of a field has been overridden. Deprecated unused field.",
                  "Warning that a resource is in use.",
                  "A resource depends on a missing type",
                  "Warning that is present in an external api call",
                  "When a resource schema validation is ignored.",
                  "When undeclared properties in the schema are present",
                  "When deploying and at least one of the resources has a type marked as experimental",
                  "When deploying and at least one of the resources has a type marked as deprecated",
                  "Success is reported, but some results may be missing due to errors",
                  "When deploying a deployment with a exceedingly large number of resources"
                ],
                "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.",
                "enum": [
                  "DEPRECATED_RESOURCE_USED",
                  "NO_RESULTS_ON_PAGE",
                  "UNREACHABLE",
                  "NEXT_HOP_ADDRESS_NOT_ASSIGNED",
                  "NEXT_HOP_INSTANCE_NOT_FOUND",
                  "NEXT_HOP_INSTANCE_NOT_ON_NETWORK",
                  "NEXT_HOP_CANNOT_IP_FORWARD",
                  "NEXT_HOP_NOT_RUNNING",
                  "INJECTED_KERNELS_DEPRECATED",
                  "REQUIRED_TOS_AGREEMENT",
                  "DISK_SIZE_LARGER_THAN_IMAGE_SIZE",
                  "RESOURCE_NOT_DELETED",
                  "SINGLE_INSTANCE_PROPERTY_TEMPLATE",
                  "NOT_CRITICAL_ERROR",
                  "CLEANUP_FAILED",
                  "FIELD_VALUE_OVERRIDEN",
                  "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING",
                  "MISSING_TYPE_DEPENDENCY",
                  "EXTERNAL_API_WARNING",
                  "SCHEMA_VALIDATION_IGNORED",
                  "UNDECLARED_PROPERTIES",
                  "EXPERIMENTAL_TYPE_USED",
                  "DEPRECATED_TYPE_USED",
                  "PARTIAL_SUCCESS",
                  "LARGE_DEPLOYMENT_WARNING"
                ],
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        "accessControl": {
          "$ref": "ResourceAccessControl",
          "description": "The Access Control Policy to set on this resource after updating the resource itself."
        },
        "manifest": {
          "description": "Output only. URL of the manifest representing the update configuration of this resource.",
          "type": "string"
        },
        "state": {
          "enumDescriptions": [
            "There are changes pending for this resource.",
            "The service is executing changes on the resource.",
            "The service is previewing changes on the resource.",
            "The service has failed to change the resource.",
            "The service has aborted trying to change the resource."
          ],
          "type": "string",
          "description": "Output only. The state of the resource.",
          "enum": [
            "PENDING",
            "IN_PROGRESS",
            "IN_PREVIEW",
            "FAILED",
            "ABORTED"
          ]
        },
        "intent": {
          "enum": [
            "CREATE_OR_ACQUIRE",
            "DELETE",
            "ACQUIRE",
            "UPDATE",
            "ABANDON",
            "CREATE"
          ],
          "description": "Output only. The intent of the resource: `PREVIEW`, `UPDATE`, or `CANCEL`.",
          "enumDescriptions": [
            "The resource is scheduled to be created, or if it already exists, acquired.",
            "The resource is scheduled to be deleted.",
            "The resource is scheduled to be acquired.",
            "The resource is scheduled to be updated via the UPDATE method.",
            "The resource is scheduled to be abandoned.",
            "The resource is scheduled to be created."
          ],
          "type": "string"
        },
        "runtimePolicies": {
          "type": "array",
          "description": "Output only. In case this is an action, it will show the runtimePolicies that this action will have after updating the deployment.",
          "items": {
            "enum": [
              "CREATE",
              "DELETE",
              "UPDATE_ON_CHANGE",
              "UPDATE_ALWAYS"
            ],
            "type": "string",
            "enumDescriptions": [
              "The action will only be fired during create.",
              "The action will only be fired when the action is removed from the deployment.",
              "The action will fire during create, and if there is any changes on the inputs.",
              "The action will fire during create, and every time there is an update to the deployment."
            ]
          }
        }
      },
      "id": "ResourceUpdate",
      "type": "object"
    },
    "InputMapping": {
      "id": "InputMapping",
      "description": "InputMapping creates a 'virtual' property that will be injected into the properties before sending the request to the underlying API.",
      "properties": {
        "methodMatch": {
          "type": "string",
          "description": "Regex to evaluate on method to decide if input applies."
        },
        "location": {
          "type": "string",
          "enumDescriptions": [
            "",
            "",
            "",
            "",
            ""
          ],
          "description": "The location where this mapping applies.",
          "enum": [
            "UNKNOWN",
            "PATH",
            "QUERY",
            "BODY",
            "HEADER"
          ]
        },
        "fieldName": {
          "description": "The name of the field that is going to be injected.",
          "type": "string"
        },
        "value": {
          "description": "A jsonPath expression to select an element.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "DeploymentsListResponse": {
      "description": "A response containing a partial list of deployments and a page token used to build the next request if the request has been truncated.",
      "type": "object",
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "Output only. A token used to continue a truncated list request."
        },
        "deployments": {
          "items": {
            "$ref": "Deployment"
          },
          "type": "array",
          "description": "Output only. The deployments contained in this response."
        }
      },
      "id": "DeploymentsListResponse"
    },
    "Manifest": {
      "properties": {
        "imports": {
          "description": "Output only. The imported files for this manifest.",
          "items": {
            "$ref": "ImportFile"
          },
          "type": "array"
        },
        "name": {
          "type": "string",
          "description": "Output only. The name of the manifest."
        },
        "layout": {
          "description": "Output only. The YAML layout for this manifest.",
          "type": "string"
        },
        "selfLink": {
          "type": "string",
          "description": "Output only. Self link for the manifest."
        },
        "insertTime": {
          "description": "Output only. Creation timestamp in RFC3339 text format.",
          "type": "string"
        },
        "config": {
          "description": "Output only. The YAML configuration for this manifest.",
          "$ref": "ConfigFile"
        },
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "expandedConfig": {
          "type": "string",
          "description": "Output only. The fully-expanded configuration file, including any templates and references."
        }
      },
      "type": "object",
      "id": "Manifest"
    },
    "Operation": {
      "description": "Represents an Operation resource. Google Compute Engine has three Operation resources: * [Global](/compute/docs/reference/rest/{$api_version}/globalOperations) * [Regional](/compute/docs/reference/rest/{$api_version}/regionOperations) * [Zonal](/compute/docs/reference/rest/{$api_version}/zoneOperations) You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. Operations can be global, regional or zonal. - For global operations, use the `globalOperations` resource. - For regional operations, use the `regionOperations` resource. - For zonal operations, use the `zonalOperations` resource. For more information, read Global, Regional, and Zonal Resources.",
      "id": "Operation",
      "properties": {
        "warnings": {
          "items": {
            "type": "object",
            "properties": {
              "data": {
                "items": {
                  "type": "object",
                  "properties": {
                    "value": {
                      "description": "[Output Only] A warning data value corresponding to the key.",
                      "type": "string"
                    },
                    "key": {
                      "type": "string",
                      "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)."
                    }
                  }
                },
                "type": "array",
                "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } "
              },
              "code": {
                "enumDescriptions": [
                  "A link to a deprecated resource was created.",
                  "No results are present on a particular list page.",
                  "A given scope cannot be reached.",
                  "The route's nextHopIp address is not assigned to an instance on the network.",
                  "The route's nextHopInstance URL refers to an instance that does not exist.",
                  "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.",
                  "The route's next hop instance cannot ip forward.",
                  "The route's next hop instance does not have a status of RUNNING.",
                  "The operation involved use of an injected kernel, which is deprecated.",
                  "The user attempted to use a resource that requires a TOS they have not accepted.",
                  "The user created a boot disk that is larger than image size.",
                  "One or more of the resources set to auto-delete could not be deleted because they were in use.",
                  "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.",
                  "Error which is not critical. We decided to continue the process despite the mentioned error.",
                  "Warning about failed cleanup of transient changes made by a failed operation.",
                  "Warning that value of a field has been overridden. Deprecated unused field.",
                  "Warning that a resource is in use.",
                  "A resource depends on a missing type",
                  "Warning that is present in an external api call",
                  "When a resource schema validation is ignored.",
                  "When undeclared properties in the schema are present",
                  "When deploying and at least one of the resources has a type marked as experimental",
                  "When deploying and at least one of the resources has a type marked as deprecated",
                  "Success is reported, but some results may be missing due to errors",
                  "When deploying a deployment with a exceedingly large number of resources"
                ],
                "enum": [
                  "DEPRECATED_RESOURCE_USED",
                  "NO_RESULTS_ON_PAGE",
                  "UNREACHABLE",
                  "NEXT_HOP_ADDRESS_NOT_ASSIGNED",
                  "NEXT_HOP_INSTANCE_NOT_FOUND",
                  "NEXT_HOP_INSTANCE_NOT_ON_NETWORK",
                  "NEXT_HOP_CANNOT_IP_FORWARD",
                  "NEXT_HOP_NOT_RUNNING",
                  "INJECTED_KERNELS_DEPRECATED",
                  "REQUIRED_TOS_AGREEMENT",
                  "DISK_SIZE_LARGER_THAN_IMAGE_SIZE",
                  "RESOURCE_NOT_DELETED",
                  "SINGLE_INSTANCE_PROPERTY_TEMPLATE",
                  "NOT_CRITICAL_ERROR",
                  "CLEANUP_FAILED",
                  "FIELD_VALUE_OVERRIDEN",
                  "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING",
                  "MISSING_TYPE_DEPENDENCY",
                  "EXTERNAL_API_WARNING",
                  "SCHEMA_VALIDATION_IGNORED",
                  "UNDECLARED_PROPERTIES",
                  "EXPERIMENTAL_TYPE_USED",
                  "DEPRECATED_TYPE_USED",
                  "PARTIAL_SUCCESS",
                  "LARGE_DEPLOYMENT_WARNING"
                ],
                "type": "string",
                "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response."
              },
              "message": {
                "type": "string",
                "description": "[Output Only] A human-readable description of the warning code."
              }
            }
          },
          "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.",
          "type": "array"
        },
        "description": {
          "type": "string",
          "description": "[Output Only] A textual description of the operation, which is set when the operation is created."
        },
        "region": {
          "description": "[Output Only] The URL of the region where the operation resides. Only applicable when performing regional operations.",
          "type": "string"
        },
        "zone": {
          "type": "string",
          "description": "[Output Only] The URL of the zone where the operation resides. Only applicable when performing per-zone operations."
        },
        "targetLink": {
          "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.",
          "type": "string"
        },
        "httpErrorMessage": {
          "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`.",
          "type": "string"
        },
        "user": {
          "type": "string",
          "description": "[Output Only] User who requested the operation, for example: `user@example.com`."
        },
        "startTime": {
          "type": "string",
          "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format."
        },
        "kind": {
          "description": "[Output Only] Type of the resource. Always `compute#operation` for Operation resources.",
          "type": "string",
          "default": "deploymentmanager#operation"
        },
        "selfLink": {
          "description": "[Output Only] Server-defined URL for the resource.",
          "type": "string"
        },
        "targetId": {
          "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.",
          "format": "uint64",
          "type": "string"
        },
        "progress": {
          "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.",
          "type": "integer",
          "format": "int32"
        },
        "clientOperationId": {
          "type": "string",
          "description": "[Output Only] The value of `requestId` if you provided it in the request. Not present otherwise."
        },
        "operationType": {
          "description": "[Output Only] The type of operation, such as `insert`, `update`, or `delete`, and so on.",
          "type": "string"
        },
        "error": {
          "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.",
          "type": "object",
          "properties": {
            "errors": {
              "items": {
                "properties": {
                  "location": {
                    "type": "string",
                    "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional."
                  },
                  "code": {
                    "type": "string",
                    "description": "[Output Only] The error type identifier for this error."
                  },
                  "message": {
                    "type": "string",
                    "description": "[Output Only] An optional, human-readable error message."
                  }
                },
                "type": "object"
              },
              "description": "[Output Only] The array of errors encountered while processing this operation.",
              "type": "array"
            }
          }
        },
        "endTime": {
          "type": "string",
          "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format."
        },
        "creationTimestamp": {
          "type": "string",
          "description": "[Deprecated] This field is deprecated."
        },
        "name": {
          "type": "string",
          "description": "[Output Only] Name of the operation."
        },
        "insertTime": {
          "type": "string",
          "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format."
        },
        "statusMessage": {
          "type": "string",
          "description": "[Output Only] An optional textual description of the current status of the operation."
        },
        "status": {
          "enum": [
            "PENDING",
            "RUNNING",
            "DONE"
          ],
          "enumDescriptions": [
            "",
            "",
            ""
          ],
          "type": "string",
          "description": "[Output Only] The status of the operation, which can be one of the following: `PENDING`, `RUNNING`, or `DONE`."
        },
        "id": {
          "description": "[Output Only] The unique identifier for the operation. This identifier is defined by the server.",
          "type": "string",
          "format": "uint64"
        },
        "httpErrorStatusCode": {
          "type": "integer",
          "format": "int32",
          "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a `404` means the resource was not found."
        }
      },
      "type": "object"
    },
    "TypeProvidersListResponse": {
      "description": "A response that returns all Type Providers supported by Deployment Manager",
      "id": "TypeProvidersListResponse",
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "A token used to continue a truncated list request."
        },
        "typeProviders": {
          "items": {
            "$ref": "TypeProvider"
          },
          "type": "array",
          "description": "Output only. A list of resource type providers supported by Deployment Manager."
        }
      },
      "type": "object"
    },
    "TypeProvider": {
      "id": "TypeProvider",
      "description": "A type provider that describes a service-backed Type.",
      "properties": {
        "labels": {
          "description": "Map of One Platform labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?` Label values must be between 0 and 63 characters long and must conform to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`",
          "items": {
            "$ref": "TypeProviderLabelEntry"
          },
          "type": "array"
        },
        "credential": {
          "$ref": "Credential",
          "description": "Credential used when interacting with this type."
        },
        "description": {
          "description": "An optional textual description of the resource; provided by the client when the resource is created.",
          "type": "string"
        },
        "operation": {
          "$ref": "Operation",
          "description": "Output only. The Operation that most recently ran, or is currently running, on this type provider."
        },
        "insertTime": {
          "type": "string",
          "description": "Output only. Creation timestamp in RFC3339 text format."
        },
        "name": {
          "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.",
          "type": "string"
        },
        "id": {
          "description": "Output only. Unique identifier for the resource defined by the server.",
          "type": "string",
          "format": "uint64"
        },
        "collectionOverrides": {
          "items": {
            "$ref": "CollectionOverride"
          },
          "description": "Allows resource handling overrides for specific collections",
          "type": "array"
        },
        "customCertificateAuthorityRoots": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of up to 2 custom certificate authority roots to use for TLS authentication when making calls on behalf of this type provider. If set, TLS authentication will exclusively use these roots instead of relying on publicly trusted certificate authorities when validating TLS certificate authenticity. The certificates must be in base64-encoded PEM format. The maximum size of each certificate must not exceed 10KB."
        },
        "descriptorUrl": {
          "description": "Descriptor Url for the this type provider.",
          "type": "string"
        },
        "options": {
          "description": "Options to apply when handling any resources in this service.",
          "$ref": "Options"
        },
        "selfLink": {
          "description": "Output only. Self link for the type provider.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CompositeTypeLabelEntry": {
      "properties": {
        "key": {
          "type": "string",
          "description": "Key of the label"
        },
        "value": {
          "type": "string",
          "description": "Value of the label"
        }
      },
      "description": "Label object for CompositeTypes",
      "type": "object",
      "id": "CompositeTypeLabelEntry"
    },
    "DeploymentUpdateLabelEntry": {
      "description": "Label object for DeploymentUpdate",
      "type": "object",
      "properties": {
        "value": {
          "description": "Value of the label",
          "type": "string"
        },
        "key": {
          "description": "Key of the label",
          "type": "string"
        }
      },
      "id": "DeploymentUpdateLabelEntry"
    },
    "ServiceAccount": {
      "description": "Service Account used as a credential.",
      "type": "object",
      "properties": {
        "email": {
          "description": "The IAM service account email address like test@myproject.iam.gserviceaccount.com",
          "type": "string"
        }
      },
      "id": "ServiceAccount"
    },
    "DeploymentLabelEntry": {
      "description": "Label object for Deployments",
      "type": "object",
      "id": "DeploymentLabelEntry",
      "properties": {
        "key": {
          "description": "Key of the label",
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "Value of the label"
        }
      }
    },
    "AuditConfig": {
      "properties": {
        "auditLogConfigs": {
          "items": {
            "$ref": "AuditLogConfig"
          },
          "description": "The configuration for logging of each type of permission.",
          "type": "array"
        },
        "service": {
          "type": "string",
          "description": "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."
        }
      },
      "id": "AuditConfig",
      "type": "object",
      "description": "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 AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts jose@example.com from DATA_READ logging, and aliya@example.com from DATA_WRITE logging."
    },
    "Diagnostic": {
      "properties": {
        "field": {
          "type": "string",
          "description": "JsonPath expression on the resource that if non empty, indicates that this field needs to be extracted as a diagnostic."
        },
        "level": {
          "description": "Level to record this diagnostic.",
          "type": "string",
          "enum": [
            "UNKNOWN",
            "INFORMATION",
            "WARNING",
            "ERROR"
          ],
          "enumDescriptions": [
            "",
            "If level is informational, it only gets displayed as part of the resource.",
            "If level is warning, will end up in the resource as a warning.",
            "If level is error, it will indicate an error occurred after finishCondition is set, and this field will populate resource errors and operation errors."
          ]
        }
      },
      "id": "Diagnostic",
      "type": "object"
    },
    "DeploymentsStopRequest": {
      "id": "DeploymentsStopRequest",
      "type": "object",
      "properties": {
        "fingerprint": {
          "format": "byte",
          "type": "string",
          "description": "Specifies a fingerprint for `stop()` requests. A fingerprint is a randomly generated value that must be provided in `stop()` requests to perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update request while another user attempts to stop an ongoing update request, this would prevent a collision). The fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint value, perform a `get()` request on the deployment."
        }
      }
    },
    "MethodMap": {
      "id": "MethodMap",
      "properties": {
        "get": {
          "type": "string",
          "description": "The action identifier for the get method to be used for this collection"
        },
        "create": {
          "type": "string",
          "description": "The action identifier for the create method to be used for this collection"
        },
        "delete": {
          "description": "The action identifier for the delete method to be used for this collection",
          "type": "string"
        },
        "setIamPolicy": {
          "description": "The action identifier for the setIamPolicy method to be used for this collection",
          "type": "string"
        },
        "update": {
          "type": "string",
          "description": "The action identifier for the update method to be used for this collection"
        }
      },
      "type": "object",
      "description": "Deployment Manager will call these methods during the events of creation/deletion/update/get/setIamPolicy"
    },
    "Deployment": {
      "properties": {
        "update": {
          "$ref": "DeploymentUpdate",
          "description": "Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here."
        },
        "updateTime": {
          "description": "Output only. Update timestamp in RFC3339 text format.",
          "type": "string"
        },
        "manifest": {
          "description": "Output only. URL of the manifest representing the last manifest that was successfully deployed. If no manifest has been successfully deployed, this field will be absent.",
          "type": "string"
        },
        "operation": {
          "$ref": "Operation",
          "description": "Output only. The Operation that most recently ran, or is currently running, on this deployment."
        },
        "fingerprint": {
          "description": "Provides a fingerprint to use in requests to modify a deployment, such as `update()`, `stop()`, and `cancelPreview()` requests. A fingerprint is a randomly generated value that must be provided with `update()`, `stop()`, and `cancelPreview()` requests to perform optimistic locking. This ensures optimistic concurrency so that only one request happens at a time. The fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, perform a `get()` request to a deployment.",
          "type": "string",
          "format": "byte"
        },
        "selfLink": {
          "type": "string",
          "description": "Output only. Server defined URL for the resource."
        },
        "credential": {
          "description": "User provided default credential for the deployment.",
          "$ref": "Credential"
        },
        "description": {
          "description": "An optional user-provided description of the deployment.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash."
        },
        "id": {
          "type": "string",
          "format": "uint64"
        },
        "insertTime": {
          "description": "Output only. Creation timestamp in RFC3339 text format.",
          "type": "string"
        },
        "target": {
          "$ref": "TargetConfiguration",
          "description": "[Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates."
        },
        "labels": {
          "items": {
            "$ref": "DeploymentLabelEntry"
          },
          "description": "Map of One Platform labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?` Label values must be between 0 and 63 characters long and must conform to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.",
          "type": "array"
        },
        "outputs": {
          "items": {
            "$ref": "DeploymentOutputEntry"
          },
          "description": "Output only. List of outputs from the last manifest that deployed successfully.",
          "type": "array"
        }
      },
      "id": "Deployment",
      "type": "object"
    },
    "DeploymentUpdate": {
      "type": "object",
      "id": "DeploymentUpdate",
      "properties": {
        "labels": {
          "description": "Map of One Platform labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?` Label values must be between 0 and 63 characters long and must conform to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.",
          "items": {
            "$ref": "DeploymentUpdateLabelEntry"
          },
          "type": "array"
        },
        "manifest": {
          "type": "string",
          "description": "Output only. URL of the manifest representing the update configuration of this deployment."
        },
        "credential": {
          "$ref": "Credential",
          "description": "Output only. The user-provided default credential to use when deploying this preview."
        },
        "description": {
          "type": "string",
          "description": "Output only. An optional user-provided description of the deployment after the current update has been applied."
        }
      }
    },
    "TemplateContents": {
      "id": "TemplateContents",
      "properties": {
        "template": {
          "description": "The contents of the main template file.",
          "type": "string"
        },
        "schema": {
          "description": "The contents of the template schema.",
          "type": "string"
        },
        "mainTemplate": {
          "type": "string",
          "description": "The filename of the mainTemplate"
        },
        "imports": {
          "items": {
            "$ref": "ImportFile"
          },
          "type": "array",
          "description": "Import files referenced by the main template."
        },
        "interpreter": {
          "description": "Which interpreter (python or jinja) should be used during expansion.",
          "enumDescriptions": [
            "",
            "",
            ""
          ],
          "type": "string",
          "enum": [
            "UNKNOWN_INTERPRETER",
            "PYTHON",
            "JINJA"
          ]
        }
      },
      "description": "Files that make up the template contents of a template type.",
      "type": "object"
    },
    "TypeProviderLabelEntry": {
      "id": "TypeProviderLabelEntry",
      "description": "Label object for TypeProviders",
      "type": "object",
      "properties": {
        "value": {
          "description": "Value of the label",
          "type": "string"
        },
        "key": {
          "description": "Key of the label",
          "type": "string"
        }
      }
    },
    "Expr": {
      "type": "object",
      "description": "Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \"Summary size limit\" description: \"Determines if a summary is less than 100 chars\" expression: \"document.summary.size() \u003c 100\" Example (Equality): title: \"Requestor is owner\" description: \"Determines if requestor is the document owner\" expression: \"document.owner == request.auth.claims.email\" Example (Logic): title: \"Public documents\" description: \"Determine whether the document should be publicly visible\" expression: \"document.type != 'private' && document.type != 'internal'\" Example (Data Manipulation): title: \"Notification string\" description: \"Create a notification string with a timestamp.\" expression: \"'New message received at ' + string(document.create_time)\" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.",
      "id": "Expr",
      "properties": {
        "location": {
          "description": "Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.",
          "type": "string"
        },
        "description": {
          "description": "Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.",
          "type": "string"
        },
        "expression": {
          "type": "string",
          "description": "Textual representation of an expression in Common Expression Language syntax."
        },
        "title": {
          "description": "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.",
          "type": "string"
        }
      }
    },
    "CompositeType": {
      "properties": {
        "name": {
          "description": "Name of the composite type, must follow the expression: `[a-z]([-a-z0-9_.]{0,61}[a-z0-9])?`.",
          "type": "string"
        },
        "insertTime": {
          "description": "Output only. Creation timestamp in RFC3339 text format.",
          "type": "string"
        },
        "description": {
          "description": "An optional textual description of the resource; provided by the client when the resource is created.",
          "type": "string"
        },
        "selfLink": {
          "description": "Output only. Server defined URL for the resource.",
          "type": "string"
        },
        "operation": {
          "description": "Output only. The Operation that most recently ran, or is currently running, on this composite type.",
          "$ref": "Operation"
        },
        "templateContents": {
          "description": "Files for the template type.",
          "$ref": "TemplateContents"
        },
        "status": {
          "type": "string",
          "enum": [
            "UNKNOWN_STATUS",
            "DEPRECATED",
            "EXPERIMENTAL",
            "SUPPORTED"
          ],
          "enumDescriptions": [
            "",
            "",
            "",
            ""
          ]
        },
        "id": {
          "format": "uint64",
          "type": "string"
        },
        "labels": {
          "type": "array",
          "items": {
            "$ref": "CompositeTypeLabelEntry"
          },
          "description": "Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and must conform to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?` Label values must be between 0 and 63 characters long and must conform to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`."
        }
      },
      "type": "object",
      "id": "CompositeType",
      "description": "Holds the composite type."
    },
    "ValidationOptions": {
      "description": "Options for how to validate and process properties on a resource.",
      "properties": {
        "schemaValidation": {
          "enumDescriptions": [
            "",
            "Ignore schema failures.",
            "Ignore schema failures but display them as warnings.",
            "Fail the resource if the schema is not valid, this is the default behavior."
          ],
          "type": "string",
          "description": "Customize how deployment manager will validate the resource against schema errors.",
          "enum": [
            "UNKNOWN",
            "IGNORE",
            "IGNORE_WITH_WARNINGS",
            "FAIL"
          ]
        },
        "undeclaredProperties": {
          "description": "Specify what to do with extra properties when executing a request.",
          "type": "string",
          "enumDescriptions": [
            "",
            "Always include even if not present on discovery doc.",
            "Always ignore if not present on discovery doc.",
            "Include on request, but emit a warning.",
            "Ignore properties, but emit a warning.",
            "Always fail if undeclared properties are present."
          ],
          "enum": [
            "UNKNOWN",
            "INCLUDE",
            "IGNORE",
            "INCLUDE_WITH_WARNINGS",
            "IGNORE_WITH_WARNINGS",
            "FAIL"
          ]
        }
      },
      "id": "ValidationOptions",
      "type": "object"
    },
    "TypesListResponse": {
      "description": "A response that returns all Types supported by Deployment Manager",
      "type": "object",
      "id": "TypesListResponse",
      "properties": {
        "nextPageToken": {
          "description": "A token used to continue a truncated list request.",
          "type": "string"
        },
        "types": {
          "items": {
            "$ref": "Type"
          },
          "type": "array",
          "description": "Output only. A list of resource types supported by Deployment Manager."
        }
      }
    },
    "OperationsListResponse": {
      "id": "OperationsListResponse",
      "type": "object",
      "properties": {
        "operations": {
          "description": "Output only. Operations contained in this list response.",
          "type": "array",
          "items": {
            "$ref": "Operation"
          }
        },
        "nextPageToken": {
          "description": "Output only. A token used to continue a truncated list request.",
          "type": "string"
        }
      },
      "description": "A response containing a partial list of operations and a page token used to build the next request if the request has been truncated."
    }
  },
  "resources": {
    "manifests": {
      "methods": {
        "get": {
          "response": {
            "$ref": "Manifest"
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/manifests/{manifest}",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/manifests/{manifest}",
          "id": "deploymentmanager.manifests.get",
          "parameterOrder": [
            "project",
            "deployment",
            "manifest"
          ],
          "description": "Gets information about a specific manifest.",
          "parameters": {
            "project": {
              "location": "path",
              "description": "The project ID for this request.",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string",
              "required": true
            },
            "deployment": {
              "required": true,
              "type": "string",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "description": "The name of the deployment for this request.",
              "location": "path"
            },
            "manifest": {
              "type": "string",
              "description": "The name of the manifest for this request.",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "required": true,
              "location": "path"
            }
          },
          "httpMethod": "GET"
        },
        "list": {
          "httpMethod": "GET",
          "id": "deploymentmanager.manifests.list",
          "response": {
            "$ref": "ManifestsListResponse"
          },
          "parameters": {
            "deployment": {
              "description": "The name of the deployment for this request.",
              "type": "string",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "location": "path",
              "required": true
            },
            "pageToken": {
              "location": "query",
              "type": "string",
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results."
            },
            "returnPartialSuccess": {
              "location": "query",
              "type": "boolean",
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today."
            },
            "project": {
              "type": "string",
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "description": "The project ID for this request.",
              "required": true
            },
            "orderBy": {
              "type": "string",
              "location": "query",
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported."
            },
            "filter": {
              "location": "query",
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```",
              "type": "string"
            },
            "maxResults": {
              "minimum": "0",
              "type": "integer",
              "default": "500",
              "format": "uint32",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)",
              "location": "query"
            }
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/manifests",
          "description": "Lists all manifests for a given deployment.",
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/manifests",
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ]
        }
      }
    },
    "resources": {
      "methods": {
        "list": {
          "response": {
            "$ref": "ResourcesListResponse"
          },
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "httpMethod": "GET",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/resources",
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/resources",
          "id": "deploymentmanager.resources.list",
          "description": "Lists all resources in a given deployment.",
          "parameters": {
            "maxResults": {
              "type": "integer",
              "format": "uint32",
              "minimum": "0",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)",
              "location": "query",
              "default": "500"
            },
            "deployment": {
              "location": "path",
              "description": "The name of the deployment for this request.",
              "type": "string",
              "required": true,
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?"
            },
            "filter": {
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```",
              "type": "string",
              "location": "query"
            },
            "pageToken": {
              "location": "query",
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.",
              "type": "string"
            },
            "returnPartialSuccess": {
              "type": "boolean",
              "location": "query",
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today."
            },
            "project": {
              "type": "string",
              "required": true,
              "description": "The project ID for this request.",
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))"
            },
            "orderBy": {
              "location": "query",
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.",
              "type": "string"
            }
          }
        },
        "get": {
          "response": {
            "$ref": "Resource"
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/resources/{resource}",
          "id": "deploymentmanager.resources.get",
          "parameterOrder": [
            "project",
            "deployment",
            "resource"
          ],
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "httpMethod": "GET",
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/resources/{resource}",
          "description": "Gets information about a single resource.",
          "parameters": {
            "resource": {
              "required": true,
              "type": "string",
              "location": "path",
              "description": "The name of the resource for this request."
            },
            "deployment": {
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "location": "path",
              "required": true,
              "description": "The name of the deployment for this request.",
              "type": "string"
            },
            "project": {
              "description": "The project ID for this request.",
              "location": "path",
              "type": "string",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "required": true
            }
          }
        }
      }
    },
    "compositeTypes": {
      "methods": {
        "update": {
          "parameterOrder": [
            "project",
            "compositeType"
          ],
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}",
          "parameters": {
            "compositeType": {
              "required": true,
              "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?",
              "description": "The name of the composite type for this request.",
              "location": "path",
              "type": "string"
            },
            "project": {
              "type": "string",
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "required": true,
              "description": "The project ID for this request."
            }
          },
          "httpMethod": "PUT",
          "description": "Updates a composite type.",
          "id": "deploymentmanager.compositeTypes.update",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "request": {
            "$ref": "CompositeType"
          },
          "response": {
            "$ref": "Operation"
          },
          "path": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}"
        },
        "list": {
          "httpMethod": "GET",
          "parameters": {
            "project": {
              "type": "string",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "location": "path",
              "description": "The project ID for this request.",
              "required": true
            },
            "pageToken": {
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.",
              "location": "query",
              "type": "string"
            },
            "filter": {
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```",
              "type": "string",
              "location": "query"
            },
            "returnPartialSuccess": {
              "type": "boolean",
              "location": "query",
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today."
            },
            "orderBy": {
              "type": "string",
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.",
              "location": "query"
            },
            "maxResults": {
              "type": "integer",
              "default": "500",
              "format": "uint32",
              "location": "query",
              "minimum": "0",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)"
            }
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/compositeTypes",
          "response": {
            "$ref": "CompositeTypesListResponse"
          },
          "description": "Lists all composite types for Deployment Manager.",
          "parameterOrder": [
            "project"
          ],
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/compositeTypes",
          "id": "deploymentmanager.compositeTypes.list"
        },
        "delete": {
          "httpMethod": "DELETE",
          "parameters": {
            "project": {
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "location": "path",
              "type": "string",
              "description": "The project ID for this request.",
              "required": true
            },
            "compositeType": {
              "required": true,
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?",
              "description": "The name of the type for this request.",
              "type": "string"
            }
          },
          "response": {
            "$ref": "Operation"
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}",
          "parameterOrder": [
            "project",
            "compositeType"
          ],
          "description": "Deletes a composite type.",
          "path": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}",
          "id": "deploymentmanager.compositeTypes.delete",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ]
        },
        "insert": {
          "parameters": {
            "project": {
              "location": "path",
              "type": "string",
              "required": true,
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "description": "The project ID for this request."
            }
          },
          "httpMethod": "POST",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/compositeTypes",
          "parameterOrder": [
            "project"
          ],
          "description": "Creates a composite type.",
          "id": "deploymentmanager.compositeTypes.insert",
          "request": {
            "$ref": "CompositeType"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "response": {
            "$ref": "Operation"
          },
          "path": "deploymentmanager/alpha/projects/{project}/global/compositeTypes"
        },
        "patch": {
          "httpMethod": "PATCH",
          "description": "Patches a composite type.",
          "parameters": {
            "project": {
              "location": "path",
              "required": true,
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "description": "The project ID for this request.",
              "type": "string"
            },
            "compositeType": {
              "required": true,
              "description": "The name of the composite type for this request.",
              "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?",
              "type": "string",
              "location": "path"
            }
          },
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "parameterOrder": [
            "project",
            "compositeType"
          ],
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}",
          "path": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}",
          "request": {
            "$ref": "CompositeType"
          },
          "id": "deploymentmanager.compositeTypes.patch"
        },
        "get": {
          "httpMethod": "GET",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}",
          "parameters": {
            "project": {
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "description": "The project ID for this request.",
              "type": "string",
              "required": true,
              "location": "path"
            },
            "compositeType": {
              "pattern": "[a-z](?:[-a-z0-9_.]{0,61}[a-z0-9])?",
              "required": true,
              "type": "string",
              "description": "The name of the composite type for this request.",
              "location": "path"
            }
          },
          "parameterOrder": [
            "project",
            "compositeType"
          ],
          "id": "deploymentmanager.compositeTypes.get",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/compositeTypes/{compositeType}",
          "description": "Gets information about a specific composite type.",
          "response": {
            "$ref": "CompositeType"
          }
        }
      }
    },
    "typeProviders": {
      "methods": {
        "delete": {
          "httpMethod": "DELETE",
          "parameters": {
            "typeProvider": {
              "description": "The name of the type provider for this request.",
              "location": "path",
              "type": "string",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "required": true
            },
            "project": {
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "location": "path",
              "description": "The project ID for this request.",
              "type": "string",
              "required": true
            }
          },
          "description": "Deletes a type provider.",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "id": "deploymentmanager.typeProviders.delete",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}",
          "response": {
            "$ref": "Operation"
          },
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}",
          "parameterOrder": [
            "project",
            "typeProvider"
          ]
        },
        "insert": {
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders",
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders",
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "required": true,
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "location": "path",
              "type": "string",
              "description": "The project ID for this request."
            }
          },
          "parameterOrder": [
            "project"
          ],
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "description": "Creates a type provider.",
          "request": {
            "$ref": "TypeProvider"
          },
          "response": {
            "$ref": "Operation"
          },
          "id": "deploymentmanager.typeProviders.insert"
        },
        "update": {
          "response": {
            "$ref": "Operation"
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}",
          "parameters": {
            "project": {
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "required": true,
              "location": "path",
              "type": "string",
              "description": "The project ID for this request."
            },
            "typeProvider": {
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "type": "string",
              "description": "The name of the type provider for this request.",
              "required": true
            }
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "description": "Updates a type provider.",
          "parameterOrder": [
            "project",
            "typeProvider"
          ],
          "httpMethod": "PUT",
          "id": "deploymentmanager.typeProviders.update",
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}",
          "request": {
            "$ref": "TypeProvider"
          }
        },
        "patch": {
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}",
          "description": "Patches a type provider.",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "parameters": {
            "typeProvider": {
              "required": true,
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "description": "The name of the type provider for this request.",
              "type": "string"
            },
            "project": {
              "type": "string",
              "required": true,
              "description": "The project ID for this request.",
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))"
            }
          },
          "parameterOrder": [
            "project",
            "typeProvider"
          ],
          "request": {
            "$ref": "TypeProvider"
          },
          "httpMethod": "PATCH",
          "id": "deploymentmanager.typeProviders.patch",
          "response": {
            "$ref": "Operation"
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}"
        },
        "listTypes": {
          "response": {
            "$ref": "TypeProvidersListTypesResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "parameterOrder": [
            "project",
            "typeProvider"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}/types",
          "description": "Lists all the type info for a TypeProvider.",
          "httpMethod": "GET",
          "id": "deploymentmanager.typeProviders.listTypes",
          "parameters": {
            "orderBy": {
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.",
              "location": "query",
              "type": "string"
            },
            "project": {
              "location": "path",
              "description": "The project ID for this request.",
              "required": true,
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string"
            },
            "maxResults": {
              "type": "integer",
              "default": "500",
              "minimum": "0",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)",
              "location": "query",
              "format": "uint32"
            },
            "typeProvider": {
              "description": "The name of the type provider for this request.",
              "type": "string",
              "required": true,
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?"
            },
            "pageToken": {
              "location": "query",
              "type": "string",
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results."
            },
            "filter": {
              "location": "query",
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```",
              "type": "string"
            },
            "returnPartialSuccess": {
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today.",
              "location": "query",
              "type": "boolean"
            }
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}/types"
        },
        "getType": {
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "response": {
            "$ref": "TypeInfo"
          },
          "id": "deploymentmanager.typeProviders.getType",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}/types/{type}",
          "httpMethod": "GET",
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}/types/{type}",
          "parameters": {
            "project": {
              "location": "path",
              "description": "The project ID for this request.",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string",
              "required": true
            },
            "typeProvider": {
              "required": true,
              "description": "The name of the type provider for this request.",
              "type": "string",
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?"
            },
            "type": {
              "description": "The name of the type provider type for this request.",
              "location": "path",
              "required": true,
              "type": "string"
            }
          },
          "parameterOrder": [
            "project",
            "typeProvider",
            "type"
          ],
          "description": "Gets a type info for a type provided by a TypeProvider."
        },
        "list": {
          "id": "deploymentmanager.typeProviders.list",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders",
          "httpMethod": "GET",
          "parameterOrder": [
            "project"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders",
          "response": {
            "$ref": "TypeProvidersListResponse"
          },
          "description": "Lists all resource type providers for Deployment Manager.",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "parameters": {
            "pageToken": {
              "location": "query",
              "type": "string",
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results."
            },
            "orderBy": {
              "location": "query",
              "type": "string",
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported."
            },
            "maxResults": {
              "format": "uint32",
              "location": "query",
              "default": "500",
              "type": "integer",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)",
              "minimum": "0"
            },
            "project": {
              "type": "string",
              "location": "path",
              "required": true,
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "description": "The project ID for this request."
            },
            "filter": {
              "type": "string",
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```",
              "location": "query"
            },
            "returnPartialSuccess": {
              "type": "boolean",
              "location": "query",
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today."
            }
          }
        },
        "get": {
          "description": "Gets information about a specific type provider.",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "parameters": {
            "project": {
              "location": "path",
              "description": "The project ID for this request.",
              "required": true,
              "type": "string",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))"
            },
            "typeProvider": {
              "required": true,
              "description": "The name of the type provider for this request.",
              "location": "path",
              "type": "string",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?"
            }
          },
          "path": "deploymentmanager/alpha/projects/{project}/global/typeProviders/{typeProvider}",
          "response": {
            "$ref": "TypeProvider"
          },
          "httpMethod": "GET",
          "parameterOrder": [
            "project",
            "typeProvider"
          ],
          "id": "deploymentmanager.typeProviders.get"
        }
      }
    },
    "deployments": {
      "methods": {
        "list": {
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments",
          "description": "Lists all deployments for a given project.",
          "parameterOrder": [
            "project"
          ],
          "parameters": {
            "returnPartialSuccess": {
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today.",
              "location": "query",
              "type": "boolean"
            },
            "orderBy": {
              "type": "string",
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.",
              "location": "query"
            },
            "pageToken": {
              "location": "query",
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.",
              "type": "string"
            },
            "project": {
              "type": "string",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "location": "path",
              "required": true,
              "description": "The project ID for this request."
            },
            "filter": {
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```",
              "location": "query",
              "type": "string"
            },
            "maxResults": {
              "type": "integer",
              "minimum": "0",
              "format": "uint32",
              "location": "query",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)",
              "default": "500"
            }
          },
          "response": {
            "$ref": "DeploymentsListResponse"
          },
          "httpMethod": "GET",
          "id": "deploymentmanager.deployments.list",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments"
        },
        "getIamPolicy": {
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{resource}/getIamPolicy",
          "id": "deploymentmanager.deployments.getIamPolicy",
          "response": {
            "$ref": "Policy"
          },
          "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "httpMethod": "GET",
          "parameters": {
            "resource": {
              "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}",
              "required": true,
              "location": "path",
              "description": "Name or id of the resource for this request.",
              "type": "string"
            },
            "project": {
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "required": true,
              "type": "string",
              "description": "Project ID for this request.",
              "location": "path"
            },
            "optionsRequestedPolicyVersion": {
              "type": "integer",
              "format": "int32",
              "description": "Requested IAM Policy version.",
              "location": "query"
            }
          },
          "parameterOrder": [
            "project",
            "resource"
          ],
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{resource}/getIamPolicy"
        },
        "testIamPermissions": {
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{resource}/testIamPermissions",
          "parameters": {
            "resource": {
              "type": "string",
              "location": "path",
              "description": "Name or id of the resource for this request.",
              "required": true,
              "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}"
            },
            "project": {
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string",
              "location": "path",
              "required": true,
              "description": "Project ID for this request."
            }
          },
          "response": {
            "$ref": "TestPermissionsResponse"
          },
          "request": {
            "$ref": "TestPermissionsRequest"
          },
          "description": "Returns permissions that a caller has on the specified resource.",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "httpMethod": "POST",
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{resource}/testIamPermissions",
          "id": "deploymentmanager.deployments.testIamPermissions",
          "parameterOrder": [
            "project",
            "resource"
          ]
        },
        "insert": {
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "description": "Creates a deployment and all of the resources described by the deployment manifest.",
          "parameters": {
            "preview": {
              "location": "query",
              "type": "boolean",
              "description": "If set to true, creates a deployment and creates \"shell\" resources but does not actually instantiate these resources. This allows you to preview what your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the `update()` method or you can use the `cancelPreview()` method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it."
            },
            "project": {
              "type": "string",
              "location": "path",
              "required": true,
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "description": "The project ID for this request."
            },
            "createPolicy": {
              "location": "query",
              "enum": [
                "CREATE_OR_ACQUIRE",
                "ACQUIRE",
                "CREATE"
              ],
              "default": "CREATE_OR_ACQUIRE",
              "description": "Sets the policy to use for creating new resources.",
              "enumDescriptions": [
                "",
                "",
                ""
              ],
              "type": "string"
            }
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments",
          "request": {
            "$ref": "Deployment"
          },
          "httpMethod": "POST",
          "response": {
            "$ref": "Operation"
          },
          "id": "deploymentmanager.deployments.insert",
          "parameterOrder": [
            "project"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments"
        },
        "delete": {
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "parameters": {
            "deletePolicy": {
              "location": "query",
              "description": "Sets the policy to use for deleting resources.",
              "default": "DELETE",
              "type": "string",
              "enumDescriptions": [
                "",
                ""
              ],
              "enum": [
                "DELETE",
                "ABANDON"
              ]
            },
            "deployment": {
              "type": "string",
              "required": true,
              "location": "path",
              "description": "The name of the deployment for this request."
            },
            "project": {
              "required": true,
              "description": "The project ID for this request.",
              "location": "path",
              "type": "string",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))"
            }
          },
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}",
          "id": "deploymentmanager.deployments.delete",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}",
          "httpMethod": "DELETE",
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "description": "Deletes a deployment and all of the resources in the deployment."
        },
        "setIamPolicy": {
          "description": "Sets the access control policy on the specified resource. Replaces any existing policy.",
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{resource}/setIamPolicy",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{resource}/setIamPolicy",
          "parameterOrder": [
            "project",
            "resource"
          ],
          "response": {
            "$ref": "Policy"
          },
          "httpMethod": "POST",
          "parameters": {
            "project": {
              "type": "string",
              "description": "Project ID for this request.",
              "required": true,
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "location": "path"
            },
            "resource": {
              "description": "Name or id of the resource for this request.",
              "required": true,
              "type": "string",
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}"
            }
          },
          "request": {
            "$ref": "GlobalSetPolicyRequest"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "id": "deploymentmanager.deployments.setIamPolicy"
        },
        "patch": {
          "request": {
            "$ref": "Deployment"
          },
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}",
          "description": "Patches a deployment and all of the resources described by the deployment manifest.",
          "id": "deploymentmanager.deployments.patch",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "parameters": {
            "deletePolicy": {
              "location": "query",
              "enum": [
                "DELETE",
                "ABANDON"
              ],
              "enumDescriptions": [
                "",
                ""
              ],
              "type": "string",
              "description": "Sets the policy to use for deleting resources.",
              "default": "DELETE"
            },
            "deployment": {
              "required": true,
              "type": "string",
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "description": "The name of the deployment for this request."
            },
            "project": {
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string",
              "location": "path",
              "description": "The project ID for this request.",
              "required": true
            },
            "createPolicy": {
              "location": "query",
              "enum": [
                "CREATE_OR_ACQUIRE",
                "ACQUIRE",
                "CREATE"
              ],
              "default": "CREATE_OR_ACQUIRE",
              "description": "Sets the policy to use for creating new resources.",
              "enumDescriptions": [
                "",
                "",
                ""
              ],
              "type": "string"
            },
            "preview": {
              "default": "false",
              "type": "boolean",
              "location": "query",
              "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a `target.config` with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the `update()` or you can `cancelPreview()` to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it."
            }
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}",
          "response": {
            "$ref": "Operation"
          },
          "httpMethod": "PATCH"
        },
        "get": {
          "id": "deploymentmanager.deployments.get",
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}",
          "description": "Gets information about a specific deployment.",
          "response": {
            "$ref": "Deployment"
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}",
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "httpMethod": "GET",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "parameters": {
            "project": {
              "type": "string",
              "location": "path",
              "description": "The project ID for this request.",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "required": true
            },
            "deployment": {
              "location": "path",
              "description": "The name of the deployment for this request.",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "required": true,
              "type": "string"
            }
          }
        },
        "update": {
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}",
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "response": {
            "$ref": "Operation"
          },
          "id": "deploymentmanager.deployments.update",
          "httpMethod": "PUT",
          "description": "Updates a deployment and all of the resources described by the deployment manifest.",
          "request": {
            "$ref": "Deployment"
          },
          "parameters": {
            "createPolicy": {
              "default": "CREATE_OR_ACQUIRE",
              "enum": [
                "CREATE_OR_ACQUIRE",
                "ACQUIRE",
                "CREATE"
              ],
              "description": "Sets the policy to use for creating new resources.",
              "location": "query",
              "enumDescriptions": [
                "",
                "",
                ""
              ],
              "type": "string"
            },
            "preview": {
              "location": "query",
              "type": "boolean",
              "description": "If set to true, updates the deployment and creates and updates the \"shell\" resources but does not actually alter or instantiate these resources. This allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must provide a `target.config` with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request with the `update()` or you can `cancelPreview()` to remove the preview altogether. Note that the deployment will still exist after you cancel the preview and you must separately delete this deployment if you want to remove it.",
              "default": "false"
            },
            "deletePolicy": {
              "description": "Sets the policy to use for deleting resources.",
              "default": "DELETE",
              "enum": [
                "DELETE",
                "ABANDON"
              ],
              "location": "query",
              "enumDescriptions": [
                "",
                ""
              ],
              "type": "string"
            },
            "project": {
              "required": true,
              "type": "string",
              "description": "The project ID for this request.",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "location": "path"
            },
            "deployment": {
              "location": "path",
              "type": "string",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "description": "The name of the deployment for this request.",
              "required": true
            }
          },
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}"
        },
        "stop": {
          "parameters": {
            "deployment": {
              "required": true,
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?",
              "type": "string",
              "description": "The name of the deployment for this request.",
              "location": "path"
            },
            "project": {
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "required": true,
              "type": "string",
              "description": "The project ID for this request."
            }
          },
          "id": "deploymentmanager.deployments.stop",
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/stop",
          "httpMethod": "POST",
          "description": "Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started.",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/stop",
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "request": {
            "$ref": "DeploymentsStopRequest"
          },
          "response": {
            "$ref": "Operation"
          }
        },
        "cancelPreview": {
          "path": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/cancelPreview",
          "request": {
            "$ref": "DeploymentsCancelPreviewRequest"
          },
          "parameterOrder": [
            "project",
            "deployment"
          ],
          "response": {
            "$ref": "Operation"
          },
          "id": "deploymentmanager.deployments.cancelPreview",
          "description": "Cancels and removes the preview currently associated with the deployment.",
          "parameters": {
            "project": {
              "location": "path",
              "type": "string",
              "description": "The project ID for this request.",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "required": true
            },
            "deployment": {
              "type": "string",
              "location": "path",
              "required": true,
              "description": "The name of the deployment for this request.",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?"
            }
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/ndev.cloudman"
          ],
          "httpMethod": "POST",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/deployments/{deployment}/cancelPreview"
        }
      }
    },
    "types": {
      "methods": {
        "get": {
          "parameterOrder": [
            "project",
            "type"
          ],
          "path": "deploymentmanager/alpha/projects/{project}/global/types/{type}",
          "httpMethod": "GET",
          "id": "deploymentmanager.types.get",
          "description": "Gets information about a specific type.",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "response": {
            "$ref": "Type"
          },
          "parameters": {
            "project": {
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string",
              "required": true,
              "description": "The project ID for this request."
            },
            "type": {
              "required": true,
              "type": "string",
              "description": "The name of the type for this request.",
              "location": "path",
              "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?"
            }
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/types/{type}"
        },
        "list": {
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "parameters": {
            "pageToken": {
              "location": "query",
              "type": "string",
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results."
            },
            "project": {
              "location": "path",
              "required": true,
              "description": "The project ID for this request.",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string"
            },
            "filter": {
              "type": "string",
              "location": "query",
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```"
            },
            "returnPartialSuccess": {
              "location": "query",
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today.",
              "type": "boolean"
            },
            "orderBy": {
              "location": "query",
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.",
              "type": "string"
            },
            "maxResults": {
              "default": "500",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)",
              "format": "uint32",
              "location": "query",
              "type": "integer",
              "minimum": "0"
            }
          },
          "description": "Lists all resource types for Deployment Manager.",
          "httpMethod": "GET",
          "response": {
            "$ref": "TypesListResponse"
          },
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/types",
          "parameterOrder": [
            "project"
          ],
          "id": "deploymentmanager.types.list",
          "path": "deploymentmanager/alpha/projects/{project}/global/types"
        }
      }
    },
    "operations": {
      "methods": {
        "get": {
          "parameterOrder": [
            "project",
            "operation"
          ],
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/operations/{operation}",
          "path": "deploymentmanager/alpha/projects/{project}/global/operations/{operation}",
          "response": {
            "$ref": "Operation"
          },
          "parameters": {
            "project": {
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))",
              "type": "string",
              "description": "The project ID for this request.",
              "required": true
            },
            "operation": {
              "required": true,
              "location": "path",
              "description": "The name of the operation for this request.",
              "type": "string"
            }
          },
          "id": "deploymentmanager.operations.get",
          "description": "Gets information about a specific operation.",
          "httpMethod": "GET",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ]
        },
        "list": {
          "path": "deploymentmanager/alpha/projects/{project}/global/operations",
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/cloud-platform.read-only",
            "https://www.googleapis.com/auth/ndev.cloudman",
            "https://www.googleapis.com/auth/ndev.cloudman.readonly"
          ],
          "response": {
            "$ref": "OperationsListResponse"
          },
          "id": "deploymentmanager.operations.list",
          "flatPath": "deploymentmanager/alpha/projects/{project}/global/operations",
          "parameterOrder": [
            "project"
          ],
          "description": "Lists all operations for a project.",
          "parameters": {
            "maxResults": {
              "location": "query",
              "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)",
              "type": "integer",
              "minimum": "0",
              "default": "500",
              "format": "uint32"
            },
            "filter": {
              "location": "query",
              "type": "string",
              "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```"
            },
            "returnPartialSuccess": {
              "type": "boolean",
              "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today.",
              "location": "query"
            },
            "project": {
              "type": "string",
              "required": true,
              "description": "The project ID for this request.",
              "location": "path",
              "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))"
            },
            "orderBy": {
              "type": "string",
              "location": "query",
              "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported."
            },
            "pageToken": {
              "type": "string",
              "location": "query",
              "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results."
            }
          },
          "httpMethod": "GET"
        }
      }
    }
  },
  "name": "deploymentmanager",
  "description": "The Google Cloud Deployment Manager v2 API provides services for configuring, deploying, and viewing Google Cloud services and APIs via templates which specify deployments of Cloud resources.",
  "ownerName": "Google",
  "protocol": "rest",
  "servicePath": "",
  "canonicalName": "Deployment Manager",
  "discoveryVersion": "v1",
  "mtlsRootUrl": "https://deploymentmanager.mtls.googleapis.com/"
}
