{
  "ownerDomain": "google.com",
  "name": "managedflink",
  "servicePath": "",
  "batchPath": "batch",
  "protocol": "rest",
  "version": "v1",
  "fullyEncodeReservedExpansion": true,
  "mtlsRootUrl": "https://managedflink.mtls.googleapis.com/",
  "schemas": {
    "Transformers": {
      "properties": {
        "transformers": {
          "items": {
            "$ref": "Transformer"
          },
          "type": "array"
        }
      },
      "id": "Transformers",
      "type": "object",
      "description": "Contains a list of transformers."
    },
    "AddLabelTransformer": {
      "properties": {
        "labelValue": {
          "type": "string"
        },
        "labelName": {
          "type": "string"
        }
      },
      "description": "Add new system label to the usage.",
      "id": "AddLabelTransformer",
      "type": "object"
    },
    "Elastic": {
      "description": "Elastic autoscaling policy to enable autoscaling with min/max limits.",
      "type": "object",
      "properties": {
        "parallelism": {
          "description": "Optional. The initial task parallelism for the job.",
          "format": "int32",
          "type": "integer"
        },
        "minParallelism": {
          "description": "Optional. The minimum task parallelism for the job.",
          "format": "int32",
          "type": "integer"
        },
        "maxParallelism": {
          "type": "integer",
          "format": "int32",
          "description": "Optional. The maximum task parallelism for the job."
        }
      },
      "id": "Elastic"
    },
    "Operation": {
      "type": "object",
      "id": "Operation",
      "properties": {
        "error": {
          "description": "The error result of the operation in case of failure or cancellation.",
          "$ref": "Status"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "type": "object",
          "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`."
        },
        "name": {
          "type": "string",
          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`."
        },
        "done": {
          "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.",
          "type": "boolean"
        },
        "metadata": {
          "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.",
          "type": "object",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object. Contains field @type with type URL."
          }
        }
      },
      "description": "This resource represents a long-running operation that is the result of a network API call."
    },
    "ListDeploymentsResponse": {
      "description": "Response to the request to list deployments.",
      "type": "object",
      "id": "ListDeploymentsResponse",
      "properties": {
        "deployments": {
          "description": "The list of deployments.",
          "items": {
            "$ref": "Deployment"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token that identifies a page of results that the server should return.",
          "type": "string"
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached.",
          "type": "array"
        }
      }
    },
    "Transformer": {
      "properties": {
        "addLabelTransformer": {
          "description": "Add new system label to the usage.",
          "$ref": "AddLabelTransformer"
        },
        "transformerId": {
          "description": "Unique identifier for the transformer for reference in RuleInstance. Required.",
          "type": "string"
        },
        "customTransformer": {
          "$ref": "CustomTransformer"
        },
        "newProjectNumberTransformer": {
          "$ref": "NewProjectNumberTransformer"
        }
      },
      "type": "object",
      "id": "Transformer",
      "description": "Defines a transformer to transform usage."
    },
    "NewProjectNumberTransformer": {
      "description": "Redirect the usage to a new project number.",
      "id": "NewProjectNumberTransformer",
      "type": "object",
      "properties": {
        "newProjectNumber": {
          "type": "string"
        }
      }
    },
    "CustomTransformer": {
      "id": "CustomTransformer",
      "description": "For any custom transformm defined by the service producer. Note: Not supported yet.",
      "properties": {
        "data": {
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object. Contains field @type with type URL."
          },
          "type": "object"
        }
      },
      "type": "object"
    },
    "DisplayGraph": {
      "properties": {
        "displayGraphJson": {
          "type": "string",
          "description": "Output only. The display graph in JSON format.",
          "readOnly": true
        },
        "state": {
          "readOnly": true,
          "enum": [
            "STATE_UNSPECIFIED",
            "DISPLAY_GRAPH_POPULATED",
            "DISPLAY_GRAPH_TOO_LARGE",
            "DISPLAY_GRAPH_EMPTY"
          ],
          "enumDescriptions": [
            "Display graph state unspecified.",
            "Display graph is populated.",
            "Display graph is too large.",
            "Display graph is empty."
          ],
          "description": "Output only. The state of the display graph.",
          "type": "string"
        }
      },
      "description": "The Apache Flink display graph of the job.",
      "id": "DisplayGraph",
      "type": "object"
    },
    "ListLocationsResponse": {
      "id": "ListLocationsResponse",
      "description": "The response message for Locations.ListLocations.",
      "type": "object",
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "The standard List next-page token."
        },
        "locations": {
          "type": "array",
          "items": {
            "$ref": "Location"
          },
          "description": "A list of locations that matches the specified filter in the request."
        }
      }
    },
    "CompositeMatcher": {
      "properties": {
        "matchers": {
          "items": {
            "$ref": "SingleMatcher"
          },
          "type": "array"
        }
      },
      "id": "CompositeMatcher",
      "type": "object"
    },
    "Deployment": {
      "id": "Deployment",
      "type": "object",
      "properties": {
        "displayName": {
          "type": "string",
          "description": "Optional. The display name of the deployment."
        },
        "createTime": {
          "format": "google-datetime",
          "description": "Output only. The time when the deployment was created.",
          "type": "string",
          "readOnly": true
        },
        "updateTime": {
          "type": "string",
          "description": "Output only. The time when the deployment was last updated.",
          "format": "google-datetime",
          "readOnly": true
        },
        "deploymentSpec": {
          "description": "Optional. Spec that describes a deployment.",
          "$ref": "DeploymentSpec"
        },
        "labels": {
          "type": "object",
          "description": "Optional. Labels as key value pairs.",
          "additionalProperties": {
            "type": "string"
          }
        },
        "state": {
          "enum": [
            "STATE_UNSPECIFIED",
            "INITIALIZING",
            "CREATED",
            "RUNNING",
            "TERMINATING",
            "TERMINATED",
            "FAILED",
            "DELETING",
            "FAILED_TO_DELETE"
          ],
          "readOnly": true,
          "enumDescriptions": [
            "State unspecified.",
            "Deployment is initializing.",
            "Deployment has been created.",
            "Deployment is running.",
            "Deployment is terminating.",
            "Deployment has terminated.",
            "Deployment is in failed state.",
            "Deployment is being deleted.",
            "Deployment failed to delete."
          ],
          "description": "Output only. The state of the deployment.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Identifier. The name of the deployment."
        }
      },
      "description": "Describes a BigQuery Engine for Apache Flink deployment resource."
    },
    "AutotuningConfig": {
      "id": "AutotuningConfig",
      "type": "object",
      "description": "The autotuning configuration for the Apache Flink job.",
      "properties": {
        "throughputBased": {
          "description": "The throughput-based autoscaling policy that leverages observed throughput and true processing rate (estimated maximum achievable throughput) to autoscale the task parallelism per job vertex.",
          "$ref": "Elastic"
        },
        "fixed": {
          "description": "Fixed policy to disable autoscaling.",
          "$ref": "Fixed"
        }
      }
    },
    "NetworkConfig": {
      "type": "object",
      "id": "NetworkConfig",
      "description": "The VPC, region, and subnetwork that can connect to the BigQuery Engine for Apache Flink cluster.",
      "properties": {
        "vpc": {
          "type": "string",
          "description": "Optional. The name of the VPC Network to associate the BigQuery Engine for Apache Flink resources with. The format can be one of the following: 1: `projects/{project}/global/networks/{network_id}`. 2: `{network_id}`. With option 2, the network is assumed to be in the same project as the BigQuery Engine for Apache Flink Resource."
        },
        "subnetwork": {
          "type": "string",
          "description": "Optional. The subnetwork of the resource. The format can be one of the following: 1: `projects/{project}/regions/{region}/subnetworks/{subnetwork_id}`. 2: `{subnetwork_id}`. With option 1, the subnetwork should be in the same region as the BigQuery Engine for Apache Flink Resource. With option 2, the subnetwork is assumed to be in the same project as the BigQuery Engine for Apache Flink Resource."
        }
      }
    },
    "Session": {
      "description": "Describes an Apache Flink session object.",
      "id": "Session",
      "type": "object",
      "properties": {
        "createTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. [Output only] Create timestamp.",
          "format": "google-datetime"
        },
        "updateTime": {
          "format": "google-datetime",
          "readOnly": true,
          "description": "Output only. [Output only] Update timestamp.",
          "type": "string"
        },
        "name": {
          "description": "Identifier. Name of the resource.",
          "type": "string"
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. Labels as key value pairs."
        },
        "stagingLocation": {
          "description": "Optional. The staging location for artifacts in the session. This location can either be provided by the user, or the system will generate a default staging location.",
          "$ref": "StagingLocation"
        }
      }
    },
    "RuleInstance": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The resource name of the RuleInstance. Format: projects/{projectNumber}/ruleInstances/{ruleInstanceID} ruleInstanceID is set by caller in CreateRuleInstanceRequest."
        },
        "newConsumerId": {
          "description": "The consumer_id to transform to. Required if consumer_id_transform = VALUE_FROM_RULE_INSTANCE in the associated RuleConfig, invalid otherwise. Consumer ID must be a project number in either format: - project_number:PROJECT_NUMBER - projects/PROJECT_NUMBER",
          "type": "string"
        },
        "expireTime": {
          "description": "The time when a soft-deleted RuleInstance will be purged. This is set by the service to 30 days after the delete_time. See aip.dev/148#timestamps",
          "format": "google-datetime",
          "type": "string"
        },
        "consumerId": {
          "description": "Consumer ID must be a project number in either format: - project_number:PROJECT_NUMBER - projects/PROJECT_NUMBER",
          "type": "string"
        },
        "organizationId": {
          "type": "string",
          "description": "Organization ID"
        },
        "effectiveTime": {
          "description": "Required. This revision will take effect no earlier than this time. It may be delayed due to data plane eventual consistency. The max delay is defined by the Metering Transform SLOs.",
          "type": "string",
          "format": "google-datetime"
        },
        "revisionCreateTime": {
          "type": "string",
          "format": "google-datetime",
          "description": "When this revision was created."
        },
        "deleteTime": {
          "format": "google-datetime",
          "description": "Output only. The time when the RuleInstance was successfully soft-deleted. When the deletion is forward or back dated via a custom effective time, this contains the time the deletion request was received. See aip.dev/148#timestamps",
          "type": "string"
        },
        "placeholderValues": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "RuleConfigs can use placeholders instead of literals for values that need to vary per RuleInstance. Each placeholder in the associated RuleConfig must have a value provided here."
        },
        "excludedKeys": {
          "type": "array",
          "description": "Optional. A subset of the consumer that should be excluded from this RuleInstance. The excluded sub keys must be a descendant of the matching key. Three cases are allowed: - If the key type is organization id, the exclusive sub keys can only be resource id or project id. - If the key type is billing account id, the exclusive sub keys can only be resource id or project id. - If the key type is project id, the exclusive sub keys can only be project id. NOTE: Only project exclusions are currently supported.",
          "items": {
            "$ref": "ExclusionKeys"
          }
        },
        "state": {
          "type": "string",
          "enumDescriptions": [
            "",
            "The RuleInstance is being applied to any matching usage.",
            "Soft-deleted; the RuleInstance is not being applied, but remains in the system until it expires permanently."
          ],
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "DELETED"
          ],
          "description": "Output only. The RuleInstance state: aip.dev/216"
        },
        "compositeMatcherData": {
          "$ref": "CompositeMatcher"
        },
        "ruleConfig": {
          "description": "Required. The resource name of the associated RuleConfig. Format: projects/{projectNumber}/ruleConfigs/{ruleConfigID}",
          "type": "string"
        },
        "billingAccountId": {
          "type": "string",
          "description": "Billing Account ID"
        },
        "transformerData": {
          "$ref": "Transformers"
        },
        "resourceId": {
          "description": "Resource ID refers to the value used in system label /resource_id.",
          "type": "string"
        },
        "revisionId": {
          "type": "string",
          "description": "Identifier for the revision."
        }
      },
      "type": "object",
      "description": "A RuleInstance contains: 1). values describing a project or cloud resource 2). a reference to a RuleConfig which defines the transform to apply to relevant metrics for that project / resource. Next ID: 21",
      "id": "RuleInstance"
    },
    "LabelFilterMatcher": {
      "description": "A label matcher that matches label key and value via go/filtering.",
      "id": "LabelFilterMatcher",
      "properties": {
        "filter": {
          "description": "The filter expression is applied to the label values on ReportRequest, based on filter syntax from go/aip/160.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "StagingLocation": {
      "description": "The staging location for artifacts in an Apache Flink session.",
      "properties": {
        "path": {
          "description": "Optional. The path within the bucket to use for staging artifacts in the session.",
          "type": "string"
        },
        "bucket": {
          "type": "string",
          "description": "Optional. The bucket to use for staging artifacts in the session."
        },
        "buckerProvider": {
          "type": "string",
          "description": "Optional. The type of bucket used for staging artifacts in the session."
        }
      },
      "id": "StagingLocation",
      "type": "object"
    },
    "Limits": {
      "description": "The limit constraints of the deployment. The limits are based on the upper bounds for the different underlying resources.",
      "id": "Limits",
      "type": "object",
      "properties": {
        "maxSlots": {
          "type": "string",
          "format": "int64",
          "description": "Optional. The maximum number of slots for the deployment."
        }
      }
    },
    "SingleMatcher": {
      "description": "A single matcher that includes a matcher id and a matcher. Next ID: 6",
      "type": "object",
      "id": "SingleMatcher",
      "properties": {
        "matcherId": {
          "type": "string",
          "description": "Required - unique identifier for the matcher."
        },
        "labelFilterMatcher": {
          "description": "System label matcher.",
          "$ref": "LabelFilterMatcher"
        }
      }
    },
    "Empty": {
      "properties": {},
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }",
      "type": "object",
      "id": "Empty"
    },
    "ProjectExclusions": {
      "description": "ProjectExclusions contains projectIDs that need to be excluded during transformations.",
      "type": "object",
      "properties": {
        "projectNumber": {
          "type": "string",
          "description": "ProjectID to be excluded. Format: projects/{project_number} or project_number:{project_number}"
        }
      },
      "id": "ProjectExclusions"
    },
    "CancelOperationRequest": {
      "description": "The request message for Operations.CancelOperation.",
      "properties": {},
      "type": "object",
      "id": "CancelOperationRequest"
    },
    "DeploymentSpec": {
      "id": "DeploymentSpec",
      "properties": {
        "workloadIdentity": {
          "description": "Optional. Workload identity service account for the deployment. If not set, the default workload identity will be used.",
          "type": "string"
        },
        "networkConfig": {
          "description": "Optional. Network configuration for the deployment.",
          "$ref": "NetworkConfig"
        },
        "secretsPaths": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional. The list of secrets paths to be shared among all jobs in the deployment."
        },
        "limits": {
          "$ref": "Limits",
          "description": "Optional. The limit constraints for the deployment."
        }
      },
      "description": "The specification of a deployment.",
      "type": "object"
    },
    "ListJobsResponse": {
      "description": "Response to the request to list jobs.",
      "id": "ListJobsResponse",
      "type": "object",
      "properties": {
        "jobs": {
          "description": "The list of jobs.",
          "type": "array",
          "items": {
            "$ref": "Job"
          }
        },
        "unreachable": {
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token that identifies a page of results that the server should return.",
          "type": "string"
        }
      }
    },
    "Status": {
      "id": "Status",
      "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
      "properties": {
        "code": {
          "format": "int32",
          "type": "integer",
          "description": "The status code, which should be an enum value of google.rpc.Code."
        },
        "details": {
          "items": {
            "type": "object",
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            }
          },
          "type": "array",
          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use."
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Location": {
      "properties": {
        "metadata": {
          "description": "Service-specific metadata. For example the available capacity at the given location.",
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "type": "object"
        },
        "labels": {
          "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`",
          "type": "string"
        },
        "locationId": {
          "description": "The canonical id for this location. For example: `\"us-east1\"`.",
          "type": "string"
        },
        "displayName": {
          "type": "string",
          "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\"."
        }
      },
      "description": "A resource that represents a Google Cloud location.",
      "id": "Location",
      "type": "object"
    },
    "Fixed": {
      "description": "Fixed policy to disable autoscaling.",
      "type": "object",
      "id": "Fixed",
      "properties": {
        "parallelism": {
          "format": "int32",
          "type": "integer",
          "description": "Optional. The fixed task parallelism for the job."
        }
      }
    },
    "ListOperationsResponse": {
      "properties": {
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        },
        "operations": {
          "items": {
            "$ref": "Operation"
          },
          "description": "A list of operations that matches the specified filter in the request.",
          "type": "array"
        }
      },
      "description": "The response message for Operations.ListOperations.",
      "type": "object",
      "id": "ListOperationsResponse"
    },
    "Job": {
      "properties": {
        "deploymentId": {
          "description": "Optional. The deployment that this job belongs to. If empty, the job is created in an ephemeral on-demand Apache Flink cluster.",
          "type": "string"
        },
        "jobSpec": {
          "description": "Required. The specification of the Apache Flink job.",
          "$ref": "JobSpec"
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The time when the job was created.",
          "format": "google-datetime"
        },
        "updateTime": {
          "readOnly": true,
          "description": "Output only. The time when the job was last updated.",
          "format": "google-datetime",
          "type": "string"
        },
        "displayGraph": {
          "description": "Output only. The display graph of the Apache Flink job. This is only populated on a `GetAPI` call. It is not populated on a `ListAPI` call.",
          "readOnly": true,
          "$ref": "DisplayGraph"
        },
        "state": {
          "type": "string",
          "enumDescriptions": [
            "State unspecified.",
            "Job is pending creation.",
            "Job is initializing.",
            "Job has been created.",
            "Job is running.",
            "Job is failing.",
            "Job has failed.",
            "Job is getting cancelled.",
            "Job has been cancelled.",
            "Job has finished.",
            "Job is restarting.",
            "Job has been suspended.",
            "Job is reconciling.",
            "Job is getting deleted.",
            "Job failed to be deleted.",
            "Job failed to be cancelled."
          ],
          "readOnly": true,
          "description": "Output only. The state of the Apache Flink job.",
          "enum": [
            "STATE_UNSPECIFIED",
            "PENDING_CREATION",
            "INITIALIZING",
            "CREATED",
            "RUNNING",
            "FAILING",
            "FAILED",
            "CANCELLING",
            "CANCELLED",
            "FINISHED",
            "RESTARTING",
            "SUSPENDED",
            "RECONCILING",
            "DELETING",
            "DELETION_FAILED",
            "CANCELATION_FAILED"
          ]
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. User defined labels as key value pairs."
        },
        "name": {
          "type": "string",
          "description": "Identifier. The name of the job."
        }
      },
      "type": "object",
      "id": "Job",
      "description": "Describes a BigQuery Engine for Apache Flink job resource."
    },
    "ExclusionKeys": {
      "properties": {
        "projectExclusions": {
          "description": "ProjectNumber-based exclusion.",
          "$ref": "ProjectExclusions"
        }
      },
      "id": "ExclusionKeys",
      "type": "object"
    },
    "OperationMetadata": {
      "type": "object",
      "description": "Represents the metadata of a long-running operation.",
      "id": "OperationMetadata",
      "properties": {
        "endTime": {
          "description": "Output only. The time the operation finished running.",
          "type": "string",
          "format": "google-datetime",
          "readOnly": true
        },
        "createTime": {
          "format": "google-datetime",
          "type": "string",
          "readOnly": true,
          "description": "Output only. The time the operation was created."
        },
        "apiVersion": {
          "readOnly": true,
          "description": "Output only. API version used to start the operation.",
          "type": "string"
        },
        "requestedCancellation": {
          "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.",
          "type": "boolean",
          "readOnly": true
        },
        "target": {
          "readOnly": true,
          "description": "Output only. Server-defined resource path for the target of the operation.",
          "type": "string"
        },
        "verb": {
          "type": "string",
          "description": "Output only. Name of the verb executed by the operation.",
          "readOnly": true
        },
        "statusMessage": {
          "description": "Output only. Human-readable status of the operation, if any.",
          "type": "string",
          "readOnly": true
        }
      }
    },
    "JobSpec": {
      "properties": {
        "managedKafkaConfig": {
          "$ref": "ManagedKafkaConfig",
          "description": "Optional. The configuration for the Google Cloud Managed Service for Apache Kafka clusters to be used by the job."
        },
        "pipelineOptions": {
          "description": "Optional. The pipeline options for the job in stringified json format.",
          "type": "string"
        },
        "autotuningConfig": {
          "description": "Optional. Autotuning configuration for the job.",
          "$ref": "AutotuningConfig"
        },
        "originalJobGraph": {
          "type": "string",
          "description": "Optional. The original job graph in stringified json format."
        },
        "jobName": {
          "description": "Optional. Job name of the job. The client automatically derives this name from the job graph.",
          "type": "string"
        },
        "jobGraphEncoding": {
          "type": "string",
          "description": "Optional. The encoding type of the job graph."
        },
        "jobGraphUri": {
          "description": "Required. The job graph URI in Cloud Storage.",
          "type": "string"
        },
        "secretsPaths": {
          "description": "Optional. The list of secrets paths to be used by an on-demand deployment job.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "displayName": {
          "type": "string",
          "description": "Optional. Display name of the job. This name is explicitly set by the user."
        },
        "jarUris": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Optional. The list of URIs for the job JARs in Cloud Storage."
        },
        "networkConfig": {
          "$ref": "NetworkConfig",
          "description": "Optional. Network configuration for the job."
        },
        "workloadIdentity": {
          "type": "string",
          "description": "Optional. Workload identity service account for the job. If not set, the default workload identity will be used. This is only used for on-demand jobs."
        },
        "artifactUris": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Required. The list of URIs for the job artifact files in Cloud Storage."
        }
      },
      "type": "object",
      "id": "JobSpec",
      "description": "The specification of the Apache Flink job."
    },
    "ListSessionsResponse": {
      "properties": {
        "sessions": {
          "items": {
            "$ref": "Session"
          },
          "description": "The list of sessions.",
          "type": "array"
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached.",
          "type": "array"
        },
        "nextPageToken": {
          "type": "string",
          "description": "The maximum number of sessions to return. The server might return fewer items than requested. If unspecified, at most 50 sessions are returned. The maximum value is 1000; values above 1000 are coerced to 1000."
        }
      },
      "id": "ListSessionsResponse",
      "description": "Message for response to listing sessions.",
      "type": "object"
    },
    "MeteringTransformView": {
      "type": "object",
      "properties": {
        "ruleInstances": {
          "description": "View should be created with key = \"billing-transform\"",
          "type": "array",
          "items": {
            "$ref": "RuleInstance"
          }
        }
      },
      "description": "Message for reporting billing requests through Eventstream. RuleInstances to be created / updated for cloud.eventstream.v2.ResourceEvent Each requests contains RuleInstances that should be created or updated for Metering Transforms. RuleInstances reported this way are managed declaratively. See go/mtx-integration-guide.",
      "id": "MeteringTransformView"
    },
    "ManagedKafkaConfig": {
      "type": "object",
      "id": "ManagedKafkaConfig",
      "properties": {
        "managedKafkaClusters": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Optional. The list of Managed Service for Apache Kafka clusters connected to the job, specified in the following format: `projects//locations//clusters/`."
        }
      },
      "description": "The configuration for the Google Cloud Managed Service for Apache Kafka clusters to be used by the job."
    }
  },
  "ownerName": "Google",
  "revision": "20250327",
  "title": "BigQuery Engine for Apache Flink API",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account."
        }
      }
    }
  },
  "baseUrl": "https://managedflink.googleapis.com/",
  "documentationLink": "https://cloud.google.com/managed-flink/docs/overview",
  "discoveryVersion": "v1",
  "rootUrl": "https://managedflink.googleapis.com/",
  "version_module": true,
  "resources": {
    "projects": {
      "resources": {
        "locations": {
          "resources": {
            "sessions": {
              "methods": {
                "get": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "required": true,
                      "location": "path",
                      "description": "Required. Name of the resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$",
                      "type": "string"
                    }
                  },
                  "id": "managedflink.projects.locations.sessions.get",
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}",
                  "description": "Gets details of a single session.",
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Session"
                  }
                },
                "patch": {
                  "parameterOrder": [
                    "name"
                  ],
                  "request": {
                    "$ref": "Session"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Updates the parameters of a single session.",
                  "path": "v1/{+name}",
                  "httpMethod": "PATCH",
                  "parameters": {
                    "requestId": {
                      "location": "query",
                      "type": "string",
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000)."
                    },
                    "name": {
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$",
                      "location": "path",
                      "description": "Identifier. Name of the resource.",
                      "required": true
                    },
                    "updateMask": {
                      "description": "Required. The field mask is used to specify the fields to be overwritten in the session resource by the update. The fields specified in `update_mask` are relative to the resource, not to the full request. A field is overwritten if it's in the mask. If you don't provide a mask, then all fields are overwritten.",
                      "location": "query",
                      "format": "google-fieldmask",
                      "type": "string"
                    }
                  },
                  "id": "managedflink.projects.locations.sessions.patch",
                  "response": {
                    "$ref": "Operation"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}"
                },
                "list": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions",
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "managedflink.projects.locations.sessions.list",
                  "response": {
                    "$ref": "ListSessionsResponse"
                  },
                  "path": "v1/{+parent}/sessions",
                  "httpMethod": "GET",
                  "parameters": {
                    "pageSize": {
                      "type": "integer",
                      "description": "Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.",
                      "location": "query",
                      "format": "int32"
                    },
                    "orderBy": {
                      "description": "Optional. A hint for how to order the results. For example, you can order by time of creation or last change. The hint must be specified as documented in [AIP-132](https://google.aip.dev/132#ordering).",
                      "type": "string",
                      "location": "query"
                    },
                    "parent": {
                      "description": "Required. Parent value for `ListSessionsRequest`. The value is the location, specified in the following format: `projects/{project}/locations/{location}`.",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "location": "path",
                      "required": true
                    },
                    "pageToken": {
                      "type": "string",
                      "location": "query",
                      "description": "Optional. A token that identifies a page of results that the server should return."
                    },
                    "filter": {
                      "description": "Optional. An expression to filter the list of returned sessions. For example, you can filter for active sessions. The expression must use the syntax as documented in [AIP-160](https://google.aip.dev/160).",
                      "type": "string",
                      "location": "query"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Lists sessions in the specified project and location."
                },
                "delete": {
                  "id": "managedflink.projects.locations.sessions.delete",
                  "response": {
                    "$ref": "Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}",
                  "httpMethod": "DELETE",
                  "parameters": {
                    "requestId": {
                      "location": "query",
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
                      "type": "string"
                    },
                    "name": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$",
                      "required": true,
                      "location": "path",
                      "type": "string",
                      "description": "Required. Name of the session, specified in the following format: `projects/{project}/locations/{location}/sessions/{session}`"
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "description": "Deletes a single session.",
                  "path": "v1/{+name}"
                },
                "create": {
                  "path": "v1/{+parent}/sessions",
                  "parameterOrder": [
                    "parent"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "managedflink.projects.locations.sessions.create",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions",
                  "httpMethod": "POST",
                  "parameters": {
                    "sessionId": {
                      "description": "Required. ID to use for the session.",
                      "location": "query",
                      "type": "string"
                    },
                    "parent": {
                      "type": "string",
                      "required": true,
                      "description": "Required. The parent region in which to create the session, specified in the following format: `projects/{project}/locations/{location}`.",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "location": "path"
                    },
                    "requestId": {
                      "type": "string",
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
                      "location": "query"
                    }
                  },
                  "request": {
                    "$ref": "Session"
                  },
                  "description": "Creates a new session in the specified project and location.",
                  "response": {
                    "$ref": "Operation"
                  }
                }
              }
            },
            "jobs": {
              "methods": {
                "list": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/jobs",
                  "httpMethod": "GET",
                  "parameters": {
                    "parent": {
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "location": "path",
                      "required": true,
                      "description": "Required. Parent value for `ListJobsRequest`. The value is the location, specified in the following format: `projects/{project}/locations/{location}`."
                    },
                    "pageToken": {
                      "location": "query",
                      "description": "Optional. A token that identifies a page of results that the server should return.",
                      "type": "string"
                    },
                    "filter": {
                      "location": "query",
                      "description": "Optional. An expression to filter the list of returned jobs. The expression must use the syntax as documented in [AIP-160](https://google.aip.dev/160).",
                      "type": "string"
                    },
                    "pageSize": {
                      "location": "query",
                      "format": "int32",
                      "description": "Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.",
                      "type": "integer"
                    },
                    "orderBy": {
                      "description": "Optional. A hint for how to order the results. The hint must be specified as documented in [AIP-132](https://google.aip.dev/132#ordering).",
                      "type": "string",
                      "location": "query"
                    }
                  },
                  "response": {
                    "$ref": "ListJobsResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "managedflink.projects.locations.jobs.list",
                  "description": "Lists jobs in the specified project and location.",
                  "path": "v1/{+parent}/jobs",
                  "parameterOrder": [
                    "parent"
                  ]
                },
                "create": {
                  "description": "Creates a new job in the specified project and location.",
                  "httpMethod": "POST",
                  "parameters": {
                    "jobId": {
                      "description": "Required. The ID to use for the job, which becomes the final component of the job's name.",
                      "location": "query",
                      "type": "string"
                    },
                    "parent": {
                      "required": true,
                      "description": "Required. The parent region in which to create the job, specified in the following format: `projects/{project}/locations/{location}`.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string"
                    },
                    "requestId": {
                      "location": "query",
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
                      "type": "string"
                    }
                  },
                  "id": "managedflink.projects.locations.jobs.create",
                  "path": "v1/{+parent}/jobs",
                  "request": {
                    "$ref": "Job"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/jobs",
                  "parameterOrder": [
                    "parent"
                  ],
                  "response": {
                    "$ref": "Operation"
                  }
                },
                "delete": {
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}",
                  "description": "Deletes a single job.",
                  "response": {
                    "$ref": "Operation"
                  },
                  "httpMethod": "DELETE",
                  "parameters": {
                    "requestId": {
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
                      "location": "query",
                      "type": "string"
                    },
                    "force": {
                      "location": "query",
                      "description": "Optional. If set to true, then the request will force delete on-demand job even if the job cancelation fails.",
                      "type": "boolean"
                    },
                    "name": {
                      "type": "string",
                      "description": "Required. Name of the resource.",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
                      "location": "path"
                    }
                  },
                  "id": "managedflink.projects.locations.jobs.delete",
                  "path": "v1/{+name}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "get": {
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "managedflink.projects.locations.jobs.get",
                  "description": "Gets details of a single job.",
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Job"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "required": true,
                      "location": "path",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
                      "description": "Required. Name of the resource."
                    }
                  }
                },
                "patch": {
                  "path": "v1/{+name}",
                  "id": "managedflink.projects.locations.jobs.patch",
                  "parameterOrder": [
                    "name"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}",
                  "description": "Updates the parameters of a single job.",
                  "response": {
                    "$ref": "Operation"
                  },
                  "httpMethod": "PATCH",
                  "parameters": {
                    "name": {
                      "description": "Identifier. The name of the job.",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
                      "location": "path",
                      "required": true
                    },
                    "updateMask": {
                      "description": "Required. The field mask is used to specify the fields to be overwritten in the job resource by the update. The fields specified in `update_mask` are relative to the resource, not to the full request. A field is overwritten if it's in the mask. If you don't provide a mask, then all fields are overwritten.",
                      "format": "google-fieldmask",
                      "type": "string",
                      "location": "query"
                    },
                    "requestId": {
                      "type": "string",
                      "location": "query",
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000)."
                    }
                  },
                  "request": {
                    "$ref": "Job"
                  }
                }
              }
            },
            "operations": {
              "methods": {
                "delete": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "id": "managedflink.projects.locations.operations.delete",
                  "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "Empty"
                  },
                  "httpMethod": "DELETE",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "required": true,
                      "location": "path",
                      "description": "The name of the operation resource to be deleted."
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "path": "v1/{+name}"
                },
                "list": {
                  "path": "v1/{+name}/operations",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations",
                  "parameterOrder": [
                    "name"
                  ],
                  "response": {
                    "$ref": "ListOperationsResponse"
                  },
                  "httpMethod": "GET",
                  "parameters": {
                    "filter": {
                      "location": "query",
                      "description": "The standard list filter.",
                      "type": "string"
                    },
                    "pageToken": {
                      "description": "The standard list page token.",
                      "location": "query",
                      "type": "string"
                    },
                    "pageSize": {
                      "location": "query",
                      "format": "int32",
                      "description": "The standard list page size.",
                      "type": "integer"
                    },
                    "name": {
                      "description": "The name of the operation's parent resource.",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "location": "path",
                      "required": true
                    }
                  },
                  "id": "managedflink.projects.locations.operations.list",
                  "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "get": {
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
                  "id": "managedflink.projects.locations.operations.get",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource.",
                      "type": "string",
                      "location": "path",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "cancel": {
                  "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.",
                  "httpMethod": "POST",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "description": "The name of the operation resource to be cancelled.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "location": "path",
                      "required": true
                    }
                  },
                  "id": "managedflink.projects.locations.operations.cancel",
                  "path": "v1/{+name}:cancel",
                  "parameterOrder": [
                    "name"
                  ],
                  "request": {
                    "$ref": "CancelOperationRequest"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
                  "response": {
                    "$ref": "Empty"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            },
            "deployments": {
              "methods": {
                "patch": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deployments/{deploymentsId}",
                  "httpMethod": "PATCH",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "type": "string",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/deployments/[^/]+$",
                      "description": "Identifier. The name of the deployment."
                    },
                    "updateMask": {
                      "format": "google-fieldmask",
                      "description": "Required. The field mask is used to specify the fields to be overwritten in the deployment resource by the update. The fields specified in `update_mask` are relative to the resource, not to the full request. A field is overwritten if it's in the mask. If you don't provide a mask, then all fields are overwritten.",
                      "location": "query",
                      "type": "string"
                    },
                    "requestId": {
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
                      "type": "string",
                      "location": "query"
                    }
                  },
                  "description": "Updates the parameters of a single deployment.",
                  "response": {
                    "$ref": "Operation"
                  },
                  "request": {
                    "$ref": "Deployment"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "path": "v1/{+name}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "managedflink.projects.locations.deployments.patch"
                },
                "get": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Gets details about a single deployment.",
                  "id": "managedflink.projects.locations.deployments.get",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "description": "Required. Name of the resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/deployments/[^/]+$",
                      "location": "path",
                      "required": true
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deployments/{deploymentsId}",
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Deployment"
                  }
                },
                "delete": {
                  "response": {
                    "$ref": "Operation"
                  },
                  "httpMethod": "DELETE",
                  "parameters": {
                    "name": {
                      "required": true,
                      "type": "string",
                      "location": "path",
                      "description": "Required. Name of the resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/deployments/[^/]+$"
                    },
                    "requestId": {
                      "type": "string",
                      "location": "query",
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000)."
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deployments/{deploymentsId}",
                  "description": "Deletes a single deployment.",
                  "parameterOrder": [
                    "name"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "id": "managedflink.projects.locations.deployments.delete"
                },
                "list": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deployments",
                  "path": "v1/{+parent}/deployments",
                  "httpMethod": "GET",
                  "parameters": {
                    "pageToken": {
                      "description": "Optional. A token that identifies a page of results that the server should return.",
                      "location": "query",
                      "type": "string"
                    },
                    "pageSize": {
                      "location": "query",
                      "description": "Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.",
                      "format": "int32",
                      "type": "integer"
                    },
                    "orderBy": {
                      "description": "Optional. A hint for how to order the results. The hint must be specified as documented in [AIP-132](https://google.aip.dev/132#ordering).",
                      "type": "string",
                      "location": "query"
                    },
                    "filter": {
                      "type": "string",
                      "description": "Optional. An expression to filter the list of returned deployments. The expression must use the syntax as documented in [AIP-160](https://google.aip.dev/160).",
                      "location": "query"
                    },
                    "parent": {
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "description": "Required. Parent value for `ListDeploymentsRequest`. The value is the location, specified in the following format: `projects/{project}/locations/{location}`.",
                      "location": "path",
                      "required": true
                    }
                  },
                  "description": "Lists deployments in the specified project and location.",
                  "response": {
                    "$ref": "ListDeploymentsResponse"
                  },
                  "id": "managedflink.projects.locations.deployments.list",
                  "parameterOrder": [
                    "parent"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "create": {
                  "response": {
                    "$ref": "Operation"
                  },
                  "path": "v1/{+parent}/deployments",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/deployments",
                  "request": {
                    "$ref": "Deployment"
                  },
                  "id": "managedflink.projects.locations.deployments.create",
                  "httpMethod": "POST",
                  "parameters": {
                    "deploymentId": {
                      "description": "Required. ID of the requesting object. If auto-generating ID server-side, remove this field and deployment_id from the method_signature of Create RPC",
                      "location": "query",
                      "type": "string"
                    },
                    "parent": {
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "description": "Required. The parent region in which to create the deployment, specified in the following format: `projects/{project}/locations/{location}`.",
                      "location": "path",
                      "required": true
                    },
                    "requestId": {
                      "location": "query",
                      "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server knows to ignore the request if it has already been completed. The server guarantees this behavior for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if the original operation with the same request ID was received. If the request was received, the server ignores the second request. This behavior prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID, with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).",
                      "type": "string"
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "description": "Creates a new deployment in the specified project and location."
                }
              }
            }
          },
          "methods": {
            "get": {
              "id": "managedflink.projects.locations.get",
              "parameterOrder": [
                "name"
              ],
              "httpMethod": "GET",
              "parameters": {
                "name": {
                  "description": "Resource name for the location.",
                  "location": "path",
                  "required": true,
                  "pattern": "^projects/[^/]+/locations/[^/]+$",
                  "type": "string"
                }
              },
              "response": {
                "$ref": "Location"
              },
              "description": "Gets information about a location.",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "path": "v1/{+name}",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}"
            },
            "list": {
              "response": {
                "$ref": "ListLocationsResponse"
              },
              "description": "Lists information about the supported locations for this service.",
              "flatPath": "v1/projects/{projectsId}/locations",
              "id": "managedflink.projects.locations.list",
              "httpMethod": "GET",
              "parameters": {
                "filter": {
                  "location": "query",
                  "type": "string",
                  "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160)."
                },
                "name": {
                  "pattern": "^projects/[^/]+$",
                  "location": "path",
                  "required": true,
                  "description": "The resource that owns the locations collection, if applicable.",
                  "type": "string"
                },
                "pageSize": {
                  "type": "integer",
                  "description": "The maximum number of results to return. If not set, the service selects a default.",
                  "format": "int32",
                  "location": "query"
                },
                "extraLocationTypes": {
                  "location": "query",
                  "repeated": true,
                  "type": "string",
                  "description": "Optional. A list of extra location types that should be used as conditions for controlling the visibility of the locations."
                },
                "pageToken": {
                  "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1/{+name}/locations",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "parameterOrder": [
                "name"
              ]
            }
          }
        }
      }
    }
  },
  "description": "Manages your jobs and deployment resources for BigQuery Engine for Apache Flink. ",
  "basePath": "",
  "kind": "discovery#restDescription",
  "parameters": {
    "fields": {
      "location": "query",
      "description": "Selector specifying which fields to include in a partial response.",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "type": "string",
      "location": "query"
    },
    "oauth_token": {
      "type": "string",
      "description": "OAuth 2.0 token for the current user.",
      "location": "query"
    },
    "callback": {
      "type": "string",
      "location": "query",
      "description": "JSONP"
    },
    "uploadType": {
      "location": "query",
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
    },
    "key": {
      "location": "query",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "type": "string"
    },
    "prettyPrint": {
      "type": "boolean",
      "default": "true",
      "location": "query",
      "description": "Returns response with indentations and line breaks."
    },
    "quotaUser": {
      "location": "query",
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "type": "string"
    },
    "$.xgafv": {
      "enum": [
        "1",
        "2"
      ],
      "description": "V1 error format.",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "alt": {
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "default": "json",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "canonicalName": "Managed Flink",
  "id": "managedflink:v1",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  }
}
