共通ドキュメント

会員登録

会員登録APIについて

MobileSUITE mBaaS機能の会員管理の機能を利用して、会員の登録を行います。
会員登録の種類として、

  • 「ID/Password認証」(「通常会員」)
  • 「メールアドレス/Password認証」
  • 「Oauth認証」(「anonymous会員」)

があり、種類によってリクエスト/レスポンスが異なります。
mBaaS管理画面の会員認証設定にて、確認メールの送信を許可している場合、
登録されるメールアドレスに対して確認用メールを送信します。

会員名/パスワードでの登録時にメールアドレスを一緒に登録し、
メールアドレスの確認ができた(mailAddressConfirmフィールドがtrueになった)場合は
メールアドレスとパスワードでログインができるようになります。

基本仕様

  • APIパス:/users
  • メソッド:POST

リクエストヘッダー

シグネチャやAPIキーなどの詳細は「共通フォーマット」を参照してください。

フィールド名 内容
Content-Type application/json

リクエストコンテント

追加フィールドは、対象となるクラス/フィールドに依存しており、複数存在する場合もあります。
※フィールド名に「_id」は指定不可とします。
ACL未指定時の初期値はシステム側であらかじめ設定されているデフォルト値になります。
詳細はACLフォーマットをご覧ください。

パラメータ名 説明 データ型 必須 バリデーション
userName 会員名 文字列 一意チェック
password パスワード 文字列
mailAddress メールアドレス 文字列 一意チェック
フォーマットチェック
(※1)
authData OAuth認証情報 オブジェクト フォーマットチェック
(※2)
acl ACL オブジェクト
- 追加フィールド - フィールド名のフォーマットチェック
(半角英数+「_」のみ)

会員名はアプリケーションごとに一意である必要があります。
会員名とパスワードの両方、またはOauth認証情報が必須です。
パスワードの有効値チェックは行いません。

メールアドレスはアプリケーションごとに一意である必要があります。
未指定時の初期値は「(空文字)」が設定されます。
※1:フォーマットチェックはRFC 822 に準拠しております。
   なお、桁数チェックは、「@より前の文字列64文字以内」「全体文字列255文字以内」となります。

OAuth認証情報は「anonymous認証」の情報です。
{"authData":[{(認証情報)}]}形式で、会員名/パスワードの両方、またはOauth認証情報が必須です。  
※2:認証情報には"anonymous"しか指定できません。

ACLが未指定時の初期値はシステムでのデフォルト値です。

追加フィールドは対象となるクラス/フィールドに依存しており、複数存在する場合もあります。
※フィールド名に「_id」は指定不可とします。

Anonymous認証情報(パラメータ名:anonymous)
パラメータ名 説明 データ型 必須 備考
id UUID 文字列

HTTPステータス

ステータスコード 説明
201 登録完了
200 認証OK

「anonymous会員」について、
リクエスト内容で会員登録済みの場合は認証OKのステータスを返却し、値の登録・更新は行いません。

レスポンスヘッダー

フィールド名
Content-Type application/json
Location https://mbaas.api.nifcloud.com/2013-09-01/users/オブジェクトID

レスポンスコンテント

会員登録時

パラメータ名 説明 データ型 備考
userName 会員名 文字列 OAuth認証情報を設定していて、会員名が未設定の場合のみ、
アプリケーションで一意なログインIDを自動付与して返却します。
createDate 登録日時 日時
objectId オブジェクトID 文字列
authData OAuth認証情報 一対一オブジェクト
sessionToken セッショントークン 文字列

認証がOKだった場合

パラメータ名 説明 データ型 備考
objectId オブジェクトID 文字列
userName 会員名 文字列
authData OAuth認証情報 配列                                                     
mailAddressConfirm メールアドレス確認状態 真偽値
mailAddress メールアドレス 文字列
createDate 登録日時 日付
updateDate 更新日時 日付
sessionToken セッショントークン 文字列
- 追加フィールド - 対象となるクラス/フィールドに依存しており、複数存在する場合もあります。

リクエストサンプル(ID・PASSWORD認証)

curl -X POST \
 -H "X-NCMB-Application-Key: 549116a86b0ebbec4832d4086a56f36c82a5d64bc6528fa5e6220be76db5ef45" \
 -H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543" \
 -H "X-NCMB-Signature: l2ljScCsh1/oPv7mYePjUNPEDI81s85PYCT7ciTaiVM=" \
 -H "Content-Type: application/json" \
 -d '{"userName": "Yamada Tarou", "password": "password"}' \
https://mbaas.api.nifcloud.com/2013-09-01/users

レスポンスサンプル(ID・PASSWORD認証)

HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Location: http://mbaas.api.nifcloud.com/2013-09-01/users/epaKcaYZqsREdSMY

{"createDate":"2013-08-28T11:27:16.446Z","objectId":"epaKcaYZqsREdSMY","sessionToken":"iXDIelJRY3ULBdms281VTmc5O","userName":"Yamada Tarou","authData":null}

リクエストサンプル(Anonymous認証)

curl -X POST \
 -H "X-NCMB-Application-Key: 549116a86b0ebbec4832d4086a56f36c82a5d64bc6528fa5e6220be76db5ef45" \
 -H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543" \
 -H "X-NCMB-Signature: l2ljScCsh1/oPv7mYePjUNPEDI81s85PYCT7ciTaiVM=" \
 -H "Content-Type: application/json" \
 -d'{"authData":{"anonymous":{"id":"3dc72085-911b-4798-9707-d69e879a6185"}}}' \
 https://mbaas.api.nifcloud.com/2013-09-01/users

レスポンスサンプル(Anonymous認証)

HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Location: https://mbaas.api.nifcloud.com/1/users/ilxN1s7foH2X4b5h

{
  "createDate":"2013-08-16T11:49:44.991Z",
  "objectId":"aTAe6VXd3ZElDtlG",
  "userName":"ljmuJgf4ri",
  "authData":{
    "anonymous":{
      "id":"3dc72085-911b-4798-9707-d69e879a6185"
    }
  },
  "sessionToken":"esMM7OVu4PlK5spYNLLrR15io"
}