Retry API Requests
For some types of API requests, cli-kintone retries request on error.
Retry units
Retries are performed for each API request. When requests are wrapped in Bulk Request (bulkRequest.json
), retries will be performed for each bulkRequest unit.
Target API requests
- Download File (
GET /k/v1/file.json
)- 5xx errors
- Upload File (
POST /k/v1/file.json
)- 5xx errors
Strategy
We use an exponential backoff with jitter.
Delay time is calculated as follows:
delay = Math.min(initialDelay * 2 ** (attemptCount - 1), maxDelay) + jitter;
- initialDelay: Initial delay time. Default to 1,000ms.
- attemptCount: Number of request attempt. Maximum 5.
- maxDelay: Maximum delay time. Default to 60,000ms.
- jitter: Randomly determined per attempt. Between 0 - 1,000ms.