ページテンプレートを設定

PUT /v1/branding/page-template · 権限 branding:write

環境の下書きの Liquid ページテンプレートを書き込みます (Startup 以上のプラン、機能 branding_page_template)。テンプレートには {{ idp.widget }} スロットがちょうど 1 回含まれている必要があり、書き込み時にサンドボックスでコンパイルされます。空文字列で消去します。

リクエスト

フィールド タイプ 必須 説明
If-Match ヘッダー はい 最後に読み取った下書きの ETag (未書き込みなら "0")。ない場合は 428、古い場合は 412。
page_template 文字列 はい 最大 102400 バイト。"" で消去。

レスポンス

200 OK と環境の下書きおよび ETag。theme には設定済みのトークンのみが含まれ、未設定のトークンはプラットフォーム既定値を継承します。

{
  "theme": {"mode": "light", "light": {"color": {"primary": "#0a3d91"}}, "logo_height": 40},
  "css": null,
  "page_template": null,
  "updated_at": "2026-10-05T09:30:00.123456Z"
}

エラー

HTTP コード 概要
400 unknown_field 本文に不明なフィールドがあるか、JSON オブジェクトではありません。
403 plan_feature_unavailable プランにこの機能が含まれていません (plan_feature_unavailable、拡張 feature と required_plan)。開発環境は制限されません。
412 precondition_failed If-Match が下書きの現在のバージョンと一致しません。
422 validation_failed page_template がない、null (required)、または長すぎます (too_long)。
422 template_forbidden_construct テンプレートが禁止された構文 (例: {% include %} や <script>) を使用しているか、{{ idp.widget }} がちょうど 1 回出現しません。
428 precondition_required If-Match ヘッダーがありません。
401 unauthenticated 認証情報がない、無効、または失効しています。
403 insufficient_permissions 認証情報に必要な権限がありません。
429 rate_limited レート制限を超えました。Retry-After の期間後に再試行してください。
503 service_unavailable 依存サービスが一時的に利用できません。Retry-After の期間後に再試行してください。

例

curl -X PUT https://api.eu.keenauth.com/v1/branding/page-template \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -H 'If-Match: "3"' \
  -d '{"page_template":"<div class=\"shell\">{{ idp.widget }}</div>"}'