
# 組織を選択

`POST /fapi/v1/authorization-requests/{authorization_request_id}:select-organization` · 環境のサインインホストから呼び出されます

ホスト型の組織選択画面でユーザーが選んだ組織を、認可リクエストにバインドします。サーバーは選択内容を再度検証します。呼び出し時点で `organization_id` が、このユーザーとこのアプリケーションについて [選択可能な組織の一覧取得](/docs/api/fapi/authorization-requests/organizations/list) の一覧に含まれる場合にのみ受け付けます。それ以外の値は `422 validation_failed` となり、次の場合を含めて何もバインドされません。

- 別のユーザーの組織
- 別の環境の組織
- アプリケーションが有効になっていない組織
- 形式が不正な識別子

成功すると、組織はリクエストに一度だけ書き込まれ、以後変更できません。レスポンスには認可エンドポイントの再開 URL である `continue_url` が含まれます。ブラウザはその URL に移動し、バインドされた組織を使って認可が続行されます。

リクエストの条件と `404` の応答は一覧取得と同じです。認証済みユーザーの `__Host-idp_session` Cookie が必要です。Cookie がない、期限切れ、または失効している場合は `401 unauthenticated` を返します。

## リクエスト

パスパラメータ:

| パラメータ | 説明 |
| --- | --- |
| `authorization_request_id` | 組織選択画面の URL の `authorization_request` の値(`azr_…`)。 |

ヘッダー:

| ヘッダー | 必須 | 説明 |
| --- | --- | --- |
| `Idp-Client` | はい | SDK の識別子。 |
| `Origin` | はい | 正確に `https://<サインインホスト>` である必要があります。 |
| `Content-Type` | はい | `application/json`。 |

本文:

| フィールド | 型 | 必須 | 説明 |
| --- | --- | --- | --- |
| `organization_id` | string | はい | 一覧に含まれる組織の `id`(`org_…`)。 |

## レスポンス

`200 OK`:

| フィールド | 型 | 説明 |
| --- | --- | --- |
| `continue_url` | string | ブラウザが進む先。認可エンドポイントの再開 URL です。 |

```json
{"continue_url": "/oauth2/authorize/resume?authorization_request=azr_01jbz6x8kq3m2n4p5r6s7t8v9w"}
```

## エラー

| ステータス | コード | 発生条件 |
| --- | --- | --- |
| 400 | `malformed_request` | 本文が有効な JSON ではない。 |
| 400 | `unknown_field` | 本文に `organization_id` 以外のフィールドがある。 |
| 401 | `unauthenticated` | 有効なセッション Cookie がない。 |
| 403 | `origin_not_allowed` | `Origin` がない、または不正である。 |
| 404 | `not_found` | リクエストが不正、不明、期限切れ、終了済み、別のホストのもの、または別のブラウザのものである。 |
| 409 | `conflict` | リクエストに既に組織がある。 |
| 413 | `payload_too_large` | 本文が大きすぎる。 |
| 415 | `unsupported_media_type` | `Content-Type` が `application/json` ではない。 |
| 422 | `validation_failed` | `organization_id` がないか、一覧に含まれる組織ではない。 |
| 503 | `temporarily_unavailable` | 組織の一覧を読み取れなかった。 |

## 例

```bash
curl -X POST https://example.keenauth.app/fapi/v1/authorization-requests/azr_01jbz6x8kq3m2n4p5r6s7t8v9w:select-organization \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -H "Origin: https://example.keenauth.app" \
  -H "Content-Type: application/json" \
  -b cookies.txt \
  -d '{"organization_id": "org_01jbz6x8kq3m2n4p5r6s7t8v9w"}'
```
