Example code showing how to open a Discord modal that collects feedback from server members via a slash command using the discord/interactions API. You will need to create a slash command named "feedback" in the Autocode slash command builder. Intended to be used with the modal submission handler in this snippet: https://autocode.com/snippet/jacoblee/cachsnpt_iBJez9VgLofTQQbQTzjRvFrB6CT9kHtqXv3G/
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});
await lib.discord.interactions['@1.0.0'].responses.modals.create({
token: context.params.event.token,
custom_id: `feedback-modal`,
title: `Leave feedback here!`,
components: [
{
type: 1, // Component row
components: [{
type: 4, // Text input component, only valid in modals
custom_id: 'Name',
label: `Name`,
style: 1, // 1 for line, 2 for paragraph
min_length: 1,
max_length: 128,
placeholder: 'What is your name?',
required: true
}],
},
{
type: 1, // You must use a new row for each text input
components: [{
type: 4, // Text input component, only valid in modals
custom_id: 'Feedback',
label: `Feedback`,
style: 2,
min_length: 1,
max_length: 4000,
placeholder: 'What would you like to tell us?',
required: true
}]
}
],
});