1-100 characters. Required.

Up to 1000 characters. Optional.

The ID of the voice channel where the event will take place.

When the event starts. Required.

When the event ends. Optional for voice/stage events.

Optional cover image URL or buffer. Recommended size: 960x540 pixels.

🔊
Scheduled
Voice

Event Name

3 Interested

Preview of how your event will appear in Discord

// Discord.js v14+ - Create Scheduled Event
const { GuildScheduledEventEntityType, GuildScheduledEventPrivacyLevel } = require('discord.js');

// Get the guild
const guild = client.guilds.cache.get('YOUR_GUILD_ID');

// Create the event
const scheduledEvent = await guild.scheduledEvents.create({
  name: 'Event Name',
  // description: 'Optional event description',
  scheduledStartTime: new Date(Date.now() + 86400000), // Start time
  // scheduledEndTime: Optional for voice/stage
  privacyLevel: GuildScheduledEventPrivacyLevel.GuildOnly,
  entityType: GuildScheduledEventEntityType.Voice,
  channel: 'CHANNEL_ID', // Voice or Stage channel ID
  // image: 'https://example.com/image.png', // Optional event cover image
});

console.log('Event created:', scheduledEvent.id);
console.log('Event URL:', scheduledEvent.url);
// Discord.js v14+ - Manage Scheduled Events

// Get an event by ID
const event = await guild.scheduledEvents.fetch('EVENT_ID');

// Edit an event
await event.edit({
  name: 'Updated Event Name',
  description: 'Updated description',
  scheduledStartTime: new Date(Date.now() + 172800000), // 2 days from now
});

// Start an event (set status to ACTIVE)
await event.setStatus('ACTIVE');

// Complete an event
await event.setStatus('COMPLETED');

// Cancel an event
await event.setStatus('CANCELLED');

// Delete an event
await event.delete();

// Get all events in a guild
const allEvents = await guild.scheduledEvents.fetch();
console.log(`Found ${allEvents.size} events`);

// Get event subscribers (users interested)
const subscribers = await event.fetchSubscribers();
console.log(`${subscribers.size} users are interested`);

// Listen for event updates
client.on('guildScheduledEventUpdate', (oldEvent, newEvent) => {
  console.log(`Event ${newEvent.name} was updated`);
});

// Listen for users subscribing
client.on('guildScheduledEventUserAdd', (event, user) => {
  console.log(`${user.tag} is interested in ${event.name}`);
});
💡

What are Scheduled Events?

Scheduled events help communities organize and promote activities. Members can mark themselves as interested and receive notifications when events start. Events appear in the server's event list and can be shared via URL.

Powered by Mamba Host