List a contact's referrals
Everyone this person brought in, with the credit state of each referral and the reason when credit was skipped.
Requires the contacts:read scope.
Who this contact brought in. Each entry is a full contact object,
not a separate referral record. The referral state lives on the contact's own referral.state.
The list takes the usual limit, starting_after and ending_before parameters and is ordered
newest first. See pagination.
Referral states#
referral.state describes this contact's own inbound referral, meaning how the person who
brought them in was treated.
| State | Meaning |
|---|---|
credited |
Counted. The referrer moved up |
pending_verification |
Referred, but credit has not been attempted yet, usually because the new signup has not verified |
skipped:{reason} |
Referred, and credit was deliberately not given. The reason follows the colon |
null |
Nobody referred this person |
Every entry in this list was referred by the contact you asked about, so null does not appear
here. It does appear on contacts read through other endpoints.
Skip reasons#
| Reason | Meaning |
|---|---|
skipped:self_referral |
They used their own code |
skipped:per_ip_cap |
Too many signups credited to one IP address already |
skipped:velocity |
Credits arrived too fast to come from real sharing |
skipped:missing_referrer |
The code did not resolve to a contact on this project |
skipped:already_credited |
That credit had been counted once already |
Treat this as an open set: match on the skipped: prefix rather than the full string, so a reason
added later reads as skipped rather than as unknown.
pending_verification is the answer to "my friend joined but my count did not go up", the single
most common referral support question, and it usually resolves itself.
See how referrals work for why credit waits for verification.