RESTOptions

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