The three SRI families
SRIs come in three shapes, disambiguated by segment count and position.| Family | Example | What it names |
|---|---|---|
| User SRI | sr:us:person:safe:0xE23c…9e992 | A Sumvin user, resolved by their Safe address |
| PINT resource SRI | sr:us:pint:abc123def456 | A specific Purchase Intent |
| Scope SRI | sr:us:pint:spend:execute?max=10000000&asset=USDC@sei | A capability a PINT is requesting |
sr:us:pint:… prefix but are shaped differently — scope SRIs have a {domain}:{action} pair and optional query params; resource SRIs are a single opaque ID. Parsers distinguish the two by segment count.
Where you see SRIs
- JWT
subclaim — the user’s SRI - JWT
pint_uriclaim — the PINT resource SRI - JWT
scopesclaim — an array of scope SRIs - PINT payload
scopesfield — the same scope SRIs, signed verbatim - SIS lookup paths —
/v0/users/{sri}takes a user SRI (URL-encoded)
Format
| Segment | Description | Examples |
|---|---|---|
sr | Protocol prefix (always sr) | — |
region | Geographic region code | us, eu, gb |
resource_type | The kind of resource | person, pint |
sub_type | Resolution method or qualifier | safe, eoa |
identifier | The unique value | Wallet address, PINT ID |
Common SRI Patterns
User SRIs
Users are identified by their wallet address. The sub-type indicates which wallet type is used for resolution:safe sub-type is the canonical identifier for most operations, as the Safe smart wallet is the user’s primary identity anchor.
PINT SRIs
Purchase Intents are identified by a generated PINT ID:sub, pint_uri), API responses, and revocation checks.
Scope SRIs
Scope SRIs are a third URI family in the same scheme — they identify capabilities rather than users or resources. A scope SRI is the string form of a PINT’s requested permission; partners consume them via thescopes claim on the exchanged JWT.
| Scope SRI | Grants |
|---|---|
sr:us:pint:identity:kyc_status | Attest the user’s KYC status |
sr:us:pint:spend:execute?max=10000000&asset=USDC@sei&chain_id=1329 | Authorise on-chain spend up to 10 USDC on Sei |
sr:us:pint:perpetual:search?time=2592000 | Create an IPA with a 30-day search window |
sr:us:pint:accounts:link?provider=plaid | Link a bank account via Plaid |
Scope SRIs are distinct from PINT resource SRIs (e.g.
sr:us:pint:abc123def456). Both use the sr:…:pint:… prefix, but they differ in shape and purpose:- Scope SRI — 5 fixed segments (
sr, region,pint, domain, action) plus optional?k=vquery params. The third segmentpintis the disambiguator that marks the URI as a scope rather than a PINT resource. - PINT resource SRI — 4 segments (
sr, region,pint, PINT ID), no query params.
{domain}:{action} pair to disambiguate the two families.SYMBOL@context, provider choices as enums, and time windows / timestamps in unix seconds. See the Scopes Reference for the full 14-scope MVP catalog, parameter conventions, and verification-tier mapping.
Using SRIs
Looking Up Users via SIS
Pass an SRI to the SIS user lookup endpoint to retrieve user data. The fields returned depend on your API key’s authorisation level:SRIs in JWTs
When the SIS issues a JWT for a PINT exchange, thesub claim contains the user’s SRI and the pint_uri claim contains the PINT’s SRI:
URL Encoding
When SRIs appear in URL paths, the colon separators must be URL-encoded as%3A: