lib/oci/key_management/kms_management_client.rb
# Schedules the deletion of the specified key version. This sets the lifecycle state of the key version
# to `PENDING_DELETION` and then deletes it after the specified retention period ends.
#
# As a provisioning operation, this call is subject to a Key Management limit that applies to
# the total number of requests across all provisioning write operations. Key Management might
# throttle this call to reject an otherwise valid request when the total rate of provisioning
# write operations exceeds 10 requests per second for a given tenancy.
#
# @param [String] key_id The OCID of the key.
# @param [String] key_version_id The OCID of the key version.
# @param [OCI::KeyManagement::Models::ScheduleKeyVersionDeletionDetails] schedule_key_version_deletion_details ScheduleKeyVersionDeletionDetails
# @param [Hash] opts the optional parameters
# @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
#   retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
# @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call for a
#   resource, set the `if-match` parameter to the value of the etag from a
#   previous GET or POST response for that resource. The resource will be
#   updated or deleted only if the etag you provide matches the resource's
#   current etag value.
#
# @option opts [String] :opc_request_id Unique identifier for the request. If provided, the returned request ID
#   will include this value. Otherwise, a random request ID will be
#   generated by the service.
#
# @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case
#   of a timeout or server error without risk of executing that same action
#   again. Retry tokens expire after 24 hours, but can be invalidated
#   before then due to conflicting operations (e.g., if a resource has been
#   deleted and purged from the system, then a retry of the original
#   creation request may be rejected).
#
# @return [Response] A Response object with data of type {OCI::KeyManagement::Models::KeyVersion KeyVersion}
# @note Click [here](https://docs.cloud.oracle.com/en-us/iaas/tools/ruby-sdk-examples/latest/keymanagement/schedule_key_version_deletion.rb.html) to see an example of how to use schedule_key_version_deletion API.
Schedules the deletion of the specified key version. This sets the lifecycle state of the key version
to `PENDING_DELETION` and then deletes it after the specified retention period ends.

As a provisioning operation, this call is subject to a Key Management limit that applies to
the total number of requests across all provisioning write operations. Key Management might
throttle this call to reject an otherwise valid request when the total rate of provisioning
write operations exceeds 10 requests per second for a given tenancy.
Schedules the deletion of the specified key version . This sets the lifecycle state of the key version to ` PENDING_DELETION ` and then deletes it after the specified retention period ends . As a provisioning operation this call is subject to a Key Management limit that applies to the total number of requests across all provisioning write operations . Key Management might throttle this call to reject an otherwise valid request when the total rate of provisioning write operations exceeds 10 requests per second for a given tenancy .
def schedule_key_version_deletion(key_id, key_version_id, schedule_key_version_deletion_details, opts = {})
      logger.debug 'Calling operation KmsManagementClient#schedule_key_version_deletion.' if logger
      raise "Missing the required parameter 'key_id' when calling schedule_key_version_deletion." if key_id.nil?
      raise "Missing the required parameter 'key_version_id' when calling schedule_key_version_deletion." if key_version_id.nil?
      raise "Missing the required parameter 'schedule_key_version_deletion_details' when calling schedule_key_version_deletion." if schedule_key_version_deletion_details.nil?
      raise "Parameter value for 'key_id' must not be blank" if OCI::Internal::Util.blank_string?(key_id)
      raise "Parameter value for 'key_version_id' must not be blank" if OCI::Internal::Util.blank_string?(key_version_id)
      path = '/20180608/keys/{keyId}/keyVersions/{keyVersionId}/actions/scheduleDeletion'.sub('{keyId}', key_id.to_s).sub('{keyVersionId}', key_version_id.to_s)
      operation_signing_strategy = :standard
      query_params = {}
      header_params = {}
      header_params[:accept] = 'application/json'
      header_params[:'content-type'] = 'application/json'
      header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
      header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
      header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
      header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
      post_body = @api_client.object_to_http_body(schedule_key_version_deletion_details)
      OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'KmsManagementClient#schedule_key_version_deletion') do
        @api_client.call_api(
          :POST,
          path,
          endpoint,
          header_params: header_params,
          query_params: query_params,
          operation_signing_strategy: operation_signing_strategy,
          body: post_body,
          return_type: 'OCI::KeyManagement::Models::KeyVersion'
        )
      end
    end
def schedule_key_version_deletion ( key_id , key_version_id , schedule_key_version_deletion_details , opts = { } ) logger . debug 'Calling operation KmsManagementClient#schedule_key_version_deletion.' if logger raise "Missing the required parameter 'key_id' when calling schedule_key_version_deletion." if key_id . nil? raise "Missing the required parameter 'key_version_id' when calling schedule_key_version_deletion." if key_version_id . nil? raise "Missing the required parameter 'schedule_key_version_deletion_details' when calling schedule_key_version_deletion." if schedule_key_version_deletion_details . nil? raise "Parameter value for 'key_id' must not be blank" if OCI :: Internal :: Util . blank_string? ( key_id ) raise "Parameter value for 'key_version_id' must not be blank" if OCI :: Internal :: Util . blank_string? ( key_version_id ) path = '/20180608/keys/{keyId}/keyVersions/{keyVersionId}/actions/scheduleDeletion' . sub ( '{keyId}' , key_id . to_s ) . sub ( '{keyVersionId}' , key_version_id . to_s ) operation_signing_strategy = :standard query_params = { } header_params = { } header_params [ :accept ] = 'application/json' header_params [ :' content-type ' ] = 'application/json' header_params [ :' if-match ' ] = opts [ :if_match ] if opts [ :if_match ] header_params [ :' opc-request-id ' ] = opts [ :opc_request_id ] if opts [ :opc_request_id ] header_params [ :' opc-retry-token ' ] = opts [ :opc_retry_token ] if opts [ :opc_retry_token ] header_params [ :' opc-retry-token ' ] ||= OCI :: Retry . generate_opc_retry_token post_body = @api_client . object_to_http_body ( schedule_key_version_deletion_details ) OCI :: Retry . make_retrying_call ( applicable_retry_config ( opts ) , call_name : 'KmsManagementClient#schedule_key_version_deletion' ) do @api_client . call_api ( :POST , path , endpoint , header_params : header_params , query_params : query_params , operation_signing_strategy : operation_signing_strategy , body : post_body , return_type : 'OCI::KeyManagement::Models::KeyVersion' ) end end
Schedules the deletion of the specified key version.
Schedules the deletion of the specified key version .
# rubocop:disable Style/NegatedIf # Query Params # Header Params # rubocop:enable Style/NegatedIf # rubocop:disable Metrics/BlockLength # rubocop:enable Metrics/BlockLength
A Response object with data of type {OCI::KeyManagement::Models::KeyVersion KeyVersion}
A Response object with data of type { OCI :: KeyManagement :: Models :: KeyVersion KeyVersion }
Response
key_id
key_version_id
schedule_key_version_deletion_details
opts
:opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations .
: opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again . Retry tokens expire after 24 hours but can be invalidated before then due to conflicting operations .
opts the optional parameters
opts the optional parameters
note
Click [here] to see an example of how to use schedule_key_version_deletion API.
Click [ here ] to see an example of how to use schedule_key_version_deletion API .