Skip to content

DeFi API Wallet services

Supported in Prerequisites
v1 Requirements

TL;DR

  • Supports programmatic generation of DeFi transactions
  • Initiates approval flow through to transaction broadcast-ready
  • Integrates with Signing Agent

Prerequisites

To use the DeFi API Wallet service, in addition to the basic requirements, the following are required:

  • An Organization with Connected Wallet functionality enabled

    To enable a Connected Wallet, contact [email protected].

  • A Fund with an associated DeFi API Wallet and a Fee Wallet

    While not required, it is recommended that the DeFi API Wallet be set up with multiple approvers. Such approvers may be active at any level: Organizational, Fund, or Wallet. Such approvers may be trusted parties or automated Signing Agents.

Service overview

The DeFi API Wallet is a Connected Wallet service that allows Qredo customers to create transactions from L1 Wallets on any supported network while benefiting from Qredo's secure custody suite.

Because access is controlled through the use of API keys, you can provide these keys to whichever trusted parties may create, approve, and view the status of transactions.

Similarly, such keys can be assigned to the entity of your choice:

  • Organization
  • Wallet/Vault

This allows you to apply granular control over custody of your assets.

Integrations

Signing Agent

The DeFi transaction service works together with the Signing Agent to automate the approval flow according to your customized ruleset.

Read-only

Fulfill your compliance and audit reporting requirements using the Read-only reporting service.

DeFi API services

The DeFi API Wallet service provides endpoints that support the functionality required to carry out transactions and view a transaction's status for this class of Connected Wallet. Transactions submitted via this DeFi API Wallet will also be available from the Qredo Web App interface.

Endpoint Description Permission
POST /transaction Submit a transaction for signing and approval Write access
GET /transactions/{tx_id}/approvals Get approvals' status for a specific transaction Read only
GET /transactions/{tx_id}/status Get status of a specific transaction Read only
Get /transactions/feed Websocket feed of status of transactions. Read only

See the Qredo API v1 specification for detailed information on how to use these endpoints.

Service Use Cases

1. Sign and broadcast transactions for Swaps or Withdrawls

POST /transaction allows trusted parties to create a new transaction, send it for approval, and broadcast it.

Learn more about transactions

2. Sign and broadcast smart contract interactions

POST/transaction allows trusted parties to create a new instruction to a smart contract, send it for approval, and broadcast it.

Set value to "0" if no assets are transferred as a result of this request.

3. View approval status of a transaction

Two endpoints provide approval status:

  • Get /transactions/feed provides a summary of the approval status for a transaction

  • GET /transactions/{tx_id}/approvals provides the details of a specific transaction based on the transaction ID.

Create a DeFi API Wallet

Once you have Connected Wallet permission enabled, you may add the Connected Wallet and linked Fee Wallet from within an Organization account via the Qredo Web App.

Tip

Personal accounts do not support DeFi API Wallets.

1. Follow the instructions to add a Connected Wallet

step 2: create DeFi API Wallet

2. Select DeFi API Wallet

step 2: create DeFi API Wallet

Note the warning shown. Setting an approval policy is a key step in creating secure custody over your assets.

3. Assign an existing Fee Wallet or repeat 1—2 to setup a Fee Wallet

A Fee Wallet is a Qredo-accessible Wallet: required to pay the service fee to Qredo.

Programatic control

Remember to create API keys and customize their access over your DeFi API Wallet.


Last update: 2022-11-23