会員登録APIの各パラメータの制約について
はじめまして。POSの 会員登録API
の仕様について、ご質問させてください。
REQUEST BODYの各パラメータそれぞれが、どの条件で 空
でPOST可能かが知りたいです。
API定義を読んだところ、正規表現でバリデーションしているものは把握していますが、必須の場合にどうすべきかなどを読み解けず。
各パラメータに対し、以下のようなご回答がいただけると幸いです。
- いつでも
空
でPOST可能 - 契約者が「会員必須項目設定で必須項目に設定されていない」場合、
空
でPOST可能 空
は不可能だが、バリデーション上${value}
の値を期待している
お忙しいと思いますが、ご確認いただけますと幸いです。
ベストアンサー
-
- 管理画面にて
会員必須条件
で必須に設定されている項目はrequired
と同じ制限がかかります。 required
の場合、 field指定なし、null指定、空文字指定の場合エラーrequired
でない場合、null以外の指定で、仕様書記載のバリデーション上問題があるとエラー
となります。
例えば
companyName
の場合、string
のみの条件となりますので、空文字でも受け付けます。一方
leaveDate
の場合、string<date>
なので文字列かつ日付形式の条件となり、空文字は日付形式でないのでエラーとなります。指定しないか、
"leaveDate": null
として頂く必要があります。birthDate
も同様にstring<date>
形式のため、空文字は受け付けません。指定しないか、
"birthDate": null
として頂く必要があります。また、
"sex"
のようなenumのものは、0
ではなく"0"
と、文字列として記載する必要があります。 - 管理画面にて
答え
@n_hgc
必須の場合とはAPI定義の
required
のこととお見受けします。普通の
required
と同じでのときエラーとなります。
他の項目についても同様です。
何か他に疑問点がありましたら、コメントしてください。
質問に乗っからせていただいて恐縮ですが、教えてください。
例えば、会員登録の誕生日の項目ですが、
こちら側のシステムでは誕生日が必須項目でなく、登録がある場合とない場合があるとして、
誕生日の登録がある場合、
"birthDate":"1990-10-10" で受け付けてくれると思いますが、
誕生日の登録がない場合、
"birthDate":"" で送ると、[birthDate]は日付形式(YYYY-MM-DD)が正しくありません とエラーが返ってくると思います。
となりますと、誕生日の登録がない会員の場合、
birthDateの項目自体消して、会員情報を送らなくてはならないということでよろしいでしょうか。
よろしくお願いいたします。
ちなみに、
"sex": 0,
は、
"sex": "0",
じゃないとエラーになると思います。