Grant Requests

Get Grant Request

Retrieve a Grant Request with the given ID.

get/v1/grant_requests/{id}

Path parameters

idstring required

The unique ID of the Grant Request.

Response

OK

idstring required

The unique identifier for this Grant Request.

donor_account_idstring required

The ID of the Donor Account this Grant Request belongs to.

giving_pool_idstring nullable

The ID of the Giving Pool the grant is being made from. Present when the donor selected a specific giving pool.

status'awaiting_account_decision' | 'pending' | 'submitted' | 'rejected' required

The lifecycle status of a Grant Request.

  • awaiting_account_decision: The linked Donor Account is not yet approved. Advances automatically when the account is approved.
  • pending: The Donor Account is approved and the Grant Request is awaiting your decision.
  • submitted: You have submitted the grant in your system. Terminal.
  • rejected: You have rejected the grant and it will not be processed. Terminal.
einstring required

The EIN of the recipient nonprofit.

nonprofit_namestring

The name of the recipient nonprofit at the time of the Grant Request.

amount_centsinteger required

The grant amount in cents (USD).

frequency'one_time' | 'monthly' | 'quarterly' | 'annual' required

How often the donor intends this grant to recur. Only frequencies enabled in your DAF Provider settings will appear on Grant Requests.

form_urlstring uri required

The URL of the page where the donor submitted the DAFpay gift.

purposestring nullable

The donor's stated purpose for the grant.

notestring nullable

An optional note from the donor to the nonprofit.

rejection_reasonstring nullable

The reason provided when the Grant Request was rejected. Set when status transitions to rejected.

created_atstring date-time required

Time when this object was created, expressed in RFC 3339 format.

updated_atstring date-time required

Time when this object was last updated, expressed in RFC 3339 format.

Example response

{
  "id": "grant_req_01jpjenf5q6cawy43yxfcrxhct",
  "donor_account_id": "donor_account_01jpjenf5q6cawy43yxfcrxhct",
  "giving_pool_id": "0bf40881-8ee2-47fb-98ca-f58c7999aa34",
  "ein": "12-3456789",
  "nonprofit_name": "American Red Cross",
  "amount_cents": 10000,
  "form_url": "https://example.org/donate",
  "created_at": "2026-04-01T09:00:00Z",
  "updated_at": "2026-04-01T12:00:00Z"
}

Changes

