Skip to content

Palisade API (2.0)

The Palisade API enables programmatic interaction with the various features of the Palisade platform

Download OpenAPI description
Languages
Servers
Mock server
https://docs.ripple.com/_mock/products/wallet/api-docs/palisade-api/palisade-api
Sandbox server (uses TESTNET data, private keys and accounts)
https://api.sandbox.palisade.co
Palisade server (uses MAINNET data, private keys and accounts)
https://api.palisade.co

Addresses

Used to manage addresses

Operations

API Credentials

Used to manage credentials

Operations

Approvals

Used to manage approvals

Operations

Approvers

Used to manage approvers

Operations

Audit

Used to manage configuration for audit

Operations

Backup

Used to manage backups

Operations

Balances

Used to view balances

Operations

Compliance

Used to manage compliance

Operations

Counterparties

Used to manage counterparties

Operations

Devices

Used to manage devices

Operations

Information

Used to view information about the platform

Operations

MPC - Memberships

Used to manage MPC memberships

Operations

MPC - Quorums

Used to manage MPC quorums

Operations

MPC - Sessions

Used to manage MPC sessions

Operations

Organizations

Used to manage organizations

Operations

Policies

Used to manage connections policies

Operations

List organization wallet limits

Request

List all wallet limits within the organization

Security
TokenAuth
Query
pageSizeinteger(int32)

The number of results to return per page (default 50, max 1000)

pageTokenstring

The token to retrieve the next page of results

curl -i -X GET \
  'https://docs.ripple.com/_mock/products/wallet/api-docs/palisade-api/palisade-api/v2/policy-rules/limits?pageSize=0&pageToken=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

A successful response.

Bodyapplication/json
filterobject(v2FilterResponse)
walletLimitsArray of objects(v2WalletLimit)
Response
application/json
{ "filter": { "previousPageToken": "cGFnZV9zaXplPTEwJnBhZ2VfdG9rZW49MjA=", "nextPageToken": "cGFnZV9zaXplPTEwJnBhZ2VfdG9rZW49MjA=", "total": 100 }, "walletLimits": [ {} ] }

List wallet limit policies

Request

List wallet limit policies for the specified wallet

Security
TokenAuth
Path
vaultIdstringrequired

The vault ID

walletIdstringrequired

The wallet ID

Query
pageSizeinteger(int32)

The number of results to return per page (default 50, max 1000)

pageTokenstring

The token to retrieve the next page of results

blockchainstring

Optional filter by blockchain. If not specified, returns policies for all blockchains.

Enum"AVALANCHE""ETHEREUM""XRP_LEDGER""POLYGON""BNBCHAIN""BASE""HEDERA""ARBITRUM""ONE_MONEY""SOLANA"
curl -i -X GET \
  'https://docs.ripple.com/_mock/products/wallet/api-docs/palisade-api/palisade-api/v2/vaults/{vaultId}/wallets/{walletId}/policy-rules/limits?pageSize=0&pageToken=string&blockchain=AVALANCHE' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

A successful response.

Bodyapplication/json
filterobject(v2FilterResponse)
walletLimitsArray of objects(v2WalletLimit)
Response
application/json
{ "filter": { "previousPageToken": "cGFnZV9zaXplPTEwJnBhZ2VfdG9rZW49MjA=", "nextPageToken": "cGFnZV9zaXplPTEwJnBhZ2VfdG9rZW49MjA=", "total": 100 }, "walletLimits": [ {} ] }

Create a wallet limit policy

Request

Create a wallet limit policy for the specified wallet

Security
TokenAuth
Path
vaultIdstringrequired

The vault ID

walletIdstringrequired

The wallet ID

Bodyapplication/jsonrequired
limitQtystringrequired

The limit quantity

Example: "200.00"
durationstring

The limit duration

Example: "200s"
limitTypestring(v2LimitType)required
Enum"PER_TX""CONSTANT""ROLLING_DURATION"
contractstring

The contract/issuing address

Example: "0xdAC17F958D2ee523a2206206994597C13D831ec7"
symbolstringrequired

The asset symbol

Example: "USD"
matchersArray of objects(v2Matcher)
blockchainstring(v2Blockchain)
Enum"AVALANCHE""ETHEREUM""XRP_LEDGER""POLYGON""BNBCHAIN""BASE""HEDERA""ARBITRUM""ONE_MONEY""SOLANA"
curl -i -X PUT \
  'https://docs.ripple.com/_mock/products/wallet/api-docs/palisade-api/palisade-api/v2/vaults/{vaultId}/wallets/{walletId}/policy-rules/limits' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "limitQty": "200.00",
    "duration": "200s",
    "limitType": "PER_TX",
    "contract": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
    "symbol": "USD",
    "matchers": [
      {
        "type": "USER",
        "value": "string",
        "values": [
          "string"
        ]
      }
    ],
    "blockchain": "AVALANCHE"
  }'

Responses

Bodyapplication/json
idstringrequired

The wallet limit policy ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
createdBystringrequired

The creator ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
organizationIdstringrequired

The organization ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
walletIdstringrequired

The wallet ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
vaultIdstringrequired

The vault ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
limitQtystring

The limit quantity

Example: "200.00"
durationstring

The limit duration

Example: "200s"
limitTypestring(v2LimitType)required
Enum"PER_TX""CONSTANT""ROLLING_DURATION"
createdAtstring(date-time)required

The date and time the wallet limit policy was created

Example: "2022-03-29T10:22:22.420Z"
updatedAtstring(date-time)required

The date and time the wallet limit policy was updated

Example: "2022-03-29T10:22:22.420Z"
assetobject(commonv2Asset)required
asset.​idstringrequired

ID is unique across all blockchains and created by combining the blockchain ID, contract address, and symbol

Example: "5:0xbehbehfb:USDC"
asset.​standardstring(v2Standard)required
Enum"NATIVE""ERC20""ISSUED_CURRENCY""ERC721""SPL""CUSTOM"
asset.​symbolstringrequired

The currency symbol of the asset

Example: "LINK"
asset.​namestring

The human readable name of the asset

Example: "Chainlink"
asset.​blockchainstring(v2Blockchain)required
Enum"AVALANCHE""ETHEREUM""XRP_LEDGER""POLYGON""BNBCHAIN""BASE""HEDERA""ARBITRUM""ONE_MONEY""SOLANA"
asset.​decimalsinteger(int32)

Count of decimal places for the asset

Example: 18
asset.​vettedboolean

Whether the asset is vetted on the regulated platform

Example: true
asset.​enabledboolean

Whether the asset is currently enabled on the platform

Example: true
asset.​contractstring

The token contract address. This field will be empty if the asset is the native coin of the blockchain

Example: "0x0b9d5D9136855f6FEc3c0993feE6E9CE8a297846e"
asset.​createdAtstring(date-time)required

The date and time the asset was created

Example: "2022-03-29T10:22:22.420Z"
asset.​updatedAtstring(date-time)

The date and time the asset was last updated

Example: "2022-03-29T10:22:22.420Z"
asset.​organizationIdstring

Organization ID for custom assets

asset.​coingeckoIdstring

CoinGecko identifier for price data (optional for testnet assets)

Example: "ethereum"
asset.​sourcestring(v2AssetSource)
Enum"ASSET_SOURCE_LEGACY""ASSET_SOURCE_AUTO""ASSET_SOURCE_COINGECKO""ASSET_SOURCE_PALISADE""ASSET_SOURCE_CUSTOMER"
asset.​sourceMetadataobject(protobufAny)
asset.​lastSyncedAtstring(date-time)

When this asset was last synchronized

Example: "2024-08-08T10:22:22.420Z"
asset.​syncVersioninteger(int32)

Version counter for sync updates

Example: 1
asset.​contractAddressChecksummedstring

Checksummed version of the contract address

Example: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
matchersArray of objects(v2Matcher)
statusstring(v2WalletLimitStatus)required
Enum"LIMIT_CREATED""LIMIT_ENABLED""LIMIT_REJECTED""LIMIT_DELETED""LIMIT_ERROR""LIMIT_CREATION_APPROVAL_PENDING""LIMIT_CREATION_APPROVAL_COMPLETE""LIMIT_DELETION_APPROVAL_PENDING""LIMIT_DELETION_APPROVAL_COMPLETE"
activebooleanrequired

Whether the limit is active

Example: true
blockchainstring(v2Blockchain)
Enum"AVALANCHE""ETHEREUM""XRP_LEDGER""POLYGON""BNBCHAIN""BASE""HEDERA""ARBITRUM""ONE_MONEY""SOLANA"
Response
application/json
{ "id": "ce4918bf-a199-4ce2-85a3-d0d296855384", "createdBy": "ce4918bf-a199-4ce2-85a3-d0d296855384", "organizationId": "ce4918bf-a199-4ce2-85a3-d0d296855384", "walletId": "ce4918bf-a199-4ce2-85a3-d0d296855384", "vaultId": "ce4918bf-a199-4ce2-85a3-d0d296855384", "limitQty": "200.00", "duration": "200s", "limitType": "PER_TX", "createdAt": "2022-03-29T10:22:22.420Z", "updatedAt": "2022-03-29T10:22:22.420Z", "asset": { "id": "5:0xbehbehfb:USDC", "standard": "NATIVE", "symbol": "LINK", "name": "Chainlink", "blockchain": "AVALANCHE", "decimals": 18, "vetted": true, "enabled": true, "contract": "0x0b9d5D9136855f6FEc3c0993feE6E9CE8a297846e", "createdAt": "2022-03-29T10:22:22.420Z", "updatedAt": "2022-03-29T10:22:22.420Z", "organizationId": "string", "coingeckoId": "ethereum", "source": "ASSET_SOURCE_LEGACY", "sourceMetadata": {}, "lastSyncedAt": "2024-08-08T10:22:22.420Z", "syncVersion": 1, "contractAddressChecksummed": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48" }, "matchers": [ {} ], "status": "LIMIT_CREATED", "active": true, "blockchain": "AVALANCHE" }

Get a wallet limit policy

Request

Get the specified wallet limit policy

Security
TokenAuth
Path
vaultIdstringrequired

The vault ID

walletIdstringrequired

The wallet ID

idstringrequired

The wallet limit policy ID

curl -i -X GET \
  'https://docs.ripple.com/_mock/products/wallet/api-docs/palisade-api/palisade-api/v2/vaults/{vaultId}/wallets/{walletId}/policy-rules/limits/{id}' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
idstringrequired

The wallet limit policy ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
createdBystringrequired

The creator ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
organizationIdstringrequired

The organization ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
walletIdstringrequired

The wallet ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
vaultIdstringrequired

The vault ID

Example: "ce4918bf-a199-4ce2-85a3-d0d296855384"
limitQtystring

The limit quantity

Example: "200.00"
durationstring

The limit duration

Example: "200s"
limitTypestring(v2LimitType)required
Enum"PER_TX""CONSTANT""ROLLING_DURATION"
createdAtstring(date-time)required

The date and time the wallet limit policy was created

Example: "2022-03-29T10:22:22.420Z"
updatedAtstring(date-time)required

The date and time the wallet limit policy was updated

Example: "2022-03-29T10:22:22.420Z"
assetobject(commonv2Asset)required
asset.​idstringrequired

ID is unique across all blockchains and created by combining the blockchain ID, contract address, and symbol

Example: "5:0xbehbehfb:USDC"
asset.​standardstring(v2Standard)required
Enum"NATIVE""ERC20""ISSUED_CURRENCY""ERC721""SPL""CUSTOM"
asset.​symbolstringrequired

The currency symbol of the asset

Example: "LINK"
asset.​namestring

The human readable name of the asset

Example: "Chainlink"
asset.​blockchainstring(v2Blockchain)required
Enum"AVALANCHE""ETHEREUM""XRP_LEDGER""POLYGON""BNBCHAIN""BASE""HEDERA""ARBITRUM""ONE_MONEY""SOLANA"
asset.​decimalsinteger(int32)

Count of decimal places for the asset

Example: 18
asset.​vettedboolean

Whether the asset is vetted on the regulated platform

Example: true
asset.​enabledboolean

Whether the asset is currently enabled on the platform

Example: true
asset.​contractstring

The token contract address. This field will be empty if the asset is the native coin of the blockchain

Example: "0x0b9d5D9136855f6FEc3c0993feE6E9CE8a297846e"
asset.​createdAtstring(date-time)required

The date and time the asset was created

Example: "2022-03-29T10:22:22.420Z"
asset.​updatedAtstring(date-time)

The date and time the asset was last updated

Example: "2022-03-29T10:22:22.420Z"
asset.​organizationIdstring

Organization ID for custom assets

asset.​coingeckoIdstring

CoinGecko identifier for price data (optional for testnet assets)

Example: "ethereum"
asset.​sourcestring(v2AssetSource)
Enum"ASSET_SOURCE_LEGACY""ASSET_SOURCE_AUTO""ASSET_SOURCE_COINGECKO""ASSET_SOURCE_PALISADE""ASSET_SOURCE_CUSTOMER"
asset.​sourceMetadataobject(protobufAny)
asset.​lastSyncedAtstring(date-time)

When this asset was last synchronized

Example: "2024-08-08T10:22:22.420Z"
asset.​syncVersioninteger(int32)

Version counter for sync updates

Example: 1
asset.​contractAddressChecksummedstring

Checksummed version of the contract address

Example: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
matchersArray of objects(v2Matcher)
statusstring(v2WalletLimitStatus)required
Enum"LIMIT_CREATED""LIMIT_ENABLED""LIMIT_REJECTED""LIMIT_DELETED""LIMIT_ERROR""LIMIT_CREATION_APPROVAL_PENDING""LIMIT_CREATION_APPROVAL_COMPLETE""LIMIT_DELETION_APPROVAL_PENDING""LIMIT_DELETION_APPROVAL_COMPLETE"
activebooleanrequired

Whether the limit is active

Example: true
blockchainstring(v2Blockchain)
Enum"AVALANCHE""ETHEREUM""XRP_LEDGER""POLYGON""BNBCHAIN""BASE""HEDERA""ARBITRUM""ONE_MONEY""SOLANA"
Response
application/json
{ "id": "ce4918bf-a199-4ce2-85a3-d0d296855384", "createdBy": "ce4918bf-a199-4ce2-85a3-d0d296855384", "organizationId": "ce4918bf-a199-4ce2-85a3-d0d296855384", "walletId": "ce4918bf-a199-4ce2-85a3-d0d296855384", "vaultId": "ce4918bf-a199-4ce2-85a3-d0d296855384", "limitQty": "200.00", "duration": "200s", "limitType": "PER_TX", "createdAt": "2022-03-29T10:22:22.420Z", "updatedAt": "2022-03-29T10:22:22.420Z", "asset": { "id": "5:0xbehbehfb:USDC", "standard": "NATIVE", "symbol": "LINK", "name": "Chainlink", "blockchain": "AVALANCHE", "decimals": 18, "vetted": true, "enabled": true, "contract": "0x0b9d5D9136855f6FEc3c0993feE6E9CE8a297846e", "createdAt": "2022-03-29T10:22:22.420Z", "updatedAt": "2022-03-29T10:22:22.420Z", "organizationId": "string", "coingeckoId": "ethereum", "source": "ASSET_SOURCE_LEGACY", "sourceMetadata": {}, "lastSyncedAt": "2024-08-08T10:22:22.420Z", "syncVersion": 1, "contractAddressChecksummed": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48" }, "matchers": [ {} ], "status": "LIMIT_CREATED", "active": true, "blockchain": "AVALANCHE" }

Delete a wallet limit policy

Request

Delete the specified wallet limit policy

Security
TokenAuth
Path
vaultIdstringrequired

The vault ID

walletIdstringrequired

The wallet ID

idstringrequired

The wallet limit policy ID

curl -i -X DELETE \
  'https://docs.ripple.com/_mock/products/wallet/api-docs/palisade-api/palisade-api/v2/vaults/{vaultId}/wallets/{walletId}/policy-rules/limits/{id}' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

A successful response.

Bodyapplication/json
object(v2DeleteWalletLimitResponse)
Response
application/json
{}

List permitted destinations

Request

List all permitted destinations for this wallet

Security
TokenAuth
Path
vaultIdstringrequired

The vault ID

walletIdstringrequired

The wallet ID

Query
pageSizeinteger(int32)

The number of results to return per page (default 50, max 1000)

pageTokenstring

The token to retrieve the next page of results

curl -i -X GET \
  'https://docs.ripple.com/_mock/products/wallet/api-docs/palisade-api/palisade-api/v2/vaults/{vaultId}/wallets/{walletId}/policy-rules/permitted-destinations?pageSize=0&pageToken=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

A successful response.

Bodyapplication/json
filterobject(v2FilterResponse)
destinationsArray of objects(v2Destination)
Response
application/json
{ "filter": { "previousPageToken": "cGFnZV9zaXplPTEwJnBhZ2VfdG9rZW49MjA=", "nextPageToken": "cGFnZV9zaXplPTEwJnBhZ2VfdG9rZW49MjA=", "total": 100 }, "destinations": [ {} ] }

Rates

Used to retrieve rates

Operations

Sweep Configurations

Used to manage sweep configurations

Operations

Tags

Used to manage organization tags

Operations

Transactions

Used to manage transactions

Operations

Transactions - XRP

Used to manage XRP specific transactions

Operations

Users

Used to manage users

Operations

Vaults

Used to manage vaults

Operations

Vault Tags

Used to manage vault tags

Operations

Wallets

Used to manage wallets

Operations

Wallet Tags

Used to manage wallet tags

Operations

Wallet Connect

Used to manage connections

Operations

Webhooks

Used to manage webhooks

Operations

Registry

Operations

Transactions - Sweep

Operations

Sweep Instances

Operations