> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.givechariot.com/v2026-04-01/api/donor-accounts/disable-donor-account/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.givechariot.com/_mcp/server. # Disable Donor Account POST https://api.givechariot.com/v1/donor_accounts/{id}/disable Disable an approved Donor Account. A disabled Donor Account remains `approved` but cannot submit new Grant Requests. Existing Grant Requests already in flight are unaffected — disabling does not retroactively cancel or reject prior activity. Use this when a DAF needs to temporarily prevent a donor from initiating new grants (e.g. account under review, donor offboarding) without rejecting the underlying identity verification. This endpoint is idempotent — calling it on an already-disabled account returns the Donor Account unchanged. * The Donor Account must be in `approved` status. Calls on a `pending` or `rejected` account return status `409 Conflict`. Reference: https://docs.givechariot.com/api/donor-accounts/disable-donor-account ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Servers - `https://api.givechariot.com` (Production, default) - `https://sandboxapi.givechariot.com` (Sandbox) ## Request ### Path parameters - `id` (string, required) — The unique id of the Donor Account. ## Response ### 200 The Donor Account was disabled (or was already disabled). - `id` (string, required) — The unique identifier for this object. - `status` (enum, required) — The status of a [Donor Account](/api/donor-accounts). * `pending`: The Donor Account has been created but the DAF has not yet approved or rejected it. * `approved`: The DAF has verified the donor's identity and Grants from this account can be processed. * `rejected`: The DAF has rejected the Donor Account. Grants from this account will not be processed. - Allowed values: `pending`, `approved`, `rejected` - `donor` (DonorAccountDonor, required) — The donor's identity and profile information. - `created_at` (datetime, required) — Time when this object was created. Expressed in RFC 3339 format. - `updated_at` (datetime, required) — Time when this object was last updated. Expressed in RFC 3339 format. - `external_id` (string, optional, nullable) — The DAF's internal identifier for this Donor Account. Can be set on creation or via [Update Donor Account](/api/donor-accounts/update) to link the DAFpay Donor Account to the donor's record in the DAF's own systems. - `approval` (DonorAccountApproval, optional, nullable) — Details about the approval decision. Present when `status` is `approved`; otherwise `null`. - `rejection` (DonorAccountRejection, optional, nullable) — Details about the rejection decision. Present when `status` is `rejected`; otherwise `null`. - `disabled` (boolean, optional, default: false) — Whether this Donor Account is currently disabled. A disabled Donor Account remains `approved` but cannot submit new Grant Requests — call [Enable Donor Account](/api/donor-accounts/enable) to re-enable it. Disabling is only available for accounts in `approved` status. - `metadata` (map from string to string, optional) — A map of arbitrary string keys and values to store information about the object. ## Errors ### 400 Bad Request Error The request is invalid or contains invalid parameters - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 401 Unauthorized Error Unauthorized. The request is missing the security (OAuth2 Bearer token) requirements and the server is unable to verify the identify of the caller. - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 403 Forbidden Error Access denied - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 404 Not Found Error Resource Not Found - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 409 Conflict Error Resource Conflicts - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ### 500 Internal Server Error Internal Server Error - `type` (string, required) — A URI reference identifying the problem type. - `title` (string, required) — A short, human-readable summary of the problem type. - `status` (integer, required) — The HTTP status code for this error. - `detail` (string, required) — A human-readable explanation specific to this occurrence. ## Types ### DonorAccountDonor The donor's identity and profile information. - `email` (string, required) — The donor's email. This is the donor's verified identifier — DAFpay verifies ownership via an email verification flow before a Donor Account is created. - `first_name` (string, optional, nullable) — The donor's first name as captured during DAFpay profile setup. May be null for Donor Accounts created via [Create Donor Account](/api/donor-accounts/create) before the donor has authenticated. - `last_name` (string, optional, nullable) — The donor's last name as captured during DAFpay profile setup. May be null for Donor Accounts created via [Create Donor Account](/api/donor-accounts/create) before the donor has authenticated. - `phone` (string, optional, nullable) — The donor's phone number as captured during DAFpay profile setup. DAFpay does not currently verify ownership of the phone number. Treat this field as donor-asserted information. ### DonorAccountApproval Details about the approval decision. Present when `status` is `approved`; otherwise `null`. - `approved_at` (datetime, optional) — Time when the Donor Account was approved. Expressed in RFC 3339 format. - `approved_by` (string, optional) — Identifier of the actor that approved this Donor Account. For DAF-initiated approvals, this is the DAF's API key principal. For automatic approvals via token verification, this is `system:authorization_token`. ### DonorAccountRejection Details about the rejection decision. Present when `status` is `rejected`; otherwise `null`. - `rejected_at` (datetime, optional) — Time when the Donor Account was rejected. Expressed in RFC 3339 format. - `rejected_by` (string, optional) — Identifier of the actor that rejected this Donor Account. For DAF-initiated rejections, this is the DAF's API key principal. - `rejection_reason` (string, optional) — A human-readable reason provided by the DAF when rejecting the Donor Account. ## Examples **Response** ```json { "id": "donor_account_01jpjenf5q6cawy43yxfcrxhct", "status": "approved", "donor": { "email": "warrenBuffet@example.com", "first_name": "Warren", "last_name": "Buffet", "phone": "+12125550100" }, "created_at": "2026-04-01T12:00:00Z", "updated_at": "2026-04-05T09:00:00Z", "external_id": "ACME-DAF-DONOR-1042", "approval": { "approved_at": "2026-04-02T18:30:00Z", "approved_by": "daf:fid_01jpjenf5q6cawy43yxfcrxhct" }, "rejection": null, "disabled": true } ```