Owner Profile and Wallet Management

Owner Profile Management

These endpoints manages creation, retrieval, and updates to owner profiles linked to wallets and storage activities.

Get Owner by Wallet ID

  • Path: /v2/owner/wallet/:ID

  • Method: GET

  • Access: CSRF API

  • Description: Public profile fetch by wallet ID.

  • Path Params: ID (string)

  • Response:

{
  "user_id": "abcdef123456",
  "username": "johndoe",
  "biography": "Short bio here",
  "avatar": "<base64>",
  "background": "<base64>",
  "created_at": "2024-05-30T12:34:00"
}
  • Error: {"error": "owner not found"}

Get Current Owner

  • Path: /v2/owner

  • Method: GET

  • Access: Signature API

  • Response:

Update Owner

  • Path: /v2/owner

  • Method: PUT

  • Access: Signature API

  • Form Data:

    • username (optional)

    • avatar (optional file)

    • background (optional file)

    • biography (optional string)

  • Response:

Delete Owner

  • Path: /v2/owner

  • Method: DELETE

  • Access: Private API

  • Response:

  • Deletes: DB record, Elasticsearch index, Stripe subscriptions, Firebase account.

Autocomplete Owners by Name

  • Path: /v2/owner/autocomplete

  • Method: GET

  • Access: Signature API

  • Query Parameters:

    • name (required)

    • app_type (required)

    • offset, limit, order (optional)

  • Response:

Wallet Management

These endpoints enables wallet creation, updates, and funding workflows essential for interacting with the Züs network.

Create Wallet

  • Path: /v2/wallet

  • Method: POST

  • Access: Signature API

  • Description: Creates a new wallet for the authenticated user. Can optionally include a referral code and custom mnemonic.

  • Form Data (multipart/form-data):

    • name (string, optional): Wallet name.

    • description (string, optional): Wallet description.

    • mnemonic (string, optional): Predefined mnemonic (if restoring).

    • pub_encryption_key (string, optional): Public encryption key.

    • refcode (string, optional): Referral code.

  • Response (201 Created):

  • Error Response:

Update Wallet

  • Path: /v2/wallet

  • Method: PUT

  • Access: Signature API

  • Description: Updates metadata for an existing wallet.

  • Form Data:

    • Any wallet metadata fields from handler.WalletDetails such as:

      • name, description, pub_encryption_key, etc.

  • Response:

  • Error Response:

Delete Wallet

  • Path: /v2/wallet

  • Method: DELETE

  • Access: Signature API

  • Description: Deletes a wallet for the authenticated user.

  • Query Parameters:

    • wallet_id (string, required): ID of wallet to be deleted.

  • Response:

Set Active Wallet

  • Path: /v2/wallet

  • Method: PUT

  • Access: Signature API

  • Description: Sets the currently active wallet for an app type (e.g., Vult/Blimp). Also updates the user's profile and rewards signup tokens if first-time setup.

  • Form Data (multipart/form-data):

    • refcode (string, optional): Referral code for reward.

  • Response:

  • Error Response:

Get Wallet Keys

  • Path: /v2/wallet/keys

  • Method: GET

  • Access: Signature API

  • Description: Retrieves public keys and metadata of the currently active wallet.

  • Response:

Check Wallet Exists

  • Path: /v2/wallet/exist

  • Method: GET

  • Access: CSRF API

  • Headers: Non-auth headers required

  • Description: Checks whether a wallet already exists for the user.

  • Response:

Get Wallet List

  • Path: /v2/wallet/list

  • Method: GET

  • Access: CSRF API

  • Headers: Non-auth headers required

  • Query Parameters (optional):

    • limit (string)

    • offset (string)

  • Response:

Get Active Wallet

  • Path: /v2/wallet/list (Overloaded)

  • Method: GET

  • Access: CSRF API

  • Description: Fetches the currently active wallet for the logged-in user.

  • Response:

Update KMS Keys

  • Path: /v2/wallet/kms

  • Method: PUT

  • Access: Signature API

  • Description: Updates the KMS (Key Management Service) public key for encryption purposes.

  • Form Data (multipart/form-data):

    • Fields from handler.WalletKMSDetails, e.g.:

      • kms_public_key, etc.

  • Response:

Call Contact Wallets

  • Path: /v2/contact/wallets

  • Method: GET

  • Access: Signature API

  • Description: Retrieves wallets associated with user contacts.

  • Response:

Wallet Funding Tasks (ZBOX)

These endpoints allow users to receive initial funding (one-time) to perform actions like creating allocations.

Create Funding Task Wallet

  • Path: /zbox/fund/wallet

  • Method: POST

  • Access: Signature API

  • Description: Creates a new funding task for a wallet. This enables one-time token funding per owner/app type for bootstrapping usage.

  • Headers Required: X-App-Client-ID, X-App-Client-Key, X-App-Timestamp, X-App-ID-TOKEN, X-App-Phone-Number, X-CSRF-TOKEN, X-APP-TYPE

  • Body:

  • Response (201 Created):

Get Funding Task

  • Path: /v2/zbox/fund/:ID

  • Method: GET

  • Access: Signature API

  • Description: Retrieves a specific funding task using its ID.

  • Path Param: ID (integer)

  • Response:

Get Wallet Spending Status

  • Path: /v2/zbox/fund/spent/status

  • Method: GET

  • Access: Signature API

  • Description: Returns wallet’s current spending usage stats (daily/weekly) to prevent abuse.

  • Response:

Delete Funding Task

  • Path: /v2/zbox/fund/:ID

  • Method: DELETE

  • Access: Signature API

  • Description: Deletes a previously created funding task.

  • Path Param: ID (integer)

  • Response (Success):

  • If nothing was deleted:

Last updated