REST API リファレンス
- ドキュメントトップ
-
共通
-
プッシュ通知
-
会員管理・認証
-
データストア
-
ファイルストア
-
スクリプト
共通ドキュメント
会員登録
会員登録APIについて
mobile backendの会員管理・認証機能を利用して、会員の登録を行います。
会員登録の種類として、
- 「ID/Password認証」(「通常会員」)
- 「メールアドレス/Password認証」
- 「Oauth認証」(「Facebook会員」・「Twitter会員」・「Google認証」・「Apple会員」・「anonymous会員」)
があり、種類によってリクエスト/レスポンスが異なります。
管理画面の会員認証設定にて、確認メールの送信を許可している場合、
登録されるメールアドレスに対して確認用メールを送信します。
会員名/パスワードでの登録時にメールアドレスを一緒に登録し、
メールアドレスの確認ができた(mailAddressConfirmフィールドがtrueになった)場合は
メールアドレスとパスワードでログインができるようになります。
基本仕様
- APIパス:/users
- メソッド:POST
リクエストヘッダー
シグネチャやAPIキーなどの詳細は「共通フォーマット」を参照してください。
フィールド名 | 内容 |
---|---|
Content-Type | application/json |
リクエストコンテント
追加フィールドは、対象となるクラス/フィールドに依存しており、複数存在する場合もあります。
※フィールド名に「_id」は指定不可とします。
ACL未指定時の初期値はシステム側であらかじめ設定されているデフォルト値になります。
詳細はACLフォーマットをご覧ください。
パラメータ名 | 説明 | データ型 | 必須 | バリデーション |
---|---|---|---|---|
userName | 会員名 | 文字列 | △ | 一意チェック 使用不可文字列チェック(※1) |
password | パスワード | 文字列 | △ | 使用不可文字列チェック(※1) |
mailAddress | メールアドレス | 文字列 | 一意チェック フォーマットチェック (※2) |
|
authData | OAuth認証情報 | オブジェクト | △ | フォーマットチェック (※3) |
acl | ACL | オブジェクト | ||
- | 追加フィールド | - | フィールド名のフォーマットチェック (半角英数+「_」のみ) |
会員名はアプリケーションごとに一意である必要があります。
会員名とパスワードの両方、またはOauth認証情報が必須です。
パスワードの有効値チェックは行いません。
※1:会員名とパスワードには、null・空文字列・空白文字のみの入力は使用できません。
メールアドレスはアプリケーションごとに一意である必要があります。
未指定時の初期値は「(空文字)」が設定されます。
※2:フォーマットチェックはRFC 822 に準拠しております。
なお、桁数チェックは、「@より前の文字列64文字以内」「全体文字列255文字以内」となります。
OAuth認証情報は「Facebook認証」・「Twitter認証」・「Google認証」・「Apple認証」・「anonymous認証」の情報です。
{"authData":[{(認証情報)}]}形式で、会員名/パスワードの両方、またはOauth認証情報が必須です。
※3:認証情報には"facebook"・"twitter"・"google"・"apple"・"anonymous"のいずれか一つしか指定できません。
ACLが未指定時の初期値はシステムでのデフォルト値です。
追加フィールドは対象となるクラス/フィールドに依存しており、複数存在する場合もあります。
※フィールド名に「_id」は指定不可とします。
Facebook認証情報(パラメータ名:facebook)
パラメータ名 | 説明 | データ型 | 必須 | 備考 |
---|---|---|---|---|
id | Facebook ID | 文字列 | ○ | |
access_token | アクセストークン | 文字列 | ○ | |
expiration_date | トークン有効期限 | 日付 | ○ | 形式:「yyyy-MM-dd'T'HH:mm:ss.SSS'Z'」 |
Twitter認証情報(パラメータ名:twitter)
パラメータ名 | 説明 | データ型 | 必須 | 備考 |
---|---|---|---|---|
id | Twitter ID | 文字列 | ○ | |
screen_name | 名前 | 文字列 | ○ | |
oauth_consumer_key | コンシューマーキー | 文字列 | ○ | |
consumer_secret | コンシューマーシークレットキー | 文字列 | ○ | |
oauth_token | トークン | 文字列 | ○ | |
oauth_token_secret | トークンシークレット | 文字列 | ○ |
Google認証情報(パラメータ名:google)
パラメータ名 | 説明 | データ型 | 必須 | 備考 |
---|---|---|---|---|
id | ユーザーID | 文字列 | ○ | |
access_token | アクセストークン | 文字列 | ○ |
Apple認証情報(パラメータ名:apple)
パラメータ名 | 説明 | データ型 | 必須 | 備考 |
---|---|---|---|---|
id | ユーザーID | 文字列 | ○ | |
access_token | アクセストークン | 文字列 | ○ | |
client_id | クライアントID | 文字列 | ○ |
Anonymous認証情報(パラメータ名:anonymous)
パラメータ名 | 説明 | データ型 | 必須 | 備考 |
---|---|---|---|---|
id | UUID | 文字列 | ○ |
HTTPステータス
ステータスコード | 説明 |
---|---|
201 | 登録完了 |
200 | 認証OK |
「Facebook会員」・「Twitter会員」・「Google会員」・「Apple会員」・「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認証情報 | 一対一オブジェクト | OAuth認証情報を設定していて、会員管理のデータ取得時にSNS認証データを含める設定を行っている場合のみOAuth認証情報を返却します。 |
sessionToken | セッショントークン | 文字列 |
認証がOKだった場合
パラメータ名 | 説明 | データ型 | 備考 |
---|---|---|---|
objectId | オブジェクトID | 文字列 | |
userName | 会員名 | 文字列 | |
authData | OAuth認証情報 | 配列 | 会員管理のデータ取得時にSNS認証データを含める設定を行っている場合のみOAuth認証情報を返却します。 |
mailAddressConfirm | メールアドレス確認状態 | 真偽値 | |
mailAddress | メールアドレス | 文字列 | |
createDate | 登録日時 | 日付 | |
updateDate | 更新日時 | 日付 | |
sessionToken | セッショントークン | 文字列 | |
- | 追加フィールド | - | 対象となるクラス/フィールドに依存しており、複数存在する場合もあります。 |
リクエストサンプル(ID・PASSWORD認証)
curl -X POST \
-H "X-NCMB-Application-Key: 549116a8**********************************a5e6220be76db5ef45" \
-H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543" \
-H "X-NCMB-Signature: l2ljSc**********************************7ciTaiVM=" \
-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/epa******MY
{"createDate":"2013-08-28T11:27:16.446Z","objectId":"epa***********dSMY","sessionToken":"iXDIe**********1VTmc5O","userName":"Yamada Tarou","authData":null}
リクエストサンプル(Facebook認証)
curl -X POST \
-H "X-NCMB-Application-Key: 549116a8**********************************a5e6220be76db5ef45" \
-H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543" \
-H "X-NCMB-Signature: l2ljSc**********************************7ciTaiVM=" \
-H "Content-Type: application/json" \
-d'{"authData":{"facebook":{"id":"10********9782","access_token":"CAACEdEose0cBAMHWz6HxQSeXJexFhxmfC3rUswuC4G5rcKiTnzdNIRZBJnmn*************************************************t94YnNz5WsvlAeYKZCZC0ApDuKJpg41ykMuhAO6kvsudbiFkMjNRotp0yLGf1AZDZD","expiration_date":{"__type":"Date","iso":"2013-08-31T07:41:11.906Z"}}}}' \
https://mbaas.api.nifcloud.com/2013-09-01/users
レスポンスサンプル(Facebook認証)
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Location: https://mbaas.api.nifcloud.com/1/users/il*****2X4b5h
{
"createDate":"2013-08-15T15:04:36.314Z",
"objectId":"il*****2X4b5h",
"userName":"cmE*****qlkA",
"authData":{
"facebook":{
"id":"10********9782",
"access_token":"CAACEdEose0cBAMHWz6HxQSeXJexFhxmfC3rUswuC4G5rcKiTnzdNIRZBJnmn*************************************************t94YnNz5WsvlAeYKZCZC0ApDuKJpg41ykMuhAO6kvsudbiFkMjNRotp0yLGf1AZDZD",
"expiration_date":{
"__type":"Date",
"iso":"2013-08-31T07:41:11.906Z"
}
}
},
"sessionToken":"h6dx***********tPjemPe"
}
リクエストサンプル(Twitter認証)
curl -X POST \
-H "X-NCMB-Application-Key: 549116a8**********************************a5e6220be76db5ef45" \
-H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543"
-H "X-NCMB-Signature: l2ljSc**********************************7ciTaiVM=" \
-H "Content-Type: application/json" \
-d '{"authData": { "twitter": { "id": "88*****02", "screen_name": "mobileBackend", "oauth_consumer_key": "ZoL***********TEN9RW", "consumer_secret": "ubFWbG*******************mK2ZSCc5Opk", "oauth_token": "887423106-VxW********************XLLeogUtB","oauth_token_secret": "gye4VHfEHH*******************ixYNU6Mg"}}}' \
https://mbaas.api.nifcloud.com/2013-09-01/users
レスポンスサンプル(Twitter認証)
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Location: https://mbaas.api.nifcloud.com/1/users/gUt********WeeGc
{
"createDate":"2013-08-15T14:43:26.242Z",
"objectId":"gUt********WeeGc",
"userName":"Gxz*****TlS",
"authData":{
"twitter":{
"id":"88*****02",
"screen_name":"mobilebackend",
"oauth_consumer_key":"ZoL***********TEN9RW",
"consumer_secret":"ubFWbG*******************mK2ZSCc5Opk",
"oauth_token":"887423106-VxW********************XLLeogUtB",
"oauth_token_secret":"gye4VHfEHH*******************ixYNU6Mg"
}
},
"sessionToken":"bfHu************rRnvru"
}
リクエストサンプル(Google認証)
curl -X POST \
-H "X-NCMB-Application-Key": "549116a8**********************************a5e6220be76db5ef45" \
-H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543"
-H "X-NCMB-Signature: l2ljSc**********************************7ciTaiVM=" \
-H "Content-Type: application/json" \
-d '{ "authData":{ "google":{ "id":"3423*******4783", "access_token":"ya29.bAoBfwX**************************NIYbw6vf1eXM" } } }' \
https://mbaas.api.nifcloud.com/2013-09-01/users
レスポンスサンプル(Google認証)
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Location: https://mbaas.api.nifcloud.com/1/users/gUtx******eGc
{
"createDate": "2013-08-15T14:43:26.242Z",
"objectId": "gUtx******eGc",
"userName": "Gx****lS",
"authData": {
"google": {
"id": "3423*******4783",
"access_token": "ya29.bAoBfwX**************************NIYbw6vf1eXM"
}
},
"sessionToken": "bfHuZ********fBrRnvru"
}
リクエストサンプル(Apple認証)
curl -X POST \
-H "X-NCMB-Application-Key": "549116a8**********************************a5e6220be76db5ef45" \
-H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543"
-H "X-NCMB-Signature: l2ljSc**********************************7ciTaiVM=" \
-H "Content-Type: application/json" \
-d '{ "authData":{ "apple":{ "id":"000345.a6d************ab0c318.2119", "access_token":"c6af01a5341974************ARKnnXs-dT4gFaiBg", "client_id":"com.apple.signinapple" } } }' \
https://mbaas.api.nifcloud.com/2013-09-01/users
レスポンスサンプル(Apple認証)
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Location: https://mbaas.api.nifcloud.com/1/users/gUtx******WeeGc
{
"createDate": "2013-08-15T14:43:26.242Z",
"objectId": "gUtx********eGc",
"userName": "Gxz***TTlS",
"authData": {
"apple": {
"id": "000345.a6d************ab0c318.2119",
"access_token": "c6af01a5341974************ARKnnXs-dT4gFaiBg",
"client_id": "com.apple.signinapple"
}
},
"sessionToken": "bfHu*******Z7fBrRnvru"
}
リクエストサンプル(Anonymous認証)
curl -X POST \
-H "X-NCMB-Application-Key: 549116a8**********************************a5e6220be76db5ef45" \
-H "X-NCMB-Timestamp: 2013-08-14T15:46:25.543" \
-H "X-NCMB-Signature: l2ljSc**********************************7ciTaiVM=" \
-H "Content-Type: application/json" \
-d'{"authData":{"anonymous":{"id":"3dc72085-911b-**********79a6185"}}}' \
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/ilxN****X4b5h
{
"createDate":"2013-08-16T11:49:44.991Z",
"objectId":"ilxN****X4b5h",
"userName":"lj******4ri",
"authData":{
"anonymous":{
"id":"3dc72085-911b-**********79a6185"
}
},
"sessionToken":"esMM7*********NLLrR15io"
}
お探しの内容が見つからなかった場合はユーザーコミュニティ
もご活用ください。(回答保証はいたしかねます)
なお、 Expertプラン以上のお客様はテクニカルサポートにてご質問を承らせて頂きます。
推奨画面サイズ1024×768px以上