Prove possession and activate a pending wrapper
The activation half of wrapper custody: after creating a PENDING wrapper, the client reads the STORED blob back, unwraps those exact bytes locally, compares the FULL derived public key against the published one, and answers the ECDH key-confirmation challenge from the create response — proof = base64url(HMAC-SHA256(X25519(member_scalar, challenge.epk), possession_message)). Only a holder of the member private key can answer; the server stores only a hash of the expected proof and learns no key material. Activation is atomic: a pending KEY activates with its first wrapper, and a first wrapper on a legacy-custody key flips the scheme to wrapped_legacy_scalar_v1 (the migration cutover). Optional replace_wrapper_id revokes the named old wrapper in the SAME transaction — the recovery-code replacement rule (old code stays valid until the new one is verified). Challenges are single-use and expire in 15 minutes; nothing pending ever counts toward reads, scoping, or recovery posture.
Request
- Base URL: https://api.run402.com
- URL: https://api.run402.com/agent/v1/source-access/wrappers/{wrapper_id}/activate
- Auth: one of:
- API key in header SIGN-IN-WITH-X
- HTTP bearer
Path parameters
Headers
SIWX auth header — base64-encoded JSON payload containing a signed CAIP-122 (EIP-4361) message. See https://docs.x402.org/extensions/sign-in-with-x.
Request body
Response
Activated
Changes
No recorded changes to this operation across all 1 revision of this API.