{"openapi":"3.0.3","info":{"title":"Stele API","version":"1.0.0","description":"Verifiable agreement infrastructure. Evidence lives on Solana; this API is a convenience layer."},"components":{"securitySchemes":{"apiKey":{"type":"http","scheme":"bearer","description":"Server-to-server API key (stl_live_… / stl_test_…), created in the dashboard under API keys. Scoped; never use it in a browser."},"session":{"type":"apiKey","in":"cookie","name":"stele_session","description":"The dashboard's signed-in wallet session. Writes also need the x-csrf-token header."},"proofToken":{"type":"apiKey","in":"header","name":"x-proof-token","description":"The token returned when your server created the proof request."}},"schemas":{}},"paths":{"/health":{"get":{"summary":"Liveness","tags":["Network"],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/ready":{"get":{"summary":"Readiness (database and Solana RPC reachable)","tags":["Network"],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/network":{"get":{"summary":"This app's network, program and keys","tags":["Network"],"description":"The Solana network (cluster, chain ID, label), the Stele program ID, the relayer and attestor keys and public RPC endpoints. The SDK checks every answer against these.","security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/auth/challenge":{"post":{"summary":"Create or run auth challenge","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"}},"required":["address"]}}}},"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/auth/verify":{"post":{"summary":"Create or run auth verify","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"signedMessage":{"type":"string","maxLength":4096},"signature":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{64,90}$"}},"required":["address","signedMessage","signature"]}}}},"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/auth/logout":{"post":{"summary":"Create or run auth logout","tags":["Dashboard"],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/auth/me":{"get":{"summary":"Get auth me","tags":["Dashboard"],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/organizations/{ref}":{"get":{"summary":"An organization","tags":["Documents"],"description":"By on-chain address or verified domain (e.g. acme.com): name, verified domain, signing policy and its documents.","parameters":[{"schema":{"type":"string","maxLength":64},"in":"path","name":"ref","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/organizations/{ref}/documents/{slug}":{"get":{"summary":"A document and its current version","tags":["Documents"],"description":"The current version's number, label, fingerprint and content hash, the version history, and the document's Gate policy if it has one.","parameters":[{"schema":{"type":"string","maxLength":64},"in":"path","name":"ref","required":true},{"schema":{"type":"string","maxLength":32,"pattern":"^[a-z0-9]+(-[a-z0-9]+)*$"},"in":"path","name":"slug","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/content/{hash}":{"get":{"summary":"A version's exact text (canonical bytes)","tags":["Documents"],"description":"The canonical bytes whose SHA-256 is the content hash committed on-chain. Hash them yourself to check them.","parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"hash","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/content/{hash}/parsed":{"get":{"summary":"A version's text as structured blocks","tags":["Documents"],"parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"hash","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/acceptances/{acceptanceId}":{"get":{"summary":"A public acceptance record","tags":["Verification"],"parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"acceptanceId","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/transactions/{signature}/acceptance":{"get":{"summary":"The acceptance recorded by a Solana transaction","tags":["Verification"],"parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{64,90}$"},"in":"path","name":"signature","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/acceptances/{acceptanceId}/receipt":{"get":{"summary":"A receipt, verified against Solana","tags":["Verification"],"description":"The portable receipt (with the exact text) and Stele's verification report. Re-check it yourself with @stelehq/verifier.","parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"acceptanceId","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/batches/{root}":{"get":{"summary":"A batch of acceptances anchored under one Merkle root","tags":["Verification"],"parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"root","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/versions/{address}":{"get":{"summary":"A published version by its on-chain address","tags":["Documents"],"parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"address","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/acceptance/challenges":{"post":{"summary":"Get the exact message to sign","tags":["Accepting"],"description":"Rebuilds the acceptance message from live Solana state for this signer and the document's current version, with a one-time nonce. Returns the message, a challenge ID and a client binding the browser keeps. Refused with 409 already_accepted when this signer already accepted this version.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"document":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"signer":{"anyOf":[{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},{"type":"string","pattern":"^p256:0[23][0-9a-f]{64}$"}]},"sessionToken":{"type":"string","maxLength":128},"signerType":{"default":"wallet","type":"string","enum":["wallet","passkey","passkey_p256"]}},"required":["organization","document","signer"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/acceptance/challenges/{challengeId}/submit":{"post":{"summary":"Submit the signature — records the acceptance on Solana","tags":["Accepting"],"description":"Verifies the signature over the exact message, then the relayer records it on Solana (paying the fee). Returns the acceptance ID and transaction.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"clientBinding":{"type":"string","minLength":20,"maxLength":64},"signature":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{64,90}$"},"passkeyAssertion":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"signature":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","authenticatorData","clientDataJSON","signature"],"additionalProperties":false}},"required":["clientBinding"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"challengeId","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/acceptance/challenges/{challengeId}":{"get":{"summary":"A challenge's status","tags":["Accepting"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"challengeId","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/acceptance-sessions":{"post":{"summary":"Link the next acceptance to your user","tags":["Server: acceptances"],"description":"Returns a short-lived session token for your user ID; the widget passes it, and the acceptance is linked to that user (off-chain).\n\nRequires an API key with the `acceptances:write` scope.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"document":{"anyOf":[{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},{"type":"string","maxLength":32,"pattern":"^[a-z0-9]+(-[a-z0-9]+)*$"}]},"externalUserRef":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x21-\\x7e]+$"},"ttlSeconds":{"default":900,"type":"integer","minimum":60,"maximum":3600}}}}}},"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/acceptances":{"get":{"summary":"Search acceptances","tags":["Server: acceptances"],"description":"By your user ID, document, version, signer or date.\n\nRequires an API key with the `acceptances:read` scope.","parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"document","required":false},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"version","required":false},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"signer","required":false},{"schema":{"type":"string","maxLength":128},"in":"query","name":"externalUserRef","required":false},{"schema":{},"in":"query","name":"from","required":false},{"schema":{},"in":"query","name":"to","required":false},{"schema":{},"in":"query","name":"before","required":false},{"schema":{"default":50,"type":"integer","minimum":1,"maximum":200},"in":"query","name":"limit","required":false},{"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,160}$"},"in":"query","name":"cursor","required":false,"description":"`nextCursor` from the previous page"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/acceptances":{"get":{"summary":"Get organizations acceptances","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"document","required":false},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"version","required":false},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"signer","required":false},{"schema":{"type":"string","maxLength":128},"in":"query","name":"externalUserRef","required":false},{"schema":{},"in":"query","name":"from","required":false},{"schema":{},"in":"query","name":"to","required":false},{"schema":{},"in":"query","name":"before","required":false},{"schema":{"default":50,"type":"integer","minimum":1,"maximum":200},"in":"query","name":"limit","required":false},{"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,160}$"},"in":"query","name":"cursor","required":false,"description":"`nextCursor` from the previous page"},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/acceptances/{acceptanceId}":{"get":{"summary":"One acceptance, with its receipt URL","tags":["Server: acceptances"],"description":"Requires an API key with the `acceptances:read` scope.","parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"acceptanceId","required":true}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/documents/by-slug/{slug}/latest":{"get":{"summary":"The current version of one of your documents","tags":["Server: acceptances"],"description":"Requires an API key with the `documents:read` scope.","parameters":[{"schema":{"type":"string","maxLength":32,"pattern":"^[a-z0-9]+(-[a-z0-9]+)*$"},"in":"path","name":"slug","required":true}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/options":{"post":{"summary":"Passkey registration options","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"purpose":{"type":"string","enum":["register","add_passkey","identify"]},"sessionToken":{"type":"string","maxLength":128},"identity":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"}},"required":["organization","purpose"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/register":{"post":{"summary":"Register a passkey signer","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"credential":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"publicKey":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"},"algorithm":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","publicKey","algorithm","clientDataJSON","authenticatorData"],"additionalProperties":false},"identity":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"keyStatement":{"type":"string","minLength":40,"maxLength":2048},"keySignature":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"statementAssertion":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"signature":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","authenticatorData","clientDataJSON","signature"],"additionalProperties":false},"prfSalt":{"type":"string","minLength":1,"maxLength":64,"pattern":"^[A-Za-z0-9_-]+$"},"wrappedKey":{"type":"object","properties":{"format":{"type":"string","enum":["stele-wrapped-key-v1"]},"salt":{"type":"string","minLength":1,"maxLength":64,"pattern":"^[A-Za-z0-9_-]+$"},"iv":{"type":"string","minLength":1,"maxLength":32,"pattern":"^[A-Za-z0-9_-]+$"},"ciphertext":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["format","salt","iv","ciphertext"],"additionalProperties":false},"label":{"type":"string","maxLength":60},"recoveryKit":{"type":"object","properties":{"kitId":{"type":"string","pattern":"^[0-9a-f]{32}$"},"wrappedKey":{"type":"object","properties":{"format":{"type":"string","enum":["stele-wrapped-key-v1"]},"salt":{"type":"string","minLength":1,"maxLength":64,"pattern":"^[A-Za-z0-9_-]+$"},"iv":{"type":"string","minLength":1,"maxLength":32,"pattern":"^[A-Za-z0-9_-]+$"},"ciphertext":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["format","salt","iv","ciphertext"],"additionalProperties":false},"keyStatement":{"type":"string","minLength":40,"maxLength":2048},"keySignature":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["kitId","wrappedKey","keyStatement","keySignature"]},"previousKeySignature":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["challengeId","credential","identity","keyStatement","keySignature","statementAssertion","prfSalt","wrappedKey"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/identify":{"post":{"summary":"Find a returning signer","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"assertion":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"signature":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","authenticatorData","clientDataJSON","signature"],"additionalProperties":false}},"required":["challengeId","assertion"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/key-material":{"post":{"summary":"Encrypted key material for a passkey-protected signer","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["organization","credentialId"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/recovery-kits":{"post":{"summary":"Store a recovery kit","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"identity":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"kitId":{"type":"string","pattern":"^[0-9a-f]{32}$"},"wrappedKey":{"type":"object","properties":{"format":{"type":"string","enum":["stele-wrapped-key-v1"]},"salt":{"type":"string","minLength":1,"maxLength":64,"pattern":"^[A-Za-z0-9_-]+$"},"iv":{"type":"string","minLength":1,"maxLength":32,"pattern":"^[A-Za-z0-9_-]+$"},"ciphertext":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["format","salt","iv","ciphertext"],"additionalProperties":false},"keyStatement":{"type":"string","minLength":40,"maxLength":2048},"keySignature":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["organization","identity","kitId","wrappedKey","keyStatement","keySignature"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/recovery-kits/lookup":{"post":{"summary":"Look up a recovery kit","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"kitId":{"type":"string","pattern":"^[0-9a-f]{32}$"}},"required":["organization","kitId"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/revoke":{"post":{"summary":"Revoke a passkey signer","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"identity":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"keyStatement":{"type":"string","minLength":40,"maxLength":2048},"keySignature":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["organization","identity","credentialId","keyStatement","keySignature"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/native/options":{"post":{"summary":"Native (P-256) passkey options","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"purpose":{"type":"string","enum":["register","rotate","recover"]},"sessionToken":{"type":"string","maxLength":128},"identity":{"type":"string","pattern":"^p256:0[23][0-9a-f]{64}$"}},"required":["organization","purpose"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/native/register":{"post":{"summary":"Register a native passkey","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"credential":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"publicKey":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"},"algorithm":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","publicKey","algorithm","clientDataJSON","authenticatorData"],"additionalProperties":false},"label":{"type":"string","maxLength":60}},"required":["challengeId","credential"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/native/confirm":{"post":{"summary":"Confirm a native passkey enrollment","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"assertion":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"signature":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","authenticatorData","clientDataJSON","signature"],"additionalProperties":false}},"required":["challengeId","assertion"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/passkeys/native/identify":{"post":{"summary":"Find a returning native passkey","tags":["Passkeys"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"assertion":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"signature":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","authenticatorData","clientDataJSON","signature"],"additionalProperties":false}},"required":["challengeId","assertion"]}}}},"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/signers/{publicKey}":{"get":{"summary":"A passkey signer's public enrollment","tags":["Verification"],"parameters":[{"schema":{"anyOf":[{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},{"type":"string","pattern":"^p256:0[23][0-9a-f]{64}$"}]},"in":"path","name":"publicKey","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/signer-identities":{"get":{"summary":"Passkey signers linked to your users","tags":["Server: signers"],"description":"Requires an API key with the `signers:read` scope.","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x21-\\x7e]+$"},"in":"query","name":"externalUserRef","required":false}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/signer-identities/{publicKey}/revoke":{"post":{"summary":"Revoke a user's signer","tags":["Server: signers"],"description":"Requires an API key with the `signers:write` scope.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","minLength":3,"maxLength":200}},"required":["reason"]}}}},"parameters":[{"schema":{"anyOf":[{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},{"type":"string","pattern":"^p256:0[23][0-9a-f]{64}$"}]},"in":"path","name":"publicKey","required":true}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/signer-identities":{"get":{"summary":"Get organizations signer identities","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x21-\\x7e]+$"},"in":"query","name":"externalUserRef","required":false},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/signer-identities/{publicKey}/revoke":{"post":{"summary":"Create or run organizations signer identities revoke","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"reason":{"type":"string","minLength":3,"maxLength":200}},"required":["reason"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"anyOf":[{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},{"type":"string","pattern":"^p256:0[23][0-9a-f]{64}$"}]},"in":"path","name":"publicKey","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/passkey-recoveries":{"get":{"summary":"Get organizations passkey recoveries","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/passkey-enrollments/{address}/refresh":{"post":{"summary":"Create or run organizations passkey enrollments refresh","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"address","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proof-requests":{"post":{"summary":"Create a proof request (purchase, refund, consent, quote)","tags":["Proofs"],"description":"Your server describes what the customer confirms; Stele returns a request ID and token for the confirmation page or widget.\n\nRequires an API key with the `proofs:write` scope.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["PURCHASE","SALE","ORDER","PAYMENT","RECEIPT","INVOICE","REFUND","CANCELLATION","DELIVERY","RETURN","WARRANTY","SUBSCRIPTION_START","SUBSCRIPTION_CANCEL","QUOTE_ACCEPTANCE","CONTRACT","CONSENT","POLICY_ACCEPTANCE"]},"reference":{"type":"string","minLength":1,"maxLength":128},"summary":{"type":"string","minLength":1,"maxLength":280},"details":{"type":"object","additionalProperties":{}},"policies":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":60},"version":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991},"fingerprint":{"type":"string","pattern":"^[0-9a-f]{64}$"},"acceptanceId":{"type":"string","pattern":"^[0-9a-f]{64}$"}},"required":["title","version","fingerprint"]}},"relatesTo":{"type":"string","pattern":"^[0-9a-f]{64}$"},"externalUserRef":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x21-\\x7e]+$"},"ttlSeconds":{"default":1800,"type":"integer","minimum":60,"maximum":86400}},"required":["type","reference","summary","details"]}}}},"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proof-requests/{id}":{"get":{"summary":"A proof request, as the customer sees it","tags":["Proofs"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"id","required":true}],"security":[{"proofToken":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proof-requests/{id}/challenge":{"post":{"summary":"Get the exact statement to sign","tags":["Proofs"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string","minLength":20,"maxLength":100},"signer":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"signerType":{"default":"wallet","type":"string","enum":["wallet","passkey"]}},"required":["token","signer"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"id","required":true}],"security":[{"proofToken":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proof-requests/{id}/submit":{"post":{"summary":"Submit the customer's signature — records the proof","tags":["Proofs"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string","minLength":20,"maxLength":100},"clientBinding":{"type":"string","minLength":20,"maxLength":64},"signature":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{64,90}$"},"passkeyAssertion":{"type":"object","properties":{"credentialId":{"type":"string","minLength":1,"maxLength":1366,"pattern":"^[A-Za-z0-9_-]+$"},"authenticatorData":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"clientDataJSON":{"type":"string","minLength":1,"maxLength":4096,"pattern":"^[A-Za-z0-9_-]+$"},"signature":{"type":"string","minLength":1,"maxLength":1024,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["credentialId","authenticatorData","clientDataJSON","signature"],"additionalProperties":false}},"required":["token","clientBinding","signature"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"id","required":true}],"security":[{"proofToken":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proof-requests/{id}/receipt":{"get":{"summary":"A confirmed proof's receipt","tags":["Proofs"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"id","required":true}],"security":[{"proofToken":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proofs":{"get":{"summary":"Search confirmed proofs","tags":["Proofs"],"description":"Requires an API key with the `proofs:read` scope.","parameters":[{"schema":{"type":"string","enum":["PURCHASE","SALE","ORDER","PAYMENT","RECEIPT","INVOICE","REFUND","CANCELLATION","DELIVERY","RETURN","WARRANTY","SUBSCRIPTION_START","SUBSCRIPTION_CANCEL","QUOTE_ACCEPTANCE","CONTRACT","CONSENT","POLICY_ACCEPTANCE"]},"in":"query","name":"type","required":false},{"schema":{"type":"string","maxLength":128},"in":"query","name":"reference","required":false},{"schema":{"type":"string","maxLength":128},"in":"query","name":"externalUserRef","required":false},{"schema":{"default":50,"type":"integer","minimum":1,"maximum":200},"in":"query","name":"limit","required":false},{"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,160}$"},"in":"query","name":"cursor","required":false,"description":"`nextCursor` from the previous page"}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proofs/{proofId}":{"get":{"summary":"One proof","tags":["Proofs"],"description":"Requires an API key with the `proofs:read` scope.","parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"proofId","required":true}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/proofs/{proofId}/receipt":{"get":{"summary":"One proof's receipt","tags":["Proofs"],"description":"Requires an API key with the `proofs:read` scope.","parameters":[{"schema":{"type":"string","pattern":"^[0-9a-f]{64}$"},"in":"path","name":"proofId","required":true}],"security":[{"apiKey":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations":{"get":{"summary":"Get organizations","tags":["Dashboard"],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/sync":{"post":{"summary":"Create or run organizations sync","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"}},"required":["address"]}}}},"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}":{"get":{"summary":"Get organizations","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/refresh":{"post":{"summary":"Create or run organizations refresh","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/settings":{"patch":{"summary":"Update organizations settings","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"requireAcceptanceSessions":{"type":"boolean"},"allowedRequestDomains":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":48}},"signingPolicy":{"type":"string","enum":["WALLET_ONLY","PASSKEY_ONLY","WALLET_OR_PASSKEY","ACCOUNT_AND_PASSKEY"]},"feeSponsor":{"type":"string","enum":["stele","organization"]},"sponsorFallbackToStele":{"type":"boolean"},"sponsorLowBalanceLamports":{"type":"integer","minimum":0,"maximum":1000000000000},"evidenceMode":{"type":"string","enum":["DIRECT_ONCHAIN","MERKLE_BATCHED"]},"products":{"type":"object","properties":{"gate":{"type":"boolean"}},"required":["gate"]}}}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/sponsorship":{"get":{"summary":"Get organizations sponsorship","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/members/{memberAddress}":{"patch":{"summary":"Update organizations members","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"label":{"nullable":true,"type":"string","maxLength":80}},"required":["label"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"memberAddress","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/shards/sync":{"post":{"summary":"Create or run organizations shards sync","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"}},"required":["address"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/domains":{"post":{"summary":"Create or run organizations domains","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"domain":{"type":"string","maxLength":48}},"required":["domain"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/domains/{verificationId}/check":{"post":{"summary":"Create or run organizations domains check","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"verificationId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/domains/{verificationId}/revoke":{"post":{"summary":"Create or run organizations domains revoke","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"verificationId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/documents":{"get":{"summary":"Get organizations documents","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/documents/sync":{"post":{"summary":"Create or run organizations documents sync","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"address":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"}},"required":["address"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/documents/{documentId}":{"get":{"summary":"Get documents","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"documentId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/documents/{documentId}/drafts":{"post":{"summary":"Create or run documents drafts","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"versionLabel":{"type":"string","minLength":1,"maxLength":16},"effectiveAt":{"nullable":true,"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991},"source":{"type":"string","minLength":1,"maxLength":2000000},"changeSummary":{"nullable":true,"type":"string","maxLength":4000}},"required":["title","versionLabel","source"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"documentId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/drafts/{draftId}":{"get":{"summary":"Get drafts","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"draftId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}},"patch":{"summary":"Update drafts","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"versionLabel":{"type":"string","minLength":1,"maxLength":16},"effectiveAt":{"nullable":true,"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991},"source":{"type":"string","minLength":1,"maxLength":2000000},"changeSummary":{"nullable":true,"type":"string","maxLength":4000}}}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"draftId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/drafts/{draftId}/abandon":{"post":{"summary":"Create or run drafts abandon","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"draftId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/drafts/{draftId}/prepare":{"post":{"summary":"Create or run drafts prepare","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"draftId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/publications/confirm":{"post":{"summary":"Create or run publications confirm","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"signature":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{64,90}$"}},"required":["signature"]}}}},"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/api-keys":{"get":{"summary":"Get organizations api keys","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}},"post":{"summary":"Create or run organizations api keys","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":80},"scopes":{"minItems":1,"type":"array","items":{"type":"string","enum":["acceptances:read","acceptances:write","documents:read","proofs:read","proofs:write","signers:read","signers:write"]}},"expiresInDays":{"type":"integer","minimum":1,"maximum":730}},"required":["name","scopes"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/api-keys/{keyId}":{"delete":{"summary":"Delete organizations api keys","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"keyId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/webhooks":{"get":{"summary":"Get organizations webhooks","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}},"post":{"summary":"Create or run organizations webhooks","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","maxLength":2048},"description":{"type":"string","maxLength":200},"events":{"minItems":1,"type":"array","items":{"type":"string","enum":["agreement.accepted","agreement.finalized","document.version_published","organization.domain_verified","organization.member_changed","proof.recorded","signer.registered","signer.changed","sponsorship.low_balance"]}}},"required":["url","events"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/webhooks/{webhookId}":{"patch":{"summary":"Update organizations webhooks","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","enum":["active","disabled"]},"events":{"minItems":1,"type":"array","items":{"type":"string","enum":["agreement.accepted","agreement.finalized","document.version_published","organization.domain_verified","organization.member_changed","proof.recorded","signer.registered","signer.changed","sponsorship.low_balance"]}}}}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"webhookId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}},"delete":{"summary":"Delete organizations webhooks","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"webhookId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/webhooks/{webhookId}/rotate-secret":{"post":{"summary":"Create or run organizations webhooks rotate secret","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"webhookId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/webhooks/{webhookId}/test":{"post":{"summary":"Create or run organizations webhooks test","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"webhookId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/webhooks/{webhookId}/deliveries":{"get":{"summary":"Get organizations webhooks deliveries","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"webhookId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/audit-log":{"get":{"summary":"Get organizations audit log","tags":["Dashboard"],"parameters":[{"schema":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991},"in":"query","name":"beforeSequence","required":false},{"schema":{"default":50,"type":"integer","minimum":1,"maximum":200},"in":"query","name":"limit","required":false},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/audit-log/verify":{"get":{"summary":"Get organizations audit log verify","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/stats":{"get":{"summary":"Get organizations stats","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/billing":{"get":{"summary":"Get billing","tags":["Dashboard"],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/billing":{"get":{"summary":"Get organizations billing","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/billing/invoices":{"post":{"summary":"Create or run organizations billing invoices","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"pack":{"type":"string","pattern":"^\\d{1,9}$"}},"required":["pack"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/billing/invoices/{invoiceId}/confirm":{"post":{"summary":"Create or run organizations billing invoices confirm","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"default":{},"type":"object","properties":{"signature":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{64,90}$"}}}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"invoiceId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/public/gate/access":{"get":{"summary":"Has this wallet accepted the version a policy requires?","tags":["Stele Gate"],"description":"Status VALID, MISSING or OUTDATED, read from the AccessPass and policy accounts on Solana, with the pass address your program reads. For your interface — your program's require_current() is what enforces it.","parameters":[{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"policy","required":true},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"query","name":"holder","required":true}],"security":[],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/gate":{"get":{"summary":"Get organizations gate","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/gate/policies/{policy}/refresh":{"post":{"summary":"Create or run organizations gate policies refresh","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"in":"path","name":"policy","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/gate/passes":{"get":{"summary":"Get organizations gate passes","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"query","name":"documentId","required":false},{"schema":{"type":"string","enum":["current","outdated"]},"in":"query","name":"status","required":false},{"schema":{"default":50,"type":"integer","minimum":1,"maximum":200},"in":"query","name":"limit","required":false},{"schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991},"in":"query","name":"offset","required":false},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/gate/programs":{"post":{"summary":"Create or run organizations gate programs","tags":["Dashboard"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"programAddress":{"type":"string","pattern":"^[1-9A-HJ-NP-Za-km-z]{32,44}$"},"label":{"type":"string","minLength":1,"maxLength":64},"action":{"type":"string","pattern":"^[A-Za-z_][A-Za-z0-9_]{0,63}$"},"policyDocumentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["programAddress","label","action","policyDocumentId"]}}}},"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/gate/programs/{programId}":{"delete":{"summary":"Delete organizations gate programs","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"programId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/gate/programs/{programId}/activity":{"get":{"summary":"Get organizations gate programs activity","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"programId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}},"/v1/organizations/{orgId}/gate/programs/{programId}/test":{"post":{"summary":"Create or run organizations gate programs test","tags":["Dashboard"],"parameters":[{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"orgId","required":true},{"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"in":"path","name":"programId","required":true}],"security":[{"session":[]}],"responses":{"200":{"description":"Default Response"}}}}},"servers":[{"url":"https://stele.site/api","description":"This Stele app"}],"tags":[{"name":"Network","description":"Which Solana network, program and keys this Stele app uses. Start here."},{"name":"Documents","description":"Published documents and their exact text. Anyone can read them; the text is checked against its on-chain fingerprint by the SDK and the verifier."},{"name":"Accepting","description":"The acceptance flow the widget and SDK run in the browser: get a challenge (the exact message to sign), sign it, submit it. The user never pays a fee."},{"name":"Server: acceptances","description":"For your backend, with an API key: link acceptances to your users and check who accepted what."},{"name":"Verification","description":"Public evidence: acceptance records, receipts and batches. Every answer can be re-checked against Solana without Stele."},{"name":"Stele Gate","description":"Has a wallet accepted the version a policy requires? The same answer your Solana program's require_current() gives."},{"name":"Proofs","description":"Purchases, refunds, consents and quotes confirmed by your customer's signature: create a request on your server, the customer confirms it in the browser."},{"name":"Passkeys","description":"Passkey signing used by the widget and SDK (Face ID, Touch ID, Windows Hello). You rarely call these directly."},{"name":"Server: signers","description":"For your backend, with an API key: the passkey signers linked to your users."},{"name":"Dashboard","description":"What the Stele dashboard calls with a signed-in wallet session (cookie + CSRF header). Listed for completeness; integrations use the endpoints above."}]}