API 사용자 생성 시 user_id 반환 안 됨

매일 실행되어 API를 통해 새 사용자를 생성하는 스크립트가 있습니다. 며칠 전까지 POST 요청이 완료되면 응답에 새로 생성된 사용자의 user_id가 포함되어 있었습니다. 그런데 이제 API가 더 이상 그렇게 하지 않나요? 하지만 API 문서에는 포함되어야 한다고 나와 있습니다.

사용자가 생성되고 있나요?

어떤 이유로 인해 사용자가 생성되지 않아 user_id가 반환되지 않는 것 같습니다.

사용자 생성이 진행 중입니다. 확인했습니다. 그리고 API는 이 상태를 반환하지만 user_id가 빠져 있습니다.

{
    "success": true,
    "active": true,
    "message": "Your account is activated and ready to use."
}

네, 그러면 버그인 것 같습니다. Commits · discourse/discourse · GitHub 에서 설명을 찾아보았지만 찾지 못했습니다.

문제를 확인하기 위해 3.4.0.beta3-dev에서 API를 통해 사용자를 생성해 보았으며, 응답에 user_id가 포함되어 있었습니다.

{
	"success": true,
	"active": true,
	"message": "Your account is activated and ready to use.",
	"user_id": 3
}

3.4.0.beta4-dev로 업그레이드한 후 다시 시도해 보았더니 user_id가 누락되어 있습니다:

{
	"success": true,
	"active": true,
	"message": "Your account is activated and ready to use."
}

이제 잘못된 커밋의 위치를 좁혔네요.

직감으로 짐작컨대

아래에서 설명된 DEV: Change hide_email_address_taken default to true (#30293) · discourse/discourse@c1c7ea8 · GitHub 커밋과 관련이 있을 것 같습니다:

관리자 API 키를 사용한 요청인 경우 이 동작을 오버라이드할 수 있도록 하는 것이 바람직할 것 같습니다.

감사합니다! 해당 설정을 변경하니 API 결과가 복원되어 사용자를 생성한 후 결과에서 user_id를 받을 수 있게 되었습니다.

안녕하세요,

저도 같은 상황입니다…

개발자분들이 현재 이 문제를 처리 중인가요? 이 설정들이 문서와 모순된다는 점을 기억하기가 쉽지 않을 것 같아서요 :stuck_out_tongue: