
# ディレクトリを無効化

`POST /v1/directories/{directory_id}:deactivate` · 権限 `directories:write`

ディレクトリを無効化します（`state` が `inactive` になります）。そのトークンは有効なままですが、ディレクトリはすべての SCIM リクエストに、無効なトークンと同じ `401` で応答します。一度も使われていないディレクトリは、最初のリクエストで有効化されなくなります。すでに同期済みのユーザーとグループは保持されます。元に戻すには `POST /v1/directories/{directory_id}:activate` を使用します。この操作は冪等です。ディレクトリがすでに無効な場合は何も書き込まれず、バージョンも変わらず、ディレクトリが `200` で返されます。書き込みは `directory.deactivated` として監査されます。

## リクエスト

| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
| `directory_id` | パス | はい | SCIM ディレクトリ ID（`dir_…`）。 |
| `Idempotency-Key` | ヘッダー | いいえ | リトライされたリクエストに対して、最初のレスポンスを再生します。 |

ボディは任意で、フィールドはありません（`{}`）。`If-Match` は使用しません。

## レスポンス

ディレクトリと `ETag` を含む `200 OK`。

```json
{
  "id": "dir_01j9xm2n4p6q8r0s2t4v6w8y0z",
  "organization_id": "org_01j9xk3m7q8r2s4t6v8w0y2z4a",
  "type": "scim",
  "name": "Okta",
  "state": "inactive",
  "base_url": "https://acme.eu.keenauth.app/scim/v2/dir_01j9xm2n4p6q8r0s2t4v6w8y0z",
  "created_at": "2026-10-19T09:31:00.123456Z",
  "last_request_at": null,
  "provisioning_mode": "user_store",
  "attribute_allowlist": ["title", "urn:ietf:params:scim:schemas:extension:enterprise:2.0:user:department"],
  "unverified_domain_action": "invite",
  "delete_action": "remove_membership",
  "on_delete_memberships": "keep",
  "mass_deprovision_guard": {"enabled": true, "percent": 20, "absolute_min": 25},
  "send_welcome_email": false
}
```

## エラー

| HTTP | code | 発生条件 |
|---|---|---|
| 400 | `unknown_field` | ボディにフィールドが含まれています。 |
| 404 | `not_found` | この環境にディレクトリが存在しません。 |
| 409 | `conflict` | ディレクトリが削除中です。 |
| 422 | `idempotency_key_reuse` | `Idempotency-Key` が別のリクエストで使われています。 |
| 401 | `unauthenticated` | 認証情報がない、不正、または失効しています。 |
| 403 | `insufficient_permissions` | 認証情報に必要な権限がありません。 |
| 429 | `rate_limited` | レート制限を超えました。`Retry-After` の期間を置いて再試行してください。 |
| 503 | `service_unavailable` | ディレクトリの同期が一時的に利用できないか、このデプロイでは未設定です。`Retry-After` の期間を置いて再試行してください。 |

## 例

```bash
curl -i -X POST "https://api.eu.keenauth.com/v1/directories/dir_01j9xm2n4p6q8r0s2t4v6w8y0z:deactivate" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```
