Auth API

最終更新: 2026年7月3日

Auth API は ServiceUser(ある Space が運営する製品の一般登録ユーザー)をソーシャルログインで認証する OAuth フローです。ServiceLogin 設定に紐づけられたプロバイダー(例: Google)でログインすると、この API が accessTokenrefreshToken を発行します。発行された accessToken は ACMA・ACDA の呼び出しにのみ使う Bearer トークンであり、CMA・CDA には使用できません。アイデンティティの境界を越えるトークンは存在しません。

ベース URL は https://auth.weegloo.com/v1 で、すべてのパスは /spaces/{spaceId}/... の配下にあります。すべてのリクエストとレスポンス本文は JSON です。ブラウザアプリの場合は、このワイヤを直接扱うよりも公式 SDK weegloo-service-user の使用を推奨します。このページでは、その SDK が内部で呼び出す HTTP ワイヤを扱います。SDK を使えない環境(サーバー、ネイティブ、スクリプト)でフローを直接実装する際に参照してください。

ログインフロー

ログインは 4 つのステップで進みます。

  1. ブラウザをログイン入口 URL(/spaces/{spaceId}/login/oauth2/{provider})へ遷移させます。この URL は、プロバイダー(Google)のログイン画面へつながるリダイレクトチェーンを開始します。
  2. ログインが完了すると、Weegloo が ServiceLogin に設定された callbackUrl へブラウザを戻し、アドレスに ?exchangeToken=<使い捨てトークン> を付与します。
  3. コールバックページがアドレスから exchangeToken を読み取り、トークン交換エンドポイント(POST /spaces/{spaceId}/oauth/token)へ送信し、レスポンスとして accessTokenrefreshToken を受け取ります。
  4. 以降は accessToken を Bearer トークンとして ACMA・ACDA を呼び出します。有効期限(expiresAt)が切れる前に refreshToken で更新し、ログアウト時にはトークンを破棄します。

exchangeToken は使い捨てです。コールバックを処理した直後にアドレスバーから即座に削除し、露出・再利用を防いでください(SDK を使えば自動的に処理されます)。

トークンモデル

トークン交換と更新は、同じ形式のトークンレスポンスを返します。レスポンスに含まれるトークン文字列と時刻は以下の例の値であり、実際には不透明な秘密文字列です(プロバイダーのログインを経るフローのため、実際の値をそのまま記載できません)。構造とフィールドはサーバーコードで検証した事実です。

{
  "accessToken": "QY3xK9pR2mLs7Vc0Zt8Nf4Wd1Bj6Hg5Ua2Ee9Ck3PoZt8Nf4Wd",
  "tokenType": "Bearer",
  "scope": ["APP"],
  "createdAt": "2026-06-18T05:00:00.000Z",
  "expiresAt": "2026-06-19T05:00:00.000Z",
  "refreshToken": "Rf7Hn2Qw9Zx4Tp1Lk6Vc3Bm8Yd5Gs0Ae2Uj7Co4NeLk6Vc3Bm",
  "refreshExpiresAt": "2026-06-21T05:00:00.000Z"
}
フィールド説明
accessTokenstringACMA・ACDA の呼び出しに使う Bearer トークン。
tokenTypestringトークンの種類。常に "Bearer"
scopestring 配列トークンの権限範囲。ServiceUser トークンは ["APP"]
createdAtstring (date-time)トークンの発行時刻。
expiresAtstring (date-time)accessToken の有効期限時刻。
refreshTokenstringaccessToken を更新する際に使うトークン。
refreshExpiresAtstring (date-time)refreshToken の有効期限時刻。createdAt を基準に 3 日後。

3 つのトークンの寿命は次のとおりです。

  • exchangeToken は使い捨てで寿命が短いです。コールバック直後にすぐ交換する必要があります。交換レスポンスには含まれず、ログインフローのステップ 2 でアドレスに渡されます。
  • accessToken の寿命はサーバー設定に従い、正確な有効期限時刻はレスポンスの expiresAt に含まれます。ACMA・ACDA 専用です。
  • refreshToken は発行後 3 日間有効です(refreshExpiresAt)。更新を呼び出すと新しい accessTokenrefreshToken のペアが発行され、以前のペアは破棄されます(ローテーション、rotation)。更新するたびに直前の refreshToken は使用できなくなります。

API

以下の 4 つのエンドポイントのベース URL はすべて https://auth.weegloo.com/v1 です。ログイン入口(GET)、トークン交換(POST)、トークン更新(POST)、ログアウト(DELETE)の順に扱います。