Skip to main content
GET
/
v2
/
core
/
permit
Detect authorization requirements for vault deposit
curl --request GET \
  --url https://api.example.com/v2/core/permit \
  --header 'x-api-key: <api-key>'
{
  "method": "permit",
  "permitData": {
    "domain": {
      "name": "USD Coin",
      "version": "2",
      "chainId": 1,
      "verifyingContract": "0x..."
    },
    "types": {},
    "value": {
      "owner": "0x...",
      "spender": "0x...",
      "value": "1000000000000000000",
      "nonce": "0",
      "deadline": "9999999999"
    },
    "deadline": "9999999999"
  },
  "approvalTransaction": {
    "encoded": "0x..."
  }
}

Authorizations

x-api-key
string
header
required

API key in format: pxl_<public_id>_

Query Parameters

vaultAddress
string
required

BoringVault contract address (0x + 40 hex chars)

Example:

"0x..."

tokenAddress
string
required

ERC-20 token address

Example:

"0x..."

amount
string
required

Deposit amount in token base units (decimal string)

Example:

"1000000000000000000"

userAddress
string
required

User wallet address

Example:

"0x..."

chainId
number
required

EVM chain ID

Example:

1

Response

method
enum<string>
required
Available options:
permit,
approval,
already_approved
Example:

"permit"

permitData
object

Present when method=permit

approvalTransaction
object

Present when method=approval