PINT (header x-sumvin-pint-token).
Once you’ve constructed a PINT payload, it needs to be signed before it can be exchanged for a JWT. The Sumvin ecosystem supports two signer types, each using different cryptographic curves and verification methods.
Signer Types
The SIS automatically determines the signer type based on whether the signing wallet has a registered agent key.
User Signing (secp256k1)
When the user signs directly, use standard Ethereum EIP-712 signing via their wallet. This is the most common path for user-initiated flows.TypeScript (viem)
Python (eth-account)
Agent Signing (P-256)
When an AI agent signs a Stamped Mandate on the user’s behalf, it uses a P-256 key that has been registered as an authorised signer on the user’s Safe smart account. Verification happens on-chain via EIP-1271 — the SIS callsisValidSignature on the Safe contract to confirm the agent key is authorised.
signer_type in the request: