Claim a gift
Use this endpoint to programmatically claim an existing Gift on behalf of a recipient by providing the selected variant and shipping address.
Use this when your system needs to place an order for a Gift without recipient interaction - for example, when you already know the recipient’s address and the variant you want to ship.
Required fields
giftId- the Gift identifier, passed as a path parametervariantId- the specific product Variant to orderrecipient- the order recipient’s contact details and shipping address
Optional parameters
companyIdquery parameter - Company identifier, when not inferable from the API key contextRequest-Sourceheader - source of the request (api_native,api_zapier,api_salesforce,api_ftp,api_make)
Behavior Notes
- Returns the Gift with the attached Order on success. The Order’s delivery details are surfaced at the top level of the Gift response for convenience.
- The Billing Method is debited at this step.
- If the Billing Method has insufficient funds, the claim fails and no Order is created.
- The Gift transitions to a claimed state and the Order begins fulfillment processing.
Permissions
- Requires:
orders:create
Authorizations
Company Level Authentication
Company level authentication provides access to all resources under your company, including accounts, campaigns, gifts, and recipients.
Getting Your API Key
- Create an API Key: Use the
POST /v2/authentication/apiKeysendpoint to generate a new API key - Set Expiration: Choose from 30, 60, 90, or 180 days (default: 90 days)
- Optional mTLS: Enable mutual TLS for enhanced security
- Name Your Key: Provide a descriptive name for easy identification
Using Your API Key
Include your API key in the X-Api-Key header for every request:
X-Api-Key: YOUR_24_CHARACTER_API_KEYAPI Key Management
- Maximum Keys: Up to 3 active API keys per company
- Rotation: Delete old keys before creating new ones when at the limit
- Security: Keys are hashed and cannot be retrieved after creation
Enhanced Security (mTLS)
For production environments, enable mutual TLS authentication:
- Set
enforceMtls: truewhen creating the API key - Contact support to obtain your client certificates
- Use the mTLS endpoint:
https://mtls-api.snappy.com/public-api
Headers
Source of the request
api_native, api_zapier, api_salesforce, api_ftp, api_make "api_native"
Path Parameters
The id of the gift.
^[A-Za-z0-9]{8,}$"abc123de"
Query Parameters
Company ID
^[A-Za-z0-9]{8,}$"12345678"
Body
Claim gift request body.
Id of the selected variation (required)
"ab6789cd"
Order recipient details.
{
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"country": "US",
"address": {
"addressLine1": "123 Main St",
"addressLine2": "Apt 1",
"zipcode": "12345",
"city": "New York",
"state": "NY"
}
}