Files
discord.js/packages/rest
Danial Raza d81b4be2cd feat: add soundboard (#10590)
* feat: add soundboard

* types(PartialSoundboardSound): add `available`

* feat(VoiceChannelEffect): add `soundboardSound` getter

* types: improve return types

* docs: requested changes

* feat: support multiple audio file types

* types(GuildSoundboardSoundCreateOptions): add `contentType`

* types: add default and guild soundboard sound

* fix: requested changes

* docs: use `@fires` tag

* docs: remove misleading tag

* chore: requested changes and missing things

* feat: add send soundboard sound options
2025-04-25 19:43:17 +00:00
..
2025-04-25 19:43:17 +00:00
2023-05-03 02:14:22 +02:00
2025-04-25 19:43:17 +00:00
2023-05-03 02:14:22 +02:00
2022-09-08 01:46:41 +02:00
2025-02-12 19:08:07 +00:00


discord.js


Discord server npm version npm downloads Tests status Last commit. Code coverage

Vercel Cloudflare Workers

About

@discordjs/rest is a module that allows you to easily make REST requests to the Discord API.

Installation

Node.js 22.12.0 or newer is required.

npm install @discordjs/rest
yarn add @discordjs/rest
pnpm add @discordjs/rest
bun add @discordjs/rest

Examples

Install all required dependencies:

npm install @discordjs/rest discord-api-types
yarn add @discordjs/rest discord-api-types
pnpm add @discordjs/rest discord-api-types
bun add @discordjs/rest discord-api-types

Send a basic message:

import { REST } from '@discordjs/rest';
import { Routes } from 'discord-api-types/v10';

const rest = new REST({ version: '10' }).setToken(TOKEN);

try {
	await rest.post(Routes.channelMessages(CHANNEL_ID), {
		body: {
			content: 'A message via REST!',
		},
	});
} catch (error) {
	console.error(error);
}

Create a thread from an existing message to be archived after 60 minutes of inactivity:

import { REST } from '@discordjs/rest';
import { Routes } from 'discord-api-types/v10';

const rest = new REST({ version: '10' }).setToken(TOKEN);

try {
	await rest.post(Routes.threads(CHANNEL_ID, MESSAGE_ID), {
		body: {
			name: 'Thread',
			auto_archive_duration: 60,
		},
	});
} catch (error) {
	console.error(error);
}

Send a basic message in an edge environment:

import { REST } from '@discordjs/rest';
import { Routes } from 'discord-api-types/v10';

const rest = new REST({ version: '10', makeRequest: fetch }).setToken(TOKEN);

try {
	await rest.post(Routes.channelMessages(CHANNEL_ID), {
		body: {
			content: 'A message via REST from the edge!',
		},
	});
} catch (error) {
	console.error(error);
}

Contributing

Before creating an issue, please ensure that it hasn't already been reported/suggested, and double-check the documentation.
See the contribution guide if you'd like to submit a PR.

Help

If you don't understand something in the documentation, you are experiencing problems, or you just need a gentle nudge in the right direction, please don't hesitate to join our official discord.js Server.