/** * Notifications API * Use the Notifications API to broadcast messages to distributed components by topic, using a publish-subscribe pattern. For information about managing topics, subscriptions, and messages, see [Notifications Overview](https://docs.oracle.com/iaas/Content/Notification/Concepts/notificationoverview.htm). * OpenAPI spec version: 20181201 * * * NOTE: This class is auto generated by OracleSDKGenerator. * Do not edit the class manually. * * Copyright (c) 2020, 2026, Oracle and/or its affiliates. All rights reserved. * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. */ import common = require("oci-common"); import * as requests from "./request"; import * as model from "./model"; import * as responses from "./response"; import { NotificationDataPlaneWaiter } from "./notificationdataplane-waiter"; declare const Breaker: any; export declare enum NotificationControlPlaneApiKeys { } /** * This service client uses {@link common.CircuitBreaker.DefaultConfiguration} for all the operations by default if no circuit breaker configuration is defined by the user. */ export declare class NotificationControlPlaneClient { protected static serviceEndpointTemplate: string; protected static endpointServiceName: string; protected "_realmSpecificEndpointTemplateEnabled": boolean | undefined; protected "_endpoint": string; protected "_defaultHeaders": any; protected "_clientConfiguration": common.ClientConfiguration; protected _circuitBreaker: typeof Breaker | null; protected _httpOptions: any; protected _bodyDuplexMode: any; targetService: string; protected _regionId: string; protected "_region": common.Region; protected _lastSetRegionOrRegionId: string; protected _httpClient: common.HttpClient; protected _authProvider: common.AuthenticationDetailsProvider | undefined; constructor(params: common.AuthParams, clientConfiguration?: common.ClientConfiguration); /** * Get the endpoint that is being used to call (ex, https://www.example.com). */ get endpoint(): string; /** * Sets the endpoint to call (ex, https://www.example.com). * @param endpoint The endpoint of the service. */ set endpoint(endpoint: string); get logger(): import("oci-common/lib/log").Logger; /** * Determines whether realm specific endpoint should be used or not. * Set realmSpecificEndpointTemplateEnabled to "true" if the user wants to enable use of realm specific endpoint template, otherwise set it to "false" * @param realmSpecificEndpointTemplateEnabled flag to enable the use of realm specific endpoint template */ set useRealmSpecificEndpointTemplate(realmSpecificEndpointTemplateEnabled: boolean); /** * Sets the region to call (ex, Region.US_PHOENIX_1). * Note, this will call {@link #endpoint(String) endpoint} after resolving the endpoint. * @param region The region of the service. */ set region(region: common.Region); /** * Sets the regionId to call (ex, 'us-phoenix-1'). * * Note, this will first try to map the region ID to a known Region and call {@link #region(Region) region}. * If no known Region could be determined, it will create an endpoint assuming its in default Realm OC1 * and then call {@link #endpoint(String) endpoint}. * @param regionId The public region ID. */ set regionId(regionId: string); /** * Shutdown the circuit breaker used by the client when it is no longer needed */ shutdownCircuitBreaker(): void; /** * Close the provider if possible which in turn shuts down any associated circuit breaker */ closeProvider(): void; /** * Close the client once it is no longer needed */ close(): void; /** * Moves a topic into a different compartment within the same tenancy. For information about moving resources * between compartments, see * [Moving Resources to a Different Compartment](https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes). *
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param ChangeTopicCompartmentRequest
* @return ChangeTopicCompartmentResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/ChangeTopicCompartment.ts.html |here} to see how to use ChangeTopicCompartment API.
*/
changeTopicCompartment(changeTopicCompartmentRequest: requests.ChangeTopicCompartmentRequest): Promise
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.oracle.com/iaas/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.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
*
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param CreateTopicRequest
* @return CreateTopicResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/CreateTopic.ts.html |here} to see how to use CreateTopic API.
*/
createTopic(createTopicRequest: requests.CreateTopicRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param DeleteTopicRequest
* @return DeleteTopicResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/DeleteTopic.ts.html |here} to see how to use DeleteTopic API.
*/
deleteTopic(deleteTopicRequest: requests.DeleteTopicRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 120.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param ListTopicsRequest
* @return ListTopicsResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/ListTopics.ts.html |here} to see how to use ListTopics API.
*/
listTopics(listTopicsRequest: requests.ListTopicsRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param UpdateTopicRequest
* @return UpdateTopicResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/UpdateTopic.ts.html |here} to see how to use UpdateTopic API.
*/
updateTopic(updateTopicRequest: requests.UpdateTopicRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param ChangeSubscriptionCompartmentRequest
* @return ChangeSubscriptionCompartmentResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/ChangeSubscriptionCompartment.ts.html |here} to see how to use ChangeSubscriptionCompartment API.
*/
changeSubscriptionCompartment(changeSubscriptionCompartmentRequest: requests.ChangeSubscriptionCompartmentRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param CreateSubscriptionRequest
* @return CreateSubscriptionResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/CreateSubscription.ts.html |here} to see how to use CreateSubscription API.
*/
createSubscription(createSubscriptionRequest: requests.CreateSubscriptionRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param DeleteSubscriptionRequest
* @return DeleteSubscriptionResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/DeleteSubscription.ts.html |here} to see how to use DeleteSubscription API.
*/
deleteSubscription(deleteSubscriptionRequest: requests.DeleteSubscriptionRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param GetConfirmSubscriptionRequest
* @return GetConfirmSubscriptionResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/GetConfirmSubscription.ts.html |here} to see how to use GetConfirmSubscription API.
*/
getConfirmSubscription(getConfirmSubscriptionRequest: requests.GetConfirmSubscriptionRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param GetSubscriptionRequest
* @return GetSubscriptionResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/GetSubscription.ts.html |here} to see how to use GetSubscription API.
*/
getSubscription(getSubscriptionRequest: requests.GetSubscriptionRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param GetUnsubscriptionRequest
* @return GetUnsubscriptionResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/GetUnsubscription.ts.html |here} to see how to use GetUnsubscription API.
*/
getUnsubscription(getUnsubscriptionRequest: requests.GetUnsubscriptionRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param ListSubscriptionsRequest
* @return ListSubscriptionsResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/ListSubscriptions.ts.html |here} to see how to use ListSubscriptions API.
*/
listSubscriptions(listSubscriptionsRequest: requests.ListSubscriptionsRequest): Promise
The topic endpoint is required for this operation.
* To get the topic endpoint, use {@link #getTopic(GetTopicRequest) getTopic}
* and review the `apiEndpoint` value in the response ({@link NotificationTopic}).
*
Limits information follows.
*
Message size limit per request: 64KB.
*
Message delivery rate limit per endpoint: 60 messages per minute for HTTP-based protocols, 10 messages per minute for the `EMAIL` protocol.
* HTTP-based protocols use URL endpoints that begin with \"http:\" or \"https:\".
*
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60 per topic. (This TPM limit represents messages per minute.)
*
For more information about publishing messages, see [Publishing Messages](https://docs.oracle.com/iaas/Content/Notification/Tasks/publishingmessages.htm).
* For steps to request a limit increase, see [Requesting a Service Limit Increase](https://docs.oracle.com/iaas/Content/General/Concepts/servicelimits.htm#three).
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param PublishMessageRequest
* @return PublishMessageResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/PublishMessage.ts.html |here} to see how to use PublishMessage API.
*/
publishMessage(publishMessageRequest: requests.PublishMessageRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param ResendSubscriptionConfirmationRequest
* @return ResendSubscriptionConfirmationResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/ResendSubscriptionConfirmation.ts.html |here} to see how to use ResendSubscriptionConfirmation API.
*/
resendSubscriptionConfirmation(resendSubscriptionConfirmationRequest: requests.ResendSubscriptionConfirmationRequest): Promise
Transactions Per Minute (TPM) per-tenancy limit for this operation: 60.
*
* This operation does not retry by default if the user has not defined a retry configuration.
* @param UpdateSubscriptionRequest
* @return UpdateSubscriptionResponse
* @throws OciError when an error occurs
* @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/UpdateSubscription.ts.html |here} to see how to use UpdateSubscription API.
*/
updateSubscription(updateSubscriptionRequest: requests.UpdateSubscriptionRequest): Promise