Skip to main content

Documentation Index

Fetch the complete documentation index at: https://sage-f6b5014e.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

POST /sponsor/create

Derives a deterministic multisig + vault for the user and creates it on-chain if it doesn’t already exist. The server pays all rent and fees — no SOL required from the user. If the multisig already exists (e.g. the user cleared storage or logged in on a new device), the existing PDAs are returned without re-creating. The multisig is created with two members: the user (Permissions.all()) and the server (Permission.Execute), threshold 1, and rentCollector set to the server.

Request

{
  "userPubkey": "9xQe…base58 Solana address"
}
FieldTypeRequiredDescription
userPubkeystringYesThe user’s Solana wallet public key

Response

{
  "multisigPda": "…",
  "vaultPda": "…",
  "signature": "…"
}
FieldDescription
multisigPdaThe multisig config account address
vaultPdaThe vault address (treasury) — fund and receive here
signatureCreation tx signature (omitted if the multisig already existed)
The vault address is derived deterministically from userPubkey, so this endpoint is idempotent — calling it again returns the same PDAs.