export interface RESTOptions
Options to be passed when creating the REST instance
Dispatcher | null agent :
The agent to set globally
string api :
The base api path, without version
The authorization prefix to use for requests, useful if you want to use bearer tokens
string cdn :
The cdn path
number globalRequestsPerSecond :
How many requests to allow sending per second (Infinity for unlimited, 50 for the standard global limit used by Discord)
number handlerSweepInterval :
The amount of time in milliseconds that passes between each hash sweep. (defaults to 1h)
number hashLifetime :
The maximum amount of time a hash can exist in milliseconds without being hit with a request (defaults to 24h)
number hashSweepInterval :
The amount of time in milliseconds that passes between each hash sweep. (defaults to 4h)
number invalidRequestWarningInterval :
The number of invalid REST requests (those that return 401, 403, or 429) in a 10 minute window between emitted warnings (0 for no warnings). That is, if set to 500, warnings will be emitted at invalid request number 500, 1000, 1500, and so on.
GetRateLimitOffsetFunction | number offset :
The extra offset to add to rate limits in milliseconds
RateLimitQueueFilter | string[] | null rejectOnRateLimit :
Determines how rate limiting and pre-emptive throttling should be handled. When an array of strings, each element is treated as a prefix for the request route (e.g. /channels
to match any route starting with /channels
such as /channels/:id/messages
) for which to throw RateLimitErrors. All other request routes will be queued normally
number retries :
The number of retries for errors with the 500 code, or errors that timeout
number timeout :
The time to wait in milliseconds before a request is aborted
string userAgentAppendix :
Extra information to add to the user agent
string version :
The version of the API to use
makeRequesturl: stringinit: RequestInit) : Promise<ResponseLike> (
The method called to perform the actual HTTP request given a url and web fetch
options For example, to use global fetch, simply provide makeRequest: fetch