lib/oci/ons/notification_control_plane_client.rb
# Creates a topic in the specified compartment. For general information about topics, see
# [Managing Topics and Subscriptions](https://docs.cloud.oracle.com/iaas/Content/Notification/Tasks/managingtopicsandsubscriptions.htm).
#
# For the purposes of access control, you must provide the OCID of the compartment where you want the topic to reside.
# For information about access control and compartments, see [Overview of the IAM Service](https://docs.cloud.oracle.com/Content/Identity/Concepts/overview.htm).
#
# You must specify a display name for the topic.
#
# All Oracle Cloud Infrastructure resources, including topics, get an Oracle-assigned, unique ID called an
# Oracle Cloud Identifier (OCID). When you create a resource, you can find its OCID in the response. You can also
# retrieve a resource's OCID by using a List API operation on that resource type, or by viewing the resource in the
# Console. For more information, see [Resource Identifiers](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
#
# Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
#
# @param [OCI::Ons::Models::CreateTopicDetails] create_topic_details The topic to create.
# @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] :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 that due to conflicting operations (for example, if a resource
#   has been deleted and purged from the system, then a retry of the original creation request
#   may be rejected).
#
# @option opts [String] :opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
#   particular request, please provide the request ID.
#
# @return [Response] A Response object with data of type {OCI::Ons::Models::NotificationTopic NotificationTopic}
Creates a topic in the specified compartment. For general information about topics, see
[Managing Topics and Subscriptions].

For the purposes of access control, you must provide the OCID of the compartment where you want the topic to reside.
For information about access control and compartments, see [Overview of the IAM Service].

You must specify a display name for the topic.

All Oracle Cloud Infrastructure resources, including topics, get an Oracle-assigned, unique ID called an
Oracle Cloud Identifier (OCID). When you create a resource, you can find its OCID in the response. You can also
retrieve a resource's OCID by using a List API operation on that resource type, or by viewing the resource in the
Console. For more information, see [Resource Identifiers].

Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
Creates a topic in the specified compartment . For general information about topics see [ Managing Topics and Subscriptions ] . For the purposes of access control you must provide the OCID of the compartment where you want the topic to reside . For information about access control and compartments see [ Overview of the IAM Service ] . You must specify a display name for the topic . All Oracle Cloud Infrastructure resources including topics get an Oracle - assigned unique ID called an Oracle Cloud Identifier ( OCID ) . When you create a resource you can find its OCID in the response . You can also retrieve a resource ' s OCID by using a List API operation on that resource type or by viewing the resource in the Console . For more information see [ Resource Identifiers ] . Transactions Per Minute ( TPM ) per - tenancy limit for this operation : 60 .
def create_topic(create_topic_details, opts = {})
      logger.debug 'Calling operation NotificationControlPlaneClient#create_topic.' if logger
      raise "Missing the required parameter 'create_topic_details' when calling create_topic." if create_topic_details.nil?
      path = '/topics'
      operation_signing_strategy = :standard
      query_params = {}
      header_params = {}
      header_params[:accept] = 'application/json'
      header_params[:'content-type'] = 'application/json'
      header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
      header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
      header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
      post_body = @api_client.object_to_http_body(create_topic_details)
      OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'NotificationControlPlaneClient#create_topic') 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::Ons::Models::NotificationTopic'
        )
      end
    end
def create_topic ( create_topic_details , opts = { } ) logger . debug 'Calling operation NotificationControlPlaneClient#create_topic.' if logger raise "Missing the required parameter 'create_topic_details' when calling create_topic." if create_topic_details . nil? path = '/topics' operation_signing_strategy = :standard query_params = { } header_params = { } header_params [ :accept ] = 'application/json' header_params [ :' content-type ' ] = 'application/json' header_params [ :' opc-retry-token ' ] = opts [ :opc_retry_token ] if opts [ :opc_retry_token ] header_params [ :' opc-request-id ' ] = opts [ :opc_request_id ] if opts [ :opc_request_id ] header_params [ :' opc-retry-token ' ] ||= OCI :: Retry . generate_opc_retry_token post_body = @api_client . object_to_http_body ( create_topic_details ) OCI :: Retry . make_retrying_call ( applicable_retry_config ( opts ) , call_name : 'NotificationControlPlaneClient#create_topic' ) 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::Ons::Models::NotificationTopic' ) end end
Creates a topic in the specified compartment.
Creates a topic in the specified compartment .
# 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::Ons::Models::NotificationTopic NotificationTopic}
A Response object with data of type { OCI :: Ons :: Models :: NotificationTopic NotificationTopic }
Response
create_topic_details
<not_specific>
opts
:opc_request_id The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID.
: opc_request_id The unique Oracle - assigned identifier for the request . If you need to contact Oracle about a particular request please provide the request ID .
<not_specific>
opts the optional parameters
opts the optional parameters