From edee7f7da69d7caf5d1183cfd0851d0c3bdfeca9 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Tue, 12 Mar 2024 02:44:48 +0000 Subject: [PATCH] feat: Automated regeneration of Apigee client --- .../google_api/apigee/v1/api/organizations.ex | 9106 +++++++++++------ .../lib/google_api/apigee/v1/metadata.ex | 2 +- .../google_cloud_apigee_v1_addons_config.ex | 4 + ...google_cloud_apigee_v1_analytics_config.ex | 55 + .../google_cloud_apigee_v1_api_category.ex | 29 +- ...e_cloud_apigee_v1_api_category_response.ex | 58 + .../model/google_cloud_apigee_v1_api_doc.ex | 94 + ...e_cloud_apigee_v1_api_doc_documentation.ex | 54 + ...pigee_v1_api_doc_documentation_response.ex | 63 + ...google_cloud_apigee_v1_api_doc_response.ex | 58 + .../google_cloud_apigee_v1_api_product.ex | 4 + ...cloud_apigee_v1_api_product_association.ex | 49 + ...ogle_cloud_apigee_v1_api_proxy_revision.ex | 3 + .../v1/model/google_cloud_apigee_v1_app.ex | 6 + .../model/google_cloud_apigee_v1_app_group.ex | 73 + .../google_cloud_apigee_v1_app_group_app.ex | 79 + ...oogle_cloud_apigee_v1_app_group_app_key.ex | 75 + ...batch_update_security_incidents_request.ex | 56 + ...atch_update_security_incidents_response.ex | 55 + ...google_cloud_apigee_v1_delete_response.ex} | 17 +- .../google_cloud_apigee_v1_deployment.ex | 3 + ...oogle_cloud_apigee_v1_deployment_config.ex | 8 +- ...cloud_apigee_v1_deployment_group_config.ex | 55 + ...google_cloud_apigee_v1_dimension_metric.ex | 5 +- ...igee_v1_disable_security_action_request.ex | 46 + ...ogle_cloud_apigee_v1_documentation_file.ex | 49 + ...pigee_v1_enable_security_action_request.ex | 46 + ..._cloud_apigee_v1_endpoint_chaining_rule.ex | 49 + .../google_cloud_apigee_v1_environment.ex | 10 +- ...ogle_cloud_apigee_v1_environment_config.ex | 15 + ...loud_apigee_v1_environment_group_config.ex | 11 + ...e_cloud_apigee_v1_graphql_documentation.ex | 49 + ...e_cloud_apigee_v1_grpc_operation_config.ex | 58 + ...le_cloud_apigee_v1_grpc_operation_group.ex | 50 + .../google_cloud_apigee_v1_key_value_map.ex | 2 +- ..._apigee_v1_list_api_categories_response.ex | 12 +- ..._cloud_apigee_v1_list_api_docs_response.ex | 61 + ..._apigee_v1_list_app_group_apps_response.ex | 50 + ...loud_apigee_v1_list_app_groups_response.ex | 52 + ...ogle_cloud_apigee_v1_list_apps_response.ex | 8 +- ...d_apigee_v1_list_organizations_response.ex | 2 +- ...pigee_v1_list_security_actions_response.ex | 59 + ...gee_v1_list_security_incidents_response.ex | 59 + ...oogle_cloud_apigee_v1_oas_documentation.ex | 49 + .../google_cloud_apigee_v1_organization.ex | 17 +- ..._apigee_v1_organization_project_mapping.ex | 2 +- .../google_cloud_apigee_v1_profile_config.ex | 50 + ...le_cloud_apigee_v1_profile_config_abuse.ex | 41 + ..._apigee_v1_profile_config_authorization.ex | 43 + ...cloud_apigee_v1_profile_config_category.ex | 67 + ...gle_cloud_apigee_v1_profile_config_cors.ex | 41 + ...loud_apigee_v1_profile_config_mediation.ex | 41 + ...gle_cloud_apigee_v1_profile_config_mtls.ex | 41 + ...e_cloud_apigee_v1_profile_config_threat.ex | 41 + ...pigee_v1_provision_organization_request.ex | 5 +- .../google_cloud_apigee_v1_routing_rule.ex | 8 +- ...e_cloud_apigee_v1_runtime_addons_config.ex | 64 + ...loud_apigee_v1_runtime_analytics_config.ex | 49 + ...d_apigee_v1_runtime_api_security_config.ex | 46 + .../google_cloud_apigee_v1_security_action.ex | 81 + ...e_cloud_apigee_v1_security_action_allow.ex | 41 + ...gee_v1_security_action_condition_config.ex | 72 + ...le_cloud_apigee_v1_security_action_deny.ex | 46 + ...le_cloud_apigee_v1_security_action_flag.ex | 50 + ..._apigee_v1_security_action_http_header.ex} | 24 +- ...cloud_apigee_v1_security_actions_config.ex | 52 + ...oogle_cloud_apigee_v1_security_incident.ex | 70 + ...google_cloud_apigee_v1_security_profile.ex | 10 +- ...ecurity_profile_environment_association.ex | 4 +- ...oogle_cloud_apigee_v1_security_settings.ex | 49 + ..._apigee_v1_set_addon_enablement_request.ex | 51 + .../google_cloud_apigee_v1_target_server.ex | 2 +- ...gee_v1_update_app_group_app_key_request.ex | 57 + ...gee_v1_update_security_incident_request.ex | 55 + .../apigee/v1/model/google_iam_v1_binding.ex | 4 +- .../apigee/v1/model/google_iam_v1_policy.ex | 2 +- .../v1/model/google_longrunning_operation.ex | 2 +- 77 files changed, 9001 insertions(+), 2975 deletions(-) create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_analytics_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product_association.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app_key.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_request.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_response.ex rename clients/apigee/lib/google_api/apigee/v1/model/{google_cloud_apigee_v1_api_response_wrapper.ex => google_cloud_apigee_v1_delete_response.ex} (70%) create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_group_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_disable_security_action_request.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_documentation_file.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_enable_security_action_request.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_endpoint_chaining_rule.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_graphql_documentation.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_group.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_docs_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_group_apps_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_groups_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_actions_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_incidents_response.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_oas_documentation.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_abuse.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_authorization.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_category.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_cors.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mediation.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mtls.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_threat.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_addons_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_analytics_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_api_security_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_allow.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_condition_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_deny.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_flag.ex rename clients/apigee/lib/google_api/apigee/v1/model/{google_cloud_apigee_v1_api_category_data.ex => google_cloud_apigee_v1_security_action_http_header.ex} (59%) create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_actions_config.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_incident.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_settings.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_set_addon_enablement_request.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_app_group_app_key_request.ex create mode 100644 clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_security_incident_request.ex diff --git a/clients/apigee/lib/google_api/apigee/v1/api/organizations.ex b/clients/apigee/lib/google_api/apigee/v1/api/organizations.ex index bec07fd8a0..5004f841e8 100644 --- a/clients/apigee/lib/google_api/apigee/v1/api/organizations.ex +++ b/clients/apigee/lib/google_api/apigee/v1/api/organizations.ex @@ -43,7 +43,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:parent` (*type:* `String.t`) - Required. Name of the GCP project in which to associate the Apigee organization. Pass the information as a query parameter using the following structure in your request: `projects/` + * `:parent` (*type:* `String.t`) - Required. Name of the Google Cloud project in which to associate the Apigee organization. Pass the information as a query parameter using the following structure in your request: `projects/` * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Organization.t`) - * `opts` (*type:* `keyword()`) - Call options @@ -87,7 +87,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do end @doc """ - Delete an Apigee organization. For organizations with BillingType EVALUATION, an immediate deletion is performed. For paid organizations, a soft-deletion is performed. The organization can be restored within the soft-deletion period which can be controlled using the retention field in the request. + Delete an Apigee organization. For organizations with BillingType EVALUATION, an immediate deletion is performed. For paid organizations (Subscription or Pay-as-you-go), a soft-deletion is performed. The organization can be restored within the soft-deletion period, which is specified using the `retention` field in the request or by filing a support ticket with Apigee. During the data retention period specified in the request, the Apigee organization cannot be recreated in the same Google Cloud project. **IMPORTANT: The default data retention setting for this operation is 7 days. To permanently delete the organization in 24 hours, set the retention parameter to `MINIMUM`.** ## Parameters @@ -105,7 +105,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:retention` (*type:* `String.t`) - Optional. This setting is applicable only for organizations that are soft-deleted (i.e., BillingType is not EVALUATION). It controls how long Organization data will be retained after the initial delete operation completes. During this period, the Organization may be restored to its last known state. After this period, the Organization will no longer be able to be restored. + * `:retention` (*type:* `String.t`) - Optional. This setting is applicable only for organizations that are soft-deleted (i.e., BillingType is not EVALUATION). It controls how long Organization data will be retained after the initial delete operation completes. During this period, the Organization may be restored to its last known state. After this period, the Organization will no longer be able to be restored. **Note: During the data retention period specified using this field, the Apigee organization cannot be recreated in the same GCP project.** * `opts` (*type:* `keyword()`) - Call options ## Returns @@ -423,6 +423,78 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ) end + @doc """ + GetSecuritySettings gets the security settings for API Security. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. The name of the SecuritySettings to retrieve. This will always be: 'organizations/{org}/securitySettings'. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_get_security_settings( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_get_security_settings( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings{}] + ) + end + @doc """ Lists the service accounts with the permissions required to allow the Synchronizer to download environment data from the control plane. An ETag is returned in the response to `getSyncAuthorization`. Pass that ETag when calling [setSyncAuthorization](setSyncAuthorization) to ensure that you are updating the correct version. If you don't pass the ETag in the call to `setSyncAuthorization`, then the existing authorization is overwritten indiscriminately. For more information, see [Configure the Synchronizer](https://cloud.google.com/apigee/docs/hybrid/latest/synchronizer-access). **Note**: Available to Apigee hybrid only. @@ -498,7 +570,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do end @doc """ - Lists the Apigee organizations and associated GCP projects that you have permission to access. See [Understanding organizations](https://cloud.google.com/apigee/docs/api-platform/fundamentals/organization-structure). + Lists the Apigee organizations and associated Google Cloud projects that you have permission to access. See [Understanding organizations](https://cloud.google.com/apigee/docs/api-platform/fundamentals/organization-structure). ## Parameters @@ -759,6 +831,82 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ) end + @doc """ + UpdateSecuritySettings updates the current security settings for API Security. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Identifier. Full resource name is always `organizations/{org}/securitySettings`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:updateMask` (*type:* `String.t`) - Optional. The list of fields to update. Allowed fields are: - ml_retraining_feedback_enabled + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_update_security_settings( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_update_security_settings( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :updateMask => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:patch) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings{}] + ) + end + @doc """ Create a Datastore for an org @@ -3109,6 +3257,80 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ) end + @doc """ + Update key value entry scoped to an organization, environment, or API proxy for an existing key. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to create the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_apis_keyvaluemaps_entries_update( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_apis_keyvaluemaps_entries_update( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + ) + end + @doc """ Deletes an API proxy revision and all policies, resources, endpoints, and revisions associated with it. The API proxy revision must be undeployed before you can delete it. @@ -3397,12 +3619,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do end @doc """ - Gets the app profile for the specified app ID. + Creates an AppGroup. Once created, user can register apps under the AppGroup to obtain secret key and password. At creation time, the AppGroup's state is set as `active`. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. App ID in the following format: `organizations/{org}/apps/{app}` + * `parent` (*type:* `String.t`) - Required. Name of the Apigee organization in which the AppGroup is created. Use the following structure in your request: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3415,19 +3637,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_apps_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App.t()} + @spec apigee_organizations_appgroups_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_apps_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_appgroups_create(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -3439,30 +3667,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/appgroups", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}]) end @doc """ - Lists IDs of apps within an organization that have the specified app status (approved or revoked) or are of the specified app type (developer or company). + Deletes an AppGroup. All app and API keys associations with the AppGroup are also removed. **Warning**: This API will permanently delete the AppGroup and related artifacts. **Note**: The delete operation is asynchronous. The AppGroup app is deleted immediately, but its associated resources, such as apps and API keys, may take anywhere from a few seconds to a few minutes to be deleted. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Resource path of the parent in the following format: `organizations/{org}` + * `name` (*type:* `String.t`) - Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3475,28 +3704,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:apiProduct` (*type:* `String.t`) - API product. - * `:apptype` (*type:* `String.t`) - Optional. Filter by the type of the app. Valid values are `company` or `developer`. Defaults to `developer`. - * `:expand` (*type:* `boolean()`) - Optional. Flag that specifies whether to return an expanded list of apps for the organization. Defaults to `false`. - * `:ids` (*type:* `String.t`) - Optional. Comma-separated list of app IDs on which to filter. - * `:includeCred` (*type:* `boolean()`) - Optional. Flag that specifies whether to include credentials in the response. - * `:keyStatus` (*type:* `String.t`) - Optional. Key status of the app. Valid values include `approved` or `revoked`. Defaults to `approved`. - * `:rows` (*type:* `String.t`) - Optional. Maximum number of app IDs to return. Defaults to 10000. - * `:startKey` (*type:* `String.t`) - Returns the list of apps starting from the specified app ID. - * `:status` (*type:* `String.t`) - Optional. Filter by the status of the app. Valid values are `approved` or `revoked`. Defaults to `approved`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_apps_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse.t()} + @spec apigee_organizations_appgroups_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_apps_list(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_appgroups_delete(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -3508,41 +3733,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :apiProduct => :query, - :apptype => :query, - :expand => :query, - :ids => :query, - :includeCred => :query, - :keyStatus => :query, - :rows => :query, - :startKey => :query, - :status => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/apps", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) - }) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}]) end @doc """ - Creates a new data collector. + Returns the AppGroup details for the provided AppGroup name in the request URI. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization in which to create the data collector in the following format: `organizations/{org}`. + * `name` (*type:* `String.t`) - Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3555,31 +3769,19 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:dataCollectorId` (*type:* `String.t`) - ID of the data collector. Overrides any ID in the data collector resource. Must be a string beginning with `dc_` that contains only letters, numbers, and underscores. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_datacollectors_create( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t()} + @spec apigee_organizations_appgroups_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_datacollectors_create( - connection, - parent, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_appgroups_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -3591,34 +3793,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :dataCollectorId => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/datacollectors", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}]) end @doc """ - Deletes a data collector. + Lists all AppGroups in an organization. A maximum of 1000 AppGroups are returned in the response if PageSize is not specified, or if the PageSize is greater than 1000. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the data collector in the following format: `organizations/{org}/datacollectors/{data_collector_id}`. + * `parent` (*type:* `String.t`) - Required. Name of the Apigee organization. Use the following structure in your request: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3631,29 +3829,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:filter` (*type:* `String.t`) - The filter expression to be used to get the list of AppGroups, where filtering can be done on status, channelId or channelUri of the app group. Examples: filter=status=active", filter=channelId=, filter=channelUri= + * `:pageSize` (*type:* `integer()`) - Count of AppGroups a single page can have in the response. If unspecified, at most 1000 AppGroups will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * `:pageToken` (*type:* `String.t`) - The starting index record for listing the AppGroups. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_datacollectors_delete( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + @spec apigee_organizations_appgroups_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_datacollectors_delete( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_appgroups_list(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -3665,30 +3856,35 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :filter => :query, + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/appgroups", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupsResponse{}] + ) end @doc """ - Gets a data collector. + Updates an AppGroup. This API replaces the existing AppGroup details with those specified in the request. Include or exclude any existing details that you want to retain or delete, respectively. Note that the state of the AppGroup should be updated using `action`, and not via AppGroup. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the data collector in the following format: `organizations/{org}/datacollectors/{data_collector_id}`. + * `name` (*type:* `String.t`) - Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3701,24 +3897,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:action` (*type:* `String.t`) - Activate or de-activate the AppGroup by setting the action as `active` or `inactive`. The `Content-Type` header must be set to `application/octet-stream`, with empty body. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_datacollectors_get( + @spec apigee_organizations_appgroups_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_datacollectors_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_appgroups_update(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -3730,12 +3928,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :action => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:put) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -3744,18 +3944,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup{}]) end @doc """ - Lists all data collectors. + Creates an app and associates it with an AppGroup. This API associates the AppGroup app with the specified API product and auto-generates an API key for the app to use in calls to API proxies inside that API product. The `name` is the unique ID of the app that you can use in API calls. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization for which to list data collectors in the following format: `organizations/{org}`. + * `parent` (*type:* `String.t`) - Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3768,26 +3966,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of data collectors to return. The page size defaults to 25. - * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListDataCollectors call, that you can use to retrieve the next page. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDataCollectorsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_datacollectors_list( + @spec apigee_organizations_appgroups_apps_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDataCollectorsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_datacollectors_list( + def apigee_organizations_appgroups_apps_create( connection, parent, optional_params \\ [], @@ -3805,14 +4002,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/datacollectors", %{ + |> Request.method(:post) + |> Request.url("/v1/{+parent}/apps", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -3821,17 +4017,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDataCollectorsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}] ) end @doc """ - Updates a data collector. + Deletes an AppGroup app. **Note**: The delete operation is asynchronous. The AppGroup app is deleted immediately, but its associated resources, such as app keys or access tokens, may take anywhere from a few seconds to a few minutes to be deleted. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the data collector in the following format: `organizations/{org}/datacollectors/{data_collector_id}`. + * `name` (*type:* `String.t`) - Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3844,26 +4040,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:updateMask` (*type:* `String.t`) - List of fields to be updated. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_datacollectors_patch( + @spec apigee_organizations_appgroups_apps_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_datacollectors_patch( + def apigee_organizations_appgroups_apps_delete( connection, name, optional_params \\ [], @@ -3880,14 +4074,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :updateMask => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:patch) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -3897,17 +4089,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}] ) end @doc """ - Lists all deployments of API proxies or shared flows. + Returns the details for an AppGroup app. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization for which to return deployment information in the following format: `organizations/{org}` + * `name` (*type:* `String.t`) - Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3920,25 +4112,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:sharedFlows` (*type:* `boolean()`) - Optional. Flag that specifies whether to return shared flow or API proxy deployments. Set to `true` to return shared flow deployments; set to `false` to return API proxy deployments. Defaults to `false`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_deployments_list( + @spec apigee_organizations_appgroups_apps_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_deployments_list(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_appgroups_apps_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -3950,15 +4141,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :sharedFlows => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/deployments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -3966,17 +4156,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}] ) end @doc """ - Updates developer attributes. This API replaces the existing attributes with those specified in the request. Add new attributes, and include or exclude any existing attributes that you want to retain or remove, respectively. The custom attribute limit is 18. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. + Lists all apps created by an AppGroup in an Apigee organization. Optionally, you can request an expanded view of the AppGroup apps. Lists all AppGroupApps in an AppGroup. A maximum of 1000 AppGroup apps are returned in the response if PageSize is not specified, or if the PageSize is greater than 1000. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Email address of the developer for which attributes are being updated. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `parent` (*type:* `String.t`) - Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -3989,25 +4179,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t`) - + * `:pageSize` (*type:* `integer()`) - Optional. Maximum number entries to return. If unspecified, at most 1000 entries will be returned. + * `:pageToken` (*type:* `String.t`) - Optional. Page token. If provides, must be a valid AppGroup app returned from a previous call that can be used to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupAppsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_attributes( + @spec apigee_organizations_appgroups_apps_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupAppsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_attributes( + def apigee_organizations_appgroups_apps_list( connection, parent, optional_params \\ [], @@ -4025,13 +4216,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :body => :body + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/attributes", %{ + |> Request.method(:get) + |> Request.url("/v1/{+parent}/apps", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -4040,17 +4232,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupAppsResponse{}] ) end @doc """ - Creates a developer. Once created, the developer can register an app and obtain an API key. At creation time, a developer is set as `active`. To change the developer status, use the SetDeveloperStatus API. + Updates the details for an AppGroup app. In addition, you can add an API product to an AppGroup app and automatically generate an API key for the app to use when calling APIs in the API product. If you want to use an existing API key for the API product, add the API product to the API key using the UpdateAppGroupAppKey API. Using this API, you cannot update the app name, as it is the primary key used to identify the app and cannot be changed. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the Apigee organization in which the developer is created. Use the following structure in your request: `organizations/{org}`. + * `name` (*type:* `String.t`) - Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4063,27 +4255,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t`) - + * `:action` (*type:* `String.t`) - Approve or revoke the consumer key by setting this value to `approve` or `revoke`. The `Content-Type` header must be set to `application/octet-stream`, with empty body. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_create( + @spec apigee_organizations_appgroups_apps_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_create( + def apigee_organizations_appgroups_apps_update( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -4099,14 +4292,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :action => :query, :body => :body } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/developers", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -4114,17 +4308,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp{}] ) end @doc """ - Deletes a developer. All apps and API keys associated with the developer are also removed. **Warning**: This API will permanently delete the developer and related artifacts. To avoid permanently deleting developers and their artifacts, set the developer status to `inactive` using the SetDeveloperStatus API. **Note**: The delete operation is asynchronous. The developer app is deleted immediately, but its associated resources, such as apps and API keys, may take anywhere from a few seconds to a few minutes to be deleted. + Creates a custom consumer key and secret for a AppGroup app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the ProductizeAppGroupAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteAppGroupAppKey API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `parent` (*type:* `String.t`) - Required. Parent of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4137,24 +4331,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_delete( + @spec apigee_organizations_appgroups_apps_keys_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_delete(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_appgroups_apps_keys_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -4166,14 +4366,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/keys", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -4181,17 +4382,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}] ) end @doc """ - Returns the developer details, including the developer's name, email address, apps, and other information. **Note**: The response includes only the first 100 developer apps. + Deletes an app's consumer key and removes all API products associated with the app. After the consumer key is deleted, it cannot be used to access any APIs. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `name` (*type:* `String.t`) - Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4204,20 +4405,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:action` (*type:* `String.t`) - Status of the developer. Valid values are `active` or `inactive`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} + @spec apigee_organizations_appgroups_apps_keys_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_appgroups_apps_keys_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -4229,13 +4439,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :action => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -4245,17 +4454,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}] ) end @doc """ - Gets the account balance for the developer. + Gets details for a consumer key for a AppGroup app, including the key and secret value, associated API products, and other information. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Account balance for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/balance` + * `name` (*type:* `String.t`) - Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4272,20 +4481,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_get_balance( + @spec apigee_organizations_appgroups_apps_keys_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_get_balance( + def apigee_organizations_appgroups_apps_keys_get( connection, name, optional_params \\ [], @@ -4317,17 +4526,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}] ) end @doc """ - Gets the monetization configuration for the developer. + Adds an API product to an AppGroupAppKey, enabling the app that holds the key to access the API resources bundled in the API product. In addition, you can add attributes to the AppGroupAppKey. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. You can use the same key to access all API products associated with the app. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Monetization configuration for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/monetizationConfig` + * `name` (*type:* `String.t`) - Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4340,24 +4549,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_get_monetization_config( + @spec apigee_organizations_appgroups_apps_keys_update_app_group_app_key( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_get_monetization_config( + def apigee_organizations_appgroups_apps_keys_update_app_group_app_key( connection, name, optional_params \\ [], @@ -4374,12 +4584,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:post) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -4389,18 +4600,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}] ) end @doc """ - Lists all developers in an organization by email address. By default, the response does not include company developers. Set the `includeCompany` query parameter to `true` to include company developers. **Note**: A maximum of 1000 developers are returned in the response. You paginate the list of developers returned using the `startKey` and `count` query parameters. + Removes an API product from an app's consumer key. After the API product is removed, the app cannot access the API resources defined in that API product. **Note**: The consumer key is not removed, only its association with the API product. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the Apigee organization. Use the following structure in your request: `organizations/{org}`. + * `name` (*type:* `String.t`) - Required. Parent of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}/apiproducts/{apiproduct}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4413,25 +4623,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:app` (*type:* `String.t`) - Optional. List only Developers that are associated with the app. Note that start_key, count are not applicable for this filter criteria. - * `:count` (*type:* `String.t`) - Optional. Number of developers to return in the API call. Use with the `startKey` parameter to provide more targeted filtering. The limit is 1000. - * `:expand` (*type:* `boolean()`) - Specifies whether to expand the results. Set to `true` to expand the results. This query parameter is not valid if you use the `count` or `startKey` query parameters. - * `:ids` (*type:* `String.t`) - Optional. List of IDs to include, separated by commas. - * `:includeCompany` (*type:* `boolean()`) - Flag that specifies whether to include company details in the response. - * `:startKey` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `count` parameter. Email address of the developer from which to start displaying the list of developers. For example, if the an unfiltered list returns: ``` westley@example.com fezzik@example.com buttercup@example.com ``` and your `startKey` is `fezzik@example.com`, the list returned will be ``` fezzik@example.com buttercup@example.com ``` * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListOfDevelopersResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListOfDevelopersResponse.t()} + @spec apigee_organizations_appgroups_apps_keys_apiproducts_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_list(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_appgroups_apps_keys_apiproducts_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -4443,20 +4657,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :app => :query, - :count => :query, - :expand => :query, - :ids => :query, - :includeCompany => :query, - :startKey => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/developers", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -4464,17 +4672,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListOfDevelopersResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey{}] ) end @doc """ - Sets the status of a developer. A developer is `active` by default. If you set a developer's status to `inactive`, the API keys assigned to the developer apps are no longer valid even though the API keys are set to `approved`. Inactive developers can still sign in to the developer portal and create apps; however, any new API keys generated during app creation won't work. To set the status of a developer, set the `action` query parameter to `active` or `inactive`, and the `Content-Type` header to `application/octet-stream`. If successful, the API call returns the following HTTP status code: `204 No Content` + Approves or revokes the consumer key for an API product. After a consumer key is approved, the app can use it to access APIs. A consumer key that is revoked or pending cannot be used to access an API. Any access tokens associated with a revoked consumer key will remain active. However, Apigee checks the status of the consumer key and if set to `revoked` will not allow access to the API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_id}` + * `name` (*type:* `String.t`) - Required. Name of the API product in the developer app key in the following format: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}/apiproducts/{apiproduct}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4487,7 +4695,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:action` (*type:* `String.t`) - Status of the developer. Valid values are `active` and `inactive`. + * `:action` (*type:* `String.t`) - Approve or revoke the consumer key by setting this value to `approve` or `revoke` respectively. The `Content-Type` header, if set, must be set to `application/octet-stream`, with empty body. * `opts` (*type:* `keyword()`) - Call options ## Returns @@ -4495,7 +4703,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_set_developer_status( + @spec apigee_organizations_appgroups_apps_keys_apiproducts_update_app_group_app_key_api_product( Tesla.Env.client(), String.t(), keyword(), @@ -4505,7 +4713,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_set_developer_status( + def apigee_organizations_appgroups_apps_keys_apiproducts_update_app_group_app_key_api_product( connection, name, optional_params \\ [], @@ -4541,12 +4749,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do end @doc """ - Updates a developer. This API replaces the existing developer details with those specified in the request. Include or exclude any existing details that you want to retain or delete, respectively. The custom attribute limit is 18. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (current default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. + Gets the app profile for the specified app ID. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `name` (*type:* `String.t`) - Required. App ID in the following format: `organizations/{org}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4559,25 +4767,19 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_update( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} + @spec apigee_organizations_apps_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_update(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_apps_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -4589,13 +4791,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:put) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -4604,18 +4805,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App{}]) end @doc """ - Updates the monetization configuration for the developer. + Lists IDs of apps within an organization that have the specified app status (approved or revoked) or are of the specified app type (developer or company). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Monetization configuration for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/monetizationConfig` + * `parent` (*type:* `String.t`) - Required. Resource path of the parent in the following format: `organizations/{org}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4628,30 +4827,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig.t`) - + * `:apiProduct` (*type:* `String.t`) - API product. + * `:apptype` (*type:* `String.t`) - Optional. 'apptype' is no longer available. Use a 'filter' instead. + * `:expand` (*type:* `boolean()`) - Optional. Flag that specifies whether to return an expanded list of apps for the organization. Defaults to `false`. + * `:filter` (*type:* `String.t`) - Optional. The filter expression to be used to get the list of apps, where filtering can be done on developerEmail, apiProduct, consumerKey, status, appId, appName, appType and appGroup. Examples: "developerEmail=foo@bar.com", "appType=AppGroup", or "appType=Developer" "filter" is supported from ver 1.10.0 and above. + * `:ids` (*type:* `String.t`) - Optional. Comma-separated list of app IDs on which to filter. + * `:includeCred` (*type:* `boolean()`) - Optional. Flag that specifies whether to include credentials in the response. + * `:keyStatus` (*type:* `String.t`) - Optional. Key status of the app. Valid values include `approved` or `revoked`. Defaults to `approved`. + * `:pageSize` (*type:* `integer()`) - Optional. Count of apps a single page can have in the response. If unspecified, at most 100 apps will be returned. The maximum value is 100; values above 100 will be coerced to 100. "page_size" is supported from ver 1.10.0 and above. + * `:pageToken` (*type:* `String.t`) - Optional. The starting index record for listing the developers. "page_token" is supported from ver 1.10.0 and above. + * `:rows` (*type:* `String.t`) - Optional. Maximum number of app IDs to return. Defaults to 10000. + * `:startKey` (*type:* `String.t`) - Returns the list of apps starting from the specified app ID. + * `:status` (*type:* `String.t`) - Optional. Filter by the status of the app. Valid values are `approved` or `revoked`. Defaults to `approved`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_update_monetization_config( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig.t()} + @spec apigee_organizations_apps_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_update_monetization_config( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_apps_list(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -4664,14 +4864,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :body => :body + :apiProduct => :query, + :apptype => :query, + :expand => :query, + :filter => :query, + :ids => :query, + :includeCred => :query, + :keyStatus => :query, + :pageSize => :query, + :pageToken => :query, + :rows => :query, + :startKey => :query, + :status => :query } request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/apps", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -4679,18 +4890,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse{}] ) end @doc """ - Updates attributes for a developer app. This API replaces the current attributes with those specified in the request. + Creates a new data collector. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` + * `parent` (*type:* `String.t`) - Required. Name of the organization in which to create the data collector in the following format: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4703,27 +4913,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t`) - + * `:dataCollectorId` (*type:* `String.t`) - ID of the data collector. Overrides any ID in the data collector resource. Must be a string beginning with `dc_` that contains only letters, numbers, and underscores. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_attributes( + @spec apigee_organizations_datacollectors_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_attributes( + def apigee_organizations_datacollectors_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -4739,14 +4950,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :dataCollectorId => :query, :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+name}/attributes", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/datacollectors", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -4754,17 +4966,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}] ) end @doc """ - Creates an app associated with a developer. This API associates the developer app with the specified API product and auto-generates an API key for the app to use in calls to API proxies inside that API product. The `name` is the unique ID of the app that you can use in API calls. The `DisplayName` (set as an attribute) appears in the UI. If you don't set the `DisplayName` attribute, the `name` appears in the UI. + Deletes a data collector. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `name` (*type:* `String.t`) - Required. Name of the data collector in the following format: `organizations/{org}/datacollectors/{data_collector_id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4777,27 +4989,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_create( + @spec apigee_organizations_datacollectors_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_create( + def apigee_organizations_datacollectors_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -4812,33 +5023,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/apps", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Deletes a developer app. **Note**: The delete operation is asynchronous. The developer app is deleted immediately, but its associated resources, such as app keys or access tokens, may take anywhere from a few seconds to a few minutes to be deleted. + Gets a data collector. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` + * `name` (*type:* `String.t`) - Required. Name of the data collector in the following format: `organizations/{org}/datacollectors/{data_collector_id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4855,25 +5063,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_delete( + @spec apigee_organizations_datacollectors_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_delete( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_datacollectors_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -4890,7 +5093,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -4900,17 +5103,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}] ) end @doc """ - Manages access to a developer app by enabling you to: * Approve or revoke a developer app * Generate a new consumer key and secret for a developer app To approve or revoke a developer app, set the `action` query parameter to `approve` or `revoke`, respectively, and the `Content-Type` header to `application/octet-stream`. If a developer app is revoked, none of its API keys are valid for API calls even though the keys are still approved. If successful, the API call returns the following HTTP status code: `204 No Content` To generate a new consumer key and secret for a developer app, pass the new key/secret details. Rather than replace an existing key, this API generates a new key. In this case, multiple key pairs may be associated with a single developer app. Each key pair has an independent status (`approve` or `revoke`) and expiration time. Any approved, non-expired key can be used in an API call. For example, if you're using API key rotation, you can generate new keys with expiration times that overlap keys that are going to expire. You might also generate a new consumer key/secret if the security of the original key/secret is compromised. The `keyExpiresIn` property defines the expiration time for the API key in milliseconds. If you don't set this property or set it to `-1`, the API key never expires. **Notes**: * When generating a new key/secret, this API replaces the existing attributes, notes, and callback URLs with those specified in the request. Include or exclude any existing information that you want to retain or delete, respectively. * To migrate existing consumer keys and secrets to hybrid from another system, see the CreateDeveloperAppKey API. + Lists all data collectors. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` + * `parent` (*type:* `String.t`) - Required. Name of the organization for which to list data collectors in the following format: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4923,28 +5126,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:action` (*type:* `String.t`) - Action. Valid values are `approve` or `revoke`. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t`) - + * `:pageSize` (*type:* `integer()`) - Maximum number of data collectors to return. The page size defaults to 25. + * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListDataCollectors call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDataCollectorsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_generate_key_pair_or_update_developer_app_status( + @spec apigee_organizations_datacollectors_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDataCollectorsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_generate_key_pair_or_update_developer_app_status( + def apigee_organizations_datacollectors_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -4960,15 +5163,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :action => :query, - :body => :body + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/datacollectors", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -4976,17 +5179,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDataCollectorsResponse{}] ) end @doc """ - Returns the details for a developer app. + Updates a data collector. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` + * `name` (*type:* `String.t`) - Required. Name of the data collector in the following format: `organizations/{org}/datacollectors/{data_collector_id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -4999,26 +5202,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:entity` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `query` parameter. Set to `apiresources` to return the number of API resources that have been approved for access by a developer app in the specified Apigee organization. - * `:query` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `entity` parameter. Set to `count` to return the number of API resources that have been approved for access by a developer app in the specified Apigee organization. + * `:updateMask` (*type:* `String.t`) - List of fields to be updated. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_get( + @spec apigee_organizations_datacollectors_patch( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_get( + def apigee_organizations_datacollectors_patch( connection, name, optional_params \\ [], @@ -5036,13 +5239,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :entity => :query, - :query => :query + :updateMask => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:patch) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -5052,17 +5255,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollector{}] ) end @doc """ - Lists all apps created by a developer in an Apigee organization. Optionally, you can request an expanded view of the developer apps. A maximum of 100 developer apps are returned per API call. You can paginate the list of deveoper apps returned using the `startKey` and `count` query parameters. + Lists all deployments of API proxies or shared flows. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `parent` (*type:* `String.t`) - Required. Name of the organization for which to return deployment information in the following format: `organizations/{org}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5075,33 +5278,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:count` (*type:* `String.t`) - Number of developer apps to return in the API call. Use with the `startKey` parameter to provide more targeted filtering. The limit is 1000. - * `:expand` (*type:* `boolean()`) - Optional. Specifies whether to expand the results. Set to `true` to expand the results. This query parameter is not valid if you use the `count` or `startKey` query parameters. - * `:shallowExpand` (*type:* `boolean()`) - Optional. Specifies whether to expand the results in shallow mode. Set to `true` to expand the results in shallow mode. - * `:startKey` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `count` parameter. Name of the developer app from which to start displaying the list of developer apps. For example, if you're returning 50 developer apps at a time (using the `count` query parameter), you can view developer apps 50-99 by entering the name of the 50th developer app. The developer app name is case sensitive. + * `:sharedFlows` (*type:* `boolean()`) - Optional. Flag that specifies whether to return shared flow or API proxy deployments. Set to `true` to return shared flow deployments; set to `false` to return API proxy deployments. Defaults to `false`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperAppsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_list( + @spec apigee_organizations_deployments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperAppsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_list( - connection, - parent, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_deployments_list(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -5114,16 +5309,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :count => :query, - :expand => :query, - :shallowExpand => :query, - :startKey => :query + :sharedFlows => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/apps", %{ + |> Request.url("/v1/{+parent}/deployments", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -5132,17 +5324,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperAppsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] ) end @doc """ - Updates the details for a developer app. In addition, you can add an API product to a developer app and automatically generate an API key for the app to use when calling APIs in the API product. If you want to use an existing API key for the API product, add the API product to the API key using the UpdateDeveloperAppKey API. Using this API, you cannot update the following: * App name as it is the primary key used to identify the app and cannot be changed. * Scopes associated with the app. Instead, use the ReplaceDeveloperAppKey API. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. + Updates developer attributes. This API replaces the existing attributes with those specified in the request. Add new attributes, and include or exclude any existing attributes that you want to retain or remove, respectively. The custom attribute limit is 18. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` + * `parent` (*type:* `String.t`) - Required. Email address of the developer for which attributes are being updated. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5155,27 +5347,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_update( + @spec apigee_organizations_developers_attributes( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_update( + def apigee_organizations_developers_attributes( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -5196,9 +5388,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/attributes", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -5206,17 +5398,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] ) end @doc """ - Deletes a developer app attribute. + Creates a developer. Once created, the developer can register an app and obtain an API key. At creation time, a developer is set as `active`. To change the developer status, use the SetDeveloperStatus API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/attributes/{attribute}` + * `parent` (*type:* `String.t`) - Required. Name of the Apigee organization in which the developer is created. Use the following structure in your request: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5229,26 +5421,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_attributes_delete( + @spec apigee_organizations_developers_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_attributes_delete( + def apigee_organizations_developers_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -5263,14 +5456,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/developers", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -5278,17 +5472,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] ) end @doc """ - Returns a developer app attribute. + Deletes a developer. All apps and API keys associated with the developer are also removed. **Warning**: This API will permanently delete the developer and related artifacts. To avoid permanently deleting developers and their artifacts, set the developer status to `inactive` using the SetDeveloperStatus API. **Note**: The delete operation is asynchronous. The developer app is deleted immediately, but its associated resources, such as apps and API keys, may take anywhere from a few seconds to a few minutes to be deleted. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/attributes/{attribute}` + * `name` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5305,25 +5499,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_attributes_get( + @spec apigee_organizations_developers_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_attributes_get( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_developers_delete(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -5340,7 +5529,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -5350,17 +5539,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] ) end @doc """ - Returns a list of all developer app attributes. + Returns the developer details, including the developer's name, email address, apps, and other information. **Note**: The response includes only the first 100 developer apps. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` + * `name` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5373,29 +5562,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:action` (*type:* `String.t`) - Status of the developer. Valid values are `active` or `inactive`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_attributes_list( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} + @spec apigee_organizations_developers_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_attributes_list( - connection, - parent, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_developers_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -5407,14 +5587,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :action => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/attributes", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -5422,17 +5603,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] ) end @doc """ - Updates a developer app attribute. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (current default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. + Gets the account balance for the developer. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer app attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/attributes/{attribute}` + * `name` (*type:* `String.t`) - Required. Account balance for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/balance` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5445,25 +5626,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_attributes_update_developer_app_attribute( + @spec apigee_organizations_developers_get_balance( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_attributes_update_developer_app_attribute( + def apigee_organizations_developers_get_balance( connection, name, optional_params \\ [], @@ -5480,13 +5660,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -5496,17 +5675,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}] ) end @doc """ - Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. + Gets the monetization configuration for the developer. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Parent of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps` + * `name` (*type:* `String.t`) - Required. Monetization configuration for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/monetizationConfig` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5519,27 +5698,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_create( + @spec apigee_organizations_developers_get_monetization_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_create( + def apigee_organizations_developers_get_monetization_config( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -5554,15 +5732,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/keys", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -5570,17 +5747,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}] ) end @doc """ - Deletes an app's consumer key and removes all API products associated with the app. After the consumer key is deleted, it cannot be used to access any APIs. **Note**: After you delete a consumer key, you may want to: 1. Create a new consumer key and secret for the developer app using the CreateDeveloperAppKey API, and subsequently add an API product to the key using the UpdateDeveloperAppKey API. 2. Delete the developer app, if it is no longer required. + Lists all developers in an organization by email address. By default, the response does not include company developers. Set the `includeCompany` query parameter to `true` to include company developers. **Note**: A maximum of 1000 developers are returned in the response. You paginate the list of developers returned using the `startKey` and `count` query parameters. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` + * `parent` (*type:* `String.t`) - Required. Name of the Apigee organization. Use the following structure in your request: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5593,29 +5771,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:app` (*type:* `String.t`) - Optional. List only Developers that are associated with the app. Note that start_key, count are not applicable for this filter criteria. + * `:count` (*type:* `String.t`) - Optional. Number of developers to return in the API call. Use with the `startKey` parameter to provide more targeted filtering. The limit is 1000. + * `:expand` (*type:* `boolean()`) - Specifies whether to expand the results. Set to `true` to expand the results. This query parameter is not valid if you use the `count` or `startKey` query parameters. + * `:ids` (*type:* `String.t`) - Optional. List of IDs to include, separated by commas. + * `:includeCompany` (*type:* `boolean()`) - Flag that specifies whether to include company details in the response. + * `:startKey` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `count` parameter. Email address of the developer from which to start displaying the list of developers. For example, if the an unfiltered list returns: ``` westley@example.com fezzik@example.com buttercup@example.com ``` and your `startKey` is `fezzik@example.com`, the list returned will be ``` fezzik@example.com buttercup@example.com ``` * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListOfDevelopersResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_delete( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} + @spec apigee_organizations_developers_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListOfDevelopersResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_delete( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_developers_list(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -5627,14 +5801,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :app => :query, + :count => :query, + :expand => :query, + :ids => :query, + :includeCompany => :query, + :startKey => :query } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/developers", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -5642,17 +5822,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListOfDevelopersResponse{}] ) end @doc """ - Gets details for a consumer key for a developer app, including the key and secret value, associated API products, and other information. + Sets the status of a developer. A developer is `active` by default. If you set a developer's status to `inactive`, the API keys assigned to the developer apps are no longer valid even though the API keys are set to `approved`. Inactive developers can still sign in to the developer portal and create apps; however, any new API keys generated during app creation won't work. To set the status of a developer, set the `action` query parameter to `active` or `inactive`, and the `Content-Type` header to `application/octet-stream`. If successful, the API call returns the following HTTP status code: `204 No Content` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` + * `name` (*type:* `String.t`) - Required. Name of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5665,24 +5845,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:action` (*type:* `String.t`) - Status of the developer. Valid values are `active` and `inactive`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_get( + @spec apigee_organizations_developers_set_developer_status( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_get( + def apigee_organizations_developers_set_developer_status( connection, name, optional_params \\ [], @@ -5699,12 +5880,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :action => :query } request = Request.new() - |> Request.method(:get) + |> Request.method(:post) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -5713,18 +5895,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Updates the scope of an app. This API replaces the existing scopes with those specified in the request. Include or exclude any existing scopes that you want to retain or delete, respectively. The specified scopes must already be defined for the API products associated with the app. This API sets the `scopes` element under the `apiProducts` element in the attributes of the app. + Updates a developer. This API replaces the existing developer details with those specified in the request. Include or exclude any existing details that you want to retain or delete, respectively. The custom attribute limit is 18. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (current default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` + * `name` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5737,30 +5917,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_replace_developer_app_key( + @spec apigee_organizations_developers_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_replace_developer_app_key( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_developers_update(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -5788,17 +5963,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Developer{}] ) end @doc """ - Adds an API product to a developer app key, enabling the app that holds the key to access the API resources bundled in the API product. In addition, you can add attributes to a developer app key. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. You can use the same key to access all API products associated with the app. + Updates the monetization configuration for the developer. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` + * `name` (*type:* `String.t`) - Required. Monetization configuration for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/monetizationConfig` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5811,26 +5986,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:action` (*type:* `String.t`) - Approve or revoke the consumer key by setting this value to `approve` or `revoke`, respectively. The `Content-Type` header must be set to `application/octet-stream`. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_update_developer_app_key( + @spec apigee_organizations_developers_update_monetization_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_update_developer_app_key( + def apigee_organizations_developers_update_monetization_config( connection, name, optional_params \\ [], @@ -5848,13 +6022,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :action => :query, :body => :body } request = Request.new() - |> Request.method(:post) + |> Request.method(:put) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -5864,17 +6037,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperMonetizationConfig{}] ) end @doc """ - Removes an API product from an app's consumer key. After the API product is removed, the app cannot access the API resources defined in that API product. **Note**: The consumer key is not removed, only its association with the API product. + Updates attributes for a developer app. This API replaces the current attributes with those specified in the request. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the API product in the developer app key in the following format: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}/apiproducts/{apiproduct}` + * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5887,24 +6061,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_apiproducts_delete( + @spec apigee_organizations_developers_apps_attributes( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_apiproducts_delete( + def apigee_organizations_developers_apps_attributes( connection, name, optional_params \\ [], @@ -5921,13 +6096,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}/attributes", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -5936,17 +6112,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] ) end @doc """ - Approves or revokes the consumer key for an API product. After a consumer key is approved, the app can use it to access APIs. A consumer key that is revoked or pending cannot be used to access an API. Any access tokens associated with a revoked consumer key will remain active. However, Apigee checks the status of the consumer key and if set to `revoked` will not allow access to the API. + Creates an app associated with a developer. This API associates the developer app with the specified API product and auto-generates an API key for the app to use in calls to API proxies inside that API product. The `name` is the unique ID of the app that you can use in API calls. The `DisplayName` (set as an attribute) appears in the UI. If you don't set the `DisplayName` attribute, the `name` appears in the UI. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the API product in the developer app key in the following format: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}/apiproducts/{apiproduct}` + * `parent` (*type:* `String.t`) - Required. Name of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -5959,27 +6135,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:action` (*type:* `String.t`) - Approve or revoke the consumer key by setting this value to `approve` or `revoke`, respectively. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_apiproducts_update_developer_app_key_api_product( + @spec apigee_organizations_developers_apps_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_apiproducts_update_developer_app_key_api_product( + def apigee_organizations_developers_apps_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -5995,30 +6171,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :action => :query + :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/apps", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] + ) end @doc """ - Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. + Deletes a developer app. **Note**: The delete operation is asynchronous. The developer app is deleted immediately, but its associated resources, such as app keys or access tokens, may take anywhere from a few seconds to a few minutes to be deleted. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Parent of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps` + * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6031,27 +6209,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_apps_keys_create_create( + @spec apigee_organizations_developers_apps_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_apps_keys_create_create( + def apigee_organizations_developers_apps_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -6066,15 +6243,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/keys/create", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -6082,17 +6258,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] ) end @doc """ - Deletes a developer attribute. + Manages access to a developer app by enabling you to: * Approve or revoke a developer app * Generate a new consumer key and secret for a developer app To approve or revoke a developer app, set the `action` query parameter to `approve` or `revoke`, respectively, and the `Content-Type` header to `application/octet-stream`. If a developer app is revoked, none of its API keys are valid for API calls even though the keys are still approved. If successful, the API call returns the following HTTP status code: `204 No Content` To generate a new consumer key and secret for a developer app, pass the new key/secret details. Rather than replace an existing key, this API generates a new key. In this case, multiple key pairs may be associated with a single developer app. Each key pair has an independent status (`approve` or `revoke`) and expiration time. Any approved, non-expired key can be used in an API call. For example, if you're using API key rotation, you can generate new keys with expiration times that overlap keys that are going to expire. You might also generate a new consumer key/secret if the security of the original key/secret is compromised. The `keyExpiresIn` property defines the expiration time for the API key in milliseconds. If you don't set this property or set it to `-1`, the API key never expires. **Notes**: * When generating a new key/secret, this API replaces the existing attributes, notes, and callback URLs with those specified in the request. Include or exclude any existing information that you want to retain or delete, respectively. * To migrate existing consumer keys and secrets to hybrid from another system, see the CreateDeveloperAppKey API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/attributes/{attribute}` + * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6105,24 +6281,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:action` (*type:* `String.t`) - Action. Valid values are `approve` or `revoke`. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_attributes_delete( + @spec apigee_organizations_developers_apps_generate_key_pair_or_update_developer_app_status( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_attributes_delete( + def apigee_organizations_developers_apps_generate_key_pair_or_update_developer_app_status( connection, name, optional_params \\ [], @@ -6139,12 +6317,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :action => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) + |> Request.method(:post) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -6154,17 +6334,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] ) end @doc """ - Returns the value of the specified developer attribute. + Returns the details for a developer app. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/attributes/{attribute}` + * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6177,24 +6357,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:entity` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `query` parameter. Set to `apiresources` to return the number of API resources that have been approved for access by a developer app in the specified Apigee organization. + * `:query` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `entity` parameter. Set to `count` to return the number of API resources that have been approved for access by a developer app in the specified Apigee organization. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_attributes_get( + @spec apigee_organizations_developers_apps_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_attributes_get( + def apigee_organizations_developers_apps_get( connection, name, optional_params \\ [], @@ -6211,7 +6393,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :entity => :query, + :query => :query } request = @@ -6226,17 +6410,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] ) end @doc """ - Returns a list of all developer attributes. + Lists all apps created by a developer in an Apigee organization. Optionally, you can request an expanded view of the developer apps. A maximum of 100 developer apps are returned per API call. You can paginate the list of deveoper apps returned using the `startKey` and `count` query parameters. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Email address of the developer for which attributes are being listed. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `parent` (*type:* `String.t`) - Required. Name of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6249,24 +6433,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:count` (*type:* `String.t`) - Number of developer apps to return in the API call. Use with the `startKey` parameter to provide more targeted filtering. The limit is 1000. + * `:expand` (*type:* `boolean()`) - Optional. Specifies whether to expand the results. Set to `true` to expand the results. This query parameter is not valid if you use the `count` or `startKey` query parameters. + * `:shallowExpand` (*type:* `boolean()`) - Optional. Specifies whether to expand the results in shallow mode. Set to `true` to expand the results in shallow mode. + * `:startKey` (*type:* `String.t`) - **Note**: Must be used in conjunction with the `count` parameter. Name of the developer app from which to start displaying the list of developer apps. For example, if you're returning 50 developer apps at a time (using the `count` query parameter), you can view developer apps 50-99 by entering the name of the 50th developer app. The developer app name is case sensitive. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperAppsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_attributes_list( + @spec apigee_organizations_developers_apps_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperAppsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_attributes_list( + def apigee_organizations_developers_apps_list( connection, parent, optional_params \\ [], @@ -6283,13 +6471,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :count => :query, + :expand => :query, + :shallowExpand => :query, + :startKey => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/attributes", %{ + |> Request.url("/v1/{+parent}/apps", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -6298,17 +6490,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperAppsResponse{}] ) end @doc """ - Updates a developer attribute. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. + Updates the details for a developer app. In addition, you can add an API product to a developer app and automatically generate an API key for the app to use when calling APIs in the API product. If you want to use an existing API key for the API product, add the API product to the API key using the UpdateDeveloperAppKey API. Using this API, you cannot update the following: * App name as it is the primary key used to identify the app and cannot be changed. * Scopes associated with the app. Instead, use the ReplaceDeveloperAppKey API. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the developer attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/attributes/{attribute}` + * `name` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6321,25 +6513,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_attributes_update_developer_attribute( + @spec apigee_organizations_developers_apps_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_attributes_update_developer_attribute( + def apigee_organizations_developers_apps_update( connection, name, optional_params \\ [], @@ -6362,7 +6554,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:post) + |> Request.method(:put) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -6372,17 +6564,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperApp{}] ) end @doc """ - Adjust the prepaid balance for the developer. This API will be used in scenarios where the developer has been under-charged or over-charged. + Deletes a developer app attribute. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Account balance for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/balance` + * `name` (*type:* `String.t`) - Required. Name of the developer app attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/attributes/{attribute}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6395,25 +6587,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AdjustDeveloperBalanceRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_balance_adjust( + @spec apigee_organizations_developers_apps_attributes_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_balance_adjust( + def apigee_organizations_developers_apps_attributes_delete( connection, name, optional_params \\ [], @@ -6430,14 +6621,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+name}:adjust", %{ + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -6446,17 +6636,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] ) end @doc """ - Credits the account balance for the developer. + Returns a developer app attribute. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Account balance for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/balance` + * `name` (*type:* `String.t`) - Required. Name of the developer app attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/attributes/{attribute}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6469,25 +6659,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CreditDeveloperBalanceRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_balance_credit( + @spec apigee_organizations_developers_apps_attributes_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_balance_credit( + def apigee_organizations_developers_apps_attributes_get( connection, name, optional_params \\ [], @@ -6504,14 +6693,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+name}:credit", %{ + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -6520,17 +6708,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] ) end @doc """ - Creates a subscription to an API product. + Returns a list of all developer app attributes. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Email address of the developer that is purchasing a subscription to the API product. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `parent` (*type:* `String.t`) - Required. Name of the developer app. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6543,25 +6731,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_subscriptions_create( + @spec apigee_organizations_developers_apps_attributes_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_subscriptions_create( + def apigee_organizations_developers_apps_attributes_list( connection, parent, optional_params \\ [], @@ -6578,14 +6765,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/subscriptions", %{ + |> Request.method(:get) + |> Request.url("/v1/{+parent}/attributes", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -6594,17 +6780,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] ) end @doc """ - Expires an API product subscription immediately. + Updates a developer app attribute. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (current default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the API product subscription. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/subscriptions/{subscription}` + * `name` (*type:* `String.t`) - Required. Name of the developer app attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/attributes/{attribute}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6617,25 +6803,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ExpireDeveloperSubscriptionRequest.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_subscriptions_expire( + @spec apigee_organizations_developers_apps_attributes_update_developer_app_attribute( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_subscriptions_expire( + def apigee_organizations_developers_apps_attributes_update_developer_app_attribute( connection, name, optional_params \\ [], @@ -6659,7 +6845,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+name}:expire", %{ + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -6668,17 +6854,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] ) end @doc """ - Gets details for an API product subscription. + Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. **Note**: All keys start out with status=approved, even if status=revoked is passed when the key is created. To revoke a key, use the UpdateDeveloperAppKey API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the API product subscription. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/subscriptions/{subscription}` + * `parent` (*type:* `String.t`) - Parent of the developer app key. Use the following structure in your request: 'organizations/{org}/developers/{developerEmail}/apps/{appName}' * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6691,26 +6877,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_subscriptions_get( + @spec apigee_organizations_developers_apps_keys_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_subscriptions_get( + def apigee_organizations_developers_apps_keys_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -6725,14 +6912,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/keys", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -6740,17 +6928,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] ) end @doc """ - Lists all API product subscriptions for a developer. + Deletes an app's consumer key and removes all API products associated with the app. After the consumer key is deleted, it cannot be used to access any APIs. **Note**: After you delete a consumer key, you may want to: 1. Create a new consumer key and secret for the developer app using the CreateDeveloperAppKey API, and subsequently add an API product to the key using the UpdateDeveloperAppKey API. 2. Delete the developer app, if it is no longer required. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` + * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6763,29 +6951,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:count` (*type:* `integer()`) - Number of API product subscriptions to return in the API call. Use with `startKey` to provide more targeted filtering. Defaults to 100. The maximum limit is 1000. - * `:startKey` (*type:* `String.t`) - Name of the API product subscription from which to start displaying the list of subscriptions. If omitted, the list starts from the first item. For example, to view the API product subscriptions from 51-150, set the value of `startKey` to the name of the 51st subscription and set the value of `count` to 100. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperSubscriptionsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_developers_subscriptions_list( + @spec apigee_organizations_developers_apps_keys_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, - GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperSubscriptionsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_developers_subscriptions_list( + def apigee_organizations_developers_apps_keys_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -6800,16 +6985,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :count => :query, - :startKey => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/subscriptions", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -6817,21 +7000,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [ - struct: - %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperSubscriptionsResponse{} - ] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] ) end @doc """ - Creates an endpoint attachment. **Note:** Not supported for Apigee hybrid. + Gets details for a consumer key for a developer app, including the key and secret value, associated API products, and other information. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Organization the endpoint attachment will be created in. + * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6844,28 +7023,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:endpointAttachmentId` (*type:* `String.t`) - ID to use for the endpoint attachment. ID must start with a lowercase letter followed by up to 31 lowercase letters, numbers, or hyphens, and cannot end with a hyphen. The minimum length is 2. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_endpoint_attachments_create( + @spec apigee_organizations_developers_apps_keys_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_endpoint_attachments_create( + def apigee_organizations_developers_apps_keys_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -6880,32 +7057,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :endpointAttachmentId => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/endpointAttachments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + ) end @doc """ - Deletes an endpoint attachment. + Updates the scope of an app. This API replaces the existing scopes with those specified in the request. Include or exclude any existing scopes that you want to retain or delete, respectively. The specified scopes must already be defined for the API products associated with the app. This API sets the `scopes` element under the `apiProducts` element in the attributes of the app. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the endpoint attachment. Use the following structure in your request: `organizations/{org}/endpointAttachments/{endpoint_attachment}` + * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6918,24 +7095,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_endpoint_attachments_delete( + @spec apigee_organizations_developers_apps_keys_replace_developer_app_key( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_endpoint_attachments_delete( + def apigee_organizations_developers_apps_keys_replace_developer_app_key( connection, name, optional_params \\ [], @@ -6952,12 +7130,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) + |> Request.method(:put) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -6966,16 +7145,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + ) end @doc """ - Gets the endpoint attachment. + Adds an API product to a developer app key, enabling the app that holds the key to access the API resources bundled in the API product. In addition, you can add attributes to a developer app key. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. You can use the same key to access all API products associated with the app. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the endpoint attachment. Use the following structure in your request: `organizations/{org}/endpointAttachments/{endpoint_attachment}` + * `name` (*type:* `String.t`) - Name of the developer app key. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -6988,24 +7169,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:action` (*type:* `String.t`) - Approve or revoke the consumer key by setting this value to `approve` or `revoke`, respectively. The `Content-Type` header must be set to `application/octet-stream`. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_endpoint_attachments_get( + @spec apigee_organizations_developers_apps_keys_update_developer_app_key( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_endpoint_attachments_get( + def apigee_organizations_developers_apps_keys_update_developer_app_key( connection, name, optional_params \\ [], @@ -7022,12 +7205,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :action => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:post) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -7037,17 +7222,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] ) end @doc """ - Lists the endpoint attachments in an organization. + Removes an API product from an app's consumer key. After the API product is removed, the app cannot access the API resources defined in that API product. **Note**: The consumer key is not removed, only its association with the API product. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization for which to list endpoint attachments. Use the following structure in your request: `organizations/{org}` + * `name` (*type:* `String.t`) - Name of the API product in the developer app key in the following format: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}/apiproducts/{apiproduct}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7060,28 +7245,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of endpoint attachments to return. If unspecified, at most 25 attachments will be returned. - * `:pageToken` (*type:* `String.t`) - Optional. Page token, returned from a previous `ListEndpointAttachments` call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEndpointAttachmentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_endpoint_attachments_list( + @spec apigee_organizations_developers_apps_keys_apiproducts_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEndpointAttachmentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_endpoint_attachments_list( + def apigee_organizations_developers_apps_keys_apiproducts_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -7096,16 +7279,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/endpointAttachments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -7113,18 +7294,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEndpointAttachmentsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] ) end @doc """ - Creates a new environment group. + Approves or revokes the consumer key for an API product. After a consumer key is approved, the app can use it to access APIs. A consumer key that is revoked or pending cannot be used to access an API. Any access tokens associated with a revoked consumer key will remain active. However, Apigee checks the status of the consumer key and if set to `revoked` will not allow access to the API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization in which to create the environment group in the following format: `organizations/{org}`. + * `name` (*type:* `String.t`) - Name of the API product in the developer app key in the following format: `organizations/{org}/developers/{developer_email}/apps/{app}/keys/{key}/apiproducts/{apiproduct}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7137,26 +7317,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:name` (*type:* `String.t`) - ID of the environment group. Overrides any ID in the environment_group resource. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup.t`) - + * `:action` (*type:* `String.t`) - Approve or revoke the consumer key by setting this value to `approve` or `revoke`, respectively. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_create( + @spec apigee_organizations_developers_apps_keys_apiproducts_update_developer_app_key_api_product( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_create(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_developers_apps_keys_apiproducts_update_developer_app_key_api_product( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -7169,31 +7353,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :name => :query, - :body => :body + :action => :query } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/envgroups", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Deletes an environment group. + Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. **Note**: All keys start out with status=approved, even if status=revoked is passed when the key is created. To revoke a key, use the UpdateDeveloperAppKey API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment group in the following format: `organizations/{org}/envgroups/{envgroup}`. + * `parent` (*type:* `String.t`) - Parent of the developer app key. Use the following structure in your request: 'organizations/{org}/developers/{developerEmail}/apps/{appName}' * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7206,24 +7389,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_delete( + @spec apigee_organizations_developers_apps_keys_create_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_delete(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_developers_apps_keys_create_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -7235,30 +7424,33 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/keys/create", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperAppKey{}] + ) end @doc """ - Gets an environment group. + Deletes a developer attribute. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment group in the following format: `organizations/{org}/envgroups/{envgroup}`. + * `name` (*type:* `String.t`) - Required. Name of the developer attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/attributes/{attribute}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7275,15 +7467,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup.t()} + @spec apigee_organizations_developers_attributes_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_developers_attributes_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -7300,7 +7502,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -7310,17 +7512,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] ) end @doc """ - Lists all environment groups. + Returns the value of the specified developer attribute. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization for which to list environment groups in the following format: `organizations/{org}`. + * `name` (*type:* `String.t`) - Required. Name of the developer attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/attributes/{attribute}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7333,21 +7535,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of environment groups to return. The page size defaults to 25. - * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListEnvironmentGroups call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupsResponse.t()} + @spec apigee_organizations_developers_attributes_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_list(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_developers_attributes_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -7359,16 +7569,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/envgroups", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -7376,18 +7584,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] ) end @doc """ - Updates an environment group. + Returns a list of all developer attributes. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment group to update in the format: `organizations/{org}/envgroups/{envgroup}. + * `parent` (*type:* `String.t`) - Required. Email address of the developer for which attributes are being listed. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7400,21 +7607,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:updateMask` (*type:* `String.t`) - List of fields to be updated. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_patch(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + @spec apigee_organizations_developers_attributes_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_patch(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_developers_attributes_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -7426,32 +7641,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :updateMask => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:patch) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/attributes", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attributes{}] + ) end @doc """ - Creates a new attachment of an environment to an environment group. + Updates a developer attribute. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. EnvironmentGroup under which to create the attachment in the following format: `organizations/{org}/envgroups/{envgroup}`. + * `name` (*type:* `String.t`) - Required. Name of the developer attribute. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/attributes/{attribute}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7464,27 +7679,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_attachments_create( + @spec apigee_organizations_developers_attributes_update_developer_attribute( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_attachments_create( + def apigee_organizations_developers_attributes_update_developer_attribute( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -7506,24 +7721,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/attachments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute{}] + ) end @doc """ - Deletes an environment group attachment. + Adjust the prepaid balance for the developer. This API will be used in scenarios where the developer has been under-charged or over-charged. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment group attachment to delete in the following format: `organizations/{org}/envgroups/{envgroup}/attachments/{attachment}`. + * `name` (*type:* `String.t`) - Required. Account balance for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/balance` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7536,24 +7753,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AdjustDeveloperBalanceRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_attachments_delete( + @spec apigee_organizations_developers_balance_adjust( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_attachments_delete( + def apigee_organizations_developers_balance_adjust( connection, name, optional_params \\ [], @@ -7570,13 +7788,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}:adjust", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -7584,16 +7803,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}] + ) end @doc """ - Gets an environment group attachment. + Credits the account balance for the developer. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment group attachment in the following format: `organizations/{org}/envgroups/{envgroup}/attachments/{attachment}` + * `name` (*type:* `String.t`) - Required. Account balance for the developer. Use the following structure in your request: `organizations/{org}/developers/{developer}/balance` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7606,24 +7827,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CreditDeveloperBalanceRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_attachments_get( + @spec apigee_organizations_developers_balance_credit( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_attachments_get( + def apigee_organizations_developers_balance_credit( connection, name, optional_params \\ [], @@ -7640,13 +7862,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}:credit", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -7655,17 +7878,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperBalance{}] ) end @doc """ - Lists all attachments of an environment group. + Creates a subscription to an API product. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment group in the following format: `organizations/{org}/envgroups/{envgroup}`. + * `parent` (*type:* `String.t`) - Required. Email address of the developer that is purchasing a subscription to the API product. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7678,27 +7901,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of environment group attachments to return. The page size defaults to 25. - * `:pageToken` (*type:* `String.t`) - Page token, returned by a previous ListEnvironmentGroupAttachments call, that you can use to retrieve the next page. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupAttachmentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_envgroups_attachments_list( + @spec apigee_organizations_developers_subscriptions_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, - GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupAttachmentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_envgroups_attachments_list( + def apigee_organizations_developers_subscriptions_create( connection, parent, optional_params \\ [], @@ -7716,14 +7937,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/attachments", %{ + |> Request.method(:post) + |> Request.url("/v1/{+parent}/subscriptions", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -7732,21 +7952,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [ - struct: - %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupAttachmentsResponse{} - ] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}] ) end @doc """ - Creates an environment in an organization. + Expires an API product subscription immediately. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization in which the environment will be created. Use the following structure in your request: `organizations/{org}` + * `name` (*type:* `String.t`) - Required. Name of the API product subscription. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/subscriptions/{subscription}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7759,28 +7975,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:name` (*type:* `String.t`) - Optional. Name of the environment. Alternatively, the name may be specified in the request body in the name field. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ExpireDeveloperSubscriptionRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_create( + @spec apigee_organizations_developers_subscriptions_expire( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_create( + def apigee_organizations_developers_subscriptions_expire( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -7796,31 +8011,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :name => :query, :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/environments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}:expire", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}] + ) end @doc """ - Deletes an environment from an organization. **Warning: You must delete all key value maps and key value entries before you delete an environment.** Otherwise, if you re-create the environment the key value map entry operations will encounter encryption/decryption discrepancies. + Gets details for an API product subscription. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` + * `name` (*type:* `String.t`) - Required. Name of the API product subscription. Use the following structure in your request: `organizations/{org}/developers/{developer_email}/subscriptions/{subscription}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7837,20 +8053,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_delete( + @spec apigee_organizations_developers_subscriptions_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_delete( + def apigee_organizations_developers_subscriptions_get( connection, name, optional_params \\ [], @@ -7872,7 +8088,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -7881,16 +8097,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeveloperSubscription{}] + ) end @doc """ - Gets environment details. + Lists all API product subscriptions for a developer. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` + * `parent` (*type:* `String.t`) - Required. Email address of the developer. Use the following structure in your request: `organizations/{org}/developers/{developer_email}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7903,24 +8121,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:count` (*type:* `integer()`) - Number of API product subscriptions to return in the API call. Use with `startKey` to provide more targeted filtering. Defaults to 100. The maximum limit is 1000. + * `:startKey` (*type:* `String.t`) - Name of the API product subscription from which to start displaying the list of subscriptions. If omitted, the list starts from the first item. For example, to view the API product subscriptions from 51-150, set the value of `startKey` to the name of the 51st subscription and set the value of `count` to 100. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperSubscriptionsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_get( + @spec apigee_organizations_developers_subscriptions_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t()} + {:ok, + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperSubscriptionsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_developers_subscriptions_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -7932,14 +8158,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :count => :query, + :startKey => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/subscriptions", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -7947,17 +8175,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}] + opts ++ + [ + struct: + %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeveloperSubscriptionsResponse{} + ] ) end @doc """ - Gets the API Security runtime configuration for an environment. This named ApiSecurityRuntimeConfig to prevent conflicts with ApiSecurityConfig from addon config. + Creates an endpoint attachment. **Note:** Not supported for Apigee hybrid. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment API Security Runtime configuration resource. Use the following structure in your request: `organizations/{org}/environments/{env}/apiSecurityRuntimeConfig` + * `parent` (*type:* `String.t`) - Required. Organization the endpoint attachment will be created in. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -7970,26 +8202,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:endpointAttachmentId` (*type:* `String.t`) - ID to use for the endpoint attachment. ID must start with a lowercase letter followed by up to 31 lowercase letters, numbers, or hyphens, and cannot end with a hyphen. The minimum length is 2. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityRuntimeConfig{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_get_api_security_runtime_config( + @spec apigee_organizations_endpoint_attachments_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityRuntimeConfig.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_get_api_security_runtime_config( + def apigee_organizations_endpoint_attachments_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -8004,32 +8238,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :endpointAttachmentId => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/endpointAttachments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityRuntimeConfig{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Gets the debug mask singleton resource for an environment. + Deletes an endpoint attachment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the debug mask. Use the following structure in your request: `organizations/{org}/environments/{env}/debugmask`. + * `name` (*type:* `String.t`) - Required. Name of the endpoint attachment. Use the following structure in your request: `organizations/{org}/endpointAttachments/{endpoint_attachment}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8046,20 +8280,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_get_debugmask( + @spec apigee_organizations_endpoint_attachments_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_get_debugmask( + def apigee_organizations_endpoint_attachments_delete( connection, name, optional_params \\ [], @@ -8081,7 +8315,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -8090,18 +8324,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Gets the deployed configuration for an environment. + Gets the endpoint attachment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment deployed configuration resource. Use the following structure in your request: `organizations/{org}/environments/{env}/deployedConfig` + * `name` (*type:* `String.t`) - Required. Name of the endpoint attachment. Use the following structure in your request: `organizations/{org}/endpointAttachments/{endpoint_attachment}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8118,20 +8350,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_get_deployed_config( + @spec apigee_organizations_endpoint_attachments_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_get_deployed_config( + def apigee_organizations_endpoint_attachments_get( connection, name, optional_params \\ [], @@ -8163,17 +8395,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointAttachment{}] ) end @doc """ - Gets the IAM policy on an environment. For more information, see [Manage users, roles, and permissions using the API](https://cloud.google.com/apigee/docs/api-platform/system-administration/manage-users-roles). You must have the `apigee.environments.getIamPolicy` permission to call this API. + Lists the endpoint attachments in an organization. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `resource` (*type:* `String.t`) - REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * `parent` (*type:* `String.t`) - Required. Name of the organization for which to list endpoint attachments. Use the following structure in your request: `organizations/{org}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8186,27 +8418,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:"options.requestedPolicyVersion"` (*type:* `integer()`) - Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of endpoint attachments to return. If unspecified, at most 25 attachments will be returned. + * `:pageToken` (*type:* `String.t`) - Optional. Page token, returned from a previous `ListEndpointAttachments` call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEndpointAttachmentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_get_iam_policy( + @spec apigee_organizations_endpoint_attachments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleIamV1Policy.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEndpointAttachmentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_get_iam_policy( + def apigee_organizations_endpoint_attachments_list( connection, - resource, + parent, optional_params \\ [], opts \\ [] ) do @@ -8222,30 +8455,34 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :"options.requestedPolicyVersion" => :query + :pageSize => :query, + :pageToken => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+resource}:getIamPolicy", %{ - "resource" => URI.encode(resource, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/endpointAttachments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}]) + |> Response.decode( + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEndpointAttachmentsResponse{}] + ) end @doc """ - Get distributed trace configuration in an environment. + Creates a new environment group. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the trace configuration. Use the following structure in your request: "organizations/*/environments/*/traceConfig". + * `parent` (*type:* `String.t`) - Required. Name of the organization in which to create the environment group in the following format: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8258,29 +8495,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:name` (*type:* `String.t`) - Optional. ID of the environment group. Overrides any ID in the environment_group resource. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_get_trace_config( + @spec apigee_organizations_envgroups_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_get_trace_config( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_envgroups_create(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -8292,32 +8526,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :name => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/envgroups", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Updates properties for an Apigee environment with patch semantics using a field mask. **Note:** Not supported for Apigee hybrid. + Deletes an environment group. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{environment}`. + * `name` (*type:* `String.t`) - Required. Name of the environment group in the following format: `organizations/{org}/envgroups/{envgroup}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8330,8 +8564,6 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:updateMask` (*type:* `String.t`) - List of fields to be updated. Fields that can be updated: node_config. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns @@ -8339,7 +8571,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_modify_environment( + @spec apigee_organizations_envgroups_delete( Tesla.Env.client(), String.t(), keyword(), @@ -8349,12 +8581,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_modify_environment( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_envgroups_delete(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -8366,14 +8593,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :updateMask => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:patch) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -8386,12 +8611,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do end @doc """ - Sets the IAM policy on an environment, if the policy already exists it will be replaced. For more information, see [Manage users, roles, and permissions using the API](https://cloud.google.com/apigee/docs/api-platform/system-administration/manage-users-roles). You must have the `apigee.environments.setIamPolicy` permission to call this API. + Gets an environment group. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `resource` (*type:* `String.t`) - REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * `name` (*type:* `String.t`) - Required. Name of the environment group in the following format: `organizations/{org}/envgroups/{envgroup}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8404,30 +8629,19 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleIamV1SetIamPolicyRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_set_iam_policy( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleIamV1Policy.t()} + @spec apigee_organizations_envgroups_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_set_iam_policy( - connection, - resource, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_envgroups_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -8439,31 +8653,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+resource}:setIamPolicy", %{ - "resource" => URI.encode(resource, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup{}] + ) end @doc """ - Creates a subscription for the environment's Pub/Sub topic. The server will assign a random name for this subscription. The "name" and "push_config" must *not* be specified. + Gets the deployed ingress configuration for an environment group. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` + * `name` (*type:* `String.t`) - Required. Name of the deployed configuration for the environment group in the following format: 'organizations/{org}/envgroups/{envgroup}/deployedIngressConfig'. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8476,26 +8691,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:view` (*type:* `String.t`) - When set to FULL, additional details about the specific deployments receiving traffic will be included in the IngressConfig response's RoutingRules. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_subscribe( + @spec apigee_organizations_envgroups_get_deployed_ingress_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_subscribe( + def apigee_organizations_envgroups_get_deployed_ingress_config( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -8510,14 +8726,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :view => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}:subscribe", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -8525,17 +8742,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupConfig{}] ) end @doc """ - Tests the permissions of a user on an environment, and returns a subset of permissions that the user has on the environment. If the environment does not exist, an empty permission set is returned (a NOT_FOUND error is not returned). + Lists all environment groups. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `resource` (*type:* `String.t`) - REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * `parent` (*type:* `String.t`) - Required. Name of the organization for which to list environment groups in the following format: `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8548,30 +8765,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsRequest.t`) - + * `:pageSize` (*type:* `integer()`) - Maximum number of environment groups to return. The page size defaults to 25. + * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListEnvironmentGroups call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_test_iam_permissions( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsResponse.t()} + @spec apigee_organizations_envgroups_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_test_iam_permissions( - connection, - resource, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_envgroups_list(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -8584,14 +8792,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :body => :body + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+resource}:testIamPermissions", %{ - "resource" => URI.encode(resource, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/envgroups", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -8599,17 +8808,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsResponse{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupsResponse{}] ) end @doc """ - Deletes a subscription for the environment's Pub/Sub topic. + Updates an environment group. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` + * `name` (*type:* `String.t`) - Required. Name of the environment group to update in the format: `organizations/{org}/envgroups/{envgroup}. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8622,30 +8832,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription.t`) - + * `:updateMask` (*type:* `String.t`) - Optional. List of fields to be updated. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroup.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_unsubscribe( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + @spec apigee_organizations_envgroups_patch(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_unsubscribe( - connection, - parent, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_envgroups_patch(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -8658,30 +8859,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :updateMask => :query, :body => :body } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}:unsubscribe", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:patch) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Updates an existing environment. When updating properties, you must pass all existing properties to the API, even if they are not being changed. If you omit properties from the payload, the properties are removed. To get the current list of properties for the environment, use the [Get Environment API](get). **Note**: Both `PUT` and `POST` methods are supported for updating an existing environment. + Creates a new attachment of an environment to an environment group. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` + * `parent` (*type:* `String.t`) - Required. EnvironmentGroup under which to create the attachment in the following format: `organizations/{org}/envgroups/{envgroup}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8694,27 +8896,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_update( + @spec apigee_organizations_envgroups_attachments_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_update( + def apigee_organizations_envgroups_attachments_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -8735,27 +8937,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/attachments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Updates the debug mask singleton resource for an environment. + Deletes an environment group attachment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the debug mask. + * `name` (*type:* `String.t`) - Required. Name of the environment group attachment to delete in the following format: `organizations/{org}/envgroups/{envgroup}/attachments/{attachment}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8768,27 +8968,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:replaceRepeatedFields` (*type:* `boolean()`) - Boolean flag that specifies whether to replace existing values in the debug mask when doing an update. Set to true to replace existing values. The default behavior is to append the values (false). - * `:updateMask` (*type:* `String.t`) - Field debug mask to support partial updates. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_update_debugmask( + @spec apigee_organizations_envgroups_attachments_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_update_debugmask( + def apigee_organizations_envgroups_attachments_delete( connection, name, optional_params \\ [], @@ -8805,15 +9002,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :replaceRepeatedFields => :query, - :updateMask => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:patch) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -8822,18 +9016,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Updates an existing environment. When updating properties, you must pass all existing properties to the API, even if they are not being changed. If you omit properties from the payload, the properties are removed. To get the current list of properties for the environment, use the [Get Environment API](get). **Note**: Both `PUT` and `POST` methods are supported for updating an existing environment. + Gets an environment group attachment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` + * `name` (*type:* `String.t`) - Required. Name of the environment group attachment in the following format: `organizations/{org}/envgroups/{envgroup}/attachments/{attachment}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8846,25 +9038,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_update_environment( + @spec apigee_organizations_envgroups_attachments_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_update_environment( + def apigee_organizations_envgroups_attachments_get( connection, name, optional_params \\ [], @@ -8881,13 +9072,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -8897,17 +9087,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupAttachment{}] ) end @doc """ - Updates the trace configurations in an environment. Note that the repeated fields have replace semantics when included in the field mask and that they will be overwritten by the value of the fields in the request body. + Lists all attachments of an environment group. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the trace configuration. Use the following structure in your request: "organizations/*/environments/*/traceConfig". + * `parent` (*type:* `String.t`) - Required. Name of the environment group in the following format: `organizations/{org}/envgroups/{envgroup}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8920,28 +9110,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:updateMask` (*type:* `String.t`) - List of fields to be updated. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig.t`) - + * `:pageSize` (*type:* `integer()`) - Maximum number of environment group attachments to return. The page size defaults to 25. + * `:pageToken` (*type:* `String.t`) - Page token, returned by a previous ListEnvironmentGroupAttachments call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupAttachmentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_update_trace_config( + @spec apigee_organizations_envgroups_attachments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig.t()} + {:ok, + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupAttachmentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_update_trace_config( + def apigee_organizations_envgroups_attachments_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -8957,15 +9148,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :updateMask => :query, - :body => :body + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:patch) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/attachments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -8973,17 +9164,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}] + opts ++ + [ + struct: + %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentGroupAttachmentsResponse{} + ] ) end @doc """ - Gets a list of metrics and dimensions that can be used to create analytics queries and reports. Each schema element contains the name of the field, its associated type, and a flag indicating whether it is a standard or custom field. + Creates an environment in an organization. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Path to the schema. Use the following structure in your request: `organizations/{org}/environments/{env}/analytics/admin/schemav2`. + * `parent` (*type:* `String.t`) - Required. Name of the organization in which the environment will be created. Use the following structure in your request: `organizations/{org}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -8996,28 +9191,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:disableCache` (*type:* `boolean()`) - Flag that specifies whether the schema is be read from the database or cache. Set to `true` to read the schema from the database. Defaults to cache. - * `:type` (*type:* `String.t`) - Required. Name of the dataset for which you want to retrieve the schema. For example: `fact` or `agg_cus1` + * `:name` (*type:* `String.t`) - Optional. Name of the environment. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Schema{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_analytics_admin_get_schemav2( + @spec apigee_organizations_environments_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Schema.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_analytics_admin_get_schemav2( + def apigee_organizations_environments_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -9033,31 +9228,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :disableCache => :query, - :type => :query + :name => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/environments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Schema{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Submit a data export job to be processed in the background. If the request is successful, the API returns a 201 status, a URI that can be used to retrieve the status of the export job, and the `state` value of "enqueued". + Deletes an environment from an organization. **Warning: You must delete all key value maps and key value entries before you delete an environment.** Otherwise, if you re-create the environment the key value map entry operations will encounter encryption/decryption discrepancies. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Names of the parent organization and environment. Must be of the form `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9070,27 +9265,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ExportRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_analytics_exports_create( + @spec apigee_organizations_environments_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_analytics_exports_create( + def apigee_organizations_environments_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -9105,31 +9299,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/analytics/exports", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Gets the details and status of an analytics export job. If the export job is still in progress, its `state` is set to "running". After the export job has completed successfully, its `state` is set to "completed". If the export job fails, its `state` is set to `failed`. + Gets environment details. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Resource name of the export to get. + * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9146,25 +9339,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_analytics_exports_get( + @spec apigee_organizations_environments_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_analytics_exports_get( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_environments_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -9190,16 +9378,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}] + ) end @doc """ - Lists the details and status of all analytics export jobs belonging to the parent organization and environment. + Gets the add-ons config of an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Names of the parent organization and environment. Must be of the form `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Name of the add-ons config. Must be in the format of `/organizations/{org}/environments/{env}/addonsConfig` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9216,22 +9406,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListExportsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_analytics_exports_list( + @spec apigee_organizations_environments_get_addons_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListExportsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_analytics_exports_list( + def apigee_organizations_environments_get_addons_config( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -9252,8 +9442,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/analytics/exports", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -9261,17 +9451,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListExportsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig{}] ) end @doc """ - Lists all deployments of an API proxy in an environment. + Gets the API Security runtime configuration for an environment. This named ApiSecurityRuntimeConfig to prevent conflicts with ApiSecurityConfig from addon config. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name representing an API proxy in an environment in the following format: `organizations/{org}/environments/{env}/apis/{api}` + * `name` (*type:* `String.t`) - Required. Name of the environment API Security Runtime configuration resource. Use the following structure in your request: `organizations/{org}/environments/{env}/apiSecurityRuntimeConfig` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9288,22 +9478,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityRuntimeConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_deployments_list( + @spec apigee_organizations_environments_get_api_security_runtime_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityRuntimeConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_deployments_list( + def apigee_organizations_environments_get_api_security_runtime_config( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -9324,8 +9514,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/deployments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -9333,17 +9523,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityRuntimeConfig{}] ) end @doc """ - Deploys a revision of an API proxy. If another revision of the same API proxy revision is currently deployed, set the `override` parameter to `true` to have this revision replace the currently deployed revision. You cannot invoke an API proxy until it has been deployed to an environment. After you deploy an API proxy revision, you cannot edit it. To edit the API proxy, you must create and deploy a new revision. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.create` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.deploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` + Gets the debug mask singleton resource for an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` + * `name` (*type:* `String.t`) - Required. Name of the debug mask. Use the following structure in your request: `organizations/{org}/environments/{env}/debugmask`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9356,27 +9546,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:override` (*type:* `boolean()`) - Flag that specifies whether the new deployment replaces other deployed revisions of the API proxy in the environment. Set `override` to `true` to replace other deployed revisions. By default, `override` is `false` and the deployment is rejected if other revisions of the API proxy are deployed in the environment. - * `:sequencedRollout` (*type:* `boolean()`) - Flag that specifies whether to enable sequenced rollout. If set to `true`, the routing rules for this deployment and the environment changes to add the deployment will be rolled out in a safe order. This reduces the risk of downtime that could be caused by changing the environment group's routing before the new destination for the affected traffic is ready to receive it. This should only be necessary if the new deployment will be capturing traffic from another environment under a shared environment group or if traffic will be rerouted to a different environment due to a base path removal. The [GenerateDeployChangeReport API](GenerateDeployChangeReport) may be used to examine routing changes before issuing the deployment request, and its response will indicate if a sequenced rollout is recommended for the deployment. - * `:serviceAccount` (*type:* `String.t`) - Google Cloud IAM service account. The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be `{ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_deploy( + @spec apigee_organizations_environments_get_debugmask( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_deploy( + def apigee_organizations_environments_get_debugmask( connection, name, optional_params \\ [], @@ -9393,16 +9580,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :override => :query, - :sequencedRollout => :query, - :serviceAccount => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+name}/deployments", %{ + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -9411,17 +9595,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}] ) end @doc """ - Gets the deployment of an API proxy revision and actual state reported by runtime pods. + Gets the deployed configuration for an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name representing an API proxy revision in an environment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` + * `name` (*type:* `String.t`) - Required. Name of the environment deployed configuration resource. Use the following structure in your request: `organizations/{org}/environments/{env}/deployedConfig` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9438,20 +9622,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_get_deployments( + @spec apigee_organizations_environments_get_deployed_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_get_deployments( + def apigee_organizations_environments_get_deployed_config( connection, name, optional_params \\ [], @@ -9474,7 +9658,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}/deployments", %{ + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -9483,17 +9667,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig{}] ) end @doc """ - Undeploys an API proxy revision from an environment. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.delete` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.undeploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` + Gets the IAM policy on an environment. For more information, see [Manage users, roles, and permissions using the API](https://cloud.google.com/apigee/docs/api-platform/system-administration/manage-users-roles). You must have the `apigee.environments.getIamPolicy` permission to call this API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` + * `resource` (*type:* `String.t`) - REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9506,27 +9690,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:sequencedRollout` (*type:* `boolean()`) - Flag that specifies whether to enable sequenced rollout. If set to `true`, the environment group routing rules corresponding to this deployment will be removed before removing the deployment from the runtime. This is likely to be a rare use case; it is only needed when the intended effect of undeploying this proxy is to cause the traffic it currently handles to be rerouted to some other existing proxy in the environment group. The [GenerateUndeployChangeReport API](GenerateUndeployChangeReport) may be used to examine routing changes before issuing the undeployment request, and its response will indicate if a sequenced rollout is recommended for the undeployment. + * `:"options.requestedPolicyVersion"` (*type:* `integer()`) - Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_undeploy( + @spec apigee_organizations_environments_get_iam_policy( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleIamV1Policy.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_undeploy( + def apigee_organizations_environments_get_iam_policy( connection, - name, + resource, optional_params \\ [], opts \\ [] ) do @@ -9542,30 +9726,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :sequencedRollout => :query + :"options.requestedPolicyVersion" => :query } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}/deployments", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+resource}:getIamPolicy", %{ + "resource" => URI.encode(resource, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}]) end @doc """ - Creates a debug session for a deployed API Proxy revision. + GetSecurityActionConfig returns the current SecurityActions configuration. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The resource name of the API Proxy revision deployment for which to create the DebugSession. Must be of the form `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}`. + * `name` (*type:* `String.t`) - Required. The name of the SecurityActionsConfig to retrieve. This will always be: `organizations/{org}/environments/{env}/security_actions_config` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9578,28 +9762,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:timeout` (*type:* `String.t`) - Optional. The time in seconds after which this DebugSession should end. A timeout specified in DebugSession will overwrite this value. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_debugsessions_create( + @spec apigee_organizations_environments_get_security_actions_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_debugsessions_create( + def apigee_organizations_environments_get_security_actions_config( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -9614,16 +9796,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :timeout => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/debugsessions", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -9631,17 +9811,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig{}] ) end @doc """ - Deletes the data from a debug session. This does not cancel the debug session or prevent further data from being collected if the session is still active in runtime pods. + Get distributed trace configuration in an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the debug session to delete. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}/debugsessions/{debugsession}`. + * `name` (*type:* `String.t`) - Required. Name of the trace configuration. Use the following structure in your request: "organizations/*/environments/*/traceConfig". * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9658,20 +9838,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_debugsessions_delete_data( + @spec apigee_organizations_environments_get_trace_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_debugsessions_delete_data( + def apigee_organizations_environments_get_trace_config( connection, name, optional_params \\ [], @@ -9693,8 +9873,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}/data", %{ + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -9702,16 +9882,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}] + ) end @doc """ - Retrieves a debug session. + Updates properties for an Apigee environment with patch semantics using a field mask. **Note:** Not supported for Apigee hybrid. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the debug session to retrieve. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}/debugsessions/{session}`. + * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{environment}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9724,24 +9906,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:updateMask` (*type:* `String.t`) - List of fields to be updated. Fields that can be updated: node_config. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_debugsessions_get( + @spec apigee_organizations_environments_modify_environment( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_debugsessions_get( + def apigee_organizations_environments_modify_environment( connection, name, optional_params \\ [], @@ -9758,12 +9942,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :updateMask => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:patch) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -9772,18 +9958,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Lists debug sessions that are currently active in the given API Proxy revision. + Sets the IAM policy on an environment, if the policy already exists it will be replaced. For more information, see [Manage users, roles, and permissions using the API](https://cloud.google.com/apigee/docs/api-platform/system-administration/manage-users-roles). You must have the `apigee.environments.setIamPolicy` permission to call this API. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The name of the API Proxy revision deployment for which to list debug sessions. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}`. + * `resource` (*type:* `String.t`) - REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9796,28 +9980,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of debug sessions to return. The page size defaults to 25. - * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListDebugSessions call, that you can use to retrieve the next page. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleIamV1SetIamPolicyRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDebugSessionsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_debugsessions_list( + @spec apigee_organizations_environments_set_iam_policy( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDebugSessionsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleIamV1Policy.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_debugsessions_list( + def apigee_organizations_environments_set_iam_policy( connection, - parent, + resource, optional_params \\ [], opts \\ [] ) do @@ -9833,33 +10016,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/debugsessions", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+resource}:setIamPolicy", %{ + "resource" => URI.encode(resource, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDebugSessionsResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleIamV1Policy{}]) end @doc """ - Gets the debug data from a transaction. + Creates a subscription for the environment's Pub/Sub topic. The server will assign a random name for this subscription. The "name" and "push_config" must *not* be specified. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the debug session transaction. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}/debugsessions/{session}/data/{transaction}`. + * `parent` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9876,22 +10056,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSessionTransaction{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_debugsessions_data_get( + @spec apigee_organizations_environments_subscribe( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSessionTransaction.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_debugsessions_data_get( + def apigee_organizations_environments_subscribe( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -9911,9 +10091,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}:subscribe", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -9921,17 +10101,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSessionTransaction{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription{}] ) end @doc """ - Generates a report for a dry run analysis of a DeployApiProxy request without committing the deployment. In addition to the standard validations performed when adding deployments, additional analysis will be done to detect possible traffic routing changes that would result from this deployment being created. Any potential routing conflicts or unsafe changes will be reported in the response. This routing analysis is not performed for a non-dry-run DeployApiProxy request. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments:generateDeployChangeReport`, two permissions are required: * `apigee.deployments.create` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.deploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` + Tests the permissions of a user on an environment, and returns a subset of permissions that the user has on the environment. If the environment does not exist, an empty permission set is returned (a NOT_FOUND error is not returned). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` + * `resource` (*type:* `String.t`) - REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -9944,27 +10124,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:override` (*type:* `boolean()`) - Flag that specifies whether to force the deployment of the new revision over the currently deployed revision by overriding conflict checks. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_deployments_generate_deploy_change_report( + @spec apigee_organizations_environments_test_iam_permissions( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_deployments_generate_deploy_change_report( + def apigee_organizations_environments_test_iam_permissions( connection, - name, + resource, optional_params \\ [], opts \\ [] ) do @@ -9980,14 +10160,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :override => :query + :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+name}/deployments:generateDeployChangeReport", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+resource}:testIamPermissions", %{ + "resource" => URI.encode(resource, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -9995,17 +10175,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleIamV1TestIamPermissionsResponse{}] ) end @doc """ - Generates a report for a dry run analysis of an UndeployApiProxy request without committing the undeploy. In addition to the standard validations performed when removing deployments, additional analysis will be done to detect possible traffic routing changes that would result from this deployment being removed. Any potential routing conflicts or unsafe changes will be reported in the response. This routing analysis is not performed for a non-dry-run UndeployApiProxy request. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments:generateUndeployChangeReport`, two permissions are required: * `apigee.deployments.delete` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.undeploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` + Deletes a subscription for the environment's Pub/Sub topic. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` + * `parent` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10018,26 +10198,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Subscription.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_apis_revisions_deployments_generate_undeploy_change_report( + @spec apigee_organizations_environments_unsubscribe( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_apis_revisions_deployments_generate_undeploy_change_report( + def apigee_organizations_environments_unsubscribe( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -10052,32 +10233,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+name}/deployments:generateUndeployChangeReport", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}:unsubscribe", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Creates a new ArchiveDeployment. + Updates an existing environment. When updating properties, you must pass all existing properties to the API, even if they are not being changed. If you omit properties from the payload, the properties are removed. To get the current list of properties for the environment, use the [Get Environment API](get). **Note**: Both `PUT` and `POST` methods are supported for updating an existing environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The Environment this Archive Deployment will be created in. + * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10090,27 +10270,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_archive_deployments_create( + @spec apigee_organizations_environments_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_archive_deployments_create( + def apigee_organizations_environments_update( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -10131,25 +10311,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/archiveDeployments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}] + ) end @doc """ - Deletes an archive deployment. + Updates the debug mask singleton resource for an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the Archive Deployment in the following format: `organizations/{org}/environments/{env}/archiveDeployments/{id}`. + * `name` (*type:* `String.t`) - Name of the debug mask. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10162,24 +10344,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:replaceRepeatedFields` (*type:* `boolean()`) - Boolean flag that specifies whether to replace existing values in the debug mask when doing an update. Set to true to replace existing values. The default behavior is to append the values (false). + * `:updateMask` (*type:* `String.t`) - Field debug mask to support partial updates. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_archive_deployments_delete( + @spec apigee_organizations_environments_update_debugmask( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_archive_deployments_delete( + def apigee_organizations_environments_update_debugmask( connection, name, optional_params \\ [], @@ -10196,12 +10381,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :replaceRepeatedFields => :query, + :updateMask => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) + |> Request.method(:patch) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -10210,16 +10398,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask{}] + ) end @doc """ - Generates a signed URL for downloading the original zip file used to create an Archive Deployment. The URL is only valid for a limited period and should be used within minutes after generation. Each call returns a new upload URL. + Updates an existing environment. When updating properties, you must pass all existing properties to the API, even if they are not being changed. If you omit properties from the payload, the properties are removed. To get the current list of properties for the environment, use the [Get Environment API](get). **Note**: Both `PUT` and `POST` methods are supported for updating an existing environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the Archive Deployment you want to download. + * `name` (*type:* `String.t`) - Required. Name of the environment. Use the following structure in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10232,25 +10422,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlRequest.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_archive_deployments_generate_download_url( + @spec apigee_organizations_environments_update_environment( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_archive_deployments_generate_download_url( + def apigee_organizations_environments_update_environment( connection, name, optional_params \\ [], @@ -10274,7 +10464,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+name}:generateDownloadUrl", %{ + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -10283,18 +10473,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment{}] ) end @doc """ - Generates a signed URL for uploading an Archive zip file to Google Cloud Storage. Once the upload is complete, the signed URL should be passed to CreateArchiveDeployment. When uploading to the generated signed URL, please follow these restrictions: * Source file type should be a zip file. * Source file size should not exceed 1GB limit. * No credentials should be attached - the signed URLs provide access to the target bucket using internal service identity; if credentials were attached, the identity from the credentials would be used, but that identity does not have permissions to upload files to the URL. When making a HTTP PUT request, these two headers need to be specified: * `content-type: application/zip` * `x-goog-content-length-range: 0,1073741824` And this header SHOULD NOT be specified: * `Authorization: Bearer YOUR_TOKEN` + UpdateSecurityActionConfig updates the current SecurityActions configuration. This method is used to enable/disable the feature at the environment level. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The organization and environment to upload to. + * `name` (*type:* `String.t`) - This is a singleton resource, the name will always be set by SecurityActions and any user input will be ignored. The name is always: `organizations/{org}/environments/{env}/security_actions_config` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10307,27 +10496,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlRequest.t`) - + * `:updateMask` (*type:* `String.t`) - The list of fields to update. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_archive_deployments_generate_upload_url( + @spec apigee_organizations_environments_update_security_actions_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_archive_deployments_generate_upload_url( + def apigee_organizations_environments_update_security_actions_config( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -10343,14 +10533,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :updateMask => :query, :body => :body } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/archiveDeployments:generateUploadUrl", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:patch) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -10358,17 +10549,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig{}] ) end @doc """ - Gets the specified ArchiveDeployment. + Updates the trace configurations in an environment. Note that the repeated fields have replace semantics when included in the field mask and that they will be overwritten by the value of the fields in the request body. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the Archive Deployment in the following format: `organizations/{org}/environments/{env}/archiveDeployments/{id}`. + * `name` (*type:* `String.t`) - Required. Name of the trace configuration. Use the following structure in your request: "organizations/*/environments/*/traceConfig". * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10381,24 +10572,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:updateMask` (*type:* `String.t`) - List of fields to be updated. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_archive_deployments_get( + @spec apigee_organizations_environments_update_trace_config( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_archive_deployments_get( + def apigee_organizations_environments_update_trace_config( connection, name, optional_params \\ [], @@ -10415,12 +10608,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :updateMask => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:patch) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -10430,17 +10625,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfig{}] ) end @doc """ - Lists the ArchiveDeployments in the specified Environment. + Updates an add-on enablement status of an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the Environment for which to list Archive Deployments in the format: `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Name of the add-ons config. Must be in the format of `/organizations/{org}/environments/{env}/addonsConfig` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10453,29 +10648,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:filter` (*type:* `String.t`) - Optional. An optional query used to return a subset of Archive Deployments using the semantics defined in https://google.aip.dev/160. - * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of Archive Deployments to return. If unspecified, at most 25 deployments will be returned. - * `:pageToken` (*type:* `String.t`) - Optional. Page token, returned from a previous ListArchiveDeployments call, that you can use to retrieve the next page. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SetAddonEnablementRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListArchiveDeploymentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_archive_deployments_list( + @spec apigee_organizations_environments_addons_config_set_addon_enablement( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListArchiveDeploymentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_archive_deployments_list( + def apigee_organizations_environments_addons_config_set_addon_enablement( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -10491,35 +10684,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :filter => :query, - :pageSize => :query, - :pageToken => :query + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/archiveDeployments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+name}:setAddonEnablement", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListArchiveDeploymentsResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Updates an existing ArchiveDeployment. Labels can modified but most of the other fields are not modifiable. + Gets a list of metrics and dimensions that can be used to create analytics queries and reports. Each schema element contains the name of the field, its associated type, and a flag indicating whether it is a standard or custom field. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Name of the Archive Deployment in the following format: `organizations/{org}/environments/{env}/archiveDeployments/{id}`. + * `name` (*type:* `String.t`) - Required. Path to the schema. Use the following structure in your request: `organizations/{org}/environments/{env}/analytics/admin/schemav2`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10532,26 +10720,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:updateMask` (*type:* `String.t`) - Required. The list of fields to be updated. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t`) - + * `:disableCache` (*type:* `boolean()`) - Flag that specifies whether the schema is be read from the database or cache. Set to `true` to read the schema from the database. Defaults to cache. + * `:type` (*type:* `String.t`) - Required. Name of the dataset for which you want to retrieve the schema. For example: `fact` or `agg_cus1` * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Schema{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_archive_deployments_patch( + @spec apigee_organizations_environments_analytics_admin_get_schemav2( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Schema.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_archive_deployments_patch( + def apigee_organizations_environments_analytics_admin_get_schemav2( connection, name, optional_params \\ [], @@ -10569,13 +10757,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :updateMask => :query, - :body => :body + :disableCache => :query, + :type => :query } request = Request.new() - |> Request.method(:patch) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -10584,18 +10772,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Schema{}]) end @doc """ - Deletes a cache. + Submit a data export job to be processed in the background. If the request is successful, the API returns a 201 status, a URI that can be used to retrieve the status of the export job, and the `state` value of "enqueued". ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Cache resource name of the form: `organizations/{organization_id}/environments/{environment_id}/caches/{cache_id}` + * `parent` (*type:* `String.t`) - Required. Names of the parent organization and environment. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10608,26 +10794,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ExportRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_caches_delete( + @spec apigee_organizations_environments_analytics_exports_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_caches_delete( + def apigee_organizations_environments_analytics_exports_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -10642,30 +10829,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/analytics/exports", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}]) end @doc """ - Lists all deployments of API proxies or shared flows in an environment. + Gets the details and status of an analytics export job. If the export job is still in progress, its `state` is set to "running". After the export job has completed successfully, its `state` is set to "completed". If the export job fails, its `state` is set to `failed`. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment for which to return deployment information in the following format: `organizations/{org}/environments/{env}` + * `name` (*type:* `String.t`) - Required. Resource name of the export to get. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10678,27 +10866,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:sharedFlows` (*type:* `boolean()`) - Optional. Flag that specifies whether to return shared flow or API proxy deployments. Set to `true` to return shared flow deployments; set to `false` to return API proxy deployments. Defaults to `false`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_deployments_list( + @spec apigee_organizations_environments_analytics_exports_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_deployments_list( + def apigee_organizations_environments_analytics_exports_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -10713,33 +10900,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :sharedFlows => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/deployments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Export{}]) end @doc """ - Attaches a shared flow to a flow hook. + Lists the details and status of all analytics export jobs belonging to the parent organization and environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the flow hook to which the shared flow should be attached in the following format: `organizations/{org}/environments/{env}/flowhooks/{flowhook}` + * `parent` (*type:* `String.t`) - Required. Names of the parent organization and environment. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10752,27 +10936,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListExportsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_flowhooks_attach_shared_flow_to_flow_hook( + @spec apigee_organizations_environments_analytics_exports_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListExportsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_flowhooks_attach_shared_flow_to_flow_hook( + def apigee_organizations_environments_analytics_exports_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -10787,31 +10970,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/analytics/exports", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListExportsResponse{}] + ) end @doc """ - Detaches a shared flow from a flow hook. + Lists all deployments of an API proxy in an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the flow hook to detach in the following format: `organizations/{org}/environments/{env}/flowhooks/{flowhook}` + * `parent` (*type:* `String.t`) - Required. Name representing an API proxy in an environment in the following format: `organizations/{org}/environments/{env}/apis/{api}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10828,22 +11012,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_flowhooks_detach_shared_flow_from_flow_hook( + @spec apigee_organizations_environments_apis_deployments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_flowhooks_detach_shared_flow_from_flow_hook( + def apigee_organizations_environments_apis_deployments_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -10863,25 +11047,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/deployments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] + ) end @doc """ - Returns the name of the shared flow attached to the specified flow hook. If there's no shared flow attached to the flow hook, the API does not return an error; it simply does not return a name in the response. + Deploys a revision of an API proxy. If another revision of the same API proxy revision is currently deployed, set the `override` parameter to `true` to have this revision replace the currently deployed revision. You cannot invoke an API proxy until it has been deployed to an environment. After you deploy an API proxy revision, you cannot edit it. To edit the API proxy, you must create and deploy a new revision. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.create` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.deploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the flow hook in the following format: `organizations/{org}/environments/{env}/flowhooks/{flowhook}` + * `name` (*type:* `String.t`) - Required. Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10894,24 +11080,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:override` (*type:* `boolean()`) - Flag that specifies whether the new deployment replaces other deployed revisions of the API proxy in the environment. Set `override` to `true` to replace other deployed revisions. By default, `override` is `false` and the deployment is rejected if other revisions of the API proxy are deployed in the environment. + * `:sequencedRollout` (*type:* `boolean()`) - Flag that specifies whether to enable sequenced rollout. If set to `true`, the routing rules for this deployment and the environment changes to add the deployment will be rolled out in a safe order. This reduces the risk of downtime that could be caused by changing the environment group's routing before the new destination for the affected traffic is ready to receive it. This should only be necessary if the new deployment will be capturing traffic from another environment under a shared environment group or if traffic will be rerouted to a different environment due to a base path removal. The generateDeployChangeReport API may be used to examine routing changes before issuing the deployment request, and its response will indicate if a sequenced rollout is recommended for the deployment. + * `:serviceAccount` (*type:* `String.t`) - Google Cloud IAM service account. The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be `{ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_flowhooks_get( + @spec apigee_organizations_environments_apis_revisions_deploy( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_flowhooks_get( + def apigee_organizations_environments_apis_revisions_deploy( connection, name, optional_params \\ [], @@ -10928,13 +11117,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :override => :query, + :sequencedRollout => :query, + :serviceAccount => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}/deployments", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -10942,16 +11134,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] + ) end @doc """ - Creates a keystore or truststore. - Keystore: Contains certificates and their associated keys. - Truststore: Contains trusted certificates used to validate a server's certificate. These certificates are typically self-signed certificates or certificates that are not signed by a trusted CA. + Gets the deployment of an API proxy revision and actual state reported by runtime pods. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in which to create the keystore. Use the following format in your request: `organizations/{org}/environments/{env}` + * `name` (*type:* `String.t`) - Required. Name representing an API proxy revision in an environment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -10964,28 +11158,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:name` (*type:* `String.t`) - Optional. Name of the keystore. Overrides the value in Keystore. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_create( + @spec apigee_organizations_environments_apis_revisions_get_deployments( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_create( + def apigee_organizations_environments_apis_revisions_get_deployments( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -11000,32 +11192,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :name => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/keystores", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}/deployments", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] + ) end @doc """ - Deletes a keystore or truststore. + Undeploys an API proxy revision from an environment. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.delete` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.undeploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the keystore. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}` + * `name` (*type:* `String.t`) - Required. Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11038,24 +11230,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:sequencedRollout` (*type:* `boolean()`) - Flag that specifies whether to enable sequenced rollout. If set to `true`, the environment group routing rules corresponding to this deployment will be removed before removing the deployment from the runtime. This is likely to be a rare use case; it is only needed when the intended effect of undeploying this proxy is to cause the traffic it currently handles to be rerouted to some other existing proxy in the environment group. The GenerateUndeployChangeReport API may be used to examine routing changes before issuing the undeployment request, and its response will indicate if a sequenced rollout is recommended for the undeployment. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_delete( + @spec apigee_organizations_environments_apis_revisions_undeploy( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_delete( + def apigee_organizations_environments_apis_revisions_undeploy( connection, name, optional_params \\ [], @@ -11072,13 +11265,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :sequencedRollout => :query } request = Request.new() |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ + |> Request.url("/v1/{+name}/deployments", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -11086,16 +11280,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Gets a keystore or truststore. + Creates a debug session for a deployed API Proxy revision. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the keystore. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}`. + * `parent` (*type:* `String.t`) - Required. The resource name of the API Proxy revision deployment for which to create the DebugSession. Must be of the form `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11108,26 +11302,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:timeout` (*type:* `String.t`) - Optional. The time in seconds after which this DebugSession should end. A timeout specified in DebugSession will overwrite this value. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_get( + @spec apigee_organizations_environments_apis_revisions_debugsessions_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_get( + def apigee_organizations_environments_apis_revisions_debugsessions_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -11142,30 +11338,34 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :timeout => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/debugsessions", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}] + ) end @doc """ - Creates an alias from a key/certificate pair. The structure of the request is controlled by the `format` query parameter: - `keycertfile` - Separate PEM-encoded key and certificate files are uploaded. Set `Content-Type: multipart/form-data` and include the `keyFile`, `certFile`, and `password` (if keys are encrypted) fields in the request body. If uploading to a truststore, omit `keyFile`. - `pkcs12` - A PKCS12 file is uploaded. Set `Content-Type: multipart/form-data`, provide the file in the `file` field, and include the `password` field if the file is encrypted in the request body. - `selfsignedcert` - A new private key and certificate are generated. Set `Content-Type: application/json` and include CertificateGenerationSpec in the request body. + Deletes the data from a debug session. This does not cancel the debug session or prevent further data from being collected if the session is still active in runtime pods. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the keystore. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}`. + * `name` (*type:* `String.t`) - Required. The name of the debug session to delete. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}/debugsessions/{debugsession}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11178,32 +11378,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:_password` (*type:* `String.t`) - DEPRECATED: For improved security, specify the password in the request body instead of using the query parameter. To specify the password in the request body, set `Content-type: multipart/form-data` part with name `password`. Password for the private key file, if required. - * `:alias` (*type:* `String.t`) - Alias for the key/certificate pair. Values must match the regular expression `[\\w\\s-.]{1,255}`. This must be provided for all formats except `selfsignedcert`; self-signed certs may specify the alias in either this parameter or the JSON body. - * `:format` (*type:* `String.t`) - Required. Format of the data. Valid values include: `selfsignedcert`, `keycertfile`, or `pkcs12` - * `:ignoreExpiryValidation` (*type:* `boolean()`) - Flag that specifies whether to ignore expiry validation. If set to `true`, no expiry validation will be performed. - * `:ignoreNewlineValidation` (*type:* `boolean()`) - Flag that specifies whether to ignore newline validation. If set to `true`, no error is thrown when the file contains a certificate chain with no newline between each certificate. Defaults to `false`. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_aliases_create( + @spec apigee_organizations_environments_apis_revisions_debugsessions_delete_data( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_aliases_create( + def apigee_organizations_environments_apis_revisions_debugsessions_delete_data( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -11218,36 +11412,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :_password => :query, - :alias => :query, - :format => :query, - :ignoreExpiryValidation => :query, - :ignoreNewlineValidation => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/aliases", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}/data", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Generates a PKCS #10 Certificate Signing Request for the private key in an alias. + Retrieves a debug session. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. + * `name` (*type:* `String.t`) - Required. The name of the debug session to retrieve. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}/debugsessions/{session}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11264,20 +11452,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_aliases_csr( + @spec apigee_organizations_environments_apis_revisions_debugsessions_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_aliases_csr( + def apigee_organizations_environments_apis_revisions_debugsessions_get( connection, name, optional_params \\ [], @@ -11300,7 +11488,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}/csr", %{ + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -11308,16 +11496,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSession{}] + ) end @doc """ - Deletes an alias. + Lists debug sessions that are currently active in the given API Proxy revision. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. + * `parent` (*type:* `String.t`) - Required. The name of the API Proxy revision deployment for which to list debug sessions. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11330,26 +11520,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - Maximum number of debug sessions to return. The page size defaults to 25. + * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListDebugSessions call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDebugSessionsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_aliases_delete( + @spec apigee_organizations_environments_apis_revisions_debugsessions_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDebugSessionsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_aliases_delete( + def apigee_organizations_environments_apis_revisions_debugsessions_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -11364,30 +11556,34 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/debugsessions", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDebugSessionsResponse{}] + ) end @doc """ - Gets an alias. + Gets the debug data from a transaction. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. + * `name` (*type:* `String.t`) - Required. The name of the debug session transaction. Must be of the form: `organizations/{organization}/environments/{environment}/apis/{api}/revisions/{revision}/debugsessions/{session}/data/{transaction}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11404,20 +11600,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSessionTransaction{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_aliases_get( + @spec apigee_organizations_environments_apis_revisions_debugsessions_data_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSessionTransaction.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_aliases_get( + def apigee_organizations_environments_apis_revisions_debugsessions_data_get( connection, name, optional_params \\ [], @@ -11448,16 +11644,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugSessionTransaction{}] + ) end @doc """ - Gets the certificate from an alias in PEM-encoded form. + Generates a report for a dry run analysis of a DeployApiProxy request without committing the deployment. In addition to the standard validations performed when adding deployments, additional analysis will be done to detect possible traffic routing changes that would result from this deployment being created. Any potential routing conflicts or unsafe changes will be reported in the response. This routing analysis is not performed for a non-dry-run DeployApiProxy request. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments:generateDeployChangeReport`, two permissions are required: * `apigee.deployments.create` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.deploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. + * `name` (*type:* `String.t`) - Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11470,24 +11668,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:override` (*type:* `boolean()`) - Flag that specifies whether to force the deployment of the new revision over the currently deployed revision by overriding conflict checks. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_aliases_get_certificate( + @spec apigee_organizations_environments_apis_revisions_deployments_generate_deploy_change_report( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_aliases_get_certificate( + def apigee_organizations_environments_apis_revisions_deployments_generate_deploy_change_report( connection, name, optional_params \\ [], @@ -11504,13 +11703,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :override => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}/certificate", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}/deployments:generateDeployChangeReport", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -11518,16 +11718,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}] + ) end @doc """ - Updates the certificate in an alias. + Generates a report for a dry run analysis of an UndeployApiProxy request without committing the undeploy. In addition to the standard validations performed when removing deployments, additional analysis will be done to detect possible traffic routing changes that would result from this deployment being removed. Any potential routing conflicts or unsafe changes will be reported in the response. This routing analysis is not performed for a non-dry-run UndeployApiProxy request. For a request path `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}/deployments:generateUndeployChangeReport`, two permissions are required: * `apigee.deployments.delete` on the resource `organizations/{org}/environments/{env}` * `apigee.proxyrevisions.undeploy` on the resource `organizations/{org}/apis/{api}/revisions/{rev}` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}` + * `name` (*type:* `String.t`) - Name of the API proxy revision deployment in the following format: `organizations/{org}/environments/{env}/apis/{api}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11540,27 +11742,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:ignoreExpiryValidation` (*type:* `boolean()`) - Required. Flag that specifies whether to ignore expiry validation. If set to `true`, no expiry validation will be performed. - * `:ignoreNewlineValidation` (*type:* `boolean()`) - Flag that specifies whether to ignore newline validation. If set to `true`, no error is thrown when the file contains a certificate chain with no newline between each certificate. Defaults to `false`. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keystores_aliases_update( + @spec apigee_organizations_environments_apis_revisions_deployments_generate_undeploy_change_report( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keystores_aliases_update( + def apigee_organizations_environments_apis_revisions_deployments_generate_undeploy_change_report( connection, name, optional_params \\ [], @@ -11577,16 +11776,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :ignoreExpiryValidation => :query, - :ignoreNewlineValidation => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}/deployments:generateUndeployChangeReport", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -11594,16 +11790,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReport{}] + ) end @doc """ - Creates a key value map in an environment. + Creates a new ArchiveDeployment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in which to create the key value map. Use the following structure in your request: `organizations/{org}/environments/{env}` + * `parent` (*type:* `String.t`) - Required. The Environment this Archive Deployment will be created in. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11616,25 +11814,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keyvaluemaps_create( + @spec apigee_organizations_environments_archive_deployments_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keyvaluemaps_create( + def apigee_organizations_environments_archive_deployments_create( connection, parent, optional_params \\ [], @@ -11658,7 +11856,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/keyvaluemaps", %{ + |> Request.url("/v1/{+parent}/archiveDeployments", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -11666,18 +11864,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) end @doc """ - Deletes a key value map from an environment. + Deletes an archive deployment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the key value map. Use the following structure in your request: `organizations/{org}/environments/{env}/keyvaluemaps/{keyvaluemap}` + * `name` (*type:* `String.t`) - Required. Name of the Archive Deployment in the following format: `organizations/{org}/environments/{env}/archiveDeployments/{id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11694,20 +11890,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keyvaluemaps_delete( + @spec apigee_organizations_environments_archive_deployments_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keyvaluemaps_delete( + def apigee_organizations_environments_archive_deployments_delete( connection, name, optional_params \\ [], @@ -11738,18 +11934,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Creates key value entries in a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + Generates a signed URL for downloading the original zip file used to create an Archive Deployment. The URL is only valid for a limited period and should be used within minutes after generation. Each call returns a new upload URL. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to create the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `name` (*type:* `String.t`) - Required. The name of the Archive Deployment you want to download. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11762,27 +11956,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keyvaluemaps_entries_create( + @spec apigee_organizations_environments_archive_deployments_generate_download_url( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keyvaluemaps_entries_create( + def apigee_organizations_environments_archive_deployments_generate_download_url( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -11804,8 +11998,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/entries", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}:generateDownloadUrl", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -11813,17 +12007,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateDownloadUrlResponse{}] ) end @doc """ - Deletes a key value entry from a key value map scoped to an organization, environment, or API proxy. **Notes:** * After you delete the key value entry, the policy consuming the entry will continue to function with its cached values for a few minutes. This is expected behavior. * Supported for Apigee hybrid 1.8.x and higher. + Generates a signed URL for uploading an Archive zip file to Google Cloud Storage. Once the upload is complete, the signed URL should be passed to CreateArchiveDeployment. When uploading to the generated signed URL, please follow these restrictions: * Source file type should be a zip file. * Source file size should not exceed 1GB limit. * No credentials should be attached - the signed URLs provide access to the target bucket using internal service identity; if credentials were attached, the identity from the credentials would be used, but that identity does not have permissions to upload files to the URL. When making a HTTP PUT request, these two headers need to be specified: * `content-type: application/zip` * `x-goog-content-length-range: 0,1073741824` And this header SHOULD NOT be specified: * `Authorization: Bearer YOUR_TOKEN` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to delete the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. + * `parent` (*type:* `String.t`) - Required. The organization and environment to upload to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11836,26 +12031,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keyvaluemaps_entries_delete( + @spec apigee_organizations_environments_archive_deployments_generate_upload_url( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keyvaluemaps_entries_delete( + def apigee_organizations_environments_archive_deployments_generate_upload_url( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -11870,14 +12066,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query - } + :upload_protocol => :query, + :body => :body + } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/archiveDeployments:generateUploadUrl", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -11885,17 +12082,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GenerateUploadUrlResponse{}] ) end @doc """ - Get the key value entry value for a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + Gets the specified ArchiveDeployment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to fetch the key value map entry/value. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. + * `name` (*type:* `String.t`) - Required. Name of the Archive Deployment in the following format: `organizations/{org}/environments/{env}/archiveDeployments/{id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11912,20 +12109,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keyvaluemaps_entries_get( + @spec apigee_organizations_environments_archive_deployments_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keyvaluemaps_entries_get( + def apigee_organizations_environments_archive_deployments_get( connection, name, optional_params \\ [], @@ -11957,17 +12154,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}] ) end @doc """ - Lists key value entries for key values maps scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + Lists the ArchiveDeployments in the specified Environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to list key value maps. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `parent` (*type:* `String.t`) - Required. Name of the Environment for which to list Archive Deployments in the format: `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -11980,26 +12177,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of key value entries to return. If unspecified, at most 100 entries will be returned. - * `:pageToken` (*type:* `String.t`) - Optional. Page token. If provides, must be a valid key value entry returned from a previous call that can be used to retrieve the next page. + * `:filter` (*type:* `String.t`) - Optional. An optional query used to return a subset of Archive Deployments using the semantics defined in https://google.aip.dev/160. + * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of Archive Deployments to return. If unspecified, at most 25 deployments will be returned. + * `:pageToken` (*type:* `String.t`) - Optional. Page token, returned from a previous ListArchiveDeployments call, that you can use to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListArchiveDeploymentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_keyvaluemaps_entries_list( + @spec apigee_organizations_environments_archive_deployments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListArchiveDeploymentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_keyvaluemaps_entries_list( + def apigee_organizations_environments_archive_deployments_list( connection, parent, optional_params \\ [], @@ -12017,6 +12215,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :filter => :query, :pageSize => :query, :pageToken => :query } @@ -12024,7 +12223,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/entries", %{ + |> Request.url("/v1/{+parent}/archiveDeployments", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -12034,17 +12233,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do |> Connection.execute(request) |> Response.decode( opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}] + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListArchiveDeploymentsResponse{}] ) end @doc """ - Similar to GetStats except that the response is less verbose. + Updates an existing ArchiveDeployment. Labels can modified but most of the other fields are not modifiable. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{org}/environments/{env}/optimizedStats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy`, `target_host`. The value of `dimensions` should be a comma-separated list as shown below: `organizations/{org}/environments/{env}/optimizedStats/apiproxy,request_verb` + * `name` (*type:* `String.t`) - Name of the Archive Deployment in the following format: `organizations/{org}/environments/{env}/archiveDeployments/{id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12057,39 +12256,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. - * `:aggTable` (*type:* `String.t`) - Table name used to query custom aggregate tables. If this parameter is skipped, then Apigee will try to retrieve the data from fact tables which will be expensive. - * `:filter` (*type:* `String.t`) - Filter that enables you to drill-down on specific dimension values. - * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. - * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. - * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. - * `:select` (*type:* `String.t`) - Required. Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` - * `:sonar` (*type:* `boolean()`) - Routes the query to API Monitoring for the last hour. - * `:sort` (*type:* `String.t`) - Flag that specifies whether the sort order should be ascending or descending. Valid values include `DESC` and `ASC`. - * `:sortby` (*type:* `String.t`) - Comma-separated list of columns to sort the final result. - * `:timeRange` (*type:* `String.t`) - Required. Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59` - * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or `month`. - * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. - * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends setting this value to `true` if you are using `sortby` with `sort=DESC`. - * `:tzo` (*type:* `String.t`) - Timezone offset value. + * `:updateMask` (*type:* `String.t`) - Required. The list of fields to be updated. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_optimized_stats_get( + @spec apigee_organizations_environments_archive_deployments_patch( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_optimized_stats_get( + def apigee_organizations_environments_archive_deployments_patch( connection, name, optional_params \\ [], @@ -12107,26 +12293,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :accuracy => :query, - :aggTable => :query, - :filter => :query, - :limit => :query, - :offset => :query, - :realtime => :query, - :select => :query, - :sonar => :query, - :sort => :query, - :sortby => :query, - :timeRange => :query, - :timeUnit => :query, - :topk => :query, - :tsAscending => :query, - :tzo => :query + :updateMask => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:patch) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -12136,17 +12309,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ArchiveDeployment{}] ) end @doc """ - Submit a query to be processed in the background. If the submission of the query succeeds, the API returns a 201 status and an ID that refer to the query. In addition to the HTTP status 201, the `state` of "enqueued" means that the request succeeded. + Deletes a cache. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Cache resource name of the form: `organizations/{organization_id}/environments/{environment_id}/caches/{cache_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12159,27 +12332,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Query.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_queries_create( + @spec apigee_organizations_environments_caches_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_queries_create( + def apigee_organizations_environments_caches_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -12194,33 +12366,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/queries", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Get query status If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" + Lists all deployments of API proxies or shared flows in an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the asynchronous query to get. Must be of the form `organizations/{org}/environments/{env}/queries/{queryId}`. + * `parent` (*type:* `String.t`) - Required. Name of the environment for which to return deployment information in the following format: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12233,26 +12402,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:sharedFlows` (*type:* `boolean()`) - Optional. Flag that specifies whether to return shared flow or API proxy deployments. Set to `true` to return shared flow deployments; set to `false` to return API proxy deployments. Defaults to `false`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_queries_get( + @spec apigee_organizations_environments_deployments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_queries_get( + def apigee_organizations_environments_deployments_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -12267,14 +12437,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :sharedFlows => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/deployments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -12282,17 +12453,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] ) end @doc """ - After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` + Attaches a shared flow to a flow hook. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result to get. Must be of the form `organizations/{org}/environments/{env}/queries/{queryId}/result`. + * `name` (*type:* `String.t`) - Required. Name of the flow hook to which the shared flow should be attached in the following format: `organizations/{org}/environments/{env}/flowhooks/{flowhook}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12305,24 +12476,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_queries_get_result( + @spec apigee_organizations_environments_flowhooks_attach_shared_flow_to_flow_hook( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_queries_get_result( + def apigee_organizations_environments_flowhooks_attach_shared_flow_to_flow_hook( connection, name, optional_params \\ [], @@ -12339,12 +12511,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:put) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -12353,16 +12526,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}]) end @doc """ - After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is sent to the client as a list of urls to JSON files. + Detaches a shared flow from a flow hook. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result to get. Must be of the form `organizations/{org}/environments/{env}/queries/{queryId}/resulturl`. + * `name` (*type:* `String.t`) - Required. Name of the flow hook to detach in the following format: `organizations/{org}/environments/{env}/flowhooks/{flowhook}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12379,20 +12552,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GetAsyncQueryResultUrlResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_queries_get_resulturl( + @spec apigee_organizations_environments_flowhooks_detach_shared_flow_from_flow_hook( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GetAsyncQueryResultUrlResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_queries_get_resulturl( + def apigee_organizations_environments_flowhooks_detach_shared_flow_from_flow_hook( connection, name, optional_params \\ [], @@ -12414,7 +12587,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -12423,19 +12596,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GetAsyncQueryResultUrlResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}]) end @doc """ - Return a list of Asynchronous Queries + Returns the name of the shared flow attached to the specified flow hook. If there's no shared flow attached to the flow hook, the API does not return an error; it simply does not return a name in the response. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Name of the flow hook in the following format: `organizations/{org}/environments/{env}/flowhooks/{flowhook}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12448,32 +12618,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` - * `:from` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. - * `:inclQueriesWithoutReport` (*type:* `String.t`) - Flag to include asynchronous queries that don't have a report denifition. - * `:status` (*type:* `String.t`) - Filter response list by asynchronous query status. - * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. - * `:to` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_queries_list( + @spec apigee_organizations_environments_flowhooks_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_queries_list( + def apigee_organizations_environments_flowhooks_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -12488,38 +12652,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :dataset => :query, - :from => :query, - :inclQueriesWithoutReport => :query, - :status => :query, - :submittedBy => :query, - :to => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/queries", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHook{}]) end @doc """ - Creates a Reference in the specified environment. + Creates a keystore or truststore. - Keystore: Contains certificates and their associated keys. - Truststore: Contains trusted certificates used to validate a server's certificate. These certificates are typically self-signed certificates or certificates that are not signed by a trusted CA. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent environment name under which the Reference will be created. Must be of the form `organizations/{org}/environments/{env}`. + * `parent` (*type:* `String.t`) - Required. Name of the environment in which to create the keystore. Use the following format in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12532,25 +12688,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t`) - + * `:name` (*type:* `String.t`) - Optional. Name of the keystore. Overrides the value in Keystore. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_references_create( + @spec apigee_organizations_environments_keystores_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_references_create( + def apigee_organizations_environments_keystores_create( connection, parent, optional_params \\ [], @@ -12568,13 +12725,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :name => :query, :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/references", %{ + |> Request.url("/v1/{+parent}/keystores", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -12582,18 +12740,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}]) end @doc """ - Deletes a Reference from an environment. Returns the deleted Reference resource. + Deletes a keystore or truststore. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the Reference to delete. Must be of the form `organizations/{org}/environments/{env}/references/{ref}`. + * `name` (*type:* `String.t`) - Required. Name of the keystore. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12610,20 +12766,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_references_delete( + @spec apigee_organizations_environments_keystores_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_references_delete( + def apigee_organizations_environments_keystores_delete( connection, name, optional_params \\ [], @@ -12654,18 +12810,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}]) end @doc """ - Gets a Reference resource. + Gets a keystore or truststore. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the Reference to get. Must be of the form `organizations/{org}/environments/{env}/references/{ref}`. + * `name` (*type:* `String.t`) - Required. Name of the keystore. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12682,20 +12836,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_references_get( + @spec apigee_organizations_environments_keystores_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_references_get( + def apigee_organizations_environments_keystores_get( connection, name, optional_params \\ [], @@ -12726,18 +12880,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Keystore{}]) end @doc """ - Updates an existing Reference. Note that this operation has PUT semantics; it will replace the entirety of the existing Reference with the resource in the request body. + Creates an alias from a key/certificate pair. The structure of the request is controlled by the `format` query parameter: - `keycertfile` - Separate PEM-encoded key and certificate files are uploaded. Set `Content-Type: multipart/form-data` and include the `keyFile`, `certFile`, and `password` (if keys are encrypted) fields in the request body. If uploading to a truststore, omit `keyFile`. - `pkcs12` - A PKCS12 file is uploaded. Set `Content-Type: multipart/form-data`, provide the file in the `file` field, and include the `password` field if the file is encrypted in the request body. - `selfsignedcert` - A new private key and certificate are generated. Set `Content-Type: application/json` and include CertificateGenerationSpec in the request body. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the Reference to update. Must be of the form `organizations/{org}/environments/{env}/references/{ref}`. + * `parent` (*type:* `String.t`) - Required. Name of the keystore. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12750,27 +12902,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t`) - + * `:_password` (*type:* `String.t`) - DEPRECATED: For improved security, specify the password in the request body instead of using the query parameter. To specify the password in the request body, set `Content-type: multipart/form-data` part with name `password`. Password for the private key file, if required. + * `:alias` (*type:* `String.t`) - Alias for the key/certificate pair. Values must match the regular expression `[\\w\\s-.]{1,255}`. This must be provided for all formats except `selfsignedcert`; self-signed certs may specify the alias in either this parameter or the JSON body. + * `:format` (*type:* `String.t`) - Required. Format of the data. Valid values include: `selfsignedcert`, `keycertfile`, or `pkcs12` + * `:ignoreExpiryValidation` (*type:* `boolean()`) - Flag that specifies whether to ignore expiry validation. If set to `true`, no expiry validation will be performed. + * `:ignoreNewlineValidation` (*type:* `boolean()`) - Flag that specifies whether to ignore newline validation. If set to `true`, no error is thrown when the file contains a certificate chain with no newline between each certificate. Defaults to `false`. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_references_update( + @spec apigee_organizations_environments_keystores_aliases_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_references_update( + def apigee_organizations_environments_keystores_aliases_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -12786,32 +12943,35 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :_password => :query, + :alias => :query, + :format => :query, + :ignoreExpiryValidation => :query, + :ignoreNewlineValidation => :query, :body => :body } request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/aliases", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) end @doc """ - Creates a resource file. Specify the `Content-Type` as `application/octet-stream` or `multipart/form-data`. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). + Generates a PKCS #10 Certificate Signing Request for the private key in an alias. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in which to create the resource file in the following format: `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12824,29 +12984,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:name` (*type:* `String.t`) - Required. Name of the resource file. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} - * `:type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_resourcefiles_create( + @spec apigee_organizations_environments_keystores_aliases_csr( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_resourcefiles_create( + def apigee_organizations_environments_keystores_aliases_csr( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -12861,37 +13018,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :name => :query, - :type => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/resourcefiles", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}/csr", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) end @doc """ - Deletes a resource file. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). + Deletes an alias. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in the following format: `organizations/{org}/environments/{env}`. - * `type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} - * `name` (*type:* `String.t`) - Required. ID of the resource file to delete. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} + * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12908,25 +13058,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_resourcefiles_delete( + @spec apigee_organizations_environments_keystores_aliases_delete( Tesla.Env.client(), String.t(), - String.t(), - String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_resourcefiles_delete( + def apigee_organizations_environments_keystores_aliases_delete( connection, - parent, - type, name, optional_params \\ [], opts \\ [] @@ -12948,30 +13094,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:delete) - |> Request.url("/v1/{+parent}/resourcefiles/{type}/{name}", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1), - "type" => URI.encode(type, &URI.char_unreserved?/1), - "name" => URI.encode(name, &(URI.char_unreserved?(&1) || &1 == ?/)) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) end @doc """ - Gets the contents of a resource file. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). + Gets an alias. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in the following format: `organizations/{org}/environments/{env}`. - * `type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} - * `name` (*type:* `String.t`) - Required. ID of the resource file. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} + * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -12988,25 +13128,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_resourcefiles_get( + @spec apigee_organizations_environments_keystores_aliases_get( Tesla.Env.client(), String.t(), - String.t(), - String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_resourcefiles_get( + def apigee_organizations_environments_keystores_aliases_get( connection, - parent, - type, name, optional_params \\ [], opts \\ [] @@ -13028,26 +13164,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/resourcefiles/{type}/{name}", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1), - "type" => URI.encode(type, &URI.char_unreserved?/1), - "name" => URI.encode(name, &(URI.char_unreserved?(&1) || &1 == ?/)) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) end @doc """ - Lists all resource files, optionally filtering by type. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). + Gets the certificate from an alias in PEM-encoded form. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in which to list resource files in the following format: `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13060,27 +13194,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:type` (*type:* `String.t`) - Optional. Type of resource files to list. {{ resource_file_type }} * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_resourcefiles_list( + @spec apigee_organizations_environments_keystores_aliases_get_certificate( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_resourcefiles_list( + def apigee_organizations_environments_keystores_aliases_get_certificate( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -13095,35 +13228,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :type => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/resourcefiles", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}/certificate", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) end @doc """ - Lists all resource files, optionally filtering by type. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). + Updates the certificate in an alias. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in which to list resource files in the following format: `organizations/{org}/environments/{env}`. - * `type` (*type:* `String.t`) - Optional. Type of resource files to list. {{ resource_file_type }} + * `name` (*type:* `String.t`) - Required. Name of the alias. Use the following format in your request: `organizations/{org}/environments/{env}/keystores/{keystore}/aliases/{alias}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13136,28 +13264,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:ignoreExpiryValidation` (*type:* `boolean()`) - Required. Flag that specifies whether to ignore expiry validation. If set to `true`, no expiry validation will be performed. + * `:ignoreNewlineValidation` (*type:* `boolean()`) - Flag that specifies whether to ignore newline validation. If set to `true`, no error is thrown when the file contains a certificate chain with no newline between each certificate. Defaults to `false`. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_resourcefiles_list_environment_resources( + @spec apigee_organizations_environments_keystores_aliases_update( Tesla.Env.client(), String.t(), - String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_resourcefiles_list_environment_resources( + def apigee_organizations_environments_keystores_aliases_update( connection, - parent, - type, + name, optional_params \\ [], opts \\ [] ) do @@ -13172,36 +13301,33 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :ignoreExpiryValidation => :query, + :ignoreNewlineValidation => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/resourcefiles/{type}", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1), - "type" => URI.encode(type, &(URI.char_unreserved?(&1) || &1 == ?/)) + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Alias{}]) end @doc """ - Updates a resource file. Specify the `Content-Type` as `application/octet-stream` or `multipart/form-data`. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). + Creates a key value map in an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the environment in the following format: `organizations/{org}/environments/{env}`. - * `type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} - * `name` (*type:* `String.t`) - Required. ID of the resource file to update. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} + * `parent` (*type:* `String.t`) - Required. Name of the environment in which to create the key value map. Use the following structure in your request: `organizations/{org}/environments/{env}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13214,31 +13340,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_resourcefiles_update( + @spec apigee_organizations_environments_keyvaluemaps_create( Tesla.Env.client(), String.t(), - String.t(), - String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_resourcefiles_update( + def apigee_organizations_environments_keyvaluemaps_create( connection, parent, - type, - name, optional_params \\ [], opts \\ [] ) do @@ -13259,11 +13381,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+parent}/resourcefiles/{type}/{name}", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1), - "type" => URI.encode(type, &URI.char_unreserved?/1), - "name" => URI.encode(name, &(URI.char_unreserved?(&1) || &1 == ?/)) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/keyvaluemaps", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -13271,17 +13391,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] ) end @doc """ - Submit a report request to be processed in the background. If the submission succeeds, the API returns a 200 status and an ID that refer to the report request. In addition to the HTTP status 200, the `state` of "enqueued" means that the request succeeded. + Deletes a key value map from an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. + * `name` (*type:* `String.t`) - Required. Name of the key value map. Use the following structure in your request: `organizations/{org}/environments/{env}/keyvaluemaps/{keyvaluemap}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13294,27 +13414,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportQuery.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_security_reports_create( + @spec apigee_organizations_environments_keyvaluemaps_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_security_reports_create( + def apigee_organizations_environments_keyvaluemaps_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -13329,15 +13448,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/securityReports", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -13345,17 +13463,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] ) end @doc """ - Get security report status If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" + Creates key value entries in a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the security report to get. Must be of the form `organizations/{org}/environments/{env}/securityReports/{reportId}`. + * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to create the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13368,26 +13486,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_security_reports_get( + @spec apigee_organizations_environments_keyvaluemaps_entries_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_security_reports_get( + def apigee_organizations_environments_keyvaluemaps_entries_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -13402,14 +13521,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/entries", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -13417,17 +13537,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] ) end @doc """ - After the query is completed, use this API to retrieve the results as file. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` + Deletes a key value entry from a key value map scoped to an organization, environment, or API proxy. **Notes:** * After you delete the key value entry, the policy consuming the entry will continue to function with its cached values for a few minutes. This is expected behavior. * Supported for Apigee hybrid 1.8.x and higher. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the security report result to get. Must be of the form `organizations/{org}/environments/{env}/securityReports/{reportId}/result`. + * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to delete the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13444,20 +13564,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_security_reports_get_result( + @spec apigee_organizations_environments_keyvaluemaps_entries_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_security_reports_get_result( + def apigee_organizations_environments_keyvaluemaps_entries_delete( connection, name, optional_params \\ [], @@ -13479,7 +13599,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -13488,16 +13608,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + ) end @doc """ - After the query is completed, use this API to view the query result when result size is small. + Get the key value entry value for a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the security report result view to get. Must be of the form `organizations/{org}/environments/{env}/securityReports/{reportId}/resultView`. + * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to fetch the key value map entry/value. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13514,20 +13636,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_security_reports_get_result_view( + @spec apigee_organizations_environments_keyvaluemaps_entries_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_security_reports_get_result_view( + def apigee_organizations_environments_keyvaluemaps_entries_get( connection, name, optional_params \\ [], @@ -13559,17 +13681,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] ) end @doc """ - Return a list of Security Reports + Lists key value entries for key values maps scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. + * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to list key value maps. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13582,31 +13704,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` - * `:from` (*type:* `String.t`) - Filter response list by returning security reports that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. - * `:pageSize` (*type:* `integer()`) - The maximum number of security report to return in the list response. - * `:pageToken` (*type:* `String.t`) - Token returned from the previous list response to fetch the next page. - * `:status` (*type:* `String.t`) - Filter response list by security reports status. - * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. - * `:to` (*type:* `String.t`) - Filter response list by returning security reports that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. + * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of key value entries to return. If unspecified, at most 100 entries will be returned. + * `:pageToken` (*type:* `String.t`) - Optional. Page token. If provides, must be a valid key value entry returned from a previous call that can be used to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_security_reports_list( + @spec apigee_organizations_environments_keyvaluemaps_entries_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_security_reports_list( + def apigee_organizations_environments_keyvaluemaps_entries_list( connection, parent, optional_params \\ [], @@ -13624,19 +13741,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :dataset => :query, - :from => :query, :pageSize => :query, - :pageToken => :query, - :status => :query, - :submittedBy => :query, - :to => :query + :pageToken => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/securityReports", %{ + |> Request.url("/v1/{+parent}/entries", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -13646,17 +13758,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do |> Connection.execute(request) |> Response.decode( opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}] + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}] ) end @doc """ - Retrieve security statistics as tabular rows. + Update key value entry scoped to an organization, environment, or API proxy for an existing key. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `orgenv` (*type:* `String.t`) - Required. Should be of the form organizations//environments/. + * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to create the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13669,27 +13781,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsRequest.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_security_stats_query_tabular_stats( + @spec apigee_organizations_environments_keyvaluemaps_entries_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_security_stats_query_tabular_stats( + def apigee_organizations_environments_keyvaluemaps_entries_update( connection, - orgenv, + name, optional_params \\ [], opts \\ [] ) do @@ -13710,9 +13822,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+orgenv}/securityStats:queryTabularStats", %{ - "orgenv" => URI.encode(orgenv, &URI.char_unreserved?/1) + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -13720,17 +13832,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] ) end @doc """ - Retrieve security statistics as a collection of time series. + Similar to GetStats except that the response is less verbose. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `orgenv` (*type:* `String.t`) - Required. Should be of the form organizations//environments/. + * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{org}/environments/{env}/optimizedStats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy`, `target_host`. The value of `dimensions` should be a comma-separated list as shown below: `organizations/{org}/environments/{env}/optimizedStats/apiproxy,request_verb` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13743,27 +13855,41 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsRequest.t`) - + * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. + * `:aggTable` (*type:* `String.t`) - Table name used to query custom aggregate tables. If this parameter is skipped, then Apigee will try to retrieve the data from fact tables which will be expensive. + * `:filter` (*type:* `String.t`) - Filter that enables you to drill-down on specific dimension values. + * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. + * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. + * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. + * `:select` (*type:* `String.t`) - Required. Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` + * `:sonar` (*type:* `boolean()`) - Routes the query to API Monitoring for the last hour. + * `:sort` (*type:* `String.t`) - Flag that specifies whether the sort order should be ascending or descending. Valid values include `DESC` and `ASC`. + * `:sortby` (*type:* `String.t`) - Comma-separated list of columns to sort the final result. + * `:timeRange` (*type:* `String.t`) - Required. Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59` + * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or `month`. + * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. + * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends setting this value to `true` if you are using `sortby` with `sort=DESC`. + * `:tzo` (*type:* `String.t`) - Timezone offset value. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_security_stats_query_time_series_stats( + @spec apigee_organizations_environments_optimized_stats_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_security_stats_query_time_series_stats( + def apigee_organizations_environments_optimized_stats_get( connection, - orgenv, + name, optional_params \\ [], opts \\ [] ) do @@ -13779,14 +13905,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :body => :body + :accuracy => :query, + :aggTable => :query, + :filter => :query, + :limit => :query, + :offset => :query, + :realtime => :query, + :select => :query, + :sonar => :query, + :sort => :query, + :sortby => :query, + :timeRange => :query, + :timeUnit => :query, + :topk => :query, + :tsAscending => :query, + :tzo => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+orgenv}/securityStats:queryTimeSeriesStats", %{ - "orgenv" => URI.encode(orgenv, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -13794,18 +13934,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}] ) end @doc """ - Lists all deployments of a shared flow in an environment. + Submit a query to be processed in the background. If the submission of the query succeeds, the API returns a 201 status and an ID that refer to the query. In addition to the HTTP status 201, the `state` of "enqueued" means that the request succeeded. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name representing a shared flow in an environment in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}` + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13818,24 +13957,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Query.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_sharedflows_deployments_list( + @spec apigee_organizations_environments_queries_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_sharedflows_deployments_list( + def apigee_organizations_environments_queries_create( connection, parent, optional_params \\ [], @@ -13852,13 +13992,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/deployments", %{ + |> Request.method(:post) + |> Request.url("/v1/{+parent}/queries", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -13867,17 +14008,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] ) end @doc """ - Deploys a revision of a shared flow. If another revision of the same shared flow is currently deployed, set the `override` parameter to `true` to have this revision replace the currently deployed revision. You cannot use a shared flow until it has been deployed to an environment. For a request path `organizations/{org}/environments/{env}/sharedflows/{sf}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.create` on the resource `organizations/{org}/environments/{env}` * `apigee.sharedflowrevisions.deploy` on the resource `organizations/{org}/sharedflows/{sf}/revisions/{rev}` + Get query status If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the shared flow revision to deploy in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}/revisions/{rev}` + * `name` (*type:* `String.t`) - Required. Name of the asynchronous query to get. Must be of the form `organizations/{org}/environments/{env}/queries/{queryId}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13890,26 +14031,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:override` (*type:* `boolean()`) - Flag that specifies whether the new deployment replaces other deployed revisions of the shared flow in the environment. Set `override` to `true` to replace other deployed revisions. By default, `override` is `false` and the deployment is rejected if other revisions of the shared flow are deployed in the environment. - * `:serviceAccount` (*type:* `String.t`) - Google Cloud IAM service account. The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be `{ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_sharedflows_revisions_deploy( + @spec apigee_organizations_environments_queries_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_sharedflows_revisions_deploy( + def apigee_organizations_environments_queries_get( connection, name, optional_params \\ [], @@ -13926,15 +14065,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :override => :query, - :serviceAccount => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+name}/deployments", %{ + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -13943,17 +14080,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] ) end @doc """ - Gets the deployment of a shared flow revision and actual state reported by runtime pods. + After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name representing a shared flow in an environment in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}/revisions/{rev}` + * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result to get. Must be of the form `organizations/{org}/environments/{env}/queries/{queryId}/result`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -13970,20 +14107,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_sharedflows_revisions_get_deployments( + @spec apigee_organizations_environments_queries_get_result( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_sharedflows_revisions_get_deployments( + def apigee_organizations_environments_queries_get_result( connection, name, optional_params \\ [], @@ -14006,7 +14143,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}/deployments", %{ + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -14014,18 +14151,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) end @doc """ - Undeploys a shared flow revision from an environment. For a request path `organizations/{org}/environments/{env}/sharedflows/{sf}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.delete` on the resource `organizations/{org}/environments/{env}` * `apigee.sharedflowrevisions.undeploy` on the resource `organizations/{org}/sharedflows/{sf}/revisions/{rev}` + After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is sent to the client as a list of urls to JSON files. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the shared flow revision to undeploy in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}/revisions/{rev}` + * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result to get. Must be of the form `organizations/{org}/environments/{env}/queries/{queryId}/resulturl`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14042,20 +14177,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GetAsyncQueryResultUrlResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_sharedflows_revisions_undeploy( + @spec apigee_organizations_environments_queries_get_resulturl( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GetAsyncQueryResultUrlResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_sharedflows_revisions_undeploy( + def apigee_organizations_environments_queries_get_resulturl( connection, name, optional_params \\ [], @@ -14077,8 +14212,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}/deployments", %{ + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -14086,16 +14221,19 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) - end - + |> Response.decode( + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GetAsyncQueryResultUrlResponse{}] + ) + end + @doc """ - Retrieve metrics grouped by dimensions. The types of metrics you can retrieve include traffic, message counts, API call latency, response size, and cache hits and counts. Dimensions let you view metrics in meaningful groups. You can optionally pass dimensions as path parameters to the `stats` API. If dimensions are not specified, the metrics are computed on the entire set of data for the given time range. + Return a list of Asynchronous Queries ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{org}/environments/{env}/stats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy` or `target_host`. The value of dimensions should be a comma-separated list, as shown below: `organizations/{org}/environments/{env}/stats/apiproxy,request_verb` + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14108,41 +14246,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. - * `:aggTable` (*type:* `String.t`) - Table name used to query custom aggregate tables. If this parameter is skipped, then Apigee will try to retrieve the data from fact tables which will be expensive. - * `:filter` (*type:* `String.t`) - Filter that enables you to drill down on specific dimension values. - * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. - * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. - * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. - * `:select` (*type:* `String.t`) - Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` - * `:sonar` (*type:* `boolean()`) - Routes the query to API Monitoring for the last hour. - * `:sort` (*type:* `String.t`) - Flag that specifies whether the sort order should be ascending or descending. Valid values include: `DESC` and `ASC`. - * `:sortby` (*type:* `String.t`) - Comma-separated list of columns to sort the final result. - * `:timeRange` (*type:* `String.t`) - Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59` - * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or` month`. - * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. - * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends that you set this value to `true` if you are using `sortby` with `sort=DESC`. - * `:tzo` (*type:* `String.t`) - Timezone offset value. + * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` + * `:from` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. + * `:inclQueriesWithoutReport` (*type:* `String.t`) - Flag to include asynchronous queries that don't have a report denifition. + * `:status` (*type:* `String.t`) - Filter response list by asynchronous query status. + * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. + * `:to` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_stats_get( + @spec apigee_organizations_environments_queries_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_stats_get( + def apigee_organizations_environments_queries_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -14158,44 +14287,37 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :accuracy => :query, - :aggTable => :query, - :filter => :query, - :limit => :query, - :offset => :query, - :realtime => :query, - :select => :query, - :sonar => :query, - :sort => :query, - :sortby => :query, - :timeRange => :query, - :timeUnit => :query, - :topk => :query, - :tsAscending => :query, - :tzo => :query + :dataset => :query, + :from => :query, + :inclQueriesWithoutReport => :query, + :status => :query, + :submittedBy => :query, + :to => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/queries", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}] + ) end @doc """ - Creates a TargetServer in the specified environment. + Creates a Reference in the specified environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent environment name under which the TargetServer will be created. Must be of the form `organizations/{org}/environments/{env}`. + * `parent` (*type:* `String.t`) - Required. The parent environment name under which the Reference will be created. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14208,26 +14330,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:name` (*type:* `String.t`) - Optional. The ID to give the TargetServer. This will overwrite the value in TargetServer. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_targetservers_create( + @spec apigee_organizations_environments_references_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_targetservers_create( + def apigee_organizations_environments_references_create( connection, parent, optional_params \\ [], @@ -14245,14 +14366,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :name => :query, :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/targetservers", %{ + |> Request.url("/v1/{+parent}/references", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -14261,17 +14381,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] ) end @doc """ - Deletes a TargetServer from an environment. Returns the deleted TargetServer resource. + Deletes a Reference from an environment. Returns the deleted Reference resource. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the TargetServer to delete. Must be of the form `organizations/{org}/environments/{env}/targetservers/{target_server_id}`. + * `name` (*type:* `String.t`) - Required. The name of the Reference to delete. Must be of the form `organizations/{org}/environments/{env}/references/{ref}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14288,20 +14408,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_targetservers_delete( + @spec apigee_organizations_environments_references_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_targetservers_delete( + def apigee_organizations_environments_references_delete( connection, name, optional_params \\ [], @@ -14333,17 +14453,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] ) end @doc """ - Gets a TargetServer resource. + Gets a Reference resource. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the TargetServer to get. Must be of the form `organizations/{org}/environments/{env}/targetservers/{target_server_id}`. + * `name` (*type:* `String.t`) - Required. The name of the Reference to get. Must be of the form `organizations/{org}/environments/{env}/references/{ref}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14360,20 +14480,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_targetservers_get( + @spec apigee_organizations_environments_references_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_targetservers_get( + def apigee_organizations_environments_references_get( connection, name, optional_params \\ [], @@ -14405,17 +14525,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] ) end @doc """ - Updates an existing TargetServer. Note that this operation has PUT semantics; it will replace the entirety of the existing TargetServer with the resource in the request body. + Updates an existing Reference. Note that this operation has PUT semantics; it will replace the entirety of the existing Reference with the resource in the request body. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the TargetServer to replace. Must be of the form `organizations/{org}/environments/{env}/targetservers/{target_server_id}`. + * `name` (*type:* `String.t`) - Required. The name of the Reference to update. Must be of the form `organizations/{org}/environments/{env}/references/{ref}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14428,25 +14548,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_targetservers_update( + @spec apigee_organizations_environments_references_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_targetservers_update( + def apigee_organizations_environments_references_update( connection, name, optional_params \\ [], @@ -14479,17 +14599,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Reference{}] ) end @doc """ - Creates a trace configuration override. The response contains a system-generated UUID, that can be used to view, update, or delete the configuration override. Use the List API to view the existing trace configuration overrides. + Creates a resource file. Specify the `Content-Type` as `application/octet-stream` or `multipart/form-data`. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Parent resource of the trace configuration override. Use the following structure in your request. "organizations/*/environments/*/traceConfig". + * `parent` (*type:* `String.t`) - Required. Name of the environment in which to create the resource file in the following format: `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14502,25 +14622,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t`) - + * `:name` (*type:* `String.t`) - Required. Name of the resource file. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} + * `:type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_trace_config_overrides_create( + @spec apigee_organizations_environments_resourcefiles_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_trace_config_overrides_create( + def apigee_organizations_environments_resourcefiles_create( connection, parent, optional_params \\ [], @@ -14538,13 +14660,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :name => :query, + :type => :query, :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/overrides", %{ + |> Request.url("/v1/{+parent}/resourcefiles", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -14553,17 +14677,19 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}] ) end @doc """ - Deletes a distributed trace configuration override. + Deletes a resource file. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig/overrides/*". + * `parent` (*type:* `String.t`) - Required. Name of the environment in the following format: `organizations/{org}/environments/{env}`. + * `type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} + * `name` (*type:* `String.t`) - Required. ID of the resource file to delete. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14580,21 +14706,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_trace_config_overrides_delete( + @spec apigee_organizations_environments_resourcefiles_delete( Tesla.Env.client(), String.t(), + String.t(), + String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_trace_config_overrides_delete( + def apigee_organizations_environments_resourcefiles_delete( connection, + parent, + type, name, optional_params \\ [], opts \\ [] @@ -14616,24 +14746,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/resourcefiles/{type}/{name}", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1), + "type" => URI.encode(type, &URI.char_unreserved?/1), + "name" => URI.encode(name, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}] + ) end @doc """ - Gets a trace configuration override. + Gets the contents of a resource file. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig/overrides/*". + * `parent` (*type:* `String.t`) - Required. Name of the environment in the following format: `organizations/{org}/environments/{env}`. + * `type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} + * `name` (*type:* `String.t`) - Required. ID of the resource file. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14650,21 +14786,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_trace_config_overrides_get( + @spec apigee_organizations_environments_resourcefiles_get( Tesla.Env.client(), String.t(), + String.t(), + String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_trace_config_overrides_get( + def apigee_organizations_environments_resourcefiles_get( connection, + parent, + type, name, optional_params \\ [], opts \\ [] @@ -14686,26 +14826,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/resourcefiles/{type}/{name}", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1), + "type" => URI.encode(type, &URI.char_unreserved?/1), + "name" => URI.encode(name, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) end @doc """ - Lists all of the distributed trace configuration overrides in an environment. + Lists all resource files, optionally filtering by type. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Parent resource of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig". + * `parent` (*type:* `String.t`) - Required. Name of the environment in which to list resource files in the following format: `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14718,26 +14858,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of trace configuration overrides to return. If not specified, the maximum number returned is 25. The maximum number cannot exceed 100. - * `:pageToken` (*type:* `String.t`) - A page token, returned from a previous `ListTraceConfigOverrides` call. Token value that can be used to retrieve the subsequent page. When paginating, all other parameters provided to `ListTraceConfigOverrides` must match those specified in the call to obtain the page token. + * `:type` (*type:* `String.t`) - Optional. Type of resource files to list. {{ resource_file_type }} * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListTraceConfigOverridesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_trace_config_overrides_list( + @spec apigee_organizations_environments_resourcefiles_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListTraceConfigOverridesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_trace_config_overrides_list( + def apigee_organizations_environments_resourcefiles_list( connection, parent, optional_params \\ [], @@ -14755,14 +14894,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :type => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/overrides", %{ + |> Request.url("/v1/{+parent}/resourcefiles", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -14772,17 +14910,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do |> Connection.execute(request) |> Response.decode( opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListTraceConfigOverridesResponse{}] + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}] ) end @doc """ - Updates a distributed trace configuration override. Note that the repeated fields have replace semantics when included in the field mask and that they will be overwritten by the value of the fields in the request body. + Lists all resource files, optionally filtering by type. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig/overrides/*". + * `parent` (*type:* `String.t`) - Required. Name of the environment in which to list resource files in the following format: `organizations/{org}/environments/{env}`. + * `type` (*type:* `String.t`) - Optional. Type of resource files to list. {{ resource_file_type }} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14795,28 +14934,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:updateMask` (*type:* `String.t`) - List of fields to be updated. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_environments_trace_config_overrides_patch( + @spec apigee_organizations_environments_resourcefiles_list_environment_resources( Tesla.Env.client(), String.t(), + String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_environments_trace_config_overrides_patch( + def apigee_organizations_environments_resourcefiles_list_environment_resources( connection, - name, + parent, + type, optional_params \\ [], opts \\ [] ) do @@ -14831,16 +14970,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :updateMask => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:patch) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/resourcefiles/{type}", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1), + "type" => URI.encode(type, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -14848,17 +14986,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListEnvironmentResourcesResponse{}] ) end @doc """ - Submit a query at host level to be processed in the background. If the submission of the query succeeds, the API returns a 201 status and an ID that refer to the query. In addition to the HTTP status 201, the `state` of "enqueued" means that the request succeeded. + Updates a resource file. Specify the `Content-Type` as `application/octet-stream` or `multipart/form-data`. For more information about resource files, see [Resource files](https://cloud.google.com/apigee/docs/api-platform/develop/resource-files). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. + * `parent` (*type:* `String.t`) - Required. Name of the environment in the following format: `organizations/{org}/environments/{env}`. + * `type` (*type:* `String.t`) - Required. Resource file type. {{ resource_file_type }} + * `name` (*type:* `String.t`) - Required. ID of the resource file to update. Must match the regular expression: [a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()+\\-=,.~'` ]{1,255} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14871,27 +15012,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Query.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_queries_create( + @spec apigee_organizations_environments_resourcefiles_update( Tesla.Env.client(), String.t(), + String.t(), + String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_queries_create( + def apigee_organizations_environments_resourcefiles_update( connection, parent, + type, + name, optional_params \\ [], opts \\ [] ) do @@ -14912,9 +15057,11 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/hostQueries", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:put) + |> Request.url("/v1/{+parent}/resourcefiles/{type}/{name}", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1), + "type" => URI.encode(type, &URI.char_unreserved?/1), + "name" => URI.encode(name, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -14922,17 +15069,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ResourceFile{}] ) end @doc """ - Get status of a query submitted at host level. If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" + CreateSecurityAction creates a SecurityAction. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the asynchronous query to get. Must be of the form `organizations/{org}/queries/{queryId}`. + * `parent` (*type:* `String.t`) - Required. The organization and environment that this SecurityAction applies to. Format: organizations/{org}/environments/{env} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -14945,24 +15092,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:securityActionId` (*type:* `String.t`) - Required. The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^[a-z]([a-z0-9-]{​0,61}[a-z0-9])?$). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_queries_get( + @spec apigee_organizations_environments_security_actions_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_queries_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_environments_security_actions_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -14974,14 +15128,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :securityActionId => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/securityActions", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -14989,17 +15145,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}] ) end @doc """ - After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` + Disable a SecurityAction. The `state` of the SecurityAction after disabling is `DISABLED`. `DisableSecurityAction` can be called on SecurityActions in the state `ENABLED`; SecurityActions in a different state (including `DISABLED`) return an error. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result to get. Must be of the form `organizations/{org}/queries/{queryId}/result`. + * `name` (*type:* `String.t`) - Required. The name of the SecurityAction to disable. Format: organizations/{org}/environments/{env}/securityActions/{security_action} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15012,24 +15168,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DisableSecurityActionRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_queries_get_result( + @spec apigee_organizations_environments_security_actions_disable( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_queries_get_result( + def apigee_organizations_environments_security_actions_disable( connection, name, optional_params \\ [], @@ -15046,13 +15203,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}:disable", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -15060,16 +15218,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}] + ) end @doc """ - + Enable a SecurityAction. The `state` of the SecurityAction after enabling is `ENABLED`. `EnableSecurityAction` can be called on SecurityActions in the state `DISABLED`; SecurityActions in a different state (including `ENABLED) return an error. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result view to get. Must be of the form `organizations/{org}/queries/{queryId}/resultView`. + * `name` (*type:* `String.t`) - Required. The name of the SecurityAction to enable. Format: organizations/{org}/environments/{env}/securityActions/{security_action} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15082,24 +15242,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnableSecurityActionRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQueryResultView{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_queries_get_result_view( + @spec apigee_organizations_environments_security_actions_enable( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQueryResultView.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_queries_get_result_view( + def apigee_organizations_environments_security_actions_enable( connection, name, optional_params \\ [], @@ -15116,13 +15277,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}:enable", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -15131,17 +15293,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQueryResultView{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}] ) end @doc """ - Return a list of Asynchronous Queries at host level. + Get a SecurityAction by name. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. + * `name` (*type:* `String.t`) - Required. The fully qualified name of the SecurityAction to retrieve. Format: organizations/{org}/environments/{env}/securityActions/{security_action} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15154,33 +15316,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` - * `:envgroupHostname` (*type:* `String.t`) - Required. Filter response list by hostname. - * `:from` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. - * `:inclQueriesWithoutReport` (*type:* `String.t`) - Flag to include asynchronous queries that don't have a report denifition. - * `:status` (*type:* `String.t`) - Filter response list by asynchronous query status. - * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. - * `:to` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_queries_list( + @spec apigee_organizations_environments_security_actions_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_queries_list( + def apigee_organizations_environments_security_actions_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -15195,21 +15350,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :dataset => :query, - :envgroupHostname => :query, - :from => :query, - :inclQueriesWithoutReport => :query, - :status => :query, - :submittedBy => :query, - :to => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/hostQueries", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -15217,17 +15365,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction{}] ) end @doc """ - Submit a query at host level to be processed in the background. If the submission of the query succeeds, the API returns a 201 status and an ID that refer to the query. In addition to the HTTP status 201, the `state` of "enqueued" means that the request succeeded. + Returns a list of SecurityActions. This returns both enabled and disabled actions. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. + * `parent` (*type:* `String.t`) - Required. The parent, which owns this collection of SecurityActions. Format: organizations/{org}/environments/{env} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15240,25 +15388,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportQuery.t`) - + * `:filter` (*type:* `String.t`) - The filter expression to filter List results. https://google.aip.dev/160. Allows for filtering over: state and api_proxies. E.g.: state = ACTIVE AND apiProxies:foo. Filtering by action is not supported https://github.com/aip-dev/google.aip.dev/issues/624 + * `:pageSize` (*type:* `integer()`) - The maximum number of SecurityActions to return. If unspecified, at most 50 SecurityActions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * `:pageToken` (*type:* `String.t`) - A page token, received from a previous `ListSecurityActions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListSecurityActions` must match the call that provided the page token. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityActionsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_security_reports_create( + @spec apigee_organizations_environments_security_actions_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityActionsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_security_reports_create( + def apigee_organizations_environments_security_actions_list( connection, parent, optional_params \\ [], @@ -15276,13 +15426,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :body => :body + :filter => :query, + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/hostSecurityReports", %{ + |> Request.method(:get) + |> Request.url("/v1/{+parent}/securityActions", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -15291,17 +15443,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityActionsResponse{}] ) end @doc """ - Get status of a query submitted at host level. If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" + BatchUpdateSecurityIncident updates multiple existing security incidents. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the security report to get. Must be of the form `organizations/{org}/securityReports/{reportId}`. + * `parent` (*type:* `String.t`) - Optional. The parent resource shared by all security incidents being updated. If this is set, the parent field in the UpdateSecurityIncidentRequest messages must either be empty or match this field. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15314,26 +15467,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_security_reports_get( + @spec apigee_organizations_environments_security_incidents_batch_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} + {:ok, + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_security_reports_get( + def apigee_organizations_environments_security_incidents_batch_update( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -15348,14 +15503,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/securityIncidents:batchUpdate", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -15363,17 +15519,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + opts ++ + [ + struct: + %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsResponse{} + ] ) end @doc """ - After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` + GetSecurityIncident gets the specified security incident. Returns NOT_FOUND if security incident is not present for the specified organization and environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the security report result to get. Must be of the form `organizations/{org}/securityReports/{reportId}/result`. + * `name` (*type:* `String.t`) - Required. Security incident in the following format: `organizations/{org}/environments/{environment}/securityIncidents/{incident}'. Example: organizations/testOrg/environments/testEnv/securityIncidents/1234-4567-890-111 * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15390,20 +15550,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_security_reports_get_result( + @spec apigee_organizations_environments_security_incidents_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_security_reports_get_result( + def apigee_organizations_environments_security_incidents_get( connection, name, optional_params \\ [], @@ -15434,16 +15594,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident{}] + ) end @doc """ - After the query is completed, use this API to view the query result when result size is small. + ListSecurityIncidents lists all the security incident associated with the environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the security report result view to get. Must be of the form `organizations/{org}/securityReports/{reportId}/resultView`. + * `parent` (*type:* `String.t`) - Required. For a specific organization, list of all the security incidents. Format: `organizations/{org}/environments/{environment}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15456,26 +15618,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:filter` (*type:* `String.t`) - The filter expression to be used to get the list of security incidents, where filtering can be done on API Proxies. Example: filter = "api_proxy = /", "first_detected_time >", "last_detected_time <" + * `:pageSize` (*type:* `integer()`) - Optional. The maximum number of incidents to return. The service may return fewer than this value. If unspecified, at most 50 incidents will be returned. + * `:pageToken` (*type:* `String.t`) - Optional. A page token, received from a previous `ListSecurityIncident` call. Provide this to retrieve the subsequent page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityIncidentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_security_reports_get_result_view( + @spec apigee_organizations_environments_security_incidents_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityIncidentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_security_reports_get_result_view( + def apigee_organizations_environments_security_incidents_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -15490,14 +15655,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :filter => :query, + :pageSize => :query, + :pageToken => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/securityIncidents", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -15505,17 +15673,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityIncidentsResponse{}] ) end @doc """ - Return a list of Security Reports at host level. + UpdateSecurityIncidents updates an existing security incident. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. + * `name` (*type:* `String.t`) - Immutable. Name of the security incident resource. Format: organizations/{org}/environments/{environment}/securityIncidents/{incident} Example: organizations/apigee-org/environments/dev/securityIncidents/1234-5678-9101-1111 * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15528,34 +15697,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` - * `:envgroupHostname` (*type:* `String.t`) - Required. Filter response list by hostname. - * `:from` (*type:* `String.t`) - Filter response list by returning security reports that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. - * `:pageSize` (*type:* `integer()`) - The maximum number of security report to return in the list response. - * `:pageToken` (*type:* `String.t`) - Token returned from the previous list response to fetch the next page. - * `:status` (*type:* `String.t`) - Filter response list by security report status. - * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. - * `:to` (*type:* `String.t`) - Filter response list by returning security reports that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. + * `:updateMask` (*type:* `String.t`) - Required. The list of fields to update. Allowed fields are: LINT.IfChange(allowed_update_fields_comment) - observability LINT.ThenChange() + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_security_reports_list( + @spec apigee_organizations_environments_security_incidents_patch( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_security_reports_list( + def apigee_organizations_environments_security_incidents_patch( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -15571,21 +15734,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :dataset => :query, - :envgroupHostname => :query, - :from => :query, - :pageSize => :query, - :pageToken => :query, - :status => :query, - :submittedBy => :query, - :to => :query + :updateMask => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/hostSecurityReports", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:patch) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -15593,18 +15750,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident{}] ) end @doc """ - Retrieve metrics grouped by dimensions in host level. The types of metrics you can retrieve include traffic, message counts, API call latency, response size, and cache hits and counts. Dimensions let you view metrics in meaningful groups. You can optionally pass dimensions as path parameters to the `stats` API. If dimensions are not specified, the metrics are computed on the entire set of data for the given time range. + Submit a report request to be processed in the background. If the submission succeeds, the API returns a 200 status and an ID that refer to the report request. In addition to the HTTP status 200, the `state` of "enqueued" means that the request succeeded. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{org}/hostStats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy`, `target_host`. The value of dimensions should be a comma-separated list as shown below `organizations/{org}/hostStats/apiproxy,request_verb` + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15617,33 +15773,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. - * `:envgroupHostname` (*type:* `String.t`) - Required. Hostname for which the interactive query will be executed. - * `:filter` (*type:* `String.t`) - Flag that enables drill-down on specific dimension values. - * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. - * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. - * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. - * `:select` (*type:* `String.t`) - Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` - * `:sort` (*type:* `String.t`) - Flag that specifies if the sort order should be ascending or descending. Valid values are `DESC` and `ASC`. - * `:sortby` (*type:* `String.t`) - Comma-separated list of columns to sort the final result. - * `:timeRange` (*type:* `String.t`) - Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59` - * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or `month`. - * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. - * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends that you set this value to `true` if you are using `sortby` with `sort=DESC`. - * `:tzo` (*type:* `String.t`) - Timezone offset value. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportQuery.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_host_stats_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats.t()} + @spec apigee_organizations_environments_security_reports_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_host_stats_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_environments_security_reports_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -15656,43 +15809,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :accuracy => :query, - :envgroupHostname => :query, - :filter => :query, - :limit => :query, - :offset => :query, - :realtime => :query, - :select => :query, - :sort => :query, - :sortby => :query, - :timeRange => :query, - :timeUnit => :query, - :topk => :query, - :tsAscending => :query, - :tzo => :query + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/securityReports", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + ) end @doc """ - Creates an Apigee runtime instance. The instance is accessible from the authorized network configured on the organization. **Note:** Not supported for Apigee hybrid. + Get security report status If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}`. + * `name` (*type:* `String.t`) - Required. Name of the security report to get. Must be of the form `organizations/{org}/environments/{env}/securityReports/{reportId}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15705,25 +15847,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_create( + @spec apigee_organizations_environments_security_reports_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_create(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_environments_security_reports_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -15735,31 +15881,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/instances", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + ) end @doc """ - Deletes an Apigee runtime instance. The instance stops serving requests and the runtime data is deleted. **Note:** Not supported for Apigee hybrid. + After the query is completed, use this API to retrieve the results as file. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `name` (*type:* `String.t`) - Required. Name of the security report result to get. Must be of the form `organizations/{org}/environments/{env}/securityReports/{reportId}/result`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15776,20 +15923,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_delete( + @spec apigee_organizations_environments_security_reports_get_result( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_delete(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_environments_security_reports_get_result( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -15806,7 +15958,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -15815,16 +15967,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) end @doc """ - Gets the details for an Apigee runtime instance. **Note:** Not supported for Apigee hybrid. + After the query is completed, use this API to view the query result when result size is small. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `name` (*type:* `String.t`) - Required. Name of the security report result view to get. Must be of the form `organizations/{org}/environments/{env}/securityReports/{reportId}/resultView`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15841,15 +15993,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance.t()} + @spec apigee_organizations_environments_security_reports_get_result_view( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_environments_security_reports_get_result_view( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -15875,16 +16037,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}] + ) end @doc """ - Lists all Apigee runtime instances for the organization. **Note:** Not supported for Apigee hybrid. + Return a list of Security Reports ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}`. + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15897,21 +16061,36 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of instances to return. Defaults to 25. - * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListInstances call, that you can use to retrieve the next page of content. + * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` + * `:from` (*type:* `String.t`) - Filter response list by returning security reports that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. + * `:pageSize` (*type:* `integer()`) - The maximum number of security report to return in the list response. + * `:pageToken` (*type:* `String.t`) - Token returned from the previous list response to fetch the next page. + * `:status` (*type:* `String.t`) - Filter response list by security reports status. + * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. + * `:to` (*type:* `String.t`) - Filter response list by returning security reports that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstancesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstancesResponse.t()} + @spec apigee_organizations_environments_security_reports_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_list(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_environments_security_reports_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -15924,14 +16103,19 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :dataset => :query, + :from => :query, :pageSize => :query, - :pageToken => :query + :pageToken => :query, + :status => :query, + :submittedBy => :query, + :to => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/instances", %{ + |> Request.url("/v1/{+parent}/securityReports", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -15940,17 +16124,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstancesResponse{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}] ) end @doc """ - Updates an Apigee runtime instance. You can update the fields described in NodeConfig. No other fields will be updated. **Note:** Not supported for Apigee hybrid. + Retrieve security statistics as tabular rows. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `orgenv` (*type:* `String.t`) - Required. Should be of the form organizations//environments/. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -15963,21 +16148,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:updateMask` (*type:* `String.t`) - List of fields to be updated. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_patch(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + @spec apigee_organizations_environments_security_stats_query_tabular_stats( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_patch(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_environments_security_stats_query_tabular_stats( + connection, + orgenv, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -15990,31 +16184,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :updateMask => :query, :body => :body } request = Request.new() - |> Request.method(:patch) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+orgenv}/securityStats:queryTabularStats", %{ + "orgenv" => URI.encode(orgenv, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTabularStatsResponse{}] + ) end @doc """ - Reports the latest status for a runtime instance. + Retrieve security statistics as a collection of time series. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `instance` (*type:* `String.t`) - The name of the instance reporting this status. For SaaS the request will be rejected if no instance exists under this name. Format is organizations/{org}/instances/{instance} + * `orgenv` (*type:* `String.t`) - Required. Should be of the form organizations//environments/. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16027,27 +16222,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusRequest.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_report_status( + @spec apigee_organizations_environments_security_stats_query_time_series_stats( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_report_status( + def apigee_organizations_environments_security_stats_query_time_series_stats( connection, - instance, + orgenv, optional_params \\ [], opts \\ [] ) do @@ -16069,8 +16264,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+instance}:reportStatus", %{ - "instance" => URI.encode(instance, &URI.char_unreserved?/1) + |> Request.url("/v1/{+orgenv}/securityStats:queryTimeSeriesStats", %{ + "orgenv" => URI.encode(orgenv, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -16079,17 +16274,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do |> Connection.execute(request) |> Response.decode( opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusResponse{}] + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1QueryTimeSeriesStatsResponse{}] ) end @doc """ - Creates a new attachment of an environment to an instance. **Note:** Not supported for Apigee hybrid. + Lists all deployments of a shared flow in an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `parent` (*type:* `String.t`) - Required. Name representing a shared flow in an environment in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16102,25 +16297,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_attachments_create( + @spec apigee_organizations_environments_sharedflows_deployments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_attachments_create( + def apigee_organizations_environments_sharedflows_deployments_list( connection, parent, optional_params \\ [], @@ -16137,14 +16331,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/attachments", %{ + |> Request.method(:get) + |> Request.url("/v1/{+parent}/deployments", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -16152,16 +16345,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] + ) end @doc """ - Deletes an attachment. **Note:** Not supported for Apigee hybrid. + Deploys a revision of a shared flow. If another revision of the same shared flow is currently deployed, set the `override` parameter to `true` to have this revision replace the currently deployed revision. You cannot use a shared flow until it has been deployed to an environment. For a request path `organizations/{org}/environments/{env}/sharedflows/{sf}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.create` on the resource `organizations/{org}/environments/{env}` * `apigee.sharedflowrevisions.deploy` on the resource `organizations/{org}/sharedflows/{sf}/revisions/{rev}` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the attachment. Use the following structure in your request: `organizations/{org}/instances/{instance}/attachments/{attachment}`. + * `name` (*type:* `String.t`) - Required. Name of the shared flow revision to deploy in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16174,24 +16369,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:override` (*type:* `boolean()`) - Flag that specifies whether the new deployment replaces other deployed revisions of the shared flow in the environment. Set `override` to `true` to replace other deployed revisions. By default, `override` is `false` and the deployment is rejected if other revisions of the shared flow are deployed in the environment. + * `:serviceAccount` (*type:* `String.t`) - Google Cloud IAM service account. The service account represents the identity of the deployed proxy, and determines what permissions it has. The format must be `{ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com`. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_attachments_delete( + @spec apigee_organizations_environments_sharedflows_revisions_deploy( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_attachments_delete( + def apigee_organizations_environments_sharedflows_revisions_deploy( connection, name, optional_params \\ [], @@ -16208,13 +16405,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :override => :query, + :serviceAccount => :query } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ + |> Request.method(:post) + |> Request.url("/v1/{+name}/deployments", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -16222,16 +16421,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] + ) end @doc """ - Gets an attachment. **Note:** Not supported for Apigee hybrid. + Gets the deployment of a shared flow revision and actual state reported by runtime pods. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the attachment. Use the following structure in your request: `organizations/{org}/instances/{instance}/attachments/{attachment}` + * `name` (*type:* `String.t`) - Required. Name representing a shared flow in an environment in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16248,20 +16449,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_attachments_get( + @spec apigee_organizations_environments_sharedflows_revisions_get_deployments( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_attachments_get( + def apigee_organizations_environments_sharedflows_revisions_get_deployments( connection, name, optional_params \\ [], @@ -16284,7 +16485,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ + |> Request.url("/v1/{+name}/deployments", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -16293,17 +16494,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment{}] ) end @doc """ - Lists all attachments to an instance. **Note:** Not supported for Apigee hybrid. + Undeploys a shared flow revision from an environment. For a request path `organizations/{org}/environments/{env}/sharedflows/{sf}/revisions/{rev}/deployments`, two permissions are required: * `apigee.deployments.delete` on the resource `organizations/{org}/environments/{env}` * `apigee.sharedflowrevisions.undeploy` on the resource `organizations/{org}/sharedflows/{sf}/revisions/{rev}` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}/instances/{instance}` + * `name` (*type:* `String.t`) - Required. Name of the shared flow revision to undeploy in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}/revisions/{rev}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16316,28 +16517,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of instance attachments to return. Defaults to 25. - * `:pageToken` (*type:* `String.t`) - Page token, returned by a previous ListInstanceAttachments call, that you can use to retrieve the next page of content. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstanceAttachmentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_attachments_list( + @spec apigee_organizations_environments_sharedflows_revisions_undeploy( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstanceAttachmentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_attachments_list( + def apigee_organizations_environments_sharedflows_revisions_undeploy( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -16352,35 +16551,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/attachments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}/deployments", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstanceAttachmentsResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Creates a new canary evaluation for an organization. + Retrieve metrics grouped by dimensions. The types of metrics you can retrieve include traffic, message counts, API call latency, response size, and cache hits and counts. Dimensions let you view metrics in meaningful groups. You can optionally pass dimensions as path parameters to the `stats` API. If dimensions are not specified, the metrics are computed on the entire set of data for the given time range. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{org}/environments/{env}/stats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy` or `target_host`. The value of dimensions should be a comma-separated list, as shown below: `organizations/{org}/environments/{env}/stats/apiproxy,request_verb` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16393,27 +16587,41 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation.t`) - + * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. + * `:aggTable` (*type:* `String.t`) - Table name used to query custom aggregate tables. If this parameter is skipped, then Apigee will try to retrieve the data from fact tables which will be expensive. + * `:filter` (*type:* `String.t`) - Filter that enables you to drill down on specific dimension values. + * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. + * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. + * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. + * `:select` (*type:* `String.t`) - Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` + * `:sonar` (*type:* `boolean()`) - Routes the query to API Monitoring for the last hour. + * `:sort` (*type:* `String.t`) - Flag that specifies whether the sort order should be ascending or descending. Valid values include: `DESC` and `ASC`. + * `:sortby` (*type:* `String.t`) - Comma-separated list of columns to sort the final result. + * `:timeRange` (*type:* `String.t`) - Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59` + * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or` month`. + * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. + * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends that you set this value to `true` if you are using `sortby` with `sort=DESC`. + * `:tzo` (*type:* `String.t`) - Timezone offset value. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_canaryevaluations_create( + @spec apigee_organizations_environments_stats_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_canaryevaluations_create( + def apigee_organizations_environments_stats_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -16429,30 +16637,44 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :body => :body + :accuracy => :query, + :aggTable => :query, + :filter => :query, + :limit => :query, + :offset => :query, + :realtime => :query, + :select => :query, + :sonar => :query, + :sort => :query, + :sortby => :query, + :timeRange => :query, + :timeUnit => :query, + :topk => :query, + :tsAscending => :query, + :tzo => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/canaryevaluations", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}]) end @doc """ - Gets a CanaryEvaluation for an organization. + Creates a TargetServer in the specified environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the CanaryEvaluation. Use the following structure in your request: `organizations/{org}/instances/*/canaryevaluations/{evaluation}` + * `parent` (*type:* `String.t`) - Required. The parent environment name under which the TargetServer will be created. Must be of the form `organizations/{org}/environments/{env}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16465,26 +16687,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:name` (*type:* `String.t`) - Optional. The ID to give the TargetServer. This will overwrite the value in TargetServer. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_canaryevaluations_get( + @spec apigee_organizations_environments_targetservers_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_canaryevaluations_get( + def apigee_organizations_environments_targetservers_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -16499,14 +16723,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :name => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/targetservers", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -16514,17 +16740,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] ) end @doc """ - Activates the NAT address. The Apigee instance can now use this for Internet egress traffic. **Note:** Not supported for Apigee hybrid. + Deletes a TargetServer from an environment. Returns the deleted TargetServer resource. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the nat address. Use the following structure in your request: `organizations/{org}/instances/{instances}/natAddresses/{nataddress}`` + * `name` (*type:* `String.t`) - Required. The name of the TargetServer to delete. Must be of the form `organizations/{org}/environments/{env}/targetservers/{target_server_id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16537,25 +16763,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ActivateNatAddressRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_nat_addresses_activate( + @spec apigee_organizations_environments_targetservers_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_nat_addresses_activate( + def apigee_organizations_environments_targetservers_delete( connection, name, optional_params \\ [], @@ -16572,14 +16797,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+name}:activate", %{ + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -16587,16 +16811,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] + ) end @doc """ - Creates a NAT address. The address is created in the RESERVED state and a static external IP address will be provisioned. At this time, the instance will not use this IP address for Internet egress traffic. The address can be activated for use once any required firewall IP whitelisting has been completed. **Note:** Not supported for Apigee hybrid. + Gets a TargetServer resource. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}` + * `name` (*type:* `String.t`) - Required. The name of the TargetServer to get. Must be of the form `organizations/{org}/environments/{env}/targetservers/{target_server_id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16609,27 +16835,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_nat_addresses_create( + @spec apigee_organizations_environments_targetservers_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_nat_addresses_create( + def apigee_organizations_environments_targetservers_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -16644,31 +16869,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/natAddresses", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] + ) end @doc """ - Deletes the NAT address. Connections that are actively using the address are drained before it is removed. **Note:** Not supported for Apigee hybrid. + Updates an existing TargetServer. Note that this operation has PUT semantics; it will replace the entirety of the existing TargetServer with the resource in the request body. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the nat address. Use the following structure in your request: `organizations/{org}/instances/{instances}/natAddresses/{nataddress}`` + * `name` (*type:* `String.t`) - Required. The name of the TargetServer to replace. Must be of the form `organizations/{org}/environments/{env}/targetservers/{target_server_id}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16681,24 +16907,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_nat_addresses_delete( + @spec apigee_organizations_environments_targetservers_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_nat_addresses_delete( + def apigee_organizations_environments_targetservers_update( connection, name, optional_params \\ [], @@ -16715,12 +16942,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) + |> Request.method(:put) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -16729,16 +16957,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer{}] + ) end @doc """ - Gets the details of a NAT address. **Note:** Not supported for Apigee hybrid. + Creates a trace configuration override. The response contains a system-generated UUID, that can be used to view, update, or delete the configuration override. Use the List API to view the existing trace configuration overrides. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the nat address. Use the following structure in your request: `organizations/{org}/instances/{instances}/natAddresses/{nataddress}` + * `parent` (*type:* `String.t`) - Required. Parent resource of the trace configuration override. Use the following structure in your request. "organizations/*/environments/*/traceConfig". * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16751,26 +16981,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_nat_addresses_get( + @spec apigee_organizations_environments_trace_config_overrides_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_nat_addresses_get( + def apigee_organizations_environments_trace_config_overrides_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -16785,14 +17016,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/overrides", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -16800,17 +17032,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}] ) end @doc """ - Lists the NAT addresses for an Apigee instance. **Note:** Not supported for Apigee hybrid. + Deletes a distributed trace configuration override. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}` + * `name` (*type:* `String.t`) - Required. Name of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig/overrides/*". * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16823,28 +17055,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Maximum number of natAddresses to return. Defaults to 25. - * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListNatAddresses call, that you can use to retrieve the next page of content. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListNatAddressesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_instances_nat_addresses_list( + @spec apigee_organizations_environments_trace_config_overrides_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListNatAddressesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_instances_nat_addresses_list( + def apigee_organizations_environments_trace_config_overrides_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -16859,34 +17089,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/natAddresses", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListNatAddressesResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Creates a key value map in an organization. + Gets a trace configuration override. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the organization in which to create the key value map file. Use the following structure in your request: `organizations/{org}` + * `name` (*type:* `String.t`) - Required. Name of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig/overrides/*". * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16899,27 +17125,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_keyvaluemaps_create( + @spec apigee_organizations_environments_trace_config_overrides_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_keyvaluemaps_create( + def apigee_organizations_environments_trace_config_overrides_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -16934,15 +17159,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/keyvaluemaps", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -16950,17 +17174,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}] ) end @doc """ - Deletes a key value map from an organization. + Lists all of the distributed trace configuration overrides in an environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the key value map. Use the following structure in your request: `organizations/{org}/keyvaluemaps/{keyvaluemap}` + * `parent` (*type:* `String.t`) - Required. Parent resource of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig". * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -16973,26 +17197,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - Maximum number of trace configuration overrides to return. If not specified, the maximum number returned is 25. The maximum number cannot exceed 100. + * `:pageToken` (*type:* `String.t`) - A page token, returned from a previous `ListTraceConfigOverrides` call. Token value that can be used to retrieve the subsequent page. When paginating, all other parameters provided to `ListTraceConfigOverrides` must match those specified in the call to obtain the page token. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListTraceConfigOverridesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_keyvaluemaps_delete( + @spec apigee_organizations_environments_trace_config_overrides_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListTraceConfigOverridesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_keyvaluemaps_delete( + def apigee_organizations_environments_trace_config_overrides_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -17007,14 +17233,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/overrides", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -17022,17 +17250,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListTraceConfigOverridesResponse{}] ) end @doc """ - Creates key value entries in a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + Updates a distributed trace configuration override. Note that the repeated fields have replace semantics when included in the field mask and that they will be overwritten by the value of the fields in the request body. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to create the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `name` (*type:* `String.t`) - Required. Name of the trace configuration override. Use the following structure in your request: "organizations/*/environments/*/traceConfig/overrides/*". * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17045,27 +17274,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t`) - + * `:updateMask` (*type:* `String.t`) - List of fields to be updated. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_keyvaluemaps_entries_create( + @spec apigee_organizations_environments_trace_config_overrides_patch( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_keyvaluemaps_entries_create( + def apigee_organizations_environments_trace_config_overrides_patch( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -17081,14 +17311,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :updateMask => :query, :body => :body } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/entries", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:patch) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -17096,17 +17327,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TraceConfigOverride{}] ) end @doc """ - Deletes a key value entry from a key value map scoped to an organization, environment, or API proxy. **Notes:** * After you delete the key value entry, the policy consuming the entry will continue to function with its cached values for a few minutes. This is expected behavior. * Supported for Apigee hybrid 1.8.x and higher. + Submit a query at host level to be processed in the background. If the submission of the query succeeds, the API returns a 201 status and an ID that refer to the query. In addition to the HTTP status 201, the `state` of "enqueued" means that the request succeeded. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to delete the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17119,26 +17350,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Query.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_keyvaluemaps_entries_delete( + @spec apigee_organizations_host_queries_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_keyvaluemaps_entries_delete( + def apigee_organizations_host_queries_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -17153,14 +17385,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/hostQueries", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -17168,17 +17401,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] ) end @doc """ - Get the key value entry value for a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + Get status of a query submitted at host level. If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to fetch the key value map entry/value. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. + * `name` (*type:* `String.t`) - Required. Name of the asynchronous query to get. Must be of the form `organizations/{org}/queries/{queryId}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17195,25 +17428,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_keyvaluemaps_entries_get( + @spec apigee_organizations_host_queries_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_keyvaluemaps_entries_get( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_host_queries_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17240,17 +17468,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQuery{}] ) end @doc """ - Lists key value entries for key values maps scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to list key value maps. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result to get. Must be of the form `organizations/{org}/queries/{queryId}/result`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17263,28 +17491,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of key value entries to return. If unspecified, at most 100 entries will be returned. - * `:pageToken` (*type:* `String.t`) - Optional. Page token. If provides, must be a valid key value entry returned from a previous call that can be used to retrieve the next page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_keyvaluemaps_entries_list( + @spec apigee_organizations_host_queries_get_result( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_keyvaluemaps_entries_list( + def apigee_organizations_host_queries_get_result( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -17299,35 +17525,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/entries", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) end @doc """ - 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. + ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - The name of the operation resource. + * `name` (*type:* `String.t`) - Required. Name of the asynchronous query result view to get. Must be of the form `organizations/{org}/queries/{queryId}/resultView`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17344,15 +17565,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQueryResultView{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_operations_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + @spec apigee_organizations_host_queries_get_result_view( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQueryResultView.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_operations_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_host_queries_get_result_view( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17378,16 +17609,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AsyncQueryResultView{}] + ) end @doc """ - Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `"/v1/{name=users/*}/operations"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id. + Return a list of Asynchronous Queries at host level. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - The name of the operation's parent resource. + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17400,22 +17633,36 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:filter` (*type:* `String.t`) - The standard list filter. - * `:pageSize` (*type:* `integer()`) - The standard list page size. - * `:pageToken` (*type:* `String.t`) - The standard list page token. + * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` + * `:envgroupHostname` (*type:* `String.t`) - Required. Filter response list by hostname. + * `:from` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. + * `:inclQueriesWithoutReport` (*type:* `String.t`) - Flag to include asynchronous queries that don't have a report denifition. + * `:status` (*type:* `String.t`) - Filter response list by asynchronous query status. + * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. + * `:to` (*type:* `String.t`) - Filter response list by returning asynchronous queries that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningListOperationsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_operations_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningListOperationsResponse.t()} + @spec apigee_organizations_host_queries_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_operations_list(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_host_queries_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17428,16 +17675,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :filter => :query, - :pageSize => :query, - :pageToken => :query + :dataset => :query, + :envgroupHostname => :query, + :from => :query, + :inclQueriesWithoutReport => :query, + :status => :query, + :submittedBy => :query, + :to => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}/operations", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/hostQueries", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -17445,17 +17696,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningListOperationsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAsyncQueriesResponse{}] ) end @doc """ - Similar to GetHostStats except that the response is less verbose. + Submit a query at host level to be processed in the background. If the submission of the query succeeds, the API returns a 201 status and an ID that refer to the query. In addition to the HTTP status 201, the `state` of "enqueued" means that the request succeeded. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{organization_id}/optimizedHostStats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy`, `target_host`. The value of dimensions should be a comma-separated list as shown below: `organizations/{org}/optimizedHostStats/apiproxy,request_verb` + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17468,40 +17719,2342 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. - * `:envgroupHostname` (*type:* `String.t`) - Required. Hostname for which the interactive query will be executed. - * `:filter` (*type:* `String.t`) - Filter that enables you to drill-down on specific dimension values. - * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. - * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. - * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. - * `:select` (*type:* `String.t`) - Required. Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` - * `:sort` (*type:* `String.t`) - Flag that specifies whether the sort order should be ascending or descending. Valid values include `DESC` and `ASC`. - * `:sortby` (*type:* `String.t`) - Comma-separated list of columns used to sort the final result. - * `:timeRange` (*type:* `String.t`) - Required. Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59`. - * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or `month`. - * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. - * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends that you set this value to `true` if you are using `sortby` with `sort=DESC`. - * `:tzo` (*type:* `String.t`) - Timezone offset value. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportQuery.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_optimized_host_stats_get( + @spec apigee_organizations_host_security_reports_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_optimized_host_stats_get( + def apigee_organizations_host_security_reports_create( connection, - name, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/hostSecurityReports", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + ) + end + + @doc """ + Get status of a query submitted at host level. If the query is still in progress, the `state` is set to "running" After the query has completed successfully, `state` is set to "completed" + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the security report to get. Must be of the form `organizations/{org}/securityReports/{reportId}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_host_security_reports_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_host_security_reports_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReport{}] + ) + end + + @doc """ + After the query is completed, use this API to retrieve the results. If the request succeeds, and there is a non-zero result set, the result is downloaded to the client as a zipped JSON file. The name of the downloaded file will be: OfflineQueryResult-.zip Example: `OfflineQueryResult-9cfc0d85-0f30-46d6-ae6f-318d0cb961bd.zip` + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the security report result to get. Must be of the form `organizations/{org}/securityReports/{reportId}/result`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_host_security_reports_get_result( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_host_security_reports_get_result( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + end + + @doc """ + After the query is completed, use this API to view the query result when result size is small. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the security report result view to get. Must be of the form `organizations/{org}/securityReports/{reportId}/resultView`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_host_security_reports_get_result_view( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_host_security_reports_get_result_view( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityReportResultView{}] + ) + end + + @doc """ + Return a list of Security Reports at host level. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. The parent resource name. Must be of the form `organizations/{org}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:dataset` (*type:* `String.t`) - Filter response list by dataset. Example: `api`, `mint` + * `:envgroupHostname` (*type:* `String.t`) - Required. Filter response list by hostname. + * `:from` (*type:* `String.t`) - Filter response list by returning security reports that created after this date time. Time must be in ISO date-time format like '2011-12-03T10:15:30Z'. + * `:pageSize` (*type:* `integer()`) - The maximum number of security report to return in the list response. + * `:pageToken` (*type:* `String.t`) - Token returned from the previous list response to fetch the next page. + * `:status` (*type:* `String.t`) - Filter response list by security report status. + * `:submittedBy` (*type:* `String.t`) - Filter response list by user who submitted queries. + * `:to` (*type:* `String.t`) - Filter response list by returning security reports that created before this date time. Time must be in ISO date-time format like '2011-12-03T10:16:30Z'. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_host_security_reports_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_host_security_reports_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :dataset => :query, + :envgroupHostname => :query, + :from => :query, + :pageSize => :query, + :pageToken => :query, + :status => :query, + :submittedBy => :query, + :to => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+parent}/hostSecurityReports", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityReportsResponse{}] + ) + end + + @doc """ + Retrieve metrics grouped by dimensions in host level. The types of metrics you can retrieve include traffic, message counts, API call latency, response size, and cache hits and counts. Dimensions let you view metrics in meaningful groups. You can optionally pass dimensions as path parameters to the `stats` API. If dimensions are not specified, the metrics are computed on the entire set of data for the given time range. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{org}/hostStats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy`, `target_host`. The value of dimensions should be a comma-separated list as shown below `organizations/{org}/hostStats/apiproxy,request_verb` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. + * `:envgroupHostname` (*type:* `String.t`) - Required. Hostname for which the interactive query will be executed. + * `:filter` (*type:* `String.t`) - Flag that enables drill-down on specific dimension values. + * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. + * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. + * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. + * `:select` (*type:* `String.t`) - Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` + * `:sort` (*type:* `String.t`) - Flag that specifies if the sort order should be ascending or descending. Valid values are `DESC` and `ASC`. + * `:sortby` (*type:* `String.t`) - Comma-separated list of columns to sort the final result. + * `:timeRange` (*type:* `String.t`) - Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59` + * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or `month`. + * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. + * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends that you set this value to `true` if you are using `sortby` with `sort=DESC`. + * `:tzo` (*type:* `String.t`) - Timezone offset value. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_host_stats_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_host_stats_get(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :accuracy => :query, + :envgroupHostname => :query, + :filter => :query, + :limit => :query, + :offset => :query, + :realtime => :query, + :select => :query, + :sort => :query, + :sortby => :query, + :timeRange => :query, + :timeUnit => :query, + :topk => :query, + :tsAscending => :query, + :tzo => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Stats{}]) + end + + @doc """ + Creates an Apigee runtime instance. The instance is accessible from the authorized network configured on the organization. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_create(connection, parent, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/instances", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Deletes an Apigee runtime instance. The instance stops serving requests and the runtime data is deleted. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_delete(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Gets the details for an Apigee runtime instance. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_get(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance{}]) + end + + @doc """ + Lists all Apigee runtime instances for the organization. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - Maximum number of instances to return. Defaults to 25. + * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListInstances call, that you can use to retrieve the next page of content. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstancesResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstancesResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_list(connection, parent, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+parent}/instances", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstancesResponse{}] + ) + end + + @doc """ + Updates an Apigee runtime instance. You can update the fields described in NodeConfig. No other fields will be updated. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:updateMask` (*type:* `String.t`) - List of fields to be updated. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Instance.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_patch(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_patch(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :updateMask => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:patch) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Reports the latest status for a runtime instance. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `instance` (*type:* `String.t`) - The name of the instance reporting this status. For SaaS the request will be rejected if no instance exists under this name. Format is organizations/{org}/instances/{instance} + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusRequest.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_report_status( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_report_status( + connection, + instance, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+instance}:reportStatus", %{ + "instance" => URI.encode(instance, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ReportInstanceStatusResponse{}] + ) + end + + @doc """ + Creates a new attachment of an environment to an instance. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_attachments_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_attachments_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/attachments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Deletes an attachment. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the attachment. Use the following structure in your request: `organizations/{org}/instances/{instance}/attachments/{attachment}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_attachments_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_attachments_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Gets an attachment. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the attachment. Use the following structure in your request: `organizations/{org}/instances/{instance}/attachments/{attachment}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_attachments_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_attachments_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceAttachment{}] + ) + end + + @doc """ + Lists all attachments to an instance. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}/instances/{instance}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - Maximum number of instance attachments to return. Defaults to 25. + * `:pageToken` (*type:* `String.t`) - Page token, returned by a previous ListInstanceAttachments call, that you can use to retrieve the next page of content. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstanceAttachmentsResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_attachments_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstanceAttachmentsResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_attachments_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+parent}/attachments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListInstanceAttachmentsResponse{}] + ) + end + + @doc """ + Creates a new canary evaluation for an organization. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the organization. Use the following structure in your request: `organizations/{org}/instances/{instance}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_canaryevaluations_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_canaryevaluations_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/canaryevaluations", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Gets a CanaryEvaluation for an organization. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the CanaryEvaluation. Use the following structure in your request: `organizations/{org}/instances/*/canaryevaluations/{evaluation}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_canaryevaluations_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_canaryevaluations_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CanaryEvaluation{}] + ) + end + + @doc """ + Activates the NAT address. The Apigee instance can now use this for Internet egress traffic. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the nat address. Use the following structure in your request: `organizations/{org}/instances/{instances}/natAddresses/{nataddress}`` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ActivateNatAddressRequest.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_nat_addresses_activate( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_nat_addresses_activate( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+name}:activate", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Creates a NAT address. The address is created in the RESERVED state and a static external IP address will be provisioned. At this time, the instance will not use this IP address for Internet egress traffic. The address can be activated for use once any required firewall IP whitelisting has been completed. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_nat_addresses_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_nat_addresses_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/natAddresses", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Deletes the NAT address. Connections that are actively using the address are drained before it is removed. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the nat address. Use the following structure in your request: `organizations/{org}/instances/{instances}/natAddresses/{nataddress}`` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_nat_addresses_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_nat_addresses_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Gets the details of a NAT address. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the nat address. Use the following structure in your request: `organizations/{org}/instances/{instances}/natAddresses/{nataddress}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_nat_addresses_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_nat_addresses_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NatAddress{}] + ) + end + + @doc """ + Lists the NAT addresses for an Apigee instance. **Note:** Not supported for Apigee hybrid. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the instance. Use the following structure in your request: `organizations/{org}/instances/{instance}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - Maximum number of natAddresses to return. Defaults to 25. + * `:pageToken` (*type:* `String.t`) - Page token, returned from a previous ListNatAddresses call, that you can use to retrieve the next page of content. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListNatAddressesResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_instances_nat_addresses_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListNatAddressesResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_instances_nat_addresses_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+parent}/natAddresses", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListNatAddressesResponse{}] + ) + end + + @doc """ + Creates a key value map in an organization. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of the organization in which to create the key value map file. Use the following structure in your request: `organizations/{org}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_keyvaluemaps_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_keyvaluemaps_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/keyvaluemaps", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] + ) + end + + @doc """ + Deletes a key value map from an organization. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of the key value map. Use the following structure in your request: `organizations/{org}/keyvaluemaps/{keyvaluemap}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_keyvaluemaps_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_keyvaluemaps_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap{}] + ) + end + + @doc """ + Creates key value entries in a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to create the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_keyvaluemaps_entries_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_keyvaluemaps_entries_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/entries", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + ) + end + + @doc """ + Deletes a key value entry from a key value map scoped to an organization, environment, or API proxy. **Notes:** * After you delete the key value entry, the policy consuming the entry will continue to function with its cached values for a few minutes. This is expected behavior. * Supported for Apigee hybrid 1.8.x and higher. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to delete the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_keyvaluemaps_entries_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_keyvaluemaps_entries_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + ) + end + + @doc """ + Get the key value entry value for a key value map scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to fetch the key value map entry/value. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}/entries/{entry}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}/entries/{entry}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_keyvaluemaps_entries_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_keyvaluemaps_entries_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + ) + end + + @doc """ + Lists key value entries for key values maps scoped to an organization, environment, or API proxy. **Note**: Supported for Apigee hybrid 1.8.x and higher. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to list key value maps. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - Optional. Maximum number of key value entries to return. If unspecified, at most 100 entries will be returned. + * `:pageToken` (*type:* `String.t`) - Optional. Page token. If provides, must be a valid key value entry returned from a previous call that can be used to retrieve the next page. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_keyvaluemaps_entries_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_keyvaluemaps_entries_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+parent}/entries", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListKeyValueEntriesResponse{}] + ) + end + + @doc """ + Update key value entry scoped to an organization, environment, or API proxy for an existing key. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Scope as indicated by the URI in which to create the key value map entry. Use **one** of the following structures in your request: * `organizations/{organization}/apis/{api}/keyvaluemaps/{keyvaluemap}`. * `organizations/{organization}/environments/{environment}/keyvaluemaps/{keyvaluemap}` * `organizations/{organization}/keyvaluemaps/{keyvaluemap}`. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_keyvaluemaps_entries_update( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_keyvaluemaps_entries_update( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueEntry{}] + ) + end + + @doc """ + 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. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - The name of the operation resource. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_operations_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_operations_get(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation{}]) + end + + @doc """ + Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - The name of the operation's parent resource. + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:filter` (*type:* `String.t`) - The standard list filter. + * `:pageSize` (*type:* `integer()`) - The standard list page size. + * `:pageToken` (*type:* `String.t`) - The standard list page token. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleLongrunningListOperationsResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_operations_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleLongrunningListOperationsResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_operations_list(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :filter => :query, + :pageSize => :query, + :pageToken => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}/operations", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleLongrunningListOperationsResponse{}] + ) + end + + @doc """ + Similar to GetHostStats except that the response is less verbose. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Resource name for which the interactive query will be executed. Use the following format in your request: `organizations/{organization_id}/optimizedHostStats/{dimensions}` Dimensions let you view metrics in meaningful groupings, such as `apiproxy`, `target_host`. The value of dimensions should be a comma-separated list as shown below: `organizations/{org}/optimizedHostStats/apiproxy,request_verb` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:accuracy` (*type:* `String.t`) - No longer used by Apigee. Supported for backwards compatibility. + * `:envgroupHostname` (*type:* `String.t`) - Required. Hostname for which the interactive query will be executed. + * `:filter` (*type:* `String.t`) - Filter that enables you to drill-down on specific dimension values. + * `:limit` (*type:* `String.t`) - Maximum number of result items to return. The default and maximum value that can be returned is 14400. + * `:offset` (*type:* `String.t`) - Offset value. Use `offset` with `limit` to enable pagination of results. For example, to display results 11-20, set limit to `10` and offset to `10`. + * `:realtime` (*type:* `boolean()`) - No longer used by Apigee. Supported for backwards compatibility. + * `:select` (*type:* `String.t`) - Required. Comma-separated list of metrics. For example: `sum(message_count),sum(error_count)` + * `:sort` (*type:* `String.t`) - Flag that specifies whether the sort order should be ascending or descending. Valid values include `DESC` and `ASC`. + * `:sortby` (*type:* `String.t`) - Comma-separated list of columns used to sort the final result. + * `:timeRange` (*type:* `String.t`) - Required. Time interval for the interactive query. Time range is specified in GMT as `start~end`. For example: `04/15/2017 00:00~05/15/2017 23:59`. + * `:timeUnit` (*type:* `String.t`) - Granularity of metrics returned. Valid values include: `second`, `minute`, `hour`, `day`, `week`, or `month`. + * `:topk` (*type:* `String.t`) - Top number of results to return. For example, to return the top 5 results, set `topk=5`. + * `:tsAscending` (*type:* `boolean()`) - Flag that specifies whether to list timestamps in ascending (`true`) or descending (`false`) order. Apigee recommends that you set this value to `true` if you are using `sortby` with `sort=DESC`. + * `:tzo` (*type:* `String.t`) - Timezone offset value. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_optimized_host_stats_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_optimized_host_stats_get( + connection, + name, optional_params \\ [], opts \\ [] ) do @@ -17545,17 +20098,551 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OptimizedStats{}] + ) + end + + @doc """ + Creates a Custom Report for an Organization. A Custom Report provides Apigee Customers to create custom dashboards in addition to the standard dashboards which are provided. The Custom Report in its simplest form contains specifications about metrics, dimensions and filters. It is important to note that the custom report by itself does not provide an executable entity. The Edge UI converts the custom report definition into an analytics query and displays the result in a chart. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. The parent organization name under which the Custom Report will be created. Must be of the form: `organizations/{organization_id}/reports` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_reports_create(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_reports_create(connection, parent, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/reports", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}] + ) + end + + @doc """ + Deletes an existing custom report definition + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Custom Report name of the form: `organizations/{organization_id}/reports/{report_name}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteCustomReportResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_reports_delete(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteCustomReportResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_reports_delete(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteCustomReportResponse{}] + ) + end + + @doc """ + Retrieve a custom report definition. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Custom Report name of the form: `organizations/{organization_id}/reports/{report_name}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_reports_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_reports_get(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}] + ) + end + + @doc """ + Return a list of Custom Reports + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. The parent organization name under which the API product will be listed `organizations/{organization_id}/reports` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:expand` (*type:* `boolean()`) - Set to 'true' to get expanded details about each custom report. + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListCustomReportsResponse{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_reports_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListCustomReportsResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_reports_list(connection, parent, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :expand => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+parent}/reports", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListCustomReportsResponse{}] + ) + end + + @doc """ + Update an existing custom report definition + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Custom Report name of the form: `organizations/{organization_id}/reports/{report_name}` + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_reports_update(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_reports_update(connection, name, optional_params \\ [], opts \\ []) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}] + ) + end + + @doc """ + CreateSecurityProfile create a new custom security profile. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of organization. Format: organizations/{org} + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:securityProfileId` (*type:* `String.t`) - Required. The ID to use for the SecurityProfile, which will become the final component of the action's resource name. This value should be 1-63 characters and validated by "(^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$)". + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_security_profiles_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_security_profiles_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :securityProfileId => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+parent}/securityProfiles", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}] + ) + end + + @doc """ + DeleteSecurityProfile delete a profile with all its revisions. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Name of profile. Format: organizations/{org}/securityProfiles/{profile} + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_security_profiles_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_security_profiles_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + end + + @doc """ + GetSecurityProfile gets the specified security profile. Returns NOT_FOUND if security profile is not present for the specified organization. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Required. Security profile in the following format: `organizations/{org}/securityProfiles/{profile}'. Profile may optionally contain revision ID. If revision ID is not provided, the response will contain latest revision by default. Example: organizations/testOrg/securityProfiles/testProfile@5 + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_security_profiles_get( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_security_profiles_get( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query + } + + request = + Request.new() + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}] ) end @doc """ - Creates a Custom Report for an Organization. A Custom Report provides Apigee Customers to create custom dashboards in addition to the standard dashboards which are provided. The Custom Report in its simplest form contains specifications about metrics, dimensions and filters. It is important to note that the custom report by itself does not provide an executable entity. The Edge UI converts the custom report definition into an analytics query and displays the result in a chart. + ListSecurityProfiles lists all the security profiles associated with the org including attached and unattached profiles. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent organization name under which the Custom Report will be created. Must be of the form: `organizations/{organization_id}/reports` + * `parent` (*type:* `String.t`) - Required. For a specific organization, list of all the security profiles. Format: `organizations/{org}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17568,20 +20655,31 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t`) - + * `:pageSize` (*type:* `integer()`) - The maximum number of profiles to return. The service may return fewer than this value. If unspecified, at most 50 profiles will be returned. + * `:pageToken` (*type:* `String.t`) - A page token, received from a previous `ListSecurityProfiles` call. Provide this to retrieve the subsequent page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfilesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_reports_create(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t()} + @spec apigee_organizations_security_profiles_list( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfilesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_reports_create(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_security_profiles_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17594,13 +20692,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :body => :body + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/reports", %{ + |> Request.method(:get) + |> Request.url("/v1/{+parent}/securityProfiles", %{ "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) @@ -17609,17 +20708,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfilesResponse{}] ) end @doc """ - Deletes an existing custom report definition + ListSecurityProfileRevisions lists all the revisions of the security profile. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Custom Report name of the form: `organizations/{organization_id}/reports/{report_name}` + * `name` (*type:* `String.t`) - Required. For a specific profile, list all the revisions. Format: `organizations/{org}/securityProfiles/{profile}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17632,19 +20732,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - The maximum number of profile revisions to return. The service may return fewer than this value. If unspecified, at most 50 revisions will be returned. + * `:pageToken` (*type:* `String.t`) - A page token, received from a previous `ListSecurityProfileRevisions` call. Provide this to retrieve the subsequent page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteCustomReportResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfileRevisionsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_reports_delete(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteCustomReportResponse.t()} + @spec apigee_organizations_security_profiles_list_revisions( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfileRevisionsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_reports_delete(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_security_profiles_list_revisions( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17656,12 +20769,94 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query } request = Request.new() - |> Request.method(:delete) + |> Request.method(:get) + |> Request.url("/v1/{+name}:listRevisions", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ + [ + struct: + %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfileRevisionsResponse{} + ] + ) + end + + @doc """ + UpdateSecurityProfile update the metadata of security profile. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `name` (*type:* `String.t`) - Immutable. Name of the security profile resource. Format: organizations/{org}/securityProfiles/{profile} + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:updateMask` (*type:* `String.t`) - Required. The list of fields to update. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_security_profiles_patch( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_security_profiles_patch( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :updateMask => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:patch) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -17671,17 +20866,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteCustomReportResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}] ) end @doc """ - Retrieve a custom report definition. + ComputeEnvironmentScores calculates scores for requested time range for the specified security profile and environment. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Custom Report name of the form: `organizations/{organization_id}/reports/{report_name}` + * `profile_environment` (*type:* `String.t`) - Required. Name of organization and environment and profile id for which score needs to be computed. Format: organizations/{org}/securityProfiles/{profile}/environments/{env} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17694,19 +20889,106 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_reports_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t()} + @spec apigee_organizations_security_profiles_environments_compute_environment_scores( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresResponse.t()} + | {:ok, Tesla.Env.t()} + | {:ok, list()} + | {:error, any()} + def apigee_organizations_security_profiles_environments_compute_environment_scores( + connection, + profile_environment, + optional_params \\ [], + opts \\ [] + ) do + optional_params_config = %{ + :"$.xgafv" => :query, + :access_token => :query, + :alt => :query, + :callback => :query, + :fields => :query, + :key => :query, + :oauth_token => :query, + :prettyPrint => :query, + :quotaUser => :query, + :uploadType => :query, + :upload_protocol => :query, + :body => :body + } + + request = + Request.new() + |> Request.method(:post) + |> Request.url("/v1/{+profileEnvironment}:computeEnvironmentScores", %{ + "profileEnvironment" => URI.encode(profile_environment, &URI.char_unreserved?/1) + }) + |> Request.add_optional_params(optional_params_config, optional_params) + |> Request.library_version(@library_version) + + connection + |> Connection.execute(request) + |> Response.decode( + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresResponse{}] + ) + end + + @doc """ + CreateSecurityProfileEnvironmentAssociation creates profile environment association i.e. attaches environment to security profile. + + ## Parameters + + * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server + * `parent` (*type:* `String.t`) - Required. Name of organization and security profile ID. Format: organizations/{org}/securityProfiles/{profile} + * `optional_params` (*type:* `keyword()`) - Optional parameters + * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. + * `:access_token` (*type:* `String.t`) - OAuth access token. + * `:alt` (*type:* `String.t`) - Data format for response. + * `:callback` (*type:* `String.t`) - JSONP + * `:fields` (*type:* `String.t`) - Selector specifying which fields to include in a partial response. + * `:key` (*type:* `String.t`) - 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. + * `:oauth_token` (*type:* `String.t`) - OAuth 2.0 token for the current user. + * `:prettyPrint` (*type:* `boolean()`) - Returns response with indentations and line breaks. + * `:quotaUser` (*type:* `String.t`) - 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. + * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). + * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation.t`) - + * `opts` (*type:* `keyword()`) - Call options + + ## Returns + + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation{}}` on success + * `{:error, info}` on failure + """ + @spec apigee_organizations_security_profiles_environments_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_reports_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_security_profiles_environments_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17718,14 +21000,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/environments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -17733,17 +21016,21 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}] + opts ++ + [ + struct: + %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation{} + ] ) end @doc """ - Return a list of Custom Reports + DeleteSecurityProfileEnvironmentAssociation removes profile environment association i.e. detaches environment from security profile. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The parent organization name under which the API product will be listed `organizations/{organization_id}/reports` + * `name` (*type:* `String.t`) - Required. The name of the environment attachment to delete. Format: organizations/{org}/securityProfiles/{profile}/environments/{env} * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17756,20 +21043,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:expand` (*type:* `boolean()`) - Set to 'true' to get expanded details about each custom report. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListCustomReportsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_reports_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListCustomReportsResponse.t()} + @spec apigee_organizations_security_profiles_environments_delete( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_reports_list(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_security_profiles_environments_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17781,33 +21077,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :expand => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/reports", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) - |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListCustomReportsResponse{}] - ) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) end @doc """ - Update an existing custom report definition + Uploads a ZIP-formatted shared flow configuration bundle to an organization. If the shared flow already exists, this creates a new revision of it. If the shared flow does not exist, this creates it. Once imported, the shared flow revision must be deployed before it can be accessed at runtime. The size limit of a shared flow bundle is 15 MB. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Custom Report name of the form: `organizations/{organization_id}/reports/{report_name}` + * `parent` (*type:* `String.t`) - Required. The name of the parent organization under which to create the shared flow. Must be of the form: `organizations/{organization_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17820,20 +21113,32 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t`) - + * `:action` (*type:* `String.t`) - Required. Must be set to either `import` or `validate`. + * `:name` (*type:* `String.t`) - Required. The name to give the shared flow + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_reports_update(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport.t()} + @spec apigee_organizations_sharedflows_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_reports_update(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_sharedflows_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17846,14 +21151,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, + :action => :query, + :name => :query, :body => :body } request = Request.new() - |> Request.method(:put) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/sharedflows", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -17861,17 +21168,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1CustomReport{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}] ) end @doc """ - GetSecurityProfile gets the specified security profile. Returns NOT_FOUND if security profile is not present for the specified organization. + Deletes a shared flow and all it's revisions. The shared flow must be undeployed before you can delete it. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Security profile in the following format: `organizations/{org}/securityProfiles/{profile}'. Profile may optionally contain revision ID. If revision ID is not provided, the response will contain latest revision by default. Example: organizations/testOrg/securityProfiles/testProfile@5 + * `name` (*type:* `String.t`) - Required. shared flow name of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17888,25 +21195,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_security_profiles_get( + @spec apigee_organizations_sharedflows_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_security_profiles_get( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_sharedflows_delete(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17923,7 +21225,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) + |> Request.method(:delete) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -17933,17 +21235,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}] ) end @doc """ - ListSecurityProfiles lists all the security profiles associated with the org including attached and unattached profiles. + Gets a shared flow by name, including a list of its revisions. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. For a specific organization, list of all the security profiles. Format: `organizations/{org}` + * `name` (*type:* `String.t`) - Required. The name of the shared flow to get. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -17956,31 +21258,19 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - The maximum number of profiles to return. The service may return fewer than this value. If unspecified, at most 50 profiles will be returned. - * `:pageToken` (*type:* `String.t`) - A page token, received from a previous `ListSecurityProfiles` call. Provide this to retrieve the subsequent page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfilesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_security_profiles_list( - Tesla.Env.client(), - String.t(), - keyword(), - keyword() - ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfilesResponse.t()} + @spec apigee_organizations_sharedflows_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_security_profiles_list( - connection, - parent, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_sharedflows_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -17992,16 +21282,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :upload_protocol => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/securityProfiles", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18009,18 +21297,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfilesResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}] ) end @doc """ - ListSecurityProfileRevisions lists all the revisions of the security profile. + Lists all shared flows in the organization. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. For a specific profile, list all the revisions. Format: `organizations/{org}/securityProfiles/{profile}` + * `parent` (*type:* `String.t`) - Required. The name of the parent organization under which to get shared flows. Must be of the form: `organizations/{organization_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18033,32 +21320,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:pageSize` (*type:* `integer()`) - The maximum number of profile revisions to return. The service may return fewer than this value. If unspecified, at most 50 revisions will be returned. - * `:pageToken` (*type:* `String.t`) - A page token, received from a previous `ListSecurityProfileRevisions` call. Provide this to retrieve the subsequent page. + * `:includeMetaData` (*type:* `boolean()`) - Indicates whether to include shared flow metadata in the response. + * `:includeRevisions` (*type:* `boolean()`) - Indicates whether to include a list of revisions in the response. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfileRevisionsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSharedFlowsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_security_profiles_list_revisions( + @spec apigee_organizations_sharedflows_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, - GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfileRevisionsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSharedFlowsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_security_profiles_list_revisions( - connection, - name, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_sharedflows_list(connection, parent, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -18071,15 +21352,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :pageSize => :query, - :pageToken => :query + :includeMetaData => :query, + :includeRevisions => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}:listRevisions", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/sharedflows", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18087,21 +21368,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [ - struct: - %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityProfileRevisionsResponse{} - ] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSharedFlowsResponse{}] ) end @doc """ - ComputeEnvironmentScores calculates scores for requested time range for the specified security profile and environment. + Lists all deployments of a shared flow. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `profile_environment` (*type:* `String.t`) - Required. Name of organization and environment and profile id for which score needs to be computed. Format: organizations/{org}/securityProfiles/{profile}/environments/{env} + * `parent` (*type:* `String.t`) - Required. Name of the shared flow for which to return deployment information in the following format: `organizations/{org}/sharedflows/{sharedflow}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18114,27 +21391,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_security_profiles_environments_compute_environment_scores( + @spec apigee_organizations_sharedflows_deployments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_security_profiles_environments_compute_environment_scores( + def apigee_organizations_sharedflows_deployments_list( connection, - profile_environment, + parent, optional_params \\ [], opts \\ [] ) do @@ -18149,15 +21425,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+profileEnvironment}:computeEnvironmentScores", %{ - "profileEnvironment" => URI.encode(profile_environment, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/deployments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18165,18 +21440,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ComputeEnvironmentScoresResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] ) end @doc """ - CreateSecurityProfileEnvironmentAssociation creates profile environment association i.e. attaches environment to security profile. + Deletes a shared flow and all associated policies, resources, and revisions. You must undeploy the shared flow before deleting it. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of organization and security profile ID. Format: organizations/{org}/securityProfiles/{profile} + * `name` (*type:* `String.t`) - Required. The name of the shared flow revision to delete. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18189,28 +21463,26 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_security_profiles_environments_create( + @spec apigee_organizations_sharedflows_revisions_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, - GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_security_profiles_environments_create( + def apigee_organizations_sharedflows_revisions_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -18225,15 +21497,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/environments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18241,21 +21512,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ - [ - struct: - %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmentAssociation{} - ] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}] ) end @doc """ - DeleteSecurityProfileEnvironmentAssociation removes profile environment association i.e. detaches environment from security profile. + Gets a revision of a shared flow. To download the shared flow configuration bundle for the specified revision as a zip file, set the `format` query parameter to `bundle`. If you are using curl, specify `-o filename.zip` to save the output to a file; otherwise, it displays to `stdout`. Then, develop the shared flow configuration locally and upload the updated sharedFlow configuration revision, as described in [updateSharedFlowRevision](updateSharedFlowRevision). ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the environment attachment to delete. Format: organizations/{org}/securityProfiles/{profile}/environments/{env} + * `name` (*type:* `String.t`) - Required. The name of the shared flow revision to get. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18268,24 +21535,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:format` (*type:* `String.t`) - Specify `bundle` to export the contents of the shared flow bundle. Otherwise, the bundle metadata is returned. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_security_profiles_environments_delete( + @spec apigee_organizations_sharedflows_revisions_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_security_profiles_environments_delete( + def apigee_organizations_sharedflows_revisions_get( connection, name, optional_params \\ [], @@ -18302,12 +21570,13 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :format => :query } request = Request.new() - |> Request.method(:delete) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -18316,16 +21585,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleProtobufEmpty{}]) + |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) end @doc """ - Uploads a ZIP-formatted shared flow configuration bundle to an organization. If the shared flow already exists, this creates a new revision of it. If the shared flow does not exist, this creates it. Once imported, the shared flow revision must be deployed before it can be accessed at runtime. The size limit of a shared flow bundle is 15 MB. + Updates a shared flow revision. This operation is only allowed on revisions which have never been deployed. After deployment a revision becomes immutable, even if it becomes undeployed. The payload is a ZIP-formatted shared flow. Content type must be either multipart/form-data or application/octet-stream. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The name of the parent organization under which to create the shared flow. Must be of the form: `organizations/{organization_id}` + * `name` (*type:* `String.t`) - Required. The name of the shared flow revision to update. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18338,8 +21607,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:action` (*type:* `String.t`) - Required. Must be set to either `import` or `validate`. - * `:name` (*type:* `String.t`) - Required. The name to give the shared flow + * `:validate` (*type:* `boolean()`) - Ignored. All uploads are validated regardless of the value of this field. It is kept for compatibility with existing APIs. Must be `true` or `false` if provided. * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - * `opts` (*type:* `keyword()`) - Call options @@ -18348,7 +21616,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_create( + @spec apigee_organizations_sharedflows_revisions_update_shared_flow_revision( Tesla.Env.client(), String.t(), keyword(), @@ -18358,9 +21626,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_create( + def apigee_organizations_sharedflows_revisions_update_shared_flow_revision( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -18376,16 +21644,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :action => :query, - :name => :query, + :validate => :query, :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+parent}/sharedflows", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18398,12 +21665,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do end @doc """ - Deletes a shared flow and all it's revisions. The shared flow must be undeployed before you can delete it. + Lists all deployments of a shared flow revision. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. shared flow name of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}` + * `parent` (*type:* `String.t`) - Required. Name of the API proxy revision for which to return deployment information in the following format: `organizations/{org}/sharedflows/{sharedflow}/revisions/{rev}`. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18420,20 +21687,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_delete( + @spec apigee_organizations_sharedflows_revisions_deployments_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_delete(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_sharedflows_revisions_deployments_list( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -18450,9 +21722,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/deployments", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18460,17 +21732,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] ) end @doc """ - Gets a shared flow by name, including a list of its revisions. + Creates a new API category. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the shared flow to get. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}` + * `parent` (*type:* `String.t`) - Required. Name of the portal. Use the following structure in your request: `organizations/{org}/sites/{site}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18483,19 +21755,30 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow.t()} + @spec apigee_organizations_sites_apicategories_create( + Tesla.Env.client(), + String.t(), + keyword(), + keyword() + ) :: + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_get(connection, name, optional_params \\ [], opts \\ []) do + def apigee_organizations_sites_apicategories_create( + connection, + parent, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -18507,14 +21790,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:post) + |> Request.url("/v1/{+parent}/apicategories", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18522,17 +21806,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlow{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse{}] ) end @doc """ - Lists all shared flows in the organization. + Deletes an API category. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. The name of the parent organization under which to get shared flows. Must be of the form: `organizations/{organization_id}` + * `name` (*type:* `String.t`) - Required. Name of the category. Use the following structure in your request: `organizations/{org}/sites/{site}/apicategories/{apicategory}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18545,26 +21829,29 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:includeMetaData` (*type:* `boolean()`) - Indicates whether to include shared flow metadata in the response. - * `:includeRevisions` (*type:* `boolean()`) - Indicates whether to include a list of revisions in the response. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSharedFlowsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_list( + @spec apigee_organizations_sites_apicategories_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSharedFlowsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_list(connection, parent, optional_params \\ [], opts \\ []) do + def apigee_organizations_sites_apicategories_delete( + connection, + name, + optional_params \\ [], + opts \\ [] + ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -18576,16 +21863,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :includeMetaData => :query, - :includeRevisions => :query + :upload_protocol => :query } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/sharedflows", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18593,17 +21878,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSharedFlowsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse{}] ) end @doc """ - Lists all deployments of a shared flow. + Gets an API category. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the shared flow for which to return deployment information in the following format: `organizations/{org}/sharedflows/{sharedflow}` + * `name` (*type:* `String.t`) - Required. Name of the category. Use the following structure in your request: `organizations/{org}/sites/{site}/apicategories/{apicategory}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18620,22 +21905,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_deployments_list( + @spec apigee_organizations_sites_apicategories_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_deployments_list( + def apigee_organizations_sites_apicategories_get( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -18656,8 +21941,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+parent}/deployments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18665,17 +21950,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse{}] ) end @doc """ - Deletes a shared flow and all associated policies, resources, and revisions. You must undeploy the shared flow before deleting it. + Returns the API categories associated with a portal. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the shared flow revision to delete. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` + * `parent` (*type:* `String.t`) - Required. Name of the portal. Use the following structure in your request: `organizations/{org}/sites/{site}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18692,22 +21977,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiCategoriesResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_revisions_delete( + @spec apigee_organizations_sites_apicategories_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiCategoriesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_revisions_delete( + def apigee_organizations_sites_apicategories_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -18727,9 +22012,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+parent}/apicategories", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18737,17 +22022,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiCategoriesResponse{}] ) end @doc """ - Gets a revision of a shared flow. To download the shared flow configuration bundle for the specified revision as a zip file, set the `format` query parameter to `bundle`. If you are using curl, specify `-o filename.zip` to save the output to a file; otherwise, it displays to `stdout`. Then, develop the shared flow configuration locally and upload the updated sharedFlow configuration revision, as described in [updateSharedFlowRevision](updateSharedFlowRevision). + Updates an API category. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the shared flow revision to get. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` + * `name` (*type:* `String.t`) - Required. Name of the category. Use the following structure in your request: `organizations/{org}/sites/{site}/apicategories/{apicategory}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18760,25 +22045,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:format` (*type:* `String.t`) - Specify `bundle` to export the contents of the shared flow bundle. Otherwise, the bundle metadata is returned. + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_revisions_get( + @spec apigee_organizations_sites_apicategories_patch( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_revisions_get( + def apigee_organizations_sites_apicategories_patch( connection, name, optional_params \\ [], @@ -18796,12 +22081,12 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :format => :query + :body => :body } request = Request.new() - |> Request.method(:get) + |> Request.method(:patch) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -18810,16 +22095,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) - |> Response.decode(opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleApiHttpBody{}]) + |> Response.decode( + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse{}] + ) end @doc """ - Updates a shared flow revision. This operation is only allowed on revisions which have never been deployed. After deployment a revision becomes immutable, even if it becomes undeployed. The payload is a ZIP-formatted shared flow. Content type must be either multipart/form-data or application/octet-stream. + Creates a new catalog item. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. The name of the shared flow revision to update. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` + * `parent` (*type:* `String.t`) - Required. Name of the portal. Use the following structure in your request: `organizations/{org}/sites/{site}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18832,28 +22119,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:validate` (*type:* `boolean()`) - Ignored. All uploads are validated regardless of the value of this field. It is kept for compatibility with existing APIs. Must be `true` or `false` if provided. - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleApiHttpBody.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_revisions_update_shared_flow_revision( + @spec apigee_organizations_sites_apidocs_create( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_revisions_update_shared_flow_revision( + def apigee_organizations_sites_apidocs_create( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -18869,15 +22155,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, - :validate => :query, :body => :body } request = Request.new() |> Request.method(:post) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/apidocs", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18885,17 +22170,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SharedFlowRevision{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse{}] ) end @doc """ - Lists all deployments of a shared flow revision. + Deletes a catalog item. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the API proxy revision for which to return deployment information in the following format: `organizations/{org}/sharedflows/{sharedflow}/revisions/{rev}`. + * `name` (*type:* `String.t`) - Required. Name of the catalog item. Use the following structure in your request: `organizations/{org}/sites/{site}/apidocs/{apidoc}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18912,22 +22197,22 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sharedflows_revisions_deployments_list( + @spec apigee_organizations_sites_apidocs_delete( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sharedflows_revisions_deployments_list( + def apigee_organizations_sites_apidocs_delete( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -18947,9 +22232,9 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/deployments", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:delete) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -18957,17 +22242,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListDeploymentsResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse{}] ) end @doc """ - Creates a new category on the portal. + Gets a catalog item. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the portal. Use the following structure in your request: `organizations/{org}/sites/{site}` + * `name` (*type:* `String.t`) - Required. Name of the catalog item. Use the following structure in your request: `organizations/{org}/sites/{site}/apidocs/{apidoc}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -18980,30 +22265,24 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sites_apicategories_create( + @spec apigee_organizations_sites_apidocs_get( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sites_apicategories_create( - connection, - parent, - optional_params \\ [], - opts \\ [] - ) do + def apigee_organizations_sites_apidocs_get(connection, name, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, @@ -19015,15 +22294,14 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query, - :body => :body + :upload_protocol => :query } request = Request.new() - |> Request.method(:post) - |> Request.url("/v1/{+parent}/apicategories", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:get) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -19031,17 +22309,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse{}] ) end @doc """ - Deletes a category from the portal. + Gets the documentation for the specified catalog item. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the category. Use the following structure in your request: `organizations/{org}/sites/{site}/apicategories/{apicategory}` + * `name` (*type:* `String.t`) - Required. Resource name of the catalog item documentation. Use the following structure in your request: `organizations/{org}/sites/{site}/apidocs/{apidoc}/documentation` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -19058,20 +22336,20 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sites_apicategories_delete( + @spec apigee_organizations_sites_apidocs_get_documentation( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sites_apicategories_delete( + def apigee_organizations_sites_apidocs_get_documentation( connection, name, optional_params \\ [], @@ -19093,7 +22371,7 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do request = Request.new() - |> Request.method(:delete) + |> Request.method(:get) |> Request.url("/v1/{+name}", %{ "name" => URI.encode(name, &URI.char_unreserved?/1) }) @@ -19103,17 +22381,18 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse{}] ) end @doc """ - Gets a category on the portal. + Returns the catalog items associated with a portal. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the category. Use the following structure in your request: `organizations/{org}/sites/{site}/apicategories/{apicategory}` + * `parent` (*type:* `String.t`) - Required. Name of the portal. Use the following structure in your request: `organizations/{org}/sites/{site}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -19126,26 +22405,28 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:pageSize` (*type:* `integer()`) - Optional. The maximum number of items to return. The service may return fewer than this value. If unspecified, at most 25 books will be returned. The maximum value is 100; values above 100 will be coerced to 100. + * `:pageToken` (*type:* `String.t`) - Optional. A page token, received from a previous `ListApiDocs` call. Provide this to retrieve the subsequent page. * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiDocsResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sites_apicategories_get( + @spec apigee_organizations_sites_apidocs_list( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiDocsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sites_apicategories_get( + def apigee_organizations_sites_apidocs_list( connection, - name, + parent, optional_params \\ [], opts \\ [] ) do @@ -19160,14 +22441,16 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :pageSize => :query, + :pageToken => :query } request = Request.new() |> Request.method(:get) - |> Request.url("/v1/{+name}", %{ - "name" => URI.encode(name, &URI.char_unreserved?/1) + |> Request.url("/v1/{+parent}/apidocs", %{ + "parent" => URI.encode(parent, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -19175,17 +22458,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiDocsResponse{}] ) end @doc """ - Lists the categories on the portal. + Updates a catalog item. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `parent` (*type:* `String.t`) - Required. Name of the portal. Use the following structure in your request: `organizations/{org}/sites/{site}` + * `name` (*type:* `String.t`) - Required. Name of the catalog item. Use the following structure in your request: `organizations/{org}/sites/{site}/apidocs/{apidoc}` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -19198,26 +22481,27 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiCategoriesResponse{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sites_apicategories_list( + @spec apigee_organizations_sites_apidocs_update( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiCategoriesResponse.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sites_apicategories_list( + def apigee_organizations_sites_apidocs_update( connection, - parent, + name, optional_params \\ [], opts \\ [] ) do @@ -19232,14 +22516,15 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, - :upload_protocol => :query + :upload_protocol => :query, + :body => :body } request = Request.new() - |> Request.method(:get) - |> Request.url("/v1/{+parent}/apicategories", %{ - "parent" => URI.encode(parent, &URI.char_unreserved?/1) + |> Request.method(:put) + |> Request.url("/v1/{+name}", %{ + "name" => URI.encode(name, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) @@ -19247,17 +22532,17 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiCategoriesResponse{}] + opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse{}] ) end @doc """ - Updates a category on the portal. + Updates the documentation for the specified catalog item. Note that the documentation file contents will not be populated in the return message. ## Parameters * `connection` (*type:* `GoogleApi.Apigee.V1.Connection.t`) - Connection to server - * `name` (*type:* `String.t`) - Required. Name of the category. Use the following structure in your request: `organizations/{org}/sites/{site}/apicategories/{apicategory}` + * `name` (*type:* `String.t`) - Required. Resource name of the catalog item documentation. Use the following structure in your request: `organizations/{org}/sites/{site}/apidocs/{apidoc}/documentation` * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. @@ -19270,25 +22555,25 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do * `:quotaUser` (*type:* `String.t`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). - * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData.t`) - + * `:body` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns - * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory{}}` on success + * `{:ok, %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse{}}` on success * `{:error, info}` on failure """ - @spec apigee_organizations_sites_apicategories_patch( + @spec apigee_organizations_sites_apidocs_update_documentation( Tesla.Env.client(), String.t(), keyword(), keyword() ) :: - {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t()} + {:ok, GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} - def apigee_organizations_sites_apicategories_patch( + def apigee_organizations_sites_apidocs_update_documentation( connection, name, optional_params \\ [], @@ -19321,7 +22606,8 @@ defmodule GoogleApi.Apigee.V1.Api.Organizations do connection |> Connection.execute(request) |> Response.decode( - opts ++ [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory{}] + opts ++ + [struct: %GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse{}] ) end end diff --git a/clients/apigee/lib/google_api/apigee/v1/metadata.ex b/clients/apigee/lib/google_api/apigee/v1/metadata.ex index d4c1230b5c..541cccc9a0 100644 --- a/clients/apigee/lib/google_api/apigee/v1/metadata.ex +++ b/clients/apigee/lib/google_api/apigee/v1/metadata.ex @@ -20,7 +20,7 @@ defmodule GoogleApi.Apigee.V1 do API client metadata for GoogleApi.Apigee.V1. """ - @discovery_revision "20221110" + @discovery_revision "20240305" def discovery_revision(), do: @discovery_revision end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_addons_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_addons_config.ex index 9ec0e44bd5..1baa676ed8 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_addons_config.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_addons_config.ex @@ -22,6 +22,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig do ## Attributes * `advancedApiOpsConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AdvancedApiOpsConfig.t`, *default:* `nil`) - Configuration for the Advanced API Ops add-on. + * `analyticsConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AnalyticsConfig.t`, *default:* `nil`) - Configuration for the Analytics add-on. * `apiSecurityConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityConfig.t`, *default:* `nil`) - Configuration for the API Security add-on. * `connectorsPlatformConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ConnectorsPlatformConfig.t`, *default:* `nil`) - Configuration for the Connectors Platform add-on. * `integrationConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1IntegrationConfig.t`, *default:* `nil`) - Configuration for the Integration add-on. @@ -33,6 +34,8 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig do @type t :: %__MODULE__{ :advancedApiOpsConfig => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AdvancedApiOpsConfig.t() | nil, + :analyticsConfig => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AnalyticsConfig.t() | nil, :apiSecurityConfig => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityConfig.t() | nil, :connectorsPlatformConfig => @@ -47,6 +50,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig do as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AdvancedApiOpsConfig ) + field(:analyticsConfig, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AnalyticsConfig) field(:apiSecurityConfig, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiSecurityConfig) field(:connectorsPlatformConfig, diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_analytics_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_analytics_config.ex new file mode 100644 index 0000000000..9f1bb32677 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_analytics_config.ex @@ -0,0 +1,55 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AnalyticsConfig do + @moduledoc """ + Configuration for the Analytics add-on. + + ## Attributes + + * `enabled` (*type:* `boolean()`, *default:* `nil`) - Whether the Analytics add-on is enabled. + * `expireTimeMillis` (*type:* `String.t`, *default:* `nil`) - Output only. Time at which the Analytics add-on expires in milliseconds since epoch. If unspecified, the add-on will never expire. + * `state` (*type:* `String.t`, *default:* `nil`) - Output only. The state of the Analytics add-on. + * `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The latest update time. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :enabled => boolean() | nil, + :expireTimeMillis => String.t() | nil, + :state => String.t() | nil, + :updateTime => DateTime.t() | nil + } + + field(:enabled) + field(:expireTimeMillis) + field(:state) + field(:updateTime, as: DateTime) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AnalyticsConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AnalyticsConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AnalyticsConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category.ex index 1596d4b06f..5bcb0e0b12 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category.ex @@ -17,32 +17,29 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory do @moduledoc """ - the Api category resource wrapped with response status, error_code etc. + `ApiCategory` represents an API category. [Catalog items](/apigee/docs/reference/apis/apigee/rest/v1/organizations.sites.apidocs) can be tagged with API categories; users viewing the API catalog in the portal will have the option to browse the catalog by category. ## Attributes - * `data` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData.t`, *default:* `nil`) - Details of category. - * `errorCode` (*type:* `String.t`, *default:* `nil`) - ID that can be used to find errors in the log files. - * `message` (*type:* `String.t`, *default:* `nil`) - Description of the operation. - * `requestId` (*type:* `String.t`, *default:* `nil`) - ID that can be used to find request details in the log files. - * `status` (*type:* `String.t`, *default:* `nil`) - Status of the operation. + * `id` (*type:* `String.t`, *default:* `nil`) - ID of the category (a UUID). + * `name` (*type:* `String.t`, *default:* `nil`) - Name of the category. + * `siteId` (*type:* `String.t`, *default:* `nil`) - Name of the portal. + * `updateTime` (*type:* `String.t`, *default:* `nil`) - Time the category was last modified in milliseconds since epoch. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ - :data => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData.t() | nil, - :errorCode => String.t() | nil, - :message => String.t() | nil, - :requestId => String.t() | nil, - :status => String.t() | nil + :id => String.t() | nil, + :name => String.t() | nil, + :siteId => String.t() | nil, + :updateTime => String.t() | nil } - field(:data, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData) - field(:errorCode) - field(:message) - field(:requestId) - field(:status) + field(:id) + field(:name) + field(:siteId) + field(:updateTime) end defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory do diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category_response.ex new file mode 100644 index 0000000000..c233216dc3 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category_response.ex @@ -0,0 +1,58 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse do + @moduledoc """ + The API category resource wrapped with response status, error_code, etc. + + ## Attributes + + * `data` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t`, *default:* `nil`) - The API category resource. + * `errorCode` (*type:* `String.t`, *default:* `nil`) - Unique error code for the request, if any. + * `message` (*type:* `String.t`, *default:* `nil`) - Description of the operation. + * `requestId` (*type:* `String.t`, *default:* `nil`) - Unique ID of the request. + * `status` (*type:* `String.t`, *default:* `nil`) - Status of the operation. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :data => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t() | nil, + :errorCode => String.t() | nil, + :message => String.t() | nil, + :requestId => String.t() | nil, + :status => String.t() | nil + } + + field(:data, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory) + field(:errorCode) + field(:message) + field(:requestId) + field(:status) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc.ex new file mode 100644 index 0000000000..ba4565ea14 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc.ex @@ -0,0 +1,94 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc do + @moduledoc """ + `ApiDoc` represents an API catalog item. Catalog items are used in two ways in a portal: - Users can browse and interact with a visual representation of the API documentation - The `api_product_name` field provides a link to a backing [API product] (/apigee/docs/reference/apis/apigee/rest/v1/organizations.apiproducts). Through this link, portal users can create and manage developer apps linked to one or more API products. + + ## Attributes + + * `anonAllowed` (*type:* `boolean()`, *default:* `nil`) - Optional. Boolean flag that manages user access to the catalog item. When true, the catalog item can be viewed anonymously; otherwise, only registered users may view it. Note: when the parent portal is enrolled in the [audience management feature](https://cloud.google.com/apigee/docs/api-platform/publish/portal/portal-audience#enrolling_in_the_beta_release_of_the_audience_management_feature), this flag is ignored; instead visibility must be further managed in the management UI (see [Manage the visibility of an API in your portal](https://cloud.google.com/apigee/docs/api-platform/publish/portal/publish-apis#visibility)). + * `apiProductName` (*type:* `String.t`, *default:* `nil`) - Required. Immutable. The `name` field of the associated [API product](/apigee/docs/reference/apis/apigee/rest/v1/organizations.apiproducts). A portal may have only one catalog item associated with a given API product. + * `categoryIds` (*type:* `list(String.t)`, *default:* `nil`) - Optional. The IDs of the API categories to which this catalog item belongs. + * `description` (*type:* `String.t`, *default:* `nil`) - Optional. Description of the catalog item. Max length is 10,000 characters. + * `edgeAPIProductName` (*type:* `String.t`, *default:* `nil`) - Optional. Immutable. DEPRECATED: use the `apiProductName` field instead + * `graphqlEndpointUrl` (*type:* `String.t`, *default:* `nil`) - Optional. DEPRECATED: manage documentation through the `getDocumentation` and `updateDocumentation` methods + * `graphqlSchema` (*type:* `String.t`, *default:* `nil`) - Optional. DEPRECATED: manage documentation through the `getDocumentation` and `updateDocumentation` methods + * `graphqlSchemaDisplayName` (*type:* `String.t`, *default:* `nil`) - Optional. DEPRECATED: manage documentation through the `getDocumentation` and `updateDocumentation` methods + * `id` (*type:* `String.t`, *default:* `nil`) - Output only. The ID of the catalog item. + * `imageUrl` (*type:* `String.t`, *default:* `nil`) - Optional. Location of the image used for the catalog item in the catalog. For portal files, this can have the format `/files/{filename}`. Max length is 2,083 characters. + * `modified` (*type:* `String.t`, *default:* `nil`) - Output only. Time the catalog item was last modified in milliseconds since epoch. + * `published` (*type:* `boolean()`, *default:* `nil`) - Optional. Denotes whether the catalog item is published to the portal or is in a draft state. When the parent portal is enrolled in the [audience management feature](https://cloud.google.com/apigee/docs/api-platform/publish/portal/portal-audience#enrolling_in_the_beta_release_of_the_audience_management_feature), the visibility must be further managed in the management UI (see [Manage the visibility of an API in your portal](https://cloud.google.com/apigee/docs/api-platform/publish/portal/publish-apis#visibility)) before it can be visible to any users. If not enrolled in the audience management feature, the visibility is further managed by the `anonAllowed` flag. + * `requireCallbackUrl` (*type:* `boolean()`, *default:* `nil`) - Optional. Whether a callback URL is required when this catalog item's API product is enabled in a developer app. When true, a portal user will be required to input a URL when managing the app (this is typically used for the app's OAuth flow). + * `siteId` (*type:* `String.t`, *default:* `nil`) - Output only. The ID of the parent portal. + * `specId` (*type:* `String.t`, *default:* `nil`) - Optional. DEPRECATED: DO NOT USE + * `title` (*type:* `String.t`, *default:* `nil`) - Required. The user-facing name of the catalog item. `title` must be a non-empty string with a max length of 255 characters. + * `visibility` (*type:* `boolean()`, *default:* `nil`) - Optional. DEPRECATED: use the `published` field instead + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :anonAllowed => boolean() | nil, + :apiProductName => String.t() | nil, + :categoryIds => list(String.t()) | nil, + :description => String.t() | nil, + :edgeAPIProductName => String.t() | nil, + :graphqlEndpointUrl => String.t() | nil, + :graphqlSchema => String.t() | nil, + :graphqlSchemaDisplayName => String.t() | nil, + :id => String.t() | nil, + :imageUrl => String.t() | nil, + :modified => String.t() | nil, + :published => boolean() | nil, + :requireCallbackUrl => boolean() | nil, + :siteId => String.t() | nil, + :specId => String.t() | nil, + :title => String.t() | nil, + :visibility => boolean() | nil + } + + field(:anonAllowed) + field(:apiProductName) + field(:categoryIds, type: :list) + field(:description) + field(:edgeAPIProductName) + field(:graphqlEndpointUrl) + field(:graphqlSchema) + field(:graphqlSchemaDisplayName) + field(:id) + field(:imageUrl) + field(:modified) + field(:published) + field(:requireCallbackUrl) + field(:siteId) + field(:specId) + field(:title) + field(:visibility) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation.ex new file mode 100644 index 0000000000..168ccd601b --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation.ex @@ -0,0 +1,54 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation do + @moduledoc """ + The documentation for a catalog item. + + ## Attributes + + * `graphqlDocumentation` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphqlDocumentation.t`, *default:* `nil`) - Optional. GraphQL documentation. + * `oasDocumentation` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OASDocumentation.t`, *default:* `nil`) - Optional. OpenAPI Specification documentation. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :graphqlDocumentation => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphqlDocumentation.t() | nil, + :oasDocumentation => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OASDocumentation.t() | nil + } + + field(:graphqlDocumentation, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphqlDocumentation + ) + + field(:oasDocumentation, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OASDocumentation) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation_response.ex new file mode 100644 index 0000000000..3a543a4e17 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_documentation_response.ex @@ -0,0 +1,63 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse do + @moduledoc """ + The catalog item documentation wrapped with response status, error_code, etc. + + ## Attributes + + * `data` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation.t`, *default:* `nil`) - Output only. The documentation resource. + * `errorCode` (*type:* `String.t`, *default:* `nil`) - Output only. Unique error code for the request, if any. + * `message` (*type:* `String.t`, *default:* `nil`) - Output only. Description of the operation. + * `requestId` (*type:* `String.t`, *default:* `nil`) - Output only. Unique ID of the request. + * `status` (*type:* `String.t`, *default:* `nil`) - Output only. Status of the operation. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :data => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation.t() | nil, + :errorCode => String.t() | nil, + :message => String.t() | nil, + :requestId => String.t() | nil, + :status => String.t() | nil + } + + field(:data, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentation) + field(:errorCode) + field(:message) + field(:requestId) + field(:status) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocDocumentationResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_response.ex new file mode 100644 index 0000000000..ec3eb114f4 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_doc_response.ex @@ -0,0 +1,58 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse do + @moduledoc """ + The catalog item resource wrapped with response status, error_code, etc. + + ## Attributes + + * `data` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc.t`, *default:* `nil`) - The catalog item resource. + * `errorCode` (*type:* `String.t`, *default:* `nil`) - Unique error code for the request, if any. + * `message` (*type:* `String.t`, *default:* `nil`) - Description of the operation. + * `requestId` (*type:* `String.t`, *default:* `nil`) - Unique ID of the request. + * `status` (*type:* `String.t`, *default:* `nil`) - Status of the operation. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :data => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc.t() | nil, + :errorCode => String.t() | nil, + :message => String.t() | nil, + :requestId => String.t() | nil, + :status => String.t() | nil + } + + field(:data, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc) + field(:errorCode) + field(:message) + field(:requestId) + field(:status) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDocResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product.ex index ec13d10340..a502e28fa7 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product.ex @@ -29,6 +29,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProduct do * `displayName` (*type:* `String.t`, *default:* `nil`) - Name displayed in the UI or developer portal to developers registering for API access. * `environments` (*type:* `list(String.t)`, *default:* `nil`) - Comma-separated list of environment names to which the API product is bound. Requests to environments that are not listed are rejected. By specifying one or more environments, you can bind the resources listed in the API product to a specific environment, preventing developers from accessing those resources through API proxies deployed in another environment. This setting is used, for example, to prevent resources associated with API proxies in `prod` from being accessed by API proxies deployed in `test`. * `graphqlOperationGroup` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphQLOperationGroup.t`, *default:* `nil`) - Configuration used to group Apigee proxies or remote services with graphQL operation name, graphQL operation type and quotas. This grouping allows us to precisely set quota for a particular combination of graphQL name and operation type for a particular proxy request. If graphQL name is not set, this would imply quota will be applied on all graphQL requests matching the operation type. + * `grpcOperationGroup` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationGroup.t`, *default:* `nil`) - Optional. Configuration used to group Apigee proxies with gRPC services and method names. This grouping allows us to set quota for a particular proxy with the gRPC service name and method. If a method name is not set, this implies quota and authorization are applied to all gRPC methods implemented by that proxy for that particular gRPC service. * `lastModifiedAt` (*type:* `String.t`, *default:* `nil`) - Response only. Modified time of this environment as milliseconds since epoch. * `name` (*type:* `String.t`, *default:* `nil`) - Internal name of the API product. Characters you can use in the name are restricted to: `A-Z0-9._\\-$ %`. **Note:** The internal name cannot be edited when updating the API product. * `operationGroup` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OperationGroup.t`, *default:* `nil`) - Configuration used to group Apigee proxies or remote services with resources, method types, and quotas. The resource refers to the resource URI (excluding the base path). With this grouping, the API product creator is able to fine-tune and give precise control over which REST methods have access to specific resources and how many calls can be made (using the `quota` setting). **Note:** The `api_resources` setting cannot be specified for both the API product and operation group; otherwise the call will fail. @@ -52,6 +53,8 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProduct do :environments => list(String.t()) | nil, :graphqlOperationGroup => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphQLOperationGroup.t() | nil, + :grpcOperationGroup => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationGroup.t() | nil, :lastModifiedAt => String.t() | nil, :name => String.t() | nil, :operationGroup => @@ -76,6 +79,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProduct do as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphQLOperationGroup ) + field(:grpcOperationGroup, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationGroup) field(:lastModifiedAt) field(:name) field(:operationGroup, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OperationGroup) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product_association.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product_association.ex new file mode 100644 index 0000000000..acda964514 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_product_association.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1APIProductAssociation do + @moduledoc """ + APIProductAssociation has the API product and its administrative state association. + + ## Attributes + + * `apiproduct` (*type:* `String.t`, *default:* `nil`) - API product to be associated with the credential. + * `status` (*type:* `String.t`, *default:* `nil`) - The API product credential associated status. Valid values are `approved` or `revoked`. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :apiproduct => String.t() | nil, + :status => String.t() | nil + } + + field(:apiproduct) + field(:status) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1APIProductAssociation do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1APIProductAssociation.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1APIProductAssociation do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_proxy_revision.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_proxy_revision.ex index e734d32a75..541d540c1c 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_proxy_revision.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_proxy_revision.ex @@ -29,6 +29,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProxyRevision do * `description` (*type:* `String.t`, *default:* `nil`) - Description of the API proxy revision. * `displayName` (*type:* `String.t`, *default:* `nil`) - Human-readable name of the API proxy. * `entityMetaDataAsProperties` (*type:* `map()`, *default:* `nil`) - Metadata describing the API proxy revision as a key-value map. + * `hasExtensiblePolicy` (*type:* `boolean()`, *default:* `nil`) - Output only. This field will be marked as true if revision contains any policies marked as extensible. * `integrationEndpoints` (*type:* `list(String.t)`, *default:* `nil`) - List of IntegrationEndpoints in the '/integration-endpoints' directory of the API proxy. This is a 'manifest' setting designed to provide visibility into the contents of the API proxy. * `lastModifiedAt` (*type:* `String.t`, *default:* `nil`) - Time that the API proxy revision was last modified in milliseconds since epoch. * `name` (*type:* `String.t`, *default:* `nil`) - Name of the API proxy. @@ -59,6 +60,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProxyRevision do :description => String.t() | nil, :displayName => String.t() | nil, :entityMetaDataAsProperties => map() | nil, + :hasExtensiblePolicy => boolean() | nil, :integrationEndpoints => list(String.t()) | nil, :lastModifiedAt => String.t() | nil, :name => String.t() | nil, @@ -85,6 +87,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProxyRevision do field(:description) field(:displayName) field(:entityMetaDataAsProperties, type: :map) + field(:hasExtensiblePolicy) field(:integrationEndpoints, type: :list) field(:lastModifiedAt) field(:name) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app.ex index 2d703ec201..8b6cc5f33b 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app.ex @@ -22,12 +22,14 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App do ## Attributes * `apiProducts` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProductRef.t)`, *default:* `nil`) - List of API products associated with the app. + * `appGroup` (*type:* `String.t`, *default:* `nil`) - Name of the AppGroup * `appId` (*type:* `String.t`, *default:* `nil`) - ID of the app. * `attributes` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t)`, *default:* `nil`) - List of attributes. * `callbackUrl` (*type:* `String.t`, *default:* `nil`) - Callback URL used by OAuth 2.0 authorization servers to communicate authorization codes back to apps. * `companyName` (*type:* `String.t`, *default:* `nil`) - Name of the company that owns the app. * `createdAt` (*type:* `String.t`, *default:* `nil`) - Output only. Unix time when the app was created. * `credentials` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Credential.t)`, *default:* `nil`) - Output only. Set of credentials for the app. Credentials are API key/secret pairs associated with API products. + * `developerEmail` (*type:* `String.t`, *default:* `nil`) - Email of the developer. * `developerId` (*type:* `String.t`, *default:* `nil`) - ID of the developer. * `keyExpiresIn` (*type:* `String.t`, *default:* `nil`) - Duration, in milliseconds, of the consumer key that will be generated for the app. The default value, -1, indicates an infinite validity period. Once set, the expiration can't be updated. json key: keyExpiresIn * `lastModifiedAt` (*type:* `String.t`, *default:* `nil`) - Output only. Last modified time as milliseconds since epoch. @@ -41,12 +43,14 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App do @type t :: %__MODULE__{ :apiProducts => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProductRef.t()) | nil, + :appGroup => String.t() | nil, :appId => String.t() | nil, :attributes => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()) | nil, :callbackUrl => String.t() | nil, :companyName => String.t() | nil, :createdAt => String.t() | nil, :credentials => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Credential.t()) | nil, + :developerEmail => String.t() | nil, :developerId => String.t() | nil, :keyExpiresIn => String.t() | nil, :lastModifiedAt => String.t() | nil, @@ -56,12 +60,14 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App do } field(:apiProducts, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiProductRef, type: :list) + field(:appGroup) field(:appId) field(:attributes, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute, type: :list) field(:callbackUrl) field(:companyName) field(:createdAt) field(:credentials, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Credential, type: :list) + field(:developerEmail) field(:developerId) field(:keyExpiresIn) field(:lastModifiedAt) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group.ex new file mode 100644 index 0000000000..1f2e85fb04 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group.ex @@ -0,0 +1,73 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup do + @moduledoc """ + AppGroup contains the request/response fields representing the logical grouping of apps. Note that appgroup_id, create_time and update_time cannot be changed by the user, and gets updated by the system. The name and the organization once provided cannot be edited subsequently. + + ## Attributes + + * `appGroupId` (*type:* `String.t`, *default:* `nil`) - Output only. Internal identifier that cannot be edited + * `attributes` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t)`, *default:* `nil`) - A list of attributes + * `channelId` (*type:* `String.t`, *default:* `nil`) - channel identifier identifies the owner maintaing this grouping. + * `channelUri` (*type:* `String.t`, *default:* `nil`) - A reference to the associated storefront/marketplace. + * `createdAt` (*type:* `String.t`, *default:* `nil`) - Output only. Created time as milliseconds since epoch. + * `displayName` (*type:* `String.t`, *default:* `nil`) - app group name displayed in the UI + * `lastModifiedAt` (*type:* `String.t`, *default:* `nil`) - Output only. Modified time as milliseconds since epoch. + * `name` (*type:* `String.t`, *default:* `nil`) - Immutable. Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._\\-$ %. + * `organization` (*type:* `String.t`, *default:* `nil`) - Immutable. the org the app group is created + * `status` (*type:* `String.t`, *default:* `nil`) - Valid values are `active` or `inactive`. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as `active` or `inactive`. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :appGroupId => String.t() | nil, + :attributes => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()) | nil, + :channelId => String.t() | nil, + :channelUri => String.t() | nil, + :createdAt => String.t() | nil, + :displayName => String.t() | nil, + :lastModifiedAt => String.t() | nil, + :name => String.t() | nil, + :organization => String.t() | nil, + :status => String.t() | nil + } + + field(:appGroupId) + field(:attributes, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute, type: :list) + field(:channelId) + field(:channelUri) + field(:createdAt) + field(:displayName) + field(:lastModifiedAt) + field(:name) + field(:organization) + field(:status) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app.ex new file mode 100644 index 0000000000..be5ebd52a1 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app.ex @@ -0,0 +1,79 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp do + @moduledoc """ + Response for [GetAppGroupApp].[AppGroupApps.GetAppGroupApp], [CreateAppGroupAppRequest].[AppGroupApp.CreateAppGroupAppRequest] and [DeleteAppGroupApp].[AppGroupApp.DeleteAppGroupApp] + + ## Attributes + + * `apiProducts` (*type:* `list(String.t)`, *default:* `nil`) - List of API products associated with the AppGroup app. + * `appGroup` (*type:* `String.t`, *default:* `nil`) - Immutable. Name of the parent AppGroup whose resource name format is of syntax (organizations/*/appgroups/*). + * `appId` (*type:* `String.t`, *default:* `nil`) - Immutable. ID of the AppGroup app. + * `attributes` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t)`, *default:* `nil`) - List of attributes for the AppGroup app. + * `callbackUrl` (*type:* `String.t`, *default:* `nil`) - Callback URL used by OAuth 2.0 authorization servers to communicate authorization codes back to AppGroup apps. + * `createdAt` (*type:* `String.t`, *default:* `nil`) - Output only. Time the AppGroup app was created in milliseconds since epoch. + * `credentials` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Credential.t)`, *default:* `nil`) - Output only. Set of credentials for the AppGroup app consisting of the consumer key/secret pairs associated with the API products. + * `keyExpiresIn` (*type:* `String.t`, *default:* `nil`) - Immutable. Expiration time, in seconds, for the consumer key that is generated for the AppGroup app. If not set or left to the default value of `-1`, the API key never expires. The expiration time can't be updated after it is set. + * `lastModifiedAt` (*type:* `String.t`, *default:* `nil`) - Output only. Time the AppGroup app was modified in milliseconds since epoch. + * `name` (*type:* `String.t`, *default:* `nil`) - Immutable. Name of the AppGroup app whose resource name format is of syntax (organizations/*/appgroups/*/apps/*). + * `scopes` (*type:* `list(String.t)`, *default:* `nil`) - Scopes to apply to the AppGroup app. The specified scopes must already exist for the API product that you associate with the AppGroup app. + * `status` (*type:* `String.t`, *default:* `nil`) - Status of the App. Valid values include `approved` or `revoked`. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :apiProducts => list(String.t()) | nil, + :appGroup => String.t() | nil, + :appId => String.t() | nil, + :attributes => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()) | nil, + :callbackUrl => String.t() | nil, + :createdAt => String.t() | nil, + :credentials => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Credential.t()) | nil, + :keyExpiresIn => String.t() | nil, + :lastModifiedAt => String.t() | nil, + :name => String.t() | nil, + :scopes => list(String.t()) | nil, + :status => String.t() | nil + } + + field(:apiProducts, type: :list) + field(:appGroup) + field(:appId) + field(:attributes, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute, type: :list) + field(:callbackUrl) + field(:createdAt) + field(:credentials, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Credential, type: :list) + field(:keyExpiresIn) + field(:lastModifiedAt) + field(:name) + field(:scopes, type: :list) + field(:status) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app_key.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app_key.ex new file mode 100644 index 0000000000..684f670ddd --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_app_group_app_key.ex @@ -0,0 +1,75 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey do + @moduledoc """ + AppGroupAppKey contains all the information associated with the credentials. + + ## Attributes + + * `apiProducts` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1APIProductAssociation.t)`, *default:* `nil`) - Output only. List of API products and its status for which the credential can be used. **Note**: Use UpdateAppGroupAppKeyApiProductRequest API to make the association after the consumer key and secret are created. + * `attributes` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t)`, *default:* `nil`) - List of attributes associated with the credential. + * `consumerKey` (*type:* `String.t`, *default:* `nil`) - Immutable. Consumer key. + * `consumerSecret` (*type:* `String.t`, *default:* `nil`) - Secret key. + * `expiresAt` (*type:* `String.t`, *default:* `nil`) - Output only. Time the AppGroup app expires in milliseconds since epoch. + * `expiresInSeconds` (*type:* `String.t`, *default:* `nil`) - Immutable. Expiration time, in seconds, for the consumer key. If not set or left to the default value of `-1`, the API key never expires. The expiration time can't be updated after it is set. + * `issuedAt` (*type:* `String.t`, *default:* `nil`) - Output only. Time the AppGroup app was created in milliseconds since epoch. + * `scopes` (*type:* `list(String.t)`, *default:* `nil`) - Scopes to apply to the app. The specified scope names must already be defined for the API product that you associate with the app. + * `status` (*type:* `String.t`, *default:* `nil`) - Status of the credential. Valid values include `approved` or `revoked`. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :apiProducts => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1APIProductAssociation.t()) | nil, + :attributes => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()) | nil, + :consumerKey => String.t() | nil, + :consumerSecret => String.t() | nil, + :expiresAt => String.t() | nil, + :expiresInSeconds => String.t() | nil, + :issuedAt => String.t() | nil, + :scopes => list(String.t()) | nil, + :status => String.t() | nil + } + + field(:apiProducts, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1APIProductAssociation, + type: :list + ) + + field(:attributes, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute, type: :list) + field(:consumerKey) + field(:consumerSecret) + field(:expiresAt) + field(:expiresInSeconds) + field(:issuedAt) + field(:scopes, type: :list) + field(:status) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_request.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_request.ex new file mode 100644 index 0000000000..49dbed5bce --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_request.ex @@ -0,0 +1,56 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsRequest do + @moduledoc """ + Request for BatchUpdateSecurityIncident. + + ## Attributes + + * `requests` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateSecurityIncidentRequest.t)`, *default:* `nil`) - Optional. Required. The request message specifying the resources to update. A maximum of 1000 can be modified in a batch. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :requests => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateSecurityIncidentRequest.t()) + | nil + } + + field(:requests, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateSecurityIncidentRequest, + type: :list + ) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsRequest do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsRequest.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsRequest do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_response.ex new file mode 100644 index 0000000000..0898ef278a --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_batch_update_security_incidents_response.ex @@ -0,0 +1,55 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsResponse do + @moduledoc """ + Response for BatchUpdateSecurityIncident. + + ## Attributes + + * `securityIncidents` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t)`, *default:* `nil`) - Output only. Updated security incidents + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :securityIncidents => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t()) | nil + } + + field(:securityIncidents, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident, + type: :list + ) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsResponse.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1BatchUpdateSecurityIncidentsResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_response_wrapper.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_delete_response.ex similarity index 70% rename from clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_response_wrapper.ex rename to clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_delete_response.ex index 83167978c7..a3df6a6c2a 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_response_wrapper.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_delete_response.ex @@ -15,15 +15,16 @@ # NOTE: This file is auto generated by the elixir code generator program. # Do not edit this file manually. -defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper do +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse do @moduledoc """ - + Response for certain delete operations. ## Attributes - * `errorCode` (*type:* `String.t`, *default:* `nil`) - ID that can be used to find errors in the log files. + * `errorCode` (*type:* `String.t`, *default:* `nil`) - Unique error code for the request, if any. + * `gcpResource` (*type:* `String.t`, *default:* `nil`) - Google Cloud name of deleted resource. * `message` (*type:* `String.t`, *default:* `nil`) - Description of the operation. - * `requestId` (*type:* `String.t`, *default:* `nil`) - ID that can be used to find request details in the log files. + * `requestId` (*type:* `String.t`, *default:* `nil`) - Unique ID of the request. * `status` (*type:* `String.t`, *default:* `nil`) - Status of the operation. """ @@ -31,24 +32,26 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper do @type t :: %__MODULE__{ :errorCode => String.t() | nil, + :gcpResource => String.t() | nil, :message => String.t() | nil, :requestId => String.t() | nil, :status => String.t() | nil } field(:errorCode) + field(:gcpResource) field(:message) field(:requestId) field(:status) end -defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper do +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse do def decode(value, options) do - GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper.decode(value, options) + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse.decode(value, options) end end -defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiResponseWrapper do +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeleteResponse do def encode(value, options) do GoogleApi.Gax.ModelBase.encode(value, options) end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment.ex index a71f3d2be9..2546235938 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment.ex @@ -27,6 +27,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment do * `errors` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleRpcStatus.t)`, *default:* `nil`) - Errors reported for this deployment. Populated only when state == ERROR. **Note**: This field is displayed only when viewing deployment status. * `instances` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceDeploymentStatus.t)`, *default:* `nil`) - Status reported by each runtime instance. **Note**: This field is displayed only when viewing deployment status. * `pods` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1PodStatus.t)`, *default:* `nil`) - Status reported by runtime pods. **Note**: **This field is deprecated**. Runtime versions 1.3 and above report instance level status rather than pod status. + * `proxyDeploymentType` (*type:* `String.t`, *default:* `nil`) - Output only. The type of the deployment (standard or extensible) Deployed proxy revision will be marked as extensible in following 2 cases. 1. The deployed proxy revision uses extensible policies. 2. If a environment supports flowhooks and flow hook is configured. * `revision` (*type:* `String.t`, *default:* `nil`) - API proxy revision. * `routeConflicts` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentChangeReportRoutingConflict.t)`, *default:* `nil`) - Conflicts in the desired state routing configuration. The presence of conflicts does not cause the state to be `ERROR`, but it will mean that some of the deployment's base paths are not routed to its environment. If the conflicts change, the state will transition to `PROGRESSING` until the latest configuration is rolled out to all instances. **Note**: This field is displayed only when viewing deployment status. * `serviceAccount` (*type:* `String.t`, *default:* `nil`) - The full resource name of Cloud IAM Service Account that this deployment is using, eg, `projects/-/serviceAccounts/{email}`. @@ -43,6 +44,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment do :instances => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1InstanceDeploymentStatus.t()) | nil, :pods => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1PodStatus.t()) | nil, + :proxyDeploymentType => String.t() | nil, :revision => String.t() | nil, :routeConflicts => list( @@ -64,6 +66,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Deployment do ) field(:pods, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1PodStatus, type: :list) + field(:proxyDeploymentType) field(:revision) field(:routeConflicts, diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_config.ex index 00efad606a..8765454523 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_config.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_config.ex @@ -17,12 +17,14 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentConfig do @moduledoc """ - NEXT ID: 9 + NEXT ID: 11 ## Attributes * `attributes` (*type:* `map()`, *default:* `nil`) - Additional key-value metadata for the deployment. * `basePath` (*type:* `String.t`, *default:* `nil`) - Base path where the application will be hosted. Defaults to "/". + * `deploymentGroups` (*type:* `list(String.t)`, *default:* `nil`) - The list of deployment groups in which this proxy should be deployed. Not currently populated for shared flows. + * `endpoints` (*type:* `map()`, *default:* `nil`) - A mapping from basepaths to proxy endpoint names in this proxy. Not populated for shared flows. * `location` (*type:* `String.t`, *default:* `nil`) - Location of the API proxy bundle as a URI. * `name` (*type:* `String.t`, *default:* `nil`) - Name of the API or shared flow revision to be deployed in the following format: `organizations/{org}/apis/{api}/revisions/{rev}` or `organizations/{org}/sharedflows/{sharedflow}/revisions/{rev}` * `proxyUid` (*type:* `String.t`, *default:* `nil`) - Unique ID of the API proxy revision. @@ -35,6 +37,8 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentConfig do @type t :: %__MODULE__{ :attributes => map() | nil, :basePath => String.t() | nil, + :deploymentGroups => list(String.t()) | nil, + :endpoints => map() | nil, :location => String.t() | nil, :name => String.t() | nil, :proxyUid => String.t() | nil, @@ -44,6 +48,8 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentConfig do field(:attributes, type: :map) field(:basePath) + field(:deploymentGroups, type: :list) + field(:endpoints, type: :map) field(:location) field(:name) field(:proxyUid) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_group_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_group_config.ex new file mode 100644 index 0000000000..3663c2efcd --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_deployment_group_config.ex @@ -0,0 +1,55 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentGroupConfig do + @moduledoc """ + DeploymentGroupConfig represents a deployment group that should be present in a particular environment. + + ## Attributes + + * `deploymentGroupType` (*type:* `String.t`, *default:* `nil`) - Type of the deployment group, which will be either Standard or Extensible. + * `name` (*type:* `String.t`, *default:* `nil`) - Name of the deployment group in the following format: `organizations/{org}/environments/{env}/deploymentGroups/{group}`. + * `revisionId` (*type:* `String.t`, *default:* `nil`) - Revision number which can be used by the runtime to detect if the deployment group has changed between two versions. + * `uid` (*type:* `String.t`, *default:* `nil`) - Unique ID. The ID will only change if the deployment group is deleted and recreated. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :deploymentGroupType => String.t() | nil, + :name => String.t() | nil, + :revisionId => String.t() | nil, + :uid => String.t() | nil + } + + field(:deploymentGroupType) + field(:name) + field(:revisionId) + field(:uid) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentGroupConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentGroupConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentGroupConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_dimension_metric.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_dimension_metric.ex index 398d460836..1653f0c320 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_dimension_metric.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_dimension_metric.ex @@ -21,17 +21,20 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DimensionMetric do ## Attributes + * `individualNames` (*type:* `list(String.t)`, *default:* `nil`) - Individual dimension names. E.g. ["dim1_name", "dim2_name"]. * `metrics` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Metric.t)`, *default:* `nil`) - List of metrics. - * `name` (*type:* `String.t`, *default:* `nil`) - Name of the dimension. + * `name` (*type:* `String.t`, *default:* `nil`) - Comma joined dimension names. E.g. "dim1_name,dim2_name". Deprecated. If name already has comma before join, we may get wrong splits. Please use individual_names. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ + :individualNames => list(String.t()) | nil, :metrics => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Metric.t()) | nil, :name => String.t() | nil } + field(:individualNames, type: :list) field(:metrics, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Metric, type: :list) field(:name) end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_disable_security_action_request.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_disable_security_action_request.ex new file mode 100644 index 0000000000..b56a693439 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_disable_security_action_request.ex @@ -0,0 +1,46 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DisableSecurityActionRequest do + @moduledoc """ + Message to disable an enabled SecurityAction. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DisableSecurityActionRequest do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DisableSecurityActionRequest.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DisableSecurityActionRequest do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_documentation_file.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_documentation_file.ex new file mode 100644 index 0000000000..b16d6da6d9 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_documentation_file.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile do + @moduledoc """ + Documentation file contents for a catalog item. + + ## Attributes + + * `contents` (*type:* `String.t`, *default:* `nil`) - Required. The file contents. The max size is 4 MB. + * `displayName` (*type:* `String.t`, *default:* `nil`) - Required. A display name for the file, shown in the management UI. Max length is 255 characters. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :contents => String.t() | nil, + :displayName => String.t() | nil + } + + field(:contents) + field(:displayName) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_enable_security_action_request.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_enable_security_action_request.ex new file mode 100644 index 0000000000..aa4d45654d --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_enable_security_action_request.ex @@ -0,0 +1,46 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnableSecurityActionRequest do + @moduledoc """ + Message to enable a disabled SecurityAction. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnableSecurityActionRequest do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnableSecurityActionRequest.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnableSecurityActionRequest do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_endpoint_chaining_rule.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_endpoint_chaining_rule.ex new file mode 100644 index 0000000000..16452ddea6 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_endpoint_chaining_rule.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointChainingRule do + @moduledoc """ + EndpointChainingRule specifies the proxies contained in a particular deployment group, so that other deployment groups can find them in chaining calls. + + ## Attributes + + * `deploymentGroup` (*type:* `String.t`, *default:* `nil`) - The deployment group to target for cross-shard chaining calls to these proxies. + * `proxyIds` (*type:* `list(String.t)`, *default:* `nil`) - List of proxy ids which may be found in the given deployment group. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :deploymentGroup => String.t() | nil, + :proxyIds => list(String.t()) | nil + } + + field(:deploymentGroup) + field(:proxyIds, type: :list) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointChainingRule do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointChainingRule.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointChainingRule do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment.ex index 7810bb1e60..ff5479c4e6 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment.ex @@ -26,12 +26,14 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment do * `deploymentType` (*type:* `String.t`, *default:* `nil`) - Optional. Deployment type supported by the environment. The deployment type can be set when creating the environment and cannot be changed. When you enable archive deployment, you will be **prevented from performing** a [subset of actions](/apigee/docs/api-platform/local-development/overview#prevented-actions) within the environment, including: * Managing the deployment of API proxy or shared flow revisions * Creating, updating, or deleting resource files * Creating, updating, or deleting target servers * `description` (*type:* `String.t`, *default:* `nil`) - Optional. Description of the environment. * `displayName` (*type:* `String.t`, *default:* `nil`) - Optional. Display name for this environment. - * `forwardProxyUri` (*type:* `String.t`, *default:* `nil`) - Optional. Url of the forward proxy to be applied to the runtime instances in this environment. Must be in the format of {scheme}://{hostname}:{port}. Note that scheme must be one of "http" or "https", and port must be supplied. + * `forwardProxyUri` (*type:* `String.t`, *default:* `nil`) - Optional. URI of the forward proxy to be applied to the runtime instances in this environment. Must be in the format of {scheme}://{hostname}:{port}. Note that the scheme must be one of "http" or "https", and the port must be supplied. To remove a forward proxy setting, update the field to an empty value. Note: At this time, PUT operations to add forwardProxyUri to an existing environment fail if the environment has nodeConfig set up. To successfully add the forwardProxyUri setting in this case, include the NodeConfig details with the request. + * `hasAttachedFlowHooks` (*type:* `boolean()`, *default:* `nil`) - * `lastModifiedAt` (*type:* `String.t`, *default:* `nil`) - Output only. Last modification time of this environment as milliseconds since epoch. * `name` (*type:* `String.t`, *default:* `nil`) - Required. Name of the environment. Values must match the regular expression `^[.\\\\p{Alnum}-_]{1,255}$` * `nodeConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NodeConfig.t`, *default:* `nil`) - Optional. NodeConfig of the environment. * `properties` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Properties.t`, *default:* `nil`) - Optional. Key-value pairs that may be used for customizing the environment. * `state` (*type:* `String.t`, *default:* `nil`) - Output only. State of the environment. Values other than ACTIVE means the resource is not ready to use. + * `type` (*type:* `String.t`, *default:* `nil`) - Optional. EnvironmentType selected for the environment. """ use GoogleApi.Gax.ModelBase @@ -43,11 +45,13 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment do :description => String.t() | nil, :displayName => String.t() | nil, :forwardProxyUri => String.t() | nil, + :hasAttachedFlowHooks => boolean() | nil, :lastModifiedAt => String.t() | nil, :name => String.t() | nil, :nodeConfig => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NodeConfig.t() | nil, :properties => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Properties.t() | nil, - :state => String.t() | nil + :state => String.t() | nil, + :type => String.t() | nil } field(:apiProxyType) @@ -56,11 +60,13 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment do field(:description) field(:displayName) field(:forwardProxyUri) + field(:hasAttachedFlowHooks) field(:lastModifiedAt) field(:name) field(:nodeConfig, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1NodeConfig) field(:properties, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Properties) field(:state) + field(:type) end defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Environment do diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_config.ex index e40a047556..fc77438c97 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_config.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_config.ex @@ -21,11 +21,14 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig do ## Attributes + * `addonsConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAddonsConfig.t`, *default:* `nil`) - The latest runtime configurations for add-ons. * `arcConfigLocation` (*type:* `String.t`, *default:* `nil`) - The location for the config blob of API Runtime Control, aka Envoy Adapter, for op-based authentication as a URI, e.g. a Cloud Storage URI. This is only used by Envoy-based gateways. * `createTime` (*type:* `DateTime.t`, *default:* `nil`) - Time that the environment configuration was created. * `dataCollectors` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollectorConfig.t)`, *default:* `nil`) - List of data collectors used by the deployments in the environment. * `debugMask` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t`, *default:* `nil`) - Debug mask that applies to all deployments in the environment. + * `deploymentGroups` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentGroupConfig.t)`, *default:* `nil`) - List of deployment groups in the environment. * `deployments` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentConfig.t)`, *default:* `nil`) - List of deployments in the environment. + * `envScopedRevisionId` (*type:* `String.t`, *default:* `nil`) - Revision ID for environment-scoped resources (e.g. target servers, keystores) in this config. This ID will increment any time a resource not scoped to a deployment group changes. * `featureFlags` (*type:* `map()`, *default:* `nil`) - Feature flags inherited from the organization and environment. * `flowhooks` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHookConfig.t)`, *default:* `nil`) - List of flow hooks in the environment. * `forwardProxyUri` (*type:* `String.t`, *default:* `nil`) - The forward proxy's url to be used by the runtime. When set, runtime will send requests to the target via the given forward proxy. This is only used by programmable gateways. @@ -46,13 +49,18 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig do use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ + :addonsConfig => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAddonsConfig.t() | nil, :arcConfigLocation => String.t() | nil, :createTime => DateTime.t() | nil, :dataCollectors => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DataCollectorConfig.t()) | nil, :debugMask => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask.t() | nil, + :deploymentGroups => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentGroupConfig.t()) | nil, :deployments => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentConfig.t()) | nil, + :envScopedRevisionId => String.t() | nil, :featureFlags => map() | nil, :flowhooks => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHookConfig.t()) | nil, @@ -76,6 +84,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig do :uid => String.t() | nil } + field(:addonsConfig, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAddonsConfig) field(:arcConfigLocation) field(:createTime, as: DateTime) @@ -86,11 +95,17 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentConfig do field(:debugMask, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DebugMask) + field(:deploymentGroups, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentGroupConfig, + type: :list + ) + field(:deployments, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DeploymentConfig, type: :list ) + field(:envScopedRevisionId) field(:featureFlags, type: :map) field(:flowhooks, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1FlowHookConfig, type: :list) field(:forwardProxyUri) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_group_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_group_config.ex index c224877890..f6c77a1cd4 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_group_config.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_environment_group_config.ex @@ -21,7 +21,9 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupConfig do ## Attributes + * `endpointChainingRules` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointChainingRule.t)`, *default:* `nil`) - A list of proxies in each deployment group for proxy chaining calls. * `hostnames` (*type:* `list(String.t)`, *default:* `nil`) - Host names for the environment group. + * `location` (*type:* `String.t`, *default:* `nil`) - When this message appears in the top-level IngressConfig, this field will be populated in lieu of the inlined routing_rules and hostnames fields. Some URL for downloading the full EnvironmentGroupConfig for this group. * `name` (*type:* `String.t`, *default:* `nil`) - Name of the environment group in the following format: `organizations/{org}/envgroups/{envgroup}`. * `revisionId` (*type:* `String.t`, *default:* `nil`) - Revision id that defines the ordering of the EnvironmentGroupConfig resource. The higher the revision, the more recently the configuration was deployed. * `routingRules` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RoutingRule.t)`, *default:* `nil`) - Ordered list of routing rules defining how traffic to this environment group's hostnames should be routed to different environments. @@ -31,7 +33,10 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupConfig do use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ + :endpointChainingRules => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointChainingRule.t()) | nil, :hostnames => list(String.t()) | nil, + :location => String.t() | nil, :name => String.t() | nil, :revisionId => String.t() | nil, :routingRules => @@ -39,7 +44,13 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EnvironmentGroupConfig do :uid => String.t() | nil } + field(:endpointChainingRules, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1EndpointChainingRule, + type: :list + ) + field(:hostnames, type: :list) + field(:location) field(:name) field(:revisionId) field(:routingRules, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RoutingRule, type: :list) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_graphql_documentation.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_graphql_documentation.ex new file mode 100644 index 0000000000..77cdb38732 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_graphql_documentation.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphqlDocumentation do + @moduledoc """ + GraphQL documentation for a catalog item. + + ## Attributes + + * `endpointUri` (*type:* `String.t`, *default:* `nil`) - Required. The GraphQL endpoint URI to be queried by API consumers. Max length is 2,083 characters. + * `schema` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile.t`, *default:* `nil`) - Required. The documentation file contents for the GraphQL schema. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :endpointUri => String.t() | nil, + :schema => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile.t() | nil + } + + field(:endpointUri) + field(:schema, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphqlDocumentation do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphqlDocumentation.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GraphqlDocumentation do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_config.ex new file mode 100644 index 0000000000..513ab597bf --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_config.ex @@ -0,0 +1,58 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationConfig do + @moduledoc """ + Binds the resources in a proxy or remote service with the gRPC operation and its associated quota enforcement. + + ## Attributes + + * `apiSource` (*type:* `String.t`, *default:* `nil`) - Required. Name of the API proxy with which the gRPC operation and quota are associated. + * `attributes` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t)`, *default:* `nil`) - Custom attributes associated with the operation. + * `methods` (*type:* `list(String.t)`, *default:* `nil`) - List of unqualified gRPC method names for the proxy to which quota will be applied. If this field is empty, the Quota will apply to all operations on the gRPC service defined on the proxy. Example: Given a proxy that is configured to serve com.petstore.PetService, the methods com.petstore.PetService.ListPets and com.petstore.PetService.GetPet would be specified here as simply ["ListPets", "GetPet"]. + * `quota` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Quota.t`, *default:* `nil`) - Quota parameters to be enforced for the methods and API source combination. If none are specified, quota enforcement will not be done. + * `service` (*type:* `String.t`, *default:* `nil`) - Required. gRPC Service name associated to be associated with the API proxy, on which quota rules can be applied upon. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :apiSource => String.t() | nil, + :attributes => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute.t()) | nil, + :methods => list(String.t()) | nil, + :quota => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Quota.t() | nil, + :service => String.t() | nil + } + + field(:apiSource) + field(:attributes, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Attribute, type: :list) + field(:methods, type: :list) + field(:quota, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Quota) + field(:service) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_group.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_group.ex new file mode 100644 index 0000000000..c5171e2b42 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_grpc_operation_group.ex @@ -0,0 +1,50 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationGroup do + @moduledoc """ + List of gRPC operation configuration details associated with Apigee API proxies. + + ## Attributes + + * `operationConfigs` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationConfig.t)`, *default:* `nil`) - Required. List of operation configurations for either Apigee API proxies that are associated with this API product. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :operationConfigs => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationConfig.t()) | nil + } + + field(:operationConfigs, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationConfig, + type: :list + ) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationGroup do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationGroup.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1GrpcOperationGroup do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_key_value_map.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_key_value_map.ex index 91c1b386d3..ec3ede6672 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_key_value_map.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_key_value_map.ex @@ -21,7 +21,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1KeyValueMap do ## Attributes - * `encrypted` (*type:* `boolean()`, *default:* `nil`) - Optional. Flag that specifies whether entry values will be encrypted. You must set this value to `true`. Apigee X and hybrid do not support unencrytped key value maps. + * `encrypted` (*type:* `boolean()`, *default:* `nil`) - Required. Flag that specifies whether entry values will be encrypted. This field is retained for backward compatibility and the value of encrypted will always be `true`. Apigee X and hybrid do not support unencrypted key value maps. * `name` (*type:* `String.t`, *default:* `nil`) - Required. ID of the key value map. """ diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_categories_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_categories_response.ex index c8b8968ff9..f7e27a7b0c 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_categories_response.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_categories_response.ex @@ -17,28 +17,28 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiCategoriesResponse do @moduledoc """ - the response for ListApiCategoriesRequest. + The response for `ListApiCategoriesRequest`. Next ID: 6 ## Attributes - * `data` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData.t)`, *default:* `nil`) - Details of categories. - * `errorCode` (*type:* `String.t`, *default:* `nil`) - ID that can be used to find errors in the log files. + * `data` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t)`, *default:* `nil`) - The API category resources. + * `errorCode` (*type:* `String.t`, *default:* `nil`) - Unique error code for the request, if any. * `message` (*type:* `String.t`, *default:* `nil`) - Description of the operation. - * `requestId` (*type:* `String.t`, *default:* `nil`) - ID that can be used to find request details in the log files. + * `requestId` (*type:* `String.t`, *default:* `nil`) - Unique ID of the request. * `status` (*type:* `String.t`, *default:* `nil`) - Status of the operation. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ - :data => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData.t()) | nil, + :data => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory.t()) | nil, :errorCode => String.t() | nil, :message => String.t() | nil, :requestId => String.t() | nil, :status => String.t() | nil } - field(:data, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData, type: :list) + field(:data, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategory, type: :list) field(:errorCode) field(:message) field(:requestId) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_docs_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_docs_response.ex new file mode 100644 index 0000000000..3420c9909e --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_api_docs_response.ex @@ -0,0 +1,61 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiDocsResponse do + @moduledoc """ + + + ## Attributes + + * `data` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc.t)`, *default:* `nil`) - The catalog item resources. + * `errorCode` (*type:* `String.t`, *default:* `nil`) - Unique error code for the request, if any. + * `message` (*type:* `String.t`, *default:* `nil`) - Description of the operation. + * `nextPageToken` (*type:* `String.t`, *default:* `nil`) - A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + * `requestId` (*type:* `String.t`, *default:* `nil`) - Unique ID of the request. + * `status` (*type:* `String.t`, *default:* `nil`) - Status of the operation. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :data => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc.t()) | nil, + :errorCode => String.t() | nil, + :message => String.t() | nil, + :nextPageToken => String.t() | nil, + :requestId => String.t() | nil, + :status => String.t() | nil + } + + field(:data, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiDoc, type: :list) + field(:errorCode) + field(:message) + field(:nextPageToken) + field(:requestId) + field(:status) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiDocsResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiDocsResponse.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListApiDocsResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_group_apps_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_group_apps_response.ex new file mode 100644 index 0000000000..098d18515e --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_group_apps_response.ex @@ -0,0 +1,50 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupAppsResponse do + @moduledoc """ + Response for ListAppGroupApps + + ## Attributes + + * `appGroupApps` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t)`, *default:* `nil`) - List of AppGroup apps and their credentials. + * `nextPageToken` (*type:* `String.t`, *default:* `nil`) - Token that can be sent as `next_page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :appGroupApps => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp.t()) | nil, + :nextPageToken => String.t() | nil + } + + field(:appGroupApps, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupApp, type: :list) + field(:nextPageToken) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupAppsResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupAppsResponse.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupAppsResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_groups_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_groups_response.ex new file mode 100644 index 0000000000..3bb4c09141 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_app_groups_response.ex @@ -0,0 +1,52 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupsResponse do + @moduledoc """ + ListAppGroupsResponse contains the 0 or more AppGroups, along with the optional page token and the total count of apps. + + ## Attributes + + * `appGroups` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t)`, *default:* `nil`) - List of AppGroups. + * `nextPageToken` (*type:* `String.t`, *default:* `nil`) - Token that can be sent as `next_page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + * `totalSize` (*type:* `integer()`, *default:* `nil`) - Total count of AppGroups. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :appGroups => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup.t()) | nil, + :nextPageToken => String.t() | nil, + :totalSize => integer() | nil + } + + field(:appGroups, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroup, type: :list) + field(:nextPageToken) + field(:totalSize) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupsResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupsResponse.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppGroupsResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_apps_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_apps_response.ex index c5bedef707..6c77c08cdc 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_apps_response.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_apps_response.ex @@ -22,15 +22,21 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse do ## Attributes * `app` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App.t)`, *default:* `nil`) - + * `nextPageToken` (*type:* `String.t`, *default:* `nil`) - Token that can be sent as `next_page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + * `totalSize` (*type:* `integer()`, *default:* `nil`) - Total count of Apps. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ - :app => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App.t()) | nil + :app => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App.t()) | nil, + :nextPageToken => String.t() | nil, + :totalSize => integer() | nil } field(:app, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1App, type: :list) + field(:nextPageToken) + field(:totalSize) end defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListAppsResponse do diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_organizations_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_organizations_response.ex index e4ec887954..e5ca5e27fa 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_organizations_response.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_organizations_response.ex @@ -21,7 +21,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListOrganizationsResponse ## Attributes - * `organizations` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OrganizationProjectMapping.t)`, *default:* `nil`) - List of Apigee organizations and associated GCP projects. + * `organizations` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OrganizationProjectMapping.t)`, *default:* `nil`) - List of Apigee organizations and associated Google Cloud projects. """ use GoogleApi.Gax.ModelBase diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_actions_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_actions_response.ex new file mode 100644 index 0000000000..e082dca612 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_actions_response.ex @@ -0,0 +1,59 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityActionsResponse do + @moduledoc """ + Contains a list of SecurityActions in response to a ListSecurityActionRequest. + + ## Attributes + + * `nextPageToken` (*type:* `String.t`, *default:* `nil`) - A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + * `securityActions` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.t)`, *default:* `nil`) - The SecurityActions for the specified environment. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :nextPageToken => String.t() | nil, + :securityActions => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.t()) | nil + } + + field(:nextPageToken) + + field(:securityActions, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction, + type: :list + ) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityActionsResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityActionsResponse.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityActionsResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_incidents_response.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_incidents_response.ex new file mode 100644 index 0000000000..54fb08b972 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_list_security_incidents_response.ex @@ -0,0 +1,59 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityIncidentsResponse do + @moduledoc """ + Response for ListSecurityIncidents. + + ## Attributes + + * `nextPageToken` (*type:* `String.t`, *default:* `nil`) - A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + * `securityIncidents` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t)`, *default:* `nil`) - List of security incidents in the organization + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :nextPageToken => String.t() | nil, + :securityIncidents => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t()) | nil + } + + field(:nextPageToken) + + field(:securityIncidents, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident, + type: :list + ) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityIncidentsResponse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityIncidentsResponse.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ListSecurityIncidentsResponse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_oas_documentation.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_oas_documentation.ex new file mode 100644 index 0000000000..78083ac704 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_oas_documentation.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OASDocumentation do + @moduledoc """ + OpenAPI Specification documentation for a catalog item. + + ## Attributes + + * `format` (*type:* `String.t`, *default:* `nil`) - Output only. The format of the input specification file contents. + * `spec` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile.t`, *default:* `nil`) - Required. The documentation file contents for the OpenAPI Specification. JSON and YAML file formats are supported. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :format => String.t() | nil, + :spec => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile.t() | nil + } + + field(:format) + field(:spec, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1DocumentationFile) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OASDocumentation do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OASDocumentation.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OASDocumentation do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization.ex index b807b6c0d1..4d5ec71381 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization.ex @@ -22,15 +22,19 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Organization do ## Attributes * `addonsConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig.t`, *default:* `nil`) - Addon configurations of the Apigee organization. - * `analyticsRegion` (*type:* `String.t`, *default:* `nil`) - Required. DEPRECATED: This field will be deprecated once Apigee supports DRZ. Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org). + * `analyticsRegion` (*type:* `String.t`, *default:* `nil`) - Required. DEPRECATED: This field will eventually be deprecated and replaced with a differently-named field. Primary Google Cloud region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org). + * `apiConsumerDataEncryptionKeyName` (*type:* `String.t`, *default:* `nil`) - Cloud KMS key name used for encrypting API consumer data. Required for US/EU regions when [BillingType](#BillingType) is `SUBSCRIPTION`. When [BillingType](#BillingType) is `EVALUATION` or the region is not US/EU, a Google-Managed encryption key will be used. Format: `projects/*/locations/*/keyRings/*/cryptoKeys/*` + * `apiConsumerDataLocation` (*type:* `String.t`, *default:* `nil`) - This field is needed only for customers with control plane in US or EU. Apigee stores some control plane data only in single region. This field determines which single region Apigee should use. For example: "us-west1" when control plane is in US or "europe-west2" when control plane is in EU. * `apigeeProjectId` (*type:* `String.t`, *default:* `nil`) - Output only. Apigee Project ID associated with the organization. Use this project to allowlist Apigee in the Service Attachment when using private service connect with Apigee. * `attributes` (*type:* `list(String.t)`, *default:* `nil`) - Not used by Apigee. * `authorizedNetwork` (*type:* `String.t`, *default:* `nil`) - Compute Engine network used for Service Networking to be peered with Apigee runtime instances. See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started). Valid only when [RuntimeType](#RuntimeType) is set to `CLOUD`. The value must be set before the creation of a runtime instance and can be updated only when there are no runtime instances. For example: `default`. Apigee also supports shared VPC (that is, the host network project is not the same as the one that is peering with Apigee). See [Shared VPC overview](https://cloud.google.com/vpc/docs/shared-vpc). To use a shared VPC network, use the following format: `projects/{host-project-id}/{region}/networks/{network-name}`. For example: `projects/my-sharedvpc-host/global/networks/mynetwork` **Note:** Not supported for Apigee hybrid. * `billingType` (*type:* `String.t`, *default:* `nil`) - Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing). * `caCertificate` (*type:* `String.t`, *default:* `nil`) - Output only. Base64-encoded public certificate for the root CA of the Apigee organization. Valid only when [RuntimeType](#RuntimeType) is `CLOUD`. + * `controlPlaneEncryptionKeyName` (*type:* `String.t`, *default:* `nil`) - Cloud KMS key name used for encrypting control plane data that is stored in a multi region. Required when [BillingType](#BillingType) is `SUBSCRIPTION`. When [BillingType](#BillingType) is `EVALUATION`, a Google-Managed encryption key will be used. Format: `projects/*/locations/*/keyRings/*/cryptoKeys/*` * `createdAt` (*type:* `String.t`, *default:* `nil`) - Output only. Time that the Apigee organization was created in milliseconds since epoch. * `customerName` (*type:* `String.t`, *default:* `nil`) - Not used by Apigee. * `description` (*type:* `String.t`, *default:* `nil`) - Description of the Apigee organization. + * `disableVpcPeering` (*type:* `boolean()`, *default:* `nil`) - Optional. Flag that specifies whether the VPC Peering through Private Google Access should be disabled between the consumer network and Apigee. Valid only when RuntimeType is set to CLOUD. Required if an authorizedNetwork on the consumer project is not provided, in which case the flag should be set to true. The value must be set before the creation of any Apigee runtime instance and can be updated only when there are no runtime instances. **Note:** Apigee will be deprecating the vpc peering model that requires you to provide 'authorizedNetwork', by making the non-peering model as the default way of provisioning Apigee organization in future. So, this will be a temporary flag to enable the transition. Not supported for Apigee hybrid. * `displayName` (*type:* `String.t`, *default:* `nil`) - Display name for the Apigee organization. Unused, but reserved for future use. * `environments` (*type:* `list(String.t)`, *default:* `nil`) - Output only. List of environments in the Apigee organization. * `expiresAt` (*type:* `String.t`, *default:* `nil`) - Output only. Time that the Apigee organization is scheduled for deletion. @@ -42,6 +46,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Organization do * `runtimeDatabaseEncryptionKeyName` (*type:* `String.t`, *default:* `nil`) - Cloud KMS key name used for encrypting the data that is stored and replicated across runtime instances. Update is not allowed after the organization is created. Required when [RuntimeType](#RuntimeType) is `CLOUD`. If not specified when [RuntimeType](#RuntimeType) is `TRIAL`, a Google-Managed encryption key will be used. For example: "projects/foo/locations/us/keyRings/bar/cryptoKeys/baz". **Note:** Not supported for Apigee hybrid. * `runtimeType` (*type:* `String.t`, *default:* `nil`) - Required. Runtime type of the Apigee organization based on the Apigee subscription purchased. * `state` (*type:* `String.t`, *default:* `nil`) - Output only. State of the organization. Values other than ACTIVE means the resource is not ready to use. + * `subscriptionPlan` (*type:* `String.t`, *default:* `nil`) - Output only. Subscription plan that the customer has purchased. Output only. * `subscriptionType` (*type:* `String.t`, *default:* `nil`) - Output only. DEPRECATED: This will eventually be replaced by BillingType. Subscription type of the Apigee organization. Valid values include trial (free, limited, and for evaluation purposes only) or paid (full subscription has been purchased). See [Apigee pricing](https://cloud.google.com/apigee/pricing/). * `type` (*type:* `String.t`, *default:* `nil`) - Not used by Apigee. """ @@ -51,14 +56,18 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Organization do @type t :: %__MODULE__{ :addonsConfig => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig.t() | nil, :analyticsRegion => String.t() | nil, + :apiConsumerDataEncryptionKeyName => String.t() | nil, + :apiConsumerDataLocation => String.t() | nil, :apigeeProjectId => String.t() | nil, :attributes => list(String.t()) | nil, :authorizedNetwork => String.t() | nil, :billingType => String.t() | nil, :caCertificate => String.t() | nil, + :controlPlaneEncryptionKeyName => String.t() | nil, :createdAt => String.t() | nil, :customerName => String.t() | nil, :description => String.t() | nil, + :disableVpcPeering => boolean() | nil, :displayName => String.t() | nil, :environments => list(String.t()) | nil, :expiresAt => String.t() | nil, @@ -70,20 +79,25 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Organization do :runtimeDatabaseEncryptionKeyName => String.t() | nil, :runtimeType => String.t() | nil, :state => String.t() | nil, + :subscriptionPlan => String.t() | nil, :subscriptionType => String.t() | nil, :type => String.t() | nil } field(:addonsConfig, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AddonsConfig) field(:analyticsRegion) + field(:apiConsumerDataEncryptionKeyName) + field(:apiConsumerDataLocation) field(:apigeeProjectId) field(:attributes, type: :list) field(:authorizedNetwork) field(:billingType) field(:caCertificate) + field(:controlPlaneEncryptionKeyName) field(:createdAt) field(:customerName) field(:description) + field(:disableVpcPeering) field(:displayName) field(:environments, type: :list) field(:expiresAt) @@ -95,6 +109,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1Organization do field(:runtimeDatabaseEncryptionKeyName) field(:runtimeType) field(:state) + field(:subscriptionPlan) field(:subscriptionType) field(:type) end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization_project_mapping.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization_project_mapping.ex index 43add4bc08..9aa448d4a5 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization_project_mapping.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_organization_project_mapping.ex @@ -23,7 +23,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1OrganizationProjectMappin * `location` (*type:* `String.t`, *default:* `nil`) - Output only. The Google Cloud region where control plane data is located. For more information, see https://cloud.google.com/about/locations/. * `organization` (*type:* `String.t`, *default:* `nil`) - Name of the Apigee organization. - * `projectId` (*type:* `String.t`, *default:* `nil`) - GCP project associated with the Apigee organization + * `projectId` (*type:* `String.t`, *default:* `nil`) - Google Cloud project associated with the Apigee organization * `projectIds` (*type:* `list(String.t)`, *default:* `nil`) - DEPRECATED: Use `project_id`. An Apigee Organization is mapped to a single project. """ diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config.ex new file mode 100644 index 0000000000..af9f374de7 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config.ex @@ -0,0 +1,50 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfig do + @moduledoc """ + ProfileConfig defines a set of categories and policies which will be used to compute security score. + + ## Attributes + + * `categories` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCategory.t)`, *default:* `nil`) - List of categories of profile config. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :categories => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCategory.t()) | nil + } + + field(:categories, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCategory, + type: :list + ) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_abuse.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_abuse.ex new file mode 100644 index 0000000000..7b6e054dea --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_abuse.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAbuse do + @moduledoc """ + Checks for abuse, which includes any requests sent to the API for purposes other than what it is intended for, such as high volumes of requests, data scraping, and abuse related to authorization. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAbuse do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAbuse.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAbuse do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_authorization.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_authorization.ex new file mode 100644 index 0000000000..3e8fc67ce4 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_authorization.ex @@ -0,0 +1,43 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAuthorization do + @moduledoc """ + By default, following policies will be included: - JWS - JWT - OAuth - BasicAuth - APIKey + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAuthorization do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAuthorization.decode(value, options) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAuthorization do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_category.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_category.ex new file mode 100644 index 0000000000..9c47007922 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_category.ex @@ -0,0 +1,67 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCategory do + @moduledoc """ + Advanced API Security provides security profile that scores the following categories. + + ## Attributes + + * `abuse` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAbuse.t`, *default:* `nil`) - Checks for abuse, which includes any requests sent to the API for purposes other than what it is intended for, such as high volumes of requests, data scraping, and abuse related to authorization. + * `authorization` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAuthorization.t`, *default:* `nil`) - Checks to see if you have an authorization policy in place. + * `cors` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCORS.t`, *default:* `nil`) - Checks to see if you have CORS policy in place. + * `mediation` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMediation.t`, *default:* `nil`) - Checks to see if you have a mediation policy in place. + * `mtls` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMTLS.t`, *default:* `nil`) - Checks to see if you have configured mTLS for the target server. + * `threat` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigThreat.t`, *default:* `nil`) - Checks to see if you have a threat protection policy in place. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :abuse => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAbuse.t() | nil, + :authorization => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAuthorization.t() | nil, + :cors => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCORS.t() | nil, + :mediation => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMediation.t() | nil, + :mtls => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMTLS.t() | nil, + :threat => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigThreat.t() | nil + } + + field(:abuse, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAbuse) + + field(:authorization, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigAuthorization + ) + + field(:cors, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCORS) + field(:mediation, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMediation) + field(:mtls, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMTLS) + field(:threat, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigThreat) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCategory do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCategory.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCategory do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_cors.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_cors.ex new file mode 100644 index 0000000000..70eec3f792 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_cors.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCORS do + @moduledoc """ + Checks to see if you have CORS policy in place. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCORS do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCORS.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigCORS do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mediation.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mediation.ex new file mode 100644 index 0000000000..011468bfc4 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mediation.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMediation do + @moduledoc """ + By default, following policies will be included: - OASValidation - SOAPMessageValidation + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMediation do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMediation.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMediation do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mtls.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mtls.ex new file mode 100644 index 0000000000..f989447948 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_mtls.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMTLS do + @moduledoc """ + Checks to see if you have configured mTLS for the target server. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMTLS do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMTLS.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigMTLS do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_threat.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_threat.ex new file mode 100644 index 0000000000..fbfb8dcc04 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_profile_config_threat.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigThreat do + @moduledoc """ + By default, following policies will be included: - XMLThreatProtection - JSONThreatProtection + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigThreat do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigThreat.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfigThreat do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_provision_organization_request.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_provision_organization_request.ex index 5dee161137..74016553bf 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_provision_organization_request.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_provision_organization_request.ex @@ -22,7 +22,8 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProvisionOrganizationRequ ## Attributes * `analyticsRegion` (*type:* `String.t`, *default:* `nil`) - Primary Cloud Platform region for analytics data storage. For valid values, see [Create an organization](https://cloud.google.com/apigee/docs/hybrid/latest/precog-provision). Defaults to `us-west1`. - * `authorizedNetwork` (*type:* `String.t`, *default:* `nil`) - Name of the customer project's VPC network. If provided, the network needs to be peered through Service Networking. If none is provided, the organization will have access only to the public internet. + * `authorizedNetwork` (*type:* `String.t`, *default:* `nil`) - Compute Engine network used for Service Networking to be peered with Apigee runtime instances. See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started). Apigee also supports shared VPC (that is, the host network project is not the same as the one that is peering with Apigee). See [Shared VPC overview](https://cloud.google.com/vpc/docs/shared-vpc). To use a shared VPC network, use the following format: `projects/{host-project-id}/{region}/networks/{network-name}`. For example: `projects/my-sharedvpc-host/global/networks/mynetwork` + * `disableVpcPeering` (*type:* `boolean()`, *default:* `nil`) - Optional. Flag that specifies whether the VPC Peering through Private Google Access should be disabled between the consumer network and Apigee. Required if an authorizedNetwork on the consumer project is not provided, in which case the flag should be set to true. The value must be set before the creation of any Apigee runtime instance and can be updated only when there are no runtime instances. **Note:** Apigee will be deprecating the vpc peering model that requires you to provide 'authorizedNetwork', by making the non-peering model as the default way of provisioning Apigee organization in future. So, this will be a temporary flag to enable the transition. Not supported for Apigee hybrid. * `runtimeLocation` (*type:* `String.t`, *default:* `nil`) - Cloud Platform location for the runtime instance. Defaults to zone `us-west1-a`. If a region is provided, `EVAL` organizations will use the region for automatically selecting a zone for the runtime instance. """ @@ -31,11 +32,13 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProvisionOrganizationRequ @type t :: %__MODULE__{ :analyticsRegion => String.t() | nil, :authorizedNetwork => String.t() | nil, + :disableVpcPeering => boolean() | nil, :runtimeLocation => String.t() | nil } field(:analyticsRegion) field(:authorizedNetwork) + field(:disableVpcPeering) field(:runtimeLocation) end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_routing_rule.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_routing_rule.ex index f1fb0022db..7070d7f973 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_routing_rule.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_routing_rule.ex @@ -22,8 +22,10 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RoutingRule do ## Attributes * `basepath` (*type:* `String.t`, *default:* `nil`) - URI path prefix used to route to the specified environment. May contain one or more wildcards. For example, path segments consisting of a single `*` character will match any string. + * `deploymentGroup` (*type:* `String.t`, *default:* `nil`) - Name of a deployment group in an environment bound to the environment group in the following format: `organizations/{org}/environment/{env}/deploymentGroups/{group}` Only one of environment or deployment_group will be set. * `envGroupRevision` (*type:* `String.t`, *default:* `nil`) - The env group config revision_id when this rule was added or last updated. This value is set when the rule is created and will only update if the the environment_id changes. It is used to determine if the runtime is up to date with respect to this rule. This field is omitted from the IngressConfig unless the GetDeployedIngressConfig API is called with view=FULL. - * `environment` (*type:* `String.t`, *default:* `nil`) - Name of an environment bound to the environment group in the following format: `organizations/{org}/environments/{env}`. + * `environment` (*type:* `String.t`, *default:* `nil`) - Name of an environment bound to the environment group in the following format: `organizations/{org}/environments/{env}`. Only one of environment or deployment_group will be set. + * `otherTargets` (*type:* `list(String.t)`, *default:* `nil`) - Conflicting targets, which will be resource names specifying either deployment groups or environments. * `receiver` (*type:* `String.t`, *default:* `nil`) - The resource name of the proxy revision that is receiving this basepath in the following format: `organizations/{org}/apis/{api}/revisions/{rev}`. This field is omitted from the IngressConfig unless the GetDeployedIngressConfig API is called with view=FULL. * `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - The unix timestamp when this rule was updated. This is updated whenever env_group_revision is updated. This field is omitted from the IngressConfig unless the GetDeployedIngressConfig API is called with view=FULL. """ @@ -32,15 +34,19 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RoutingRule do @type t :: %__MODULE__{ :basepath => String.t() | nil, + :deploymentGroup => String.t() | nil, :envGroupRevision => String.t() | nil, :environment => String.t() | nil, + :otherTargets => list(String.t()) | nil, :receiver => String.t() | nil, :updateTime => DateTime.t() | nil } field(:basepath) + field(:deploymentGroup) field(:envGroupRevision) field(:environment) + field(:otherTargets, type: :list) field(:receiver) field(:updateTime, as: DateTime) end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_addons_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_addons_config.ex new file mode 100644 index 0000000000..e0ed08382e --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_addons_config.ex @@ -0,0 +1,64 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAddonsConfig do + @moduledoc """ + RuntimeAddonsConfig defines the runtime configurations for add-ons in an environment. + + ## Attributes + + * `analyticsConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAnalyticsConfig.t`, *default:* `nil`) - Runtime configuration for Analytics add-on. + * `apiSecurityConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeApiSecurityConfig.t`, *default:* `nil`) - Runtime configuration for API Security add-on. + * `name` (*type:* `String.t`, *default:* `nil`) - Name of the addons config in the format: `organizations/{org}/environments/{env}/addonsConfig` + * `revisionId` (*type:* `String.t`, *default:* `nil`) - Revision number used by the runtime to detect config changes. + * `uid` (*type:* `String.t`, *default:* `nil`) - UID is to detect if config is recreated after deletion. The add-on config will only be deleted when the environment itself gets deleted, thus it will always be the same as the UID of EnvironmentConfig. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :analyticsConfig => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAnalyticsConfig.t() | nil, + :apiSecurityConfig => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeApiSecurityConfig.t() | nil, + :name => String.t() | nil, + :revisionId => String.t() | nil, + :uid => String.t() | nil + } + + field(:analyticsConfig, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAnalyticsConfig) + + field(:apiSecurityConfig, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeApiSecurityConfig + ) + + field(:name) + field(:revisionId) + field(:uid) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAddonsConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAddonsConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAddonsConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_analytics_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_analytics_config.ex new file mode 100644 index 0000000000..9584ddb022 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_analytics_config.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAnalyticsConfig do + @moduledoc """ + Runtime configuration for the Analytics add-on. + + ## Attributes + + * `billingPipelineEnabled` (*type:* `boolean()`, *default:* `nil`) - If Runtime should send billing data to AX or not. + * `enabled` (*type:* `boolean()`, *default:* `nil`) - If the Analytics is enabled or not. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :billingPipelineEnabled => boolean() | nil, + :enabled => boolean() | nil + } + + field(:billingPipelineEnabled) + field(:enabled) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAnalyticsConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAnalyticsConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeAnalyticsConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_api_security_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_api_security_config.ex new file mode 100644 index 0000000000..94c21ebe6f --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_runtime_api_security_config.ex @@ -0,0 +1,46 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeApiSecurityConfig do + @moduledoc """ + Runtime configuration for the API Security add-on. + + ## Attributes + + * `enabled` (*type:* `boolean()`, *default:* `nil`) - If the API Security is enabled or not. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :enabled => boolean() | nil + } + + field(:enabled) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeApiSecurityConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeApiSecurityConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1RuntimeApiSecurityConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action.ex new file mode 100644 index 0000000000..1bd52253e4 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action.ex @@ -0,0 +1,81 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction do + @moduledoc """ + A SecurityAction is rule that can be enforced at an environment level. The result is one of: - A denied API call - An explicitly allowed API call - A flagged API call (HTTP headers added before the target receives it) At least one condition is required to create a SecurityAction. + + ## Attributes + + * `allow` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionAllow.t`, *default:* `nil`) - Allow a request through if it matches this SecurityAction. + * `conditionConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionConditionConfig.t`, *default:* `nil`) - Required. A valid SecurityAction must contain at least one condition. + * `createTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The create time for this SecurityAction. + * `deny` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionDeny.t`, *default:* `nil`) - Deny a request through if it matches this SecurityAction. + * `description` (*type:* `String.t`, *default:* `nil`) - Optional. An optional user provided description of the SecurityAction. + * `expireTime` (*type:* `DateTime.t`, *default:* `nil`) - The expiration for this SecurityAction. + * `flag` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionFlag.t`, *default:* `nil`) - Flag a request through if it matches this SecurityAction. + * `name` (*type:* `String.t`, *default:* `nil`) - Immutable. This field is ignored during creation as per AIP-133. Please set the `security_action_id` field in the CreateSecurityActionRequest when creating a new SecurityAction. Format: organizations/{org}/environments/{env}/securityActions/{security_action} + * `state` (*type:* `String.t`, *default:* `nil`) - Required. Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced. + * `ttl` (*type:* `String.t`, *default:* `nil`) - Input only. The TTL for this SecurityAction. + * `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The update time for this SecurityAction. This reflects when this SecurityAction changed states. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :allow => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionAllow.t() | nil, + :conditionConfig => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionConditionConfig.t() | nil, + :createTime => DateTime.t() | nil, + :deny => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionDeny.t() | nil, + :description => String.t() | nil, + :expireTime => DateTime.t() | nil, + :flag => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionFlag.t() | nil, + :name => String.t() | nil, + :state => String.t() | nil, + :ttl => String.t() | nil, + :updateTime => DateTime.t() | nil + } + + field(:allow, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionAllow) + + field(:conditionConfig, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionConditionConfig + ) + + field(:createTime, as: DateTime) + field(:deny, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionDeny) + field(:description) + field(:expireTime, as: DateTime) + field(:flag, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionFlag) + field(:name) + field(:state) + field(:ttl) + field(:updateTime, as: DateTime) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityAction do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_allow.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_allow.ex new file mode 100644 index 0000000000..29fdc4562e --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_allow.ex @@ -0,0 +1,41 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionAllow do + @moduledoc """ + Message that should be set in case of an Allow Action. This does not have any fields. + + ## Attributes + + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{} +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionAllow do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionAllow.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionAllow do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_condition_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_condition_config.ex new file mode 100644 index 0000000000..a08be08df2 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_condition_config.ex @@ -0,0 +1,72 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionConditionConfig do + @moduledoc """ + The following are a list of conditions. A valid SecurityAction must contain at least one condition. Within a condition, each element is ORed. Across conditions elements are ANDed. For example if a SecurityAction has the following: ip_address_ranges: ["ip1", "ip2"] and bot_reasons: ["Flooder", "Robot Abuser"] then this is interpreted as: enforce the action if the incoming request has ((ip_address_ranges = "ip1" OR ip_address_ranges = "ip2") AND (bot_reasons="Flooder" OR bot_reasons="Robot Abuser")). Conditions other than ip_address_ranges and bot_reasons cannot be ANDed. + + ## Attributes + + * `accessTokens` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of access_tokens. Limit 1000 per action. + * `apiKeys` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of API keys. Limit 1000 per action. + * `apiProducts` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of API Products. Limit 1000 per action. + * `botReasons` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google. + * `developerApps` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of developer apps. Limit 1000 per action. + * `developers` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of developers. Limit 1000 per action. + * `ipAddressRanges` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action. + * `userAgents` (*type:* `list(String.t)`, *default:* `nil`) - Optional. A list of user agents to deny. We look for exact matches. Limit 50 per action. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :accessTokens => list(String.t()) | nil, + :apiKeys => list(String.t()) | nil, + :apiProducts => list(String.t()) | nil, + :botReasons => list(String.t()) | nil, + :developerApps => list(String.t()) | nil, + :developers => list(String.t()) | nil, + :ipAddressRanges => list(String.t()) | nil, + :userAgents => list(String.t()) | nil + } + + field(:accessTokens, type: :list) + field(:apiKeys, type: :list) + field(:apiProducts, type: :list) + field(:botReasons, type: :list) + field(:developerApps, type: :list) + field(:developers, type: :list) + field(:ipAddressRanges, type: :list) + field(:userAgents, type: :list) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionConditionConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionConditionConfig.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionConditionConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_deny.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_deny.ex new file mode 100644 index 0000000000..62f1748a19 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_deny.ex @@ -0,0 +1,46 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionDeny do + @moduledoc """ + Message that should be set in case of a Deny Action. + + ## Attributes + + * `responseCode` (*type:* `integer()`, *default:* `nil`) - Optional. The HTTP response code if the Action = DENY. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :responseCode => integer() | nil + } + + field(:responseCode) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionDeny do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionDeny.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionDeny do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_flag.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_flag.ex new file mode 100644 index 0000000000..a5627e6eb2 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_flag.ex @@ -0,0 +1,50 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionFlag do + @moduledoc """ + The message that should be set in the case of a Flag action. + + ## Attributes + + * `headers` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionHttpHeader.t)`, *default:* `nil`) - Optional. A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction. Limit 5 headers per SecurityAction. At least one is mandatory. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :headers => + list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionHttpHeader.t()) | nil + } + + field(:headers, + as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionHttpHeader, + type: :list + ) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionFlag do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionFlag.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionFlag do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category_data.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_http_header.ex similarity index 59% rename from clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category_data.ex rename to clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_http_header.ex index f9491b0d72..49db1710ef 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_api_category_data.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_action_http_header.ex @@ -15,40 +15,34 @@ # NOTE: This file is auto generated by the elixir code generator program. # Do not edit this file manually. -defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData do +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionHttpHeader do @moduledoc """ - the Api category resource. + An HTTP header. ## Attributes - * `id` (*type:* `String.t`, *default:* `nil`) - ID of the category (a UUID). - * `name` (*type:* `String.t`, *default:* `nil`) - Name of the category. - * `siteId` (*type:* `String.t`, *default:* `nil`) - Name of the portal. - * `updateTime` (*type:* `String.t`, *default:* `nil`) - Time the category was last modified in milliseconds since epoch. + * `name` (*type:* `String.t`, *default:* `nil`) - The header name to be sent to the target. + * `value` (*type:* `String.t`, *default:* `nil`) - The header value to be sent to the target. """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ - :id => String.t() | nil, :name => String.t() | nil, - :siteId => String.t() | nil, - :updateTime => String.t() | nil + :value => String.t() | nil } - field(:id) field(:name) - field(:siteId) - field(:updateTime) + field(:value) end -defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData do +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionHttpHeader do def decode(value, options) do - GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData.decode(value, options) + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionHttpHeader.decode(value, options) end end -defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ApiCategoryData do +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionHttpHeader do def encode(value, options) do GoogleApi.Gax.ModelBase.encode(value, options) end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_actions_config.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_actions_config.ex new file mode 100644 index 0000000000..44db537f1d --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_actions_config.ex @@ -0,0 +1,52 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig do + @moduledoc """ + SecurityActionsConfig reflects the current state of the SecurityActions feature. This is a singleton resource: https://google.aip.dev/156 + + ## Attributes + + * `enabled` (*type:* `boolean()`, *default:* `nil`) - The flag that controls whether this feature is enabled. This is `unset` by default. When this flag is `false`, even if individual rules are enabled, no SecurityActions will be enforced. + * `name` (*type:* `String.t`, *default:* `nil`) - This is a singleton resource, the name will always be set by SecurityActions and any user input will be ignored. The name is always: `organizations/{org}/environments/{env}/security_actions_config` + * `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The update time for configuration. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :enabled => boolean() | nil, + :name => String.t() | nil, + :updateTime => DateTime.t() | nil + } + + field(:enabled) + field(:name) + field(:updateTime, as: DateTime) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityActionsConfig do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_incident.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_incident.ex new file mode 100644 index 0000000000..0f3c0114dd --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_incident.ex @@ -0,0 +1,70 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident do + @moduledoc """ + Represents an SecurityIncident resource. + + ## Attributes + + * `detectionTypes` (*type:* `list(String.t)`, *default:* `nil`) - Output only. Detection types which are part of the incident. Examples: Flooder, OAuth Abuser, Static Content Scraper, Anomaly Detection. + * `displayName` (*type:* `String.t`, *default:* `nil`) - Optional. Display name of the security incident. + * `firstDetectedTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when events associated with the incident were first detected. + * `lastDetectedTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when events associated with the incident were last detected. + * `lastObservabilityChangeTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when the incident observability was last changed. + * `name` (*type:* `String.t`, *default:* `nil`) - Immutable. Name of the security incident resource. Format: organizations/{org}/environments/{environment}/securityIncidents/{incident} Example: organizations/apigee-org/environments/dev/securityIncidents/1234-5678-9101-1111 + * `observability` (*type:* `String.t`, *default:* `nil`) - Optional. Indicates if the user archived this incident. + * `riskLevel` (*type:* `String.t`, *default:* `nil`) - Output only. Risk level of the incident. + * `trafficCount` (*type:* `String.t`, *default:* `nil`) - Total traffic detected as part of the incident. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :detectionTypes => list(String.t()) | nil, + :displayName => String.t() | nil, + :firstDetectedTime => DateTime.t() | nil, + :lastDetectedTime => DateTime.t() | nil, + :lastObservabilityChangeTime => DateTime.t() | nil, + :name => String.t() | nil, + :observability => String.t() | nil, + :riskLevel => String.t() | nil, + :trafficCount => String.t() | nil + } + + field(:detectionTypes, type: :list) + field(:displayName) + field(:firstDetectedTime, as: DateTime) + field(:lastDetectedTime, as: DateTime) + field(:lastObservabilityChangeTime, as: DateTime) + field(:name) + field(:observability) + field(:riskLevel) + field(:trafficCount) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile.ex index c41186d3ec..818ca6cb60 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile.ex @@ -21,14 +21,16 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile do ## Attributes - * `displayName` (*type:* `String.t`, *default:* `nil`) - Display name of the security profile. + * `description` (*type:* `String.t`, *default:* `nil`) - Description of the security profile. + * `displayName` (*type:* `String.t`, *default:* `nil`) - DEPRECATED: DO NOT USE Display name of the security profile. * `environments` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironment.t)`, *default:* `nil`) - List of environments attached to security profile. * `maxScore` (*type:* `integer()`, *default:* `nil`) - Output only. Maximum security score that can be generated by this profile. * `minScore` (*type:* `integer()`, *default:* `nil`) - Output only. Minimum security score that can be generated by this profile. * `name` (*type:* `String.t`, *default:* `nil`) - Immutable. Name of the security profile resource. Format: organizations/{org}/securityProfiles/{profile} + * `profileConfig` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfig.t`, *default:* `nil`) - Required. Customized profile configuration that computes the security score. * `revisionCreateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when revision was created. * `revisionId` (*type:* `String.t`, *default:* `nil`) - Output only. Revision ID of the security profile. - * `revisionPublishTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when revision was published. Once published, the security profile revision cannot be updated further and can be attached to environments. + * `revisionPublishTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. DEPRECATED: DO NOT USE The time when revision was published. Once published, the security profile revision cannot be updated further and can be attached to environments. * `revisionUpdateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when revision was updated. * `scoringConfigs` (*type:* `list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileScoringConfig.t)`, *default:* `nil`) - List of profile scoring configs in this revision. """ @@ -36,6 +38,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile do use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ + :description => String.t() | nil, :displayName => String.t() | nil, :environments => list(GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironment.t()) @@ -43,6 +46,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile do :maxScore => integer() | nil, :minScore => integer() | nil, :name => String.t() | nil, + :profileConfig => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfig.t() | nil, :revisionCreateTime => DateTime.t() | nil, :revisionId => String.t() | nil, :revisionPublishTime => DateTime.t() | nil, @@ -52,6 +56,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile do | nil } + field(:description) field(:displayName) field(:environments, @@ -62,6 +67,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfile do field(:maxScore) field(:minScore) field(:name) + field(:profileConfig, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1ProfileConfig) field(:revisionCreateTime, as: DateTime) field(:revisionId) field(:revisionPublishTime, as: DateTime) diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile_environment_association.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile_environment_association.ex index e62f64bf49..69bf44b900 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile_environment_association.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_profile_environment_association.ex @@ -22,8 +22,8 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityProfileEnvironmen ## Attributes * `attachTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when environment was attached to the security profile. - * `name` (*type:* `String.t`, *default:* `nil`) - Immutable. Name of the profile-environment association resource. Format: organizations/{org}/securityProfiles/{profile}/environments/{env} - * `securityProfileRevisionId` (*type:* `String.t`, *default:* `nil`) - Revision ID of the security profile. + * `name` (*type:* `String.t`, *default:* `nil`) - Immutable. Name of the environment that the profile is attached to. + * `securityProfileRevisionId` (*type:* `String.t`, *default:* `nil`) - DEPRECATED: DO NOT USE Revision ID of the security profile. """ use GoogleApi.Gax.ModelBase diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_settings.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_settings.ex new file mode 100644 index 0000000000..55ed037e0a --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_security_settings.ex @@ -0,0 +1,49 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings do + @moduledoc """ + SecuritySettings reflects the current state of the SecuritySettings feature. + + ## Attributes + + * `mlRetrainingFeedbackEnabled` (*type:* `boolean()`, *default:* `nil`) - Optional. If true the user consents to the use of ML models for Abuse detection. + * `name` (*type:* `String.t`, *default:* `nil`) - Identifier. Full resource name is always `organizations/{org}/securitySettings`. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :mlRetrainingFeedbackEnabled => boolean() | nil, + :name => String.t() | nil + } + + field(:mlRetrainingFeedbackEnabled) + field(:name) +end + +defimpl Poison.Decoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings.decode(value, options) + end +end + +defimpl Poison.Encoder, for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecuritySettings do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_set_addon_enablement_request.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_set_addon_enablement_request.ex new file mode 100644 index 0000000000..6efafe1a35 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_set_addon_enablement_request.ex @@ -0,0 +1,51 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SetAddonEnablementRequest do + @moduledoc """ + Request for SetAddonEnablement. + + ## Attributes + + * `analyticsEnabled` (*type:* `boolean()`, *default:* `nil`) - If the Analytics should be enabled in the environment. + * `apiSecurityEnabled` (*type:* `boolean()`, *default:* `nil`) - If the API Security should be enabled in the environment. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :analyticsEnabled => boolean() | nil, + :apiSecurityEnabled => boolean() | nil + } + + field(:analyticsEnabled) + field(:apiSecurityEnabled) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SetAddonEnablementRequest do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SetAddonEnablementRequest.decode(value, options) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SetAddonEnablementRequest do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_target_server.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_target_server.ex index d376e50a25..4359332f40 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_target_server.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_target_server.ex @@ -17,7 +17,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1TargetServer do @moduledoc """ - TargetServer configuration. TargetServers are used to decouple a proxy's TargetEndpoint HTTPTargetConnections from concrete URLs for backend services. + TargetServer configuration. TargetServers are used to decouple a proxy TargetEndpoint HTTPTargetConnections from concrete URLs for backend services. ## Attributes diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_app_group_app_key_request.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_app_group_app_key_request.ex new file mode 100644 index 0000000000..18153cee22 --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_app_group_app_key_request.ex @@ -0,0 +1,57 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest do + @moduledoc """ + Request for UpdateAppGroupAppKey + + ## Attributes + + * `action` (*type:* `String.t`, *default:* `nil`) - Approve or revoke the consumer key by setting this value to `approve` or `revoke` respectively. The `Content-Type` header, if set, must be set to `application/octet-stream`, with empty body. + * `apiProducts` (*type:* `list(String.t)`, *default:* `nil`) - The list of API products that will be associated with the credential. This list will be appended to the existing list of associated API Products for this App Key. Duplicates will be ignored. + * `appGroupAppKey` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t`, *default:* `nil`) - The new AppGroupKey to be amended. Note that the status can be updated only via action. + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :action => String.t() | nil, + :apiProducts => list(String.t()) | nil, + :appGroupAppKey => GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey.t() | nil + } + + field(:action) + field(:apiProducts, type: :list) + field(:appGroupAppKey, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1AppGroupAppKey) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_security_incident_request.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_security_incident_request.ex new file mode 100644 index 0000000000..da962f7b4d --- /dev/null +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_cloud_apigee_v1_update_security_incident_request.ex @@ -0,0 +1,55 @@ +# Copyright 2019 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# NOTE: This file is auto generated by the elixir code generator program. +# Do not edit this file manually. + +defmodule GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateSecurityIncidentRequest do + @moduledoc """ + Request for UpdateSecurityIncident. + + ## Attributes + + * `securityIncident` (*type:* `GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t`, *default:* `nil`) - Required. The security incident to update. Must contain all existing populated fields of the current incident. + * `updateMask` (*type:* `String.t`, *default:* `nil`) - Required. The list of fields to update. Allowed fields are: LINT.IfChange(allowed_update_fields_comment) - observability LINT.ThenChange() + """ + + use GoogleApi.Gax.ModelBase + + @type t :: %__MODULE__{ + :securityIncident => + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident.t() | nil, + :updateMask => String.t() | nil + } + + field(:securityIncident, as: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1SecurityIncident) + field(:updateMask) +end + +defimpl Poison.Decoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateSecurityIncidentRequest do + def decode(value, options) do + GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateSecurityIncidentRequest.decode( + value, + options + ) + end +end + +defimpl Poison.Encoder, + for: GoogleApi.Apigee.V1.Model.GoogleCloudApigeeV1UpdateSecurityIncidentRequest do + def encode(value, options) do + GoogleApi.Gax.ModelBase.encode(value, options) + end +end diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_binding.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_binding.ex index fbba29c177..870c94691d 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_binding.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_binding.ex @@ -22,8 +22,8 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleIamV1Binding do ## Attributes * `condition` (*type:* `GoogleApi.Apigee.V1.Model.GoogleTypeExpr.t`, *default:* `nil`) - 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 principals 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). - * `members` (*type:* `list(String.t)`, *default:* `nil`) - Specifies the principals requesting access for a Google Cloud 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. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `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`. - * `role` (*type:* `String.t`, *default:* `nil`) - Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * `members` (*type:* `list(String.t)`, *default:* `nil`) - Specifies the principals requesting access for a Google Cloud 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. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `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. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. + * `role` (*type:* `String.t`, *default:* `nil`) - Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles). """ use GoogleApi.Gax.ModelBase diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_policy.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_policy.ex index d2c884023e..04bf9c6402 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_policy.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_iam_v1_policy.ex @@ -17,7 +17,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleIamV1Policy do @moduledoc """ - 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`, or principals, to a single `role`. Principals 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 < 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 < 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/). + 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`, or principals, to a single `role`. Principals 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 < 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 < 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/). ## Attributes diff --git a/clients/apigee/lib/google_api/apigee/v1/model/google_longrunning_operation.ex b/clients/apigee/lib/google_api/apigee/v1/model/google_longrunning_operation.ex index 1509e3e9d5..196e78372d 100644 --- a/clients/apigee/lib/google_api/apigee/v1/model/google_longrunning_operation.ex +++ b/clients/apigee/lib/google_api/apigee/v1/model/google_longrunning_operation.ex @@ -25,7 +25,7 @@ defmodule GoogleApi.Apigee.V1.Model.GoogleLongrunningOperation do * `error` (*type:* `GoogleApi.Apigee.V1.Model.GoogleRpcStatus.t`, *default:* `nil`) - The error result of the operation in case of failure or cancellation. * `metadata` (*type:* `map()`, *default:* `nil`) - 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. * `name` (*type:* `String.t`, *default:* `nil`) - 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}`. - * `response` (*type:* `map()`, *default:* `nil`) - The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + * `response` (*type:* `map()`, *default:* `nil`) - 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`. """ use GoogleApi.Gax.ModelBase