Usando Discourse como plataforma de revisión/discusión de cómics

Eso es exactamente lo que hago en mi comunidad de juegos de mesa: cada vez que se añade (o se renombra) un juego de mesa en mi base de datos, se crea/actualiza una etiqueta y dos temas personalizados.

Si mal no recuerdo, cuando trabajé en esto, no había un punto final específico para crear una sola etiqueta (aunque puedes añadir una nueva al crear un tema), pero pude usar la carga masiva de etiquetas para hacerlo.

Algo como esto:

const formData = new FormData();
formData.append("file", Buffer.from("the-tag-name,an-optional-tag-group"), {
  contentType: "text/csv",
  filename: "tags.csv",
});
const { data } = await axios.post(`${process.env.DISCOURSE_URL}/tags/upload.json`, formData, {
  headers: {
    ...formData.getHeaders(),
    "Api-Key": process.env.API_KEY,
  },
});