1.1.15 • Published 15 days ago

@rc-ex/retry v1.1.15

Weekly downloads
113
License
MIT
Repository
github
Last release
15 days ago

Retry Extension

Retry API calls upon RestException

Install

yarn add @rc-ex/retry

Usage

import RingCentral from '@rc-ex/core';
import RetryExtension from '@rc-ex/retry';

const rc = new RingCentral(...);
const retryExtension = new RetryExtension(retryOptions);
await rc.installExtension(retryExtension);

Options

RetryOptions

RetryExtension constructor accepts optional RetryOptions as parameter:

type RetryOptions = {
  shouldRetry?: ShouldRetry;
  retryInterval?: RetryInterval;
};

ShouldRetry

ShouldRetry defines condition about should retry or abort:

type ShouldRetry = (restException: RestException, retriesAttempted: number) => boolean;

By default, ShouldRetry returns true when restException.response.status is 429 or 503 and retriesAttempted is smaller than 3:

(restException, retriesAttempted) => {
  return retriesAttempted < 3 && [429, 503].includes(restException.response.status);
};

RetryInterval

RetryInterval defines how long should wait before try:

type RetryInterval = (restException: RestException, retriesAttempted: number) => number;

By default RetryInterval is 60 seconds with exponential back off:

(restException, retriesAttempted) => {
  return 60 * 1000 * Math.pow(2, retriesAttempted); // exponential back off
};
1.1.15

15 days ago

1.1.14

18 days ago

1.1.12

25 days ago

1.1.13

25 days ago

1.1.11

1 month ago

1.1.10

2 months ago

1.1.9

2 months ago

1.1.8

3 months ago

1.1.7

4 months ago

1.1.6

4 months ago

1.1.5

4 months ago

1.1.4

7 months ago

1.1.3

8 months ago

1.1.1

1 year ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.1.0

1 year ago

1.0.10

1 year ago

1.0.5-alpha.0

1 year ago

1.0.4-alpha.0

1 year ago

1.0.0-alpha.1

1 year ago

1.0.0-alpha.0

1 year ago

1.0.2-alpha.0

1 year ago

1.0.1-alpha.0

1 year ago

1.0.3-alpha.0

1 year ago

0.9.3

2 years ago

0.9.2

2 years ago

0.9.0

2 years ago

0.9.1

2 years ago

0.8.2

3 years ago

0.8.1

3 years ago

0.8.0

3 years ago

0.7.20

3 years ago

0.7.19

3 years ago

0.7.18

3 years ago

0.7.17

3 years ago

0.7.16

3 years ago

0.7.15

3 years ago

0.7.14

3 years ago

0.7.12

3 years ago

0.7.11

3 years ago

0.7.10

3 years ago

0.7.9

3 years ago

0.7.8

3 years ago

0.7.7

3 years ago

0.7.6

3 years ago

0.7.5

3 years ago

0.7.4

3 years ago

0.7.3

3 years ago

0.7.2

3 years ago

0.6.9

3 years ago

0.6.10

3 years ago

0.7.1

3 years ago

0.7.0

3 years ago

0.6.8

3 years ago

0.6.7

3 years ago

0.6.6

3 years ago

0.6.5

3 years ago

0.6.4

4 years ago

0.6.3

4 years ago

0.6.2

4 years ago

0.6.1

4 years ago

0.6.0

4 years ago

0.5.9

4 years ago

0.5.8

4 years ago

0.5.7

4 years ago

0.5.6

4 years ago

0.5.5

4 years ago

0.5.4

4 years ago

0.5.3

4 years ago

0.5.2

4 years ago

0.5.1

4 years ago

0.5.0

4 years ago

0.4.12

4 years ago

0.4.11

4 years ago

0.4.10

4 years ago

0.4.9

4 years ago

0.4.8

4 years ago

0.4.7

4 years ago

0.4.6

4 years ago

0.4.5

4 years ago

0.4.4

4 years ago

0.4.3

4 years ago

0.4.2

4 years ago