Ir al contenido

File Upload

type: 19 Modales

El File Upload deja que el usuario suba archivos (hasta 10) desde un modal. Va dentro de un Label.

Vista previa
Enviar captura
Capturas del error*
Sube hasta 3 imágenes.
Arrastra archivos o haz clic para subir
modal.json
{
"type": 9,
"data": {
"custom_id": "enviar_captura",
"title": "Enviar captura",
"components": [
{
"type": 18,
"label": "Capturas del error",
"description": "Sube hasta 3 imágenes.",
"component": {
"type": 19,
"custom_id": "capturas",
"min_values": 1,
"max_values": 3,
"file_types": [
"image"
]
}
}
]
}
}
Campo Tipo Descripción
type entero obligatorio Siempre 19.
id entero opcional Identificador único.
custom_id string obligatorio 1-100 caracteres.
min_values entero opcional Mínimo de archivos (0-10). Por defecto 1.
max_values entero opcional Máximo de archivos (máx. 10). Por defecto 1.
required booleano opcional Por defecto true.
file_types array de strings opcional Hasta 10 filtros: "image", "video", "audio" o extensiones como ".pdf".

En values llegan los IDs de los adjuntos, y los datos completos (URL, nombre, tamaño…) en resolved.attachments:

data de MODAL_SUBMIT (resumida)
{
"custom_id": "enviar_captura",
"components": [
{
"type": 18,
"id": 1,
"component": { "type": 19, "id": 2, "custom_id": "capturas", "values": ["111111111111111111"] }
}
],
"resolved": {
"attachments": {
"111111111111111111": {
"id": "111111111111111111",
"filename": "error.png",
"size": 48213,
"url": "https://cdn.discordapp.com/ephemeral-attachments/...",
"content_type": "image/png"
}
}
}
}

Responde a la interacción con el JSON de arriba.