/** * 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; /** * Creates a topic in the specified compartment. For general information about topics, see * [Managing Topics and Subscriptions](https://docs.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.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; /** * Deletes the specified topic. *

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; /** * Gets the specified topic's configuration information. * * This operation does not retry by default if the user has not defined a retry configuration. * @param GetTopicRequest * @return GetTopicResponse * @throws OciError when an error occurs * @example Click {@link https://docs.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/ons/GetTopic.ts.html |here} to see how to use GetTopic API. */ getTopic(getTopicRequest: requests.GetTopicRequest): Promise; /** * Lists topics in the specified compartment. *

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; /** * NOTE: This function is deprecated in favor of listTopicsRecordIterator function. * Creates a new async iterator which will iterate over the models.NotificationTopicSummary objects * contained in responses from the listTopics operation. This iterator will fetch more data from the * server as needed. * * @param request a request which can be sent to the service operation */ listAllTopics(request: requests.ListTopicsRequest): AsyncIterableIterator; /** * NOTE: This function is deprecated in favor of listTopicsResponseIterator function. * Creates a new async iterator which will iterate over the responses received from the listTopics operation. This iterator * will fetch more data from the server as needed. * * @param request a request which can be sent to the service operation */ listAllTopicsResponses(request: requests.ListTopicsRequest): AsyncIterableIterator; /** * Creates a new async iterator which will iterate over the models.NotificationTopicSummary objects * contained in responses from the listTopics operation. This iterator will fetch more data from the * server as needed. * * @param request a request which can be sent to the service operation */ listTopicsRecordIterator(request: requests.ListTopicsRequest): AsyncIterableIterator; /** * Creates a new async iterator which will iterate over the responses received from the listTopics operation. This iterator * will fetch more data from the server as needed. * * @param request a request which can be sent to the service operation */ listTopicsResponseIterator(request: requests.ListTopicsRequest): AsyncIterableIterator; /** * Updates the specified topic's configuration. *

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; } export declare enum NotificationDataPlaneApiKeys { } /** * 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 NotificationDataPlaneClient { protected static serviceEndpointTemplate: string; protected static endpointServiceName: string; protected "_realmSpecificEndpointTemplateEnabled": boolean | undefined; protected "_endpoint": string; protected "_defaultHeaders": any; protected "_waiters": NotificationDataPlaneWaiter; 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); /** * Creates a new NotificationDataPlaneWaiter for resources for this service. * * @param config The waiter configuration for termination and delay strategy * @return The service waiters. */ createWaiters(config?: common.WaiterConfiguration): NotificationDataPlaneWaiter; /** * Gets the waiters available for resources for this service. * * @return The service waiters. */ getWaiters(): NotificationDataPlaneWaiter; /** * 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 subscription 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 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; /** * Creates a subscription for the specified topic and sends a subscription confirmation URL to the endpoint. The subscription remains in \"Pending\" status until it has been confirmed. * For information about confirming subscriptions, see * [To confirm a subscription](https://docs.oracle.com/iaas/Content/Notification/Tasks/managingtopicsandsubscriptions.htm#confirmSub). *

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; /** * Deletes the specified subscription. *

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; /** * Gets the confirmation details for the specified subscription. *

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; /** * Gets the specified subscription's configuration information. *

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; /** * Unsubscribes the subscription from the topic. *

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; /** * Lists the subscriptions in the specified compartment or topic. *

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; /** * NOTE: This function is deprecated in favor of listSubscriptionsRecordIterator function. * Creates a new async iterator which will iterate over the models.SubscriptionSummary objects * contained in responses from the listSubscriptions operation. This iterator will fetch more data from the * server as needed. * * @param request a request which can be sent to the service operation */ listAllSubscriptions(request: requests.ListSubscriptionsRequest): AsyncIterableIterator; /** * NOTE: This function is deprecated in favor of listSubscriptionsResponseIterator function. * Creates a new async iterator which will iterate over the responses received from the listSubscriptions operation. This iterator * will fetch more data from the server as needed. * * @param request a request which can be sent to the service operation */ listAllSubscriptionsResponses(request: requests.ListSubscriptionsRequest): AsyncIterableIterator; /** * Creates a new async iterator which will iterate over the models.SubscriptionSummary objects * contained in responses from the listSubscriptions operation. This iterator will fetch more data from the * server as needed. * * @param request a request which can be sent to the service operation */ listSubscriptionsRecordIterator(request: requests.ListSubscriptionsRequest): AsyncIterableIterator; /** * Creates a new async iterator which will iterate over the responses received from the listSubscriptions operation. This iterator * will fetch more data from the server as needed. * * @param request a request which can be sent to the service operation */ listSubscriptionsResponseIterator(request: requests.ListSubscriptionsRequest): AsyncIterableIterator; /** * Publishes a message to the specified topic. *

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; /** * Resends the confirmation details for the specified subscription. *

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; /** * Updates the specified subscription's configuration. *

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; } export {};