Skip to main content

Configuration

Configure Fireblocks workspace:

  1. Configure API Co-Signer
  2. Add API User
  3. Configure Webhook URL
  4. Enable One-Time Address feature

Update the configuration file of the Custody Server.

custody:
# Default value: none
type: fireblocks
fireblocks:
# The base URL of the Fireblocks API
# Default value: https://api.fireblocks.io
base_url: https://api.fireblocks.io
# ID of Fireblocks vault account that will be used for payments
vault_account_id: "vault_account_id"
# Fireblocks public key that is used to verify a webhook signature
public_key: "public_key"
# Mappings of fireblocks asset codes to stellar asset codes. For example:
# XLM_USDC_T_CEKS stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5
# XLM_TEST stellar:native
# Codes should be separated with a space and each pair of codes should be on a new line
asset_mappings: "asset_mappings"
reconciliation:
# Cron expression which defines how often the transaction reconciliation job runs.
# By default, job runs every 15 minutes.
# Default value: 0 0/15 * * * *
cron_expression: "0 0/15 * * * *"
# Determines how many times the transaction reconciliation job will attempt to update the status of the
# transaction before marking it as failed.
# Default value: 10
max_attempts: 10
retry_config:
# Determines how many times the Fireblocks client will attempt to send a request before marking a call as failed.
# Default value: 3
max_attempts: 3
# Interval between Fireblocks client call attempts (in ms)
# Default value: 1000
delay: 1000

Add the environment variables.

# dev.env
# API key, that will be added to JWT token claims. JWT token will be sent in requests to Fireblocks API
SECRET_CUSTODY_FIREBLOCKS_API_KEY="Fireblocks API key"
# Secret key, that is used to sign JWT token
SECRET_CUSTODY_FIREBLOCKS_SECRET_KEY="Fireblocks secret key"