Skip to content
v2.274.0

HealthyRetryPolicy Struct ​

Options for customising the retry policy of the delivery of SNS messages to HTTP/S endpoints.

Example ​

ts
const myTopic = new sns.Topic(this, 'MyTopic');

myTopic.addSubscription(
  new subscriptions.UrlSubscription(
    'https://foobar.com/',
    {
      deliveryPolicy: {
        healthyRetryPolicy: {
          minDelayTarget: Duration.seconds(5),
          maxDelayTarget: Duration.seconds(10),
          numRetries: 6,
          backoffFunction: sns.BackoffFunction.EXPONENTIAL,
        },
        throttlePolicy: {
          maxReceivesPerSecond: 10,
        },
        requestPolicy: {
          headerContentType: 'application/json',
        },
      },
    },
  ),
);

Properties ​

backoffFunctionoptionalBackoffFunctionbackoff_functionoptionalBackoffFunctionbackoffFunctionoptionalBackoffFunctionBackoffFunctionoptionalBackoffFunctionBackoffFunctionoptionalBackoffFunction= linear#
The model for backoff between retries.
maxDelayTargetoptionalDurationmax_delay_targetoptionalDurationmaxDelayTargetoptionalDurationMaxDelayTargetoptionalDurationMaxDelayTargetoptionalDuration#
The maximum delay for a retry.

Default: 20 seconds

Must be at least minDelayTarget less than 3,600 seconds, and correspond to a whole number of seconds,

minDelayTargetoptionalDurationmin_delay_targetoptionalDurationminDelayTargetoptionalDurationMinDelayTargetoptionalDurationMinDelayTargetoptionalDuration#
The minimum delay for a retry.

Default: 20 seconds

Must be at least one second, not exceed maxDelayTarget, and correspond to a whole number of seconds.

numMaxDelayRetriesoptionalnumbernum_max_delay_retriesoptionalint | floatnumMaxDelayRetriesoptionalNumberNumMaxDelayRetriesoptionaldoubleNumMaxDelayRetriesoptional*float64= 0#
The number of retries in the post-backoff phase, with the maximum delay between them.

Must be zero or greater

numMinDelayRetriesoptionalnumbernum_min_delay_retriesoptionalint | floatnumMinDelayRetriesoptionalNumberNumMinDelayRetriesoptionaldoubleNumMinDelayRetriesoptional*float64= 0#
The number of retries in the pre-backoff phase, with the specified minimum delay between them.

Must be zero or greater

numNoDelayRetriesoptionalnumbernum_no_delay_retriesoptionalint | floatnumNoDelayRetriesoptionalNumberNumNoDelayRetriesoptionaldoubleNumNoDelayRetriesoptional*float64= 0#
The number of retries to be done immediately, with no delay between them.

Must be zero or greater.

numRetriesoptionalnumbernum_retriesoptionalint | floatnumRetriesoptionalNumberNumRetriesoptionaldoubleNumRetriesoptional*float64= 3#
The total number of retries, including immediate, pre-backoff, backoff, and post-backoff retries.

Must be greater than or equal to zero and not exceed 100.