$app:example のような型を持つアプリ所有のメタオブジェクト(宣言的定義で作ったものを含む)を、所有アプリ自身が追加のアクセススコープ要求なしで読み書きできるようになった。インストール時の権限同意が一段シンプルに。
$app:example のような型。宣言的定義で作ったものも含む)を読み書きするのに、これまで必要だった追加のアクセススコープが要らなくなった。アプリ専用のデータでも、メタオブジェクト系のアクセススコープを要求しないと読み書きできなかった。インストール時の権限同意が増える。
app-owned メタオブジェクトは、所有アプリ自身からなら追加スコープ無しで利用可能。2026-04 以降の Admin API を使うだけ。
$app: 型)ならスコープ不要、マーチャント所有なら従来どおりスコープが必要。同じ「メタオブジェクト」でも所有者で扱いが変わる点がキモ。$app: プレフィックスの型型名が $app:example のように $app: で始まるメタオブジェクトが、アプリ所有として識別される。
declarative metaobject definitions(宣言的メタオブジェクト定義)で作成したものも、この対象に含まれる。
スコープ不要で使えるのは、そのメタオブジェクトを所有するアプリが利用する場合。
| 項目 | 従来 | 新仕様(2026-04 以降) |
|---|---|---|
app-owned($app:)の読み書き |
スコープ要 追加スコープの申請が必要 | スコープ不要 所有アプリなら追加要求なし |
| 宣言的メタオブジェクト定義 | 追加スコープを意識して採用 | 気にせず採用可 |
| merchant-owned の読み書き | read_metaobjects 等が必要 |
変わらず必要 従来どおりスコープ要 |
| 必要な API バージョン | — | 2026-04 以降 |
| マーチャント側の摩擦 | 権限同意の項目が増える | 低減 余計なスコープ要求が消える |
app-owned メタオブジェクトをスコープ無しで読み書きするには、Admin API バージョンが 2026-04 以降であることが条件。
対象は $app: 型および宣言的定義で作られた、そのアプリ所有のメタオブジェクト。所有アプリ自身が利用するケースが前提。
$app:example のような型を持つ、アプリ所有のメタオブジェクト。宣言的メタオブジェクト定義で作成したものも含む。所有アプリが読み書きする限りスコープは要らない。
マーチャント所有のメタオブジェクト型を扱う場合は、read_metaobjects や write_metaobject_definitions などの個別スコープの付与が引き続き必要。
$app: 型のみスコープ不要になるのは $app: プレフィックスのアプリ所有メタオブジェクト。merchant-owned は対象外で、扱いは何も変わらない。
スコープ不要の挙動は 2026-04 以降で有効。古いバージョンに固定したままだと従来どおりスコープが要るので、まず version pin を確認。
declarative metaobject definitions で作成したアプリ所有メタオブジェクトも対象。宣言的アプローチを採用する際、スコープ申請の心配が不要になる。
read_metaobjects / write_metaobject_definitions 等は merchant-owned 型を触る限り必要。app-owned と混在する箇所を取り違えない。
アプリ専用の状態・設定を app-owned メタオブジェクトに寄せれば、要求スコープの数そのものを減らせる。ただし移行の具体手順(既存スコープの外し方・再認可の要否)の明記はないので、削除前にサンドボックスで検証するのが安全。
$app: 型の app-owned メタオブジェクトに寄せ、Admin API を 2026-04 以降に上げて、該当する追加スコープ要求を外す。2026-04 以降の API で構築する。$app: 前提で設計する。read_metaobjects 等を要求しているが、実際にはアプリ所有データしか触っていない可能性があり、過剰な権限を保持している。2026-04 以降へ → 不要になった追加スコープ要求を削減する。$app: 型・宣言的定義含む)のメタオブジェクトは、Admin API 2026-04 以降なら追加スコープ無しで読み書きできる。