Cómo asignar un tema a través de la API

El Discourse Assign expone estos endpoints de API:

Asignar (PUT /assign/assign.json)

Parámetros requeridos:

  • target_id - El ID del tema o publicación
  • target_type - Ya sea "Topic" o "Post"

Más uno de:

  • username - Nombre de usuario al que asignar
  • group_name - Nombre del grupo al que asignar

Parámetros opcionales:

  • note - Nota de asignación
  • status - Estado de la asignación
  • should_notify - Enviar notificaciones (por defecto: true)

Desasignar (PUT /assign/unassign.json)

Parámetros requeridos:

  • target_id - El ID del tema o publicación
  • target_type - Ya sea "Topic" o "Post"

Ejemplos (curl)

# Asignar el tema 123 al usuario "john"
curl -X PUT "https://your-discourse.com/assign/assign.json" \
  -H "Api-Key: YOUR_API_KEY" \
  -H "Api-Username: YOUR_USERNAME" \
  -H "Content-Type: application/json" \
  -d '{"target_id": 123, "target_type": "Topic", "username": "john"}'

# Asignar a un grupo en su lugar
curl -X PUT "https://your-discourse.com/assign/assign.json" \
  -H "Api-Key: YOUR_API_KEY" \
  -H "Api-Username: YOUR_USERNAME" \
  -H "Content-Type: application/json" \
  -d '{"target_id": 123, "target_type": "Topic", "group_name": "support-team"}'

Notas

  • El usuario de la API debe tener permisos de asignación (estar en un grupo permitido para asignar)
  • También puedes asignar publicaciones individuales usando target_type: "Post" con el ID de la publicación

@opcourdis ¡El ejemplo de Node.js anterior parece correcto! :+1:

2 Me gusta