신규 사용자 API POST

막혀서 이게 단순히 내 실수인지, 오탐(false positive)을 받고 있는 건지, 아니면 다른 문제인지 모르겠습니다.

Postman으로 POST 요청을 보내면 SUCCESS 메시지가 반환됩니다:
https://site.co/users.json?Api-Key=12345abcde12345&Api-Username=system&email=name@email.co&group_names=Alumni&custom_message=Welcome321

메시지 내용:

{
    "success": true,
    "active": false,
    "message": "<p>거의 완료되었습니다! <b>name@email.co</b>로 활성화 메일을 보냈습니다. 계정 활성화를 위해 메일 내 지시를 따르십시오.</p><p>메일이 도착하지 않으면 스팸 폴더를 확인해 보십시오.</p>"
}

그러나 받은 편지함을 확인해 보면 알림이 없습니다. /logs에도 아무 기록이 없고, 사용자도 없습니다.

문제를 해결해 보려고 간단한 GET 요청을 보내 봤습니다:

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

성공 응답이 없습니다. 응답은 <!DOCTYPE html> ...입니다.

그래서 https://site.co/admin/email.json으로 직접 접속해 보니 다음과 같은 내용이 표시됩니다:
{"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}]}

시도해 볼 수 있는 방법이 있을까요? 제 목표는 Webhook/POST를 통해 그룹에 추가된 새 사용자를 초대하는 것입니다.

API 키를 헤더로 이동해야 합니다.

오랜 전에 저는 사용자를 생성하고 비활성화한 뒤 다시 활성화하는 방식으로, 제가 생각하기에 당신의 문제라고 보는 것을 해결했습니다.

당신의 스크립트는 JavaScript(jQuery)입니다. type="application/json"은 일반적으로 스크립트 내의 JavaScript가 아니라 JSON 데이터를 위해 사용됩니다. 예를 들어 다음과 같습니다:

<script id="data" type="application/json">
{"org": 10, "items":["one","two"]}
</script>

제 이해로는 당신의 스크립트 태그가 다음과 같이 보이면 됩니다:

<script>
$.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"
}
});
</script>

JavaScript의 경우, type="javascript"를 지정할 필요가 없습니다. 이는 이미 오래전에 폐기되었기 때문입니다.