Changed in 7 of the 41 revisions of this API.301051

  • b87f7738d3361025See the full diff
    • removed the required property code from the response with the 400 status

      response-required-property-removed

    • removed the required property code from the response with the 401 status

      response-required-property-removed

    • removed the required property code from the response with the 403 status

      response-required-property-removed

    • removed the required property code from the response with the 404 status

      response-required-property-removed

    • removed the required property code from the response with the 500 status

      response-required-property-removed

    • removed the required property message from the response with the 400 status

      response-required-property-removed

    • removed the required property message from the response with the 401 status

      response-required-property-removed

    • removed the required property message from the response with the 403 status

      response-required-property-removed

    • removed the required property message from the response with the 404 status

      response-required-property-removed

    • removed the required property message from the response with the 500 status

      response-required-property-removed

    • media type application/json was changed to a more specific media type application/problem+json for the response status 400

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 401

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 403

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 404

      response-media-type-name-specialized

    • media type application/json was changed to a more specific media type application/problem+json for the response status 500

      response-media-type-name-specialized

    • added the required property detail to the response with the 400 status

      response-required-property-added

    • added the required property detail to the response with the 401 status

      response-required-property-added

    • added the required property detail to the response with the 403 status

      response-required-property-added

    • added the required property detail to the response with the 404 status

      response-required-property-added

    • added the required property detail to the response with the 500 status

      response-required-property-added

    • added the required property status to the response with the 400 status

      response-required-property-added

    • added the required property status to the response with the 401 status

      response-required-property-added

    • added the required property status to the response with the 403 status

      response-required-property-added

    • added the required property status to the response with the 404 status

      response-required-property-added

    • added the required property status to the response with the 500 status

      response-required-property-added

    • added the required property title to the response with the 400 status

      response-required-property-added

    • added the required property title to the response with the 401 status

      response-required-property-added

    • added the required property title to the response with the 403 status

      response-required-property-added

    • added the required property title to the response with the 404 status

      response-required-property-added

    • added the required property title to the response with the 500 status

      response-required-property-added

    • added the required property type to the response with the 400 status

      response-required-property-added

    • added the required property type to the response with the 401 status

      response-required-property-added

    • added the required property type to the response with the 403 status

      response-required-property-added

    • added the required property type to the response with the 404 status

      response-required-property-added

    • added the required property type to the response with the 500 status

      response-required-property-added

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • removed the optional property details from the response with the 400 status

      response-optional-property-removed

    • removed the optional property details from the response with the 401 status

      response-optional-property-removed

    • removed the optional property details from the response with the 403 status

      response-optional-property-removed

    • removed the optional property details from the response with the 404 status

      response-optional-property-removed

    • removed the optional property details from the response with the 500 status

      response-optional-property-removed

    • added the optional property details/items/debug to the response with the 400 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 401 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 403 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 404 status

      response-optional-property-added

    • added the optional property details/items/debug to the response with the 500 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 400 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 401 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 403 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 404 status

      response-optional-property-added

    • added the optional property details/items/type to the response with the 500 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 400 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 401 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 403 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 404 status

      response-optional-property-added

    • added the optional property details/items/value to the response with the 500 status

      response-optional-property-added

  • 90671617b825155See the full diff
    • the code response's property type/format changed from number/ to string/ for status 400

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 401

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 403

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 404

      response-property-type-changed

    • the code response's property type/format changed from number/ to string/ for status 500

      response-property-type-changed

    • removed the required property error from the response with the 400 status

      response-required-property-removed

    • removed the required property error from the response with the 401 status

      response-required-property-removed

    • removed the required property error from the response with the 403 status

      response-required-property-removed

    • removed the required property error from the response with the 404 status

      response-required-property-removed

    • removed the required property error from the response with the 500 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 400 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 401 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 403 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 404 status

      response-required-property-removed

    • removed the required property timestamp from the response with the 500 status

      response-required-property-removed

    • added the optional property details to the response with the 400 status

      response-optional-property-added

    • added the optional property details to the response with the 401 status

      response-optional-property-added

    • added the optional property details to the response with the 403 status

      response-optional-property-added

    • added the optional property details to the response with the 404 status

      response-optional-property-added

    • added the optional property details to the response with the 500 status

      response-optional-property-added

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • 4f143792edeb55See the full diff
    • removed the optional property cancellation_reason from the response with the 200 status

      response-optional-property-removed

    • added the new awaiting_account_decision enum value to the status response property for the response status 200

      response-property-enum-value-added

    • added the new pending enum value to the status response property for the response status 200

      response-property-enum-value-added

    • added the new rejected enum value to the status response property for the response status 200

      response-property-enum-value-added

    • added the new submitted enum value to the status response property for the response status 200

      response-property-enum-value-added

    • added the optional property rejection_reason to the response with the 200 status

      response-optional-property-added

    • removed the awaiting_account_approval enum value from the status response property for the response status 200

      response-property-enum-value-removed

    • removed the awaiting_daf_submission enum value from the status response property for the response status 200

      response-property-enum-value-removed

    • removed the canceled enum value from the status response property for the response status 200

      response-property-enum-value-removed

    • removed the initiated enum value from the status response property for the response status 200

      response-property-enum-value-removed

    • the response property cancellation_reason became nullable for the status 200

      response-property-became-nullable

    • the response property donor_contact/address/line2 became nullable for the status 200

      response-property-became-nullable

    • the response property giving_pool_id became nullable for the status 200

      response-property-became-nullable

    • the response property note became nullable for the status 200

      response-property-became-nullable

    • the response property purpose became nullable for the status 200

      response-property-became-nullable

    • endpoint added

      endpoint-added

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog