1. Start Here
1. Start Here
SIR Giving Partner API Overview
TheUse the SIR Giving Partner API letsto approvedadd partnersSIR rewards to your product. You can create donation links, reward users for actions in your own system, track balances, and receive webhook events when rewards are issued or reversed.
Most teams use one of two paths:
pk_...) and the donation endpoints
Reward users for purchases, volunteering, referrals, or other actions
A secret key (sk_...), HMAC signing, and the actions endpoints
Listen for reward status changes
Webhooks
Test before launch
Sandbox credentials and a sandbox token pool
What you need before you call the API
You need three things:
Creating userscredentials forlets donation,you volunteering,authenticate. advocacy,It does not automatically mean you can issue real rewards. Rewards draw from a token pool, and other prosocial actions; create donation flows; manage campaigns andproduction token pools;pools andrequire receiveSIR eventGiving notifications via webhooks.approval.
Base URLs
| Environment | Base URL |
|---|
https://devapi.sirgiving.org
pk_test_..., sk_test_...
Production
https://api.sirgiving.org
https://devapi.sirgiving.orgpk_live_..., sk_live_...
All partner integration endpoints are prefixed withunder /v1/partner/.
Interactive SwaggerAPI UIdocs isare available at /partner-api on each host.
Two API surfaces
The Partner API has two authentication models matching two integration patterns:
1. Server-to-server (HMAC + secret key)
Used byChoose your backend.first Requirestutorial
X-Partner-Key
X-TimestampX-Signature2.
BrowserI widgetwant (publishableto keyreceive only)events
Used
X-Partner-KeyKey concepts
Partner
Your yourorganization organization,or withdeveloper account in SIR Giving. API keys, token pools, campaigns, users, and webhooks all belong to a statuspartner.
PENDING_APPROVALACTIVESUSPENDEDAPI key pair
Each key issuance createsreturns:
pk_live_...such pk_test_...sk_live_...such sk_test_...The secret key and HMAC secret are shown once. Store them in a separatesecret manager.hmacSecret
Token pool
A pre-allocatedfunded bucket of SIR tokens you draw from when distributing rewards. Pools have balance, restrictions (vesting, expiration), and optional auto-refill.
amountAction
The unit of reward work you submit.send Includesto SIR actionType(DONATION,Giving. VOLUNTEER,For etc.),example: amount,a stakeholders[],purchase, andvolunteer shift, donation, referral, or advocacy event. Actions include an idempotencyKey. Processedso againstretries ado tokennot pool,duplicate optionallyrewards.
stakeholderTypeCodePartner user
A user infrom your system,system mirrored oninto ourSIR sideGiving and keyed byusing your stable externalUserId. EachPartner getsusers anreceive account/walletbalances forwhen actions reward them.
Webhook
An outbound event sent from SIR balance.
X-SIR-Signatureaction.completed or token_pool.low_balance.QuickThe startshortest (5path steps)to a working integration
GetCreateapproved.orEmailreceivepartnerships@sirgiving.org with your use case, expected volume, and integration model. We provision a Partner record andsandbox credentials.Receive credentials.You'll get a publishable key (pk_test_...), a secret key (sk_test_...), and an HMAC signing secret.Store thesecretsk_...+key and HMAC secret in your backend environment.
GET /v1/partner/users request.
If you are building a widget, create a donation link with the pk_... key.
If you are issuing rewards, confirm you have an active sandbox token pool.
Submit a test action with a unique idempotencyKey.
Register a webhook and send a test event.
Repeat the same flow in production after your production token pool is approved.
Common confusion
My key works, but actions fail. Why?
Authentication only proves your key is valid. Reward actions also need an active token pool in the same environment.
Can I use a publishable key for server actions?
No. Mutation endpoints such as action submission and webhook registration require a secret key.
Can I use sandbox keys against production?
Do not do this. Use keys with https://testdevapi.sirgiving.org with HMAC headers (see Authentication page).
POSTlive api.sirgiving.org.
POST /v1/partner/webhooks