No encontré un parámetro de archivo adjunto en el recurso Post.
Pensé en usar el recurso Upload y especificar type=“composer”. Pero no veo una forma de asociar la carga con una publicación. O, ¿es este el recurso incorrecto para cargar archivos adjuntos?
No hay un campo de “archivos adjuntos” directamente en la API de Publicaciones. Para adjuntar una carga a una publicación, necesitarías:
Cargar el archivo (obtener la URL corta).
Primero, carga tu archivo adjunto usando el endpoint /uploads.json:
Endpoint: POST /uploads.json
La respuesta contendrá una short_url como upload://abcDEF123.pdf.
Editar/crear la publicación para incluir esa URL corta, de modo que Discourse reconozca y vincule la carga a esa publicación. Para asignar el archivo adjunto cargado a una publicación, necesitas incluir la URL corta de la carga en el contenido sin formato de la publicación usando Markdown. Para un archivo adjunto, puedes usar este formato:
Esto se puede hacer al crear una publicación (usando POST /posts.json) o al editar una publicación existente (usando PUT /posts/{id}.json), colocando el enlace de Markdown en el campo raw.
Como referencia, también hay un par de temas existentes sobre este proceso aquí: