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.
string mediaProxy :
The media proxy path
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