¿Existe un recurso REST para subir y asignar adjuntos a publicaciones?

Hola,

  1. Mis archivos adjuntos son PDF, imágenes, etc.

  2. No encontré un parámetro de archivo adjunto en el recurso Post.

  3. 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?

Gracias de antemano.

No hay un campo de “archivos adjuntos” directamente en la API de Publicaciones. Para adjuntar una carga a una publicación, necesitarías:

  1. 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.
  1. 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:
[nombre_archivo.pdf|attachment](upload://abcDEF123.pdf)

O para imágenes:

![texto alternativo](upload://abcDEF123.png)

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í: