メインコンテンツまでスキップ

UserInfo API

ログインユーザの情報取得・パスワード変更・メールアドレス更新に関連するAPI

Overview

  • ログイン済ユーザ情報の検索・更新などをおこなうAPIです。
  • メールを送信するため、SendGridサービスを利用します。

Pre Requisites

ログイン可能なHexabaseアカウントがすでに存在すること

API

ログインユーザー情報

ログインしているユーザーに関する情報を取得します。

NoAPI NameAPI名MethodURI目的version画面ID(display_id)への対応
43GetUserInfoユーザー情報取得GET/api/v0/userinfoユーザーの関連情報取得v0-
61UpdateUserInfoユーザー情報更新PUT/api/v0/userinfoユーザー名、情報の更新v0-
GetUserProfilePictureユーザーのプロファイル画像(画像データ)の取得GET/api/v0/public/userinfo/profilepic/:user-idユーザーのプロファイル画像(画像データ)の取得v0-
UploadUserProfilePictureユーザープロファイル画像の登録・更新POST/api/v0/userinfo/profilepicユーザープロファイル画像の登録・更新v0-
DeleteUserProfilePictureユーザープロファイル画像の削除DELETE/api/v0/userinfo/profilepicユーザープロファイル画像の削除v0-

パスワード変更

パスワードを忘れたユーザ向けに、パスワードを再発行します

NoAPI NameAPI名MethodURI目的version画面ID(display_id)への対応
56ForgotPasswordパスワード初期化リクエストPOST/api/v0/users/password/forgotログイン前、パスワード初期化 開始v0-
57SetNewPasswordパスワード再登録PUT/api/v0/users/password/forgotログイン前、パスワード初期化 パスワードを変更v0-
58ValidatePasswordパスワード変更確認GET/api/v0/users/password/validateログイン前、パスワード初期化 パスワー変更状態の確認v0-
59SetPasswordパスワード変更登録PUT/api/v0/users/passwordログイン後、パスワード変更v0-

Sequence Diagram

password_update Sequence

sequenceDiagram
participant br as Browser
participant ml as Mailer
participant ap as your WebSite(SPA)
participant hx as Hexabase
participant sg as SendGrid

%% register email
br->>+ap: access the URL
ap->>ap: Press "password forgot" button or link
ap->>+hx: ForgotPassword [POST /users/password/forgot]
ap-->>-br: show "email sent" message
hx->>-sg: Send email request
Note right of hx: Hexabase will call sendgrid API

%% send mail from sendgrid
sg-->>+ml: Send email with url link and confirm id
Note right of ml: confirm id
ml->>ml: Click the URL link in the mail
ml->>+hx: [GET /users/password/validate]

%% redirect to "set password"
hx-->>-br: Redirect
br->>+ap: registration_path(redirect url)
ap->>ap: Enter new passwords
ap->>+hx: RegisterUser [POST /users/password]
hx->>hx: Reset to new password
hx-->>-ap: return result

メールアドレス変更

登録したユーザーのメールアドレスを変更します

NoAPI NameAPI名MethodURI目的version画面ID(display_id)への対応
72UpdateUserEmailRequestメールアドレス変更リクエストPOST/api/v0/users/emailメールアドレス変更リクエストv0-
73ConfirmUserEmailメールアドレス変更確認GET/api/v0/users/confirmations/:confirmation_idメールアドレス変更確認v0-
74UpdateUserEmailメールアドレス変更POST/api/v0/users/confirmationsメールアドレスの変更を確定v0-

Sequence Diagram

email_update Sequence

sequenceDiagram
participant br as Browser
participant ml as Mailer
participant ap as your WebSite(SPA)
participant hx as Hexabase
participant sg as SendGrid

%% register new email
br->>+ap: access the URL
ap->>ap: Enter new email and press Update
ap->>+hx: UpdateUserEmailRequest [POST /users/email]
Note right of ap: [email, registration_path(redirect url)]
ap-->>-br: show "email sent" message
hx->>-sg: Send email request
Note right of hx: Hexabase will call sendgrid API

%% send mail from sendgrid
sg-->>+ml: Send email with url link and confirm id
Note right of ml: confirm id
ml->>ml: Click the URL link in the mail
ml->>+hx: [GET /users/confirmations/xxxxxxx]

%% redirect to "confirm change email"
hx-->>-br: Redirect
br->>+ap: registration_path(redirect url)
ap->>ap: press Confirm button
ap->>+hx: RegisterUser [POST users/confirmations]
Note left of hx: confirmation_id
hx->>hx: Change email
hx-->>-ap: return status 200