Skip to main content
Link each wallet you control to your Shodai account once. External API requests authenticated as that account can then discover agreements that name any linked address, whether the agreement already exists or is created later. Assigning an address to an agreement does not require the wallet to be linked first. It also does not create an invitation or acceptance step.

Keep identity, visibility, and authority separate

1

Sign in to the Developer Portal

Sign in to the Shodai account that should gain wallet-based agreement visibility.
2

Open your wallets

Under Visibility, select Connected wallets.
3

Prove wallet control

Choose Connect wallet, select the browser wallet, and sign the challenge. The signature proves control without transferring custody.
4

Confirm the linked address

Confirm that the wallet address appears on your account. Credentials for that Shodai account can now use the linked address as an agreement-visibility signal.
Use an authenticated Shodai account credential with agreements.write and a wallet client for the address you are linking. The example uses an OAuth bearer access token. X-API-Key is the alternative credential header.
1

Request a wallet challenge

Send the wallet address to POST /v0/siwe/nonce. The response supplies the nonce and issued-at value for the EIP-4361 message.
2

Build and sign the EIP-4361 message

Keep the domain, URI, address, nonce, chain ID, and issued-at value consistent. Sign the exact message that you submit for verification.
3

Verify and link the wallet

Submit the address, exact message, signature, domain, and chain ID to POST /v0/siwe/verify. A successful response links the verified address to the authenticated Shodai account.
See Create wallet challenge and Verify and link wallet for request and response details.

What becomes visible

List agreements with an agreements.read credential for the same Shodai account. Agreements that already name the linked address can appear after linking, and future agreements that name it require no separate acceptance step. Linking and unlinking affect only visibility derived from the account-wallet association. Creator, owner, contributor, or observer access can keep an agreement visible through another documented access signal.

Interpret walletBinding as provenance

The SIWE verification response uses verified_via_siwe to report how the account wallet was verified. An agreement participant’s walletBinding separately reports how that address was established on the agreement record. These values are not current access decisions or input-permission flags. Linking an address later does not rewrite an existing partner_asserted participant record.

Understand the authority boundary

Linking proves wallet control. It does not transfer custody, and Shodai cannot sign agreement inputs for you. A wallet may submit an input only when the authored input issuer allows it and the submission includes a valid signature from that wallet. You can remove a self-linked SIWE wallet from Visibility > Connected wallets in the Developer Portal. Unlinking removes visibility derived solely from that account-wallet association; relinking restores the identity signal. Dynamic or operator-managed wallets follow different removal rules and are not necessarily self-unlinkable. Continue with Deploy an Agreement to assign participant addresses or Operate a Deployed Agreement to submit an authorized input.