
# 招待を再送信

`POST /fapi/v1/organizations/{org_id}/invitations/{invitation_id}:resend` · 環境のサインインホストから呼び出します

保留中のメール招待を、新しいリンクで再送信します。以前のリンクは使用できなくなります。有効期限は変更されません。招待の送信は最大 5 回までで、送信間隔は少なくとも 10 分あける必要があります。間隔が短すぎる場合や送信回数の上限を超えた場合は、`Retry-After` とともに `429 invite_rate_limited` が返されます。保留中ではない招待、またはメール配信なしで作成された招待の場合は、`422 invitation_invalid` が返されます。リンク自体は返されません。

ログイン中のユーザーの、`Origin` が完全一致する `__Host-idp_session` Cookie、または第一者アプリのフロント API アクセストークン（DPoP 証明を添えた `Authorization: DPoP <token>`。[フロント API アクセストークン](/docs/api/fapi/front-api-token) を参照）が必要です。ユーザーは、組織の有効なメンバーであり、`idp_members:invite` 権限を持っている必要があります。メンバーでないユーザーには `404 not_found` が返され、権限のないメンバーには `403 insufficient_permissions` が返されます。特権ロールを含む招待を再送信できるのは、管理者ロールを持つメンバーのみです（`403 role_not_assignable`）。

`@keenauth/js` を使用する場合: `await keenauth.organizations.resendInvitation(orgId, invitationId)`。

## リクエスト

ヘッダー:

| ヘッダー | 必須 | 説明 |
| --- | --- | --- |
| `Idp-Client` | はい | SDK の識別子。 |
| `Origin` | Cookie を使う場合は必須 | `https://<sign-in host>`。 |

`org_id`: 組織の識別子（`org_…`）。`invitation_id`: 招待の識別子（`inv_…`）。

ボディはありません。

## レスポンス

`200 OK` で、[招待](/docs/api/fapi/organizations/invitations/create) と `ETag: "<version>"` が返されます。`send_count` と `last_sent_at` には、今回の送信が反映されます。

## エラー

| ステータス | コード | 発生条件 |
| --- | --- | --- |
| 401 | `unauthenticated` | 有効なセッション Cookie またはトークンがありません。 |
| 403 | `insufficient_permissions` | ユーザーが組織内で `idp_members:invite` を持っていません。 |
| 403 | `role_not_assignable` | 招待に特権ロールが含まれており、ユーザーが管理者ロールを持っていません。 |
| 403 | `origin_not_allowed` | `Origin` が一致しません。 |
| 404 | `not_found` | このユーザーに対して該当する組織または招待がありません。存在しない識別子、形式が不正な識別子、他者の識別子も同じ応答になります。 |
| 409 | `organization_disabled` | 組織が無効化されているか、削除保留中（`organization_pending_deletion`）です。 |
| 422 | `invitation_invalid` | 招待が保留中ではないか、メール配信用に作成されていません。 |
| 429 | `invite_rate_limited` | 既に 5 回送信済みか、前回の送信から 10 分未満です。`Retry-After` の後に再試行してください。 |
| 501 | `not_implemented` | このデプロイメントではメール配信が利用できません。 |
| 503 | `service_unavailable` | 一時的に利用できません。`Retry-After` の後に再試行してください。 |

## 例

```bash
curl -X POST "https://example.keenauth.app/fapi/v1/organizations/org_01jbz6x8kq3m2n4p5r6s7t8v9a/invitations/inv_01jbz6x8kq3m2n4p5r6s7t8v9d:resend" \
  -H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
  -H "Origin: https://example.keenauth.app" \
  -b cookies.txt
```

```json
{
  "id": "inv_01jbz6x8kq3m2n4p5r6s7t8v9d",
  "email": "new.member@example.com",
  "role_ids": ["rol_01jbz6x8kq3m2n4p5r6s7t8v9w"],
  "delivery": "email",
  "delivery_status": "queued",
  "status": "pending",
  "send_count": 2,
  "last_sent_at": "2026-11-03T10:30:00Z",
  "expires_at": "2026-11-10T10:00:00Z",
  "accepted_user_id": null,
  "accepted_at": null,
  "revoked_at": null,
  "created_at": "2026-11-03T10:00:00Z",
  "updated_at": "2026-11-03T10:30:00Z",
  "version": 2
}
```

## 個人データ

このエンドポイントは、組織のメンバーシップと招待という個人データを扱います。[KeenAuth API の個人データ](/docs/policies/personal-data) では、保存される内容、保存期間、削除方法について説明しています。どのフィールドにも、特別な種類の個人データ（健康、生体情報、宗教、政治的意見、性的指向）を送信しないでください。
