Create a donor through Zapier
Creates an organization-scoped donor through donors.create. Requires donors_manage, donor-form access and the primitive scope. Duplicate active donor emails return409; a supplied body idempotency_key replays the cached create.
Authorizations
Passport bearer token authentication for legacy admin sessions.
Body
Validated input accepted by this Zapier transport.
Donor form containing the profile. Validation: required|integer.
42
Profile email address. Validation: required|email.
"jane@example.org"
Record type accepted by this operation. Validation: nullable|string|in:individual,organization.
individual, organization, null "individual"
Individual donor given name. Validation: nullable|string|max:255.
255"Jane"
Individual donor family name. Validation: nullable|string|max:255.
255"Doe"
Organization donor display name. Validation: nullable|string|max:255.
255"Example Foundation"
Profile telephone number. Validation: nullable|string|max:50.
50"+12565550123"
Household membership for the donor. Validation: nullable|integer.
88
Custom-field values keyed by the configured form field names. Validation: nullable|array.
Stable caller key used by the selected mutation to prevent duplicate records. Validation: nullable|string|max:191.
191"external-record-001"
Response
Created, updated or replayed record; this transport unwraps the primitive success envelope.
A donor record. Donors give one-time donations and recurring commitments, and may be linked to entities (recipients) via sponsorships. Standardized profile columns (first_name, phone, address, etc.) coexist with arbitrary custom fields stored in json_fields and defined per hysform_id. The username/email/password columns also let donors sign in to the donor portal.
Internal donor ID.
12345
Owning Gratona client (multi-tenant scope). All donor queries MUST filter by this.
207
HysForm that defines this donor's profile fields (custom + standardized) — controls which keys appear in json_fields.
42
Program the donor signed up under, if applicable. Mostly informational.
11
Household this donor is linked to, when joint giving / partner records are tracked together.
88
Canonical donor identity type is INDIVIDUAL or ORGANIZATION. Compatibility serializers/callers may retain the lower-case aliases.
INDIVIDUAL, ORGANIZATION, individual, organization, null "INDIVIDUAL"
Login username for the donor portal. Must be unique across donors when set.
"janedoe"
Donor email — used for receipts, statements, and donor-portal login.
"jane@example.com"
For type=organization donors. Standardized field; mirrored in json_fields.organization for legacy clients.
"Acme Foundation"
Donor first / given name. Standardized field.
"Jane"
Donor last / family name. Standardized field.
"Doe"
How the donor prefers to be contacted.
email, phone, sms, mail, null "email"
Phone number as entered by the user (display format).
"(555) 123-4567"
Phone normalized to E.164 for SMS/dialing. Populated by the phone normalization pipeline.
"+15551234567"
Whether SMS opt-in is granted for this donor.
true
Street address line 1 (standardized).
"123 Main St"
Street address line 2 (apartment, unit, suite).
"Apt 4B"
City.
"Springfield"
State / region (free-form display value).
"IL"
Postal / ZIP code.
"62704"
Country display name.
"United States"
ISO 3166-1 alpha-2 country code.
"US"
ISO 3166-2 country subdivision code.
"US-IL"
Custom profile/record fields. Raw model responses retain the encoded JSON string; projection endpoints may return a decoded map or list. Use the record form definition to interpret field keys.
Cached YTD giving totals (per year and per program), refreshed by background jobs.
Whether the donor has any uploads/photos attached.
false
Set when the donor was created via a CSV import batch; ties together donors imported in the same run.
null
"2025-03-15T19:42:00Z"
"2026-01-02T08:11:00Z"
Soft-delete timestamp; donors with a non-null value are excluded from default queries.
null