Skip to main content
A Gift in Raise is a single completed donation. It carries the donation amount, payment processor result, status, project allocations, optional premium and tribute, and references to the donor and (if applicable) the recurring gift schedule that produced it. The most distinctive aspect of the Gift resource: Gifts are not created via POST /api/Gift. The Gift POST and PUT endpoints don’t exist. Donations enter Raise exclusively through the POST /api/Raise/give donation submission path, which processes payment and then creates the Gift record. This page covers both the resource shape and the unique creation flow.

The Gift record

The Gift record has 56 fields covering identity, payment, designation, status, and a number of optional attribution and analytics fields. The most important groups:

Identity and amount

Status and capability

status is an integer enum, but the Raise OpenAPI spec doesn’t document the mapping of integer values to status labels. Use statusText for display purposes; for programmatic logic, discover the status enum’s meanings against the live API and store the mapping in your integration.⚠️ Spec gap: Gift status enum values are not documented in the spec. Future spec updates are expected to label these. Until then, partners should rely on statusText and not switch on the integer status directly.

Payment details

Designation

For a single-Project gift, projects[] has one entry for the full amount. For a split gift, multiple entries summing to the gift’s amount.

Donor linkage

Recurring linkage

A Gift with recurringGiftId set is one payment in a recurring schedule. A Gift without it is a one-time donation.

Tribute

Campaign and segment attribution

Marketing attribution (UTM and analytics)

UTM and Google Click ID tracking is useful for closing the loop on paid acquisition campaigns — partners building donation-attribution analytics use these fields to attribute gifts back to the marketing channel that drove them.

Other fields


Creating a Gift: POST /api/Raise/give

This is the most distinctive aspect of the Raise Gift surface. There is no POST /api/Gift. Every Gift record in Raise originates from a donation submission through POST /api/Raise/give.

Why this design

POST /api/Raise/give isn’t a plain “create a Gift” endpoint — it’s the full donation flow:
  1. Processes the payment through the configured payment gateway using the tokenized paymentMethodId.
  2. Creates or matches the Donor record from the embedded donor information.
  3. Creates the Gift record with the payment result.
  4. Fires the webhook notifying subscribers of the new Gift.
  5. Initiates platform-level sync to downstream products like CRM+.
Each of these steps is tightly coupled — you can’t create a Gift record without payment processing because the gateway response data is part of the record. This is why the spec exposes no general Gift POST.

The request body

POST /api/Raise/give accepts a DonatePaymentRequest:

A minimal request

cURL
The donor-matching algorithm processes the embedded donor block — typically by email — and either creates a new Donor or attaches the Gift to an existing one. See Process a Donation for the end-to-end workflow including donor matching detail and error handling.
The paymentMethodId must be a tokenized payment method, not a raw card number. Raise uses tokenization to keep partner integrations out of PCI scope. For development and testing, use POST /api/Raise/generate-test-payment-method to mint a test token without touching real card data.

Reading Gifts

The Gift resource exposes read endpoints in three patterns: For reading Gifts associated with a specific Donor, prefer the GET /api/Donor/{donorId}/gifts endpoint — it’s filtered to the donor at the source rather than requiring you to query by donorId.

Custom field values on a Gift

cURL
Returns the custom field responses captured for this Gift — typically values from custom fields on the Donation Form that produced it.

Refunding a Gift

The Gift surface has no PUT /api/Gift/{id} for general updates, but it does support refunds via a dedicated endpoint:
cURL
A refund initiates the reverse payment flow with the original gateway, returns the funds to the donor’s payment method, and marks the Gift as refunded on the Raise side. The canRefund flag on the Gift indicates eligibility — typically false for Gifts that have already been refunded, settled past the gateway’s refund window, or have other constraints. Partial refunds (refunding less than the full Gift amount) may be supported depending on the gateway. Confirm with the customer’s gateway configuration before relying on partial refund behavior.

Deleting a Gift

cURL
DELETE /api/Gift/{id} removes a Gift record entirely. Use sparingly — deletion erases the gift’s history and accounting impact. The refund endpoint is the right choice for most “cancel this donation” scenarios because it preserves the audit trail. Deletion is most appropriate for:
  • Test gifts created during development that need cleanup.
  • Genuine data-entry errors caught before any downstream system has acknowledged the gift.
For donations that were successfully processed but need to be reversed, refund instead.

Updating notes on a Gift

Gift notes have a dedicated update endpoint, parallel to the Donor notes pattern:
cURL
This is the only field-level update available on a Gift through the API. Other field changes (amount corrections, designation reallocations, gateway adjustments) are not exposed as API operations and must be performed by the customer’s staff in the Raise admin UI.

Gift creation paths in practice

To recap the complete creation flow, since this is one of the most-asked questions for partners new to Raise: There is no API path for partners to create Gifts that bypass POST /api/Raise/give. Integration designs that need “create a Gift record without processing a payment” should route through the customer’s admin team using import tools rather than the API.

Where to go next

Process a Donation

The end-to-end workflow for submitting a donation via POST /api/Raise/give.

Recurring Gifts

The schedule resource that produces Gifts on a regular interval.

Donation Forms

The forms that originate most Gifts — their configuration drives the Gift’s segment, motivation, and form attribution.

Query Gifts by Filters

Read Gifts back out for reporting, reconciliation, or sync.
Last modified on May 20, 2026