export interface RESTOptions
Options to be passed when creating the REST instance
Dispatcher | null agent :
The agent to set globally
string = 'https://discord.com/api' api :
The base api path, without version
The authorization prefix to use for requests, useful if you want to use bearer tokens
string = 'https://cdn.discordapp.com' cdn :
The cdn path
number = 50 globalRequestsPerSecond :
How many requests to allow sending per second (Infinity for unlimited, 50 for the standard global limit used by Discord)
number = 3_600_000 handlerSweepInterval :
The amount of time in milliseconds that passes between each hash sweep. (defaults to 1h)
number = 86_400_000 hashLifetime :
The maximum amount of time a hash can exist in milliseconds without being hit with a request (defaults to 24h)
number = 14_400_000 hashSweepInterval :
The amount of time in milliseconds that passes between each hash sweep. (defaults to 4h)
number = 0 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 = 50 offset :
The extra offset to add to rate limits in milliseconds
RateLimitQueueFilter | string[] | null = 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 = 3 retries :
The number of retries for errors with the 500 code, or errors that timeout
number = 15_000 timeout :
The time to wait in milliseconds before a request is aborted
string = DefaultUserAgentAppendix userAgentAppendix :
Extra information to add to the user agent
string = '10' 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