L'API Rest pour ajouter des propriétaires a cessé de fonctionner

J’utilisais l’API REST pour mettre à jour les propriétaires des groupes. Cela semble maintenant ne plus fonctionner (bien que les groupes existent bel et bien) :

Method: PUT, RequestUri: 'https://forums.mysite.uk/admin/groups/1949/owners', Version: 1.1, Content: System.Net.Http.FormUrlEncodedContent, Headers:
{
  Api-Key: <redacted>
  Api-Username: admin
  Accept: application/json
  User-Agent: BasecampGatewayLive
  Content-Type: application/x-www-form-urlencoded
}:
{
  "group": {
    "usernames": "kay"
  }
}
StatusCode: 404, ReasonPhrase: 'Not Found', Version: 1.1, Content: System.Net.Http.HttpConnectionResponseContent, Headers:
{
  Server: nginx/1.22.1
  Date: Thu, 23 Jan 2025 02:03:44 GMT
  Transfer-Encoding: chunked
  Connection: keep-alive
  Vary: Accept-Encoding
  Vary: Accept
  X-Request-ID: 8e5dcf66-c4e0-4d4f-a382-dacb774691c3
  X-Runtime: 0.004369
  Strict-Transport-Security: max-age=31536000; includeSubDomains
  Content-Type: application/json; charset=utf-8
}
{"errors":["The requested URL or resource could not be found."],"error_type":"not_found"}

Cela fonctionnait bien auparavant, mais une mise à niveau de Discourse semble l’avoir cassé. Comme cette API n’est pas incluse dans la page de l’API Discourse, je ne sais pas comment savoir ce qui a changé.

De nombreux points de terminaison ne sont pas documentés, mais vous pouvez Reverse engineer the Discourse API facilement.

Pour moi, la requête fonctionne sur la dernière version de Discourse :

Ma supposition est que votre clé API n’est plus valide.

J’y ai pensé, mais une clé ou un nom d’utilisateur invalide renvoie normalement un 403, pas un 404 :person_shrugging:

J’ai trouvé le problème :

L’URL correcte est https://forums.mysite.uk/groups/1949/owners, sans /admin/.

2 « J'aime »

Vous voudrez également indiquer au serveur que vous envoyez du JSON, et non un formulaire.

3 « J'aime »

Je viens de réaliser que je n’avais pas remercié tout le monde d’avoir résolu mon problème. Désolé, et merci beaucoup !

1 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.