
# テキストの上書きを設定する

`PUT /v1/branding/texts/{screen}/{locale}` · 権限 `branding:write`

1 つの画面とロケールに対するテキストの上書きを書き込みます。本文のキーは追加または置換され、それ以外のキーは保持されます。組み込みカタログのキーのみ上書きできます。値は、カタログのテキストに含まれる `{{ placeholders }}` を維持している必要があります。制御文字および双方向の制御文字は拒否されます。セキュリティに関わるテキストは上書きできません。対象は、同意画面、デバイスおよびサインアウトの確認、リカバリーコードの警告、プレビューバナーです。変更は公開時に反映されます。

## リクエスト

| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
| `screen` | path | はい | ホステッドページの画面(例: `login`、`authorize`)。 |
| `locale` | path | はい | 対応しているロケール(例: `en`、`tr`)。 |
| `application_id` | query | いいえ | アプリケーションのスコープ(`app_…`)。これと `org_id` の両方を指定しない場合は、環境のスコープが使用されます。 |
| `org_id` | query | いいえ | 組織のスコープ(`org_…`)。`application_id` と併用することはできません。 |
| `texts` | object | はい | キーから値へのマッピング。1〜500 キー、各値は 1〜1000 文字です。 |

## レスポンス

`200 OK`。指定したスコープ、画面、ロケールのすべての上書きを返します。

```json
{"screen": "login", "locale": "tr", "texts": {"title": "Hoş geldiniz"}}
```

## エラー

| HTTP | code | 発生条件 |
|---|---|---|
| 400 | `unknown_field` | 本文に未知のフィールドがあるか、JSON オブジェクトではありません。 |
| 404 | `not_found` | `application_id` または `org_id` の形式が不正であるか、この環境にアプリケーションが存在しません。 |
| 422 | `validation_failed` | `texts` が欠けているか空である、キーが未知である(`unknown_text_key`)、プレースホルダーが欠けている(`placeholder_mismatch`)、ロケールが未対応である、または値が無効です。`pointer` は `/texts/<key>` です。`application_id` と `org_id` の両方が指定された(`mutually_exclusive`)、またはいずれかが重複して指定された(`repeated`)場合にも発生します。 |
| 401 | `unauthenticated` | 認証情報が存在しない、無効である、または取り消されています。 |
| 403 | `insufficient_permissions` | 認証情報に必要な権限がありません。 |
| 429 | `rate_limited` | レート制限を超えました。`Retry-After` の時間が経過してから再試行してください。 |
| 503 | `service_unavailable` | 依存先のサービスが一時的に利用できません。`Retry-After` の時間が経過してから再試行してください。 |

## 例

```bash
curl -X PUT "https://api.eu.keenauth.com/v1/branding/texts/login/tr" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{"texts":{"title":"Hoş geldiniz"}}'
```
