Restore a single archived donor
Restores one previously-archived donor (Donor::restore()), re-indexes them in Meilisearch, and refreshes the donor cache + Mailchimp sync. Cascading restoration of sponsorships/commitments is wired but disabled at the handler level (with_commitments = false); the input flag is currently ignored. Same handler is mounted at /admin/donor/activate (v1/admin) and the legacy /admin/activate_donor. Requires permission: donors_manage and is gated by the disable_donor_restore client restriction.
Authorizations
Passport bearer token authentication for legacy admin sessions.
Query Parameters
ID of the archived donor to restore. Read via input() so may be sent as a body field instead.
Owning client of the donor; used to enforce multi-tenant scope on the lookup.
Response
Donor restored, OR donor was already active (idempotent path returns the same status code with a different message).
Successfully Restored on restore; Error: Donor has already been Restored. when the donor was not archived.
"Successfully Restored"