Requête POST API pour un nouvel utilisateur

Je suis bloqué et je ne sais pas si c’est simplement une erreur de ma part, un faux positif ou autre chose.

Lorsque j’envoie une requête POST via Postman, je reçois un message de SUCCÈS :
https://site.co/users.json?Api-Key=12345abcde12345&Api-Username=system&email=name@email.co&group_names=Alumni&custom_message=Welcome321

Message :

{
    "success": true,
    "active": false,
    "message": "<p>Vous êtes presque prêt ! Nous avons envoyé un e-mail d'activation à <b>name@email.co</b>. Veuillez suivre les instructions contenues dans l'e-mail pour activer votre compte.</p><p>S'il n'arrive pas, vérifiez votre dossier de spam.</p>"
}

Cependant, lorsque je consulte ma boîte de réception, je ne reçois aucune notification. Rien dans mes /logs, aucun utilisateur.

Dans une tentative de dépannage, j’effectue une simple requête GET :

https://site.co/admin/email.json?Api-Key=12345abcde12345&Api-Username=system

Je ne reçois aucune réponse de succès. La réponse est <!DOCTYPE html> ....

Je me rends donc manuellement sur https://site.co/admin/email.json et je vois :
{"delivery_method":"smtp","settings":[{"name":"address","value":"smtp.sendgrid.net"},{"name":"port","value":2525},{"name":"user_name","value":"apikey"},{"name":"authentication","value":"plain"},{"name":"enable_starttls_auto","value":true}]}

Avez-vous des idées sur ce que je pourrais essayer ? Mon objectif est de pouvoir inviter un nouvel utilisateur, ajouté à un groupe, via un webhook/POST.

Vous devrez déplacer la clé API dans l’en-tête.

Il y a longtemps, j’ai résolu ce que je pense être votre problème en créant, désactivant puis réactivant l’utilisateur.

1 « J'aime »

Votre script est du JavaScript (jQuery). Utiliser type="application/json" est généralement réservé aux données JSON à l’intérieur de la balise script, et non au JavaScript. Voici un exemple :

&lt;script id="data" type="application/json"&gt;
{"org": 10, "items":["one","two"]}
&lt;/script&gt;

À ma connaissance, vos balises script devraient ressembler à ceci :

&lt;script&gt;
$.ajax({
method: "POST",
url: "https://site.co/invites",
headers: { "Api-Username": "system", "Api-Key": "12345" },
data: { 
"email": "grow@site.co",
"group_names": "Alumni",
"custom_message": "Welcome123"
}
});
&lt;/script&gt;

Pour le JavaScript, vous n’avez plus besoin de spécifier type="javascript", car cette spécification est obsolète depuis un certain temps.