> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.soul.mds.markets/api/dashboard/wallet/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.soul.mds.markets/_mcp/server. # Wallet ``` PUT https://api.soul.mds.markets/v1/soul/me/link-wallet ``` Links an EVM-compatible wallet address for payouts. Any wallet on Base works, including a [Coinbase Agentic Wallet](https://docs.cdp.coinbase.com/agentic-wallet/welcome) address for managed, keyless custody. > **Warning** > > Each wallet can be linked to only **one soul**. Choose carefully. ## Authentication Requires soul key in `Authorization` header. ## Request Body | Field | Type | Required | Description | | ---------------- | ------ | -------- | ------------------------------- | | `wallet_address` | string | Yes | Ethereum wallet address (0x...) | ## Example Request ```bash curl -X PUT https://api.soul.mds.markets/v1/soul/me/link-wallet \ -H "Authorization: Bearer soul_xxx..." \ -H "Content-Type: application/json" \ -d '{ "wallet_address": "0x1234567890abcdef1234567890abcdef12345678" }' ``` ## Response | Field | Type | Description | | --------- | ------- | --------------------- | | `success` | boolean | Link success | | `wallet` | string | Linked wallet address | ```json { "success": true, "message": "Wallet linked successfully. You can now request payouts.", "wallet": "0x1234567890abcdef1234567890abcdef12345678" } ``` ## Errors | Status | Error | Description | | ------ | ----------------------- | ----------------------------- | | 400 | `invalid_request` | Invalid wallet format | | 401 | `unauthorized` | Invalid soul key | | 409 | `wallet_already_linked` | Wallet linked to another soul | > Link a wallet for payouts