Organization
Organization は Space を格納する最上位の入れ物です。会社やチーム単位が 1 つの Organization に対応し、その下に複数の Space を置きます。サブスクリプションプラン(plan)とメンバーシップは Organization レベルで管理されるため、決済とメンバー権限は Space ではなくこの Organization を基準に適用されます。
自分が所属する Organization の一覧は GET /me/organization-memberships で取得します。このリソースには全件を返すエンドポイントはありません。
リソース構造
以下は Organization「DailyWear カンパニー」の単一取得レスポンスです。sys(システム属性)と本文属性 name・description を持ちます。
{
"sys": {
"id": "ilLRJxDp",
"type": "Organization",
"createdBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
"createdAt": "2026-05-11T10:51:16.832Z",
"updatedBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
"updatedAt": "2026-05-11T10:51:16.832Z",
"version": 1,
"isOfficial": false,
"plan": { "sys": { "id": "free", "type": "Refer", "targetType": "Plan" } }
},
"name": "DailyWear カンパニー",
"description": "衣類・雑貨のオンラインショップ運営会社"
}主なキー:
name: Organization の名前です(1~64 文字)。会社やチームの表示名です。description: Organization に関する説明です(1~128 文字、任意)。plan: この Organization のサブスクリプションプランを指すRefer<Plan>です(例:free)。決済プランがここに紐づいています。isOfficial: 公式 Organization かどうかを示します(boolean)。
システム属性 (sys) と本文
すべての Organization は共通のシステム属性を sys オブジェクトに持ちます。createdBy・updatedBy は Refer の形({ "sys": { "id", "type": "Refer", "targetType" } })で入り、plan は Refer<Plan> です。
| 属性 | 型 | 説明 |
|---|---|---|
id | string | リソースの一意な識別子。 |
type | string | リソースの種類。Organization は常に "Organization"。 |
createdBy | Refer<User> | 作成したユーザー。 |
createdAt | string (date-time) | 作成日時。 |
updatedBy | Refer<User> | 最後に更新したユーザー。 |
updatedAt | string (date-time) | 最終更新日時。 |
version | integer (≥1) | リソースのバージョン。更新するたびに 1 ずつ上がります。 |
isOfficial | boolean | 公式 Organization かどうか。 |
plan | Refer<Plan> | サブスクリプションプラン。例: free。 |
本文属性:
| 属性 | 型 | 説明 |
|---|---|---|
name | string (1~64) | Organization 名。作成・更新時に指定します。 |
description | string (1~128) | Organization の説明。任意項目です。 |
icon | string (読み取り) / object (書き込み) | Organization のアイコン。レスポンスでは画像 URL の文字列です。更新リクエストでは、アップロードしたファイルを指すオブジェクト { "upload": { "sys": { ..., "targetType": "Upload" } } } として送ります(Upload API で取得した Upload を参照)。 |
consoleHomeUrl | string (uri) | この Organization に属するすべての Space で、既定のホーム画面に代えて表示するページ。コンソールのアドレスではない https URL を指定します(条件)。任意項目です。 |
Organization は発行(publish)の概念がない設定リソースです。そのため Content・Media と異なり sys に publish・archive・status がなく、version のみを持ちます。version は Organization を更新するたびに上がります。
更新(PUT)はリソース全体を置き換えますが、値を送らなかったときの意味が 2 つの任意項目で互いに反対です。icon は省くと既存のアイコンがそのまま維持されますが、consoleHomeUrl は省くと保存されていたアドレスが消去されます。すでに指定したアドレスを維持するには、更新のたびにその値も併せて送る必要があります。部分更新(PATCH)はパッチに記載した属性のみを変更するため、consoleHomeUrl を指定しなければそのまま残ります。
ホーム画面に表示するページの条件
アドレスが保存されたからといって、そのページが表示されるとは限りません。表示を拒否するアドレスを指定しても保存リクエストは成功し、エラーも返されず、ホーム画面に何も表示されないことでのみ判明します。
その場所で表示されるには、ページ側に次の条件が備わっている必要があります。
- HTTPS で提供します。 コンソールが HTTPS で動作するため、セキュアな接続ではないページはブラウザーが表示を遮断します。
- 他のページ内での表示を許可します。 レスポンスヘッダーに
Content-Security-Policy: frame-ancestors https://console.weegloo.comを指定します。X-Frame-Optionsで表示を禁止している場合は、併せて調整します。 - Cookie を使用する場合は
SameSite=None; Secureで発行します。 他のサイト内で表示される文脈のため、この指定がない Cookie は送信されません。
ページは <iframe> 内で表示され、そのフレームには以下の権限のみが開かれています。
| 属性 | ページで可能になること |
|---|---|
sandbox="allow-scripts" | スクリプトの実行。 |
sandbox="allow-same-origin" | 自分のオリジンの Cookie・ストレージの読み書き、自分のサーバーへのリクエスト送信。 |
sandbox="allow-forms" | フォームの送信。 |
sandbox="allow-popups" | 新しいウィンドウや新しいタブを開くこと。 |
sandbox="allow-popups-to-escape-sandbox" | そうして開かれたウィンドウがこの制限を引き継がないこと。 |
sandbox="allow-downloads" | ファイルのダウンロードの開始。 |
sandbox="allow-storage-access-by-user-activation" | ユーザーが操作したときにストレージへのアクセス権限を要求すること。 |
allow="fullscreen" | 全画面表示への切り替え。 |
allow="clipboard-write" | クリップボードへの書き込み。 |
ここにないものは動作しません。このときエラーは発生せず、呼び出しは黙って無視されるため、コードからは遮断されたかどうかを知ることができません。
フレームには referrerpolicy="strict-origin-when-cross-origin" も併せて指定されます。そのためページへはコンソールのオリジンまでしか伝わらず、どの画面から開かれたかは伝わりません。
sandbox とは別に、ログインが必要なページは正常に動作しないことがあります。ログインプロバイダーの多くが他のページ内でのログインを遮断するため、ソーシャルログインはおおむね動作しません。
エラー
Organization を扱うときに出会うコードです。すべてのリソースに共通するコードは 共通エラー を参照してください。
| コード | 条件 |
|---|---|
WGL422078 | サブスクリプションプランが無料ではない Organization を削除しようとしました。先に無料プランへ引き下げる必要があります。 |
WGL422079 | サブスクリプションが解約されていない、または変更が保留中の Organization を削除しようとしました。 |
WGL422024 | Space が残っている Organization を削除しようとしました。Space をすべて削除したあとに削除できます。 |
WGL422046 | icon としてアップロードしたファイルが許容サイズを超えています。 |
WGL422047 | icon としてアップロードしたファイルが PNG・JPG・WebP ではありません。 |
WGL400072 | consoleHomeUrl の形式が正しくないか、コンソールのアドレスを指しています。 |
API
以下のすべてのエンドポイントの基準 URL は https://cma.weegloo.com/v1 で、Authorization ヘッダーに CMA を認証する Bearer トークンが必要です。更新・部分更新では、楽観的同時実行制御のために X-Weegloo-Version ヘッダー(現在のリソースの sys.version)を併せて送る必要があります。作成と削除にはこのヘッダーはありません。
関連ドキュメント
- Space: この Organization 配下の Space。
- Organization Membership: Organization のメンバーと、自分が所属する組織の取得。
