Skip to main content

Validate Address

POST
/withdrawal/validate-address/

Validates a cryptocurrency address for a specific blockchain or token. Use this endpoint to verify an address is correctly formatted before initiating a withdrawal.

Authentication

Requires OAuth 2.0 authentication with read and write scopes.

Request Body

ParameterTypeRequiredDescription
addressstringYesThe cryptocurrency address to validate. Max 255 characters
currencystringConditionalCombined currency code (e.g., "USDTTRC20"). Max 20 characters. At least one of currency, blockchain, or type must be provided
blockchainstringConditionalBlockchain network (e.g., "ETH", "TRX"). At least one of currency, blockchain, or type must be provided
typestringConditionalAddress type (e.g., "EVM", "TRX", "SOL"). At least one of currency, blockchain, or type must be provided
tokenstringNoToken symbol (e.g., "USDT")
memostringNoMemo or tag. Max 255 characters. Required for some blockchains (e.g., XRP, XLM)

Example Request

curl -X POST {{BASE_URL}}/withdrawal/validate-address/ \
-H "Authorization: Bearer your_access_token" \
-H "Content-Type: application/json" \
-d '{
"address": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"blockchain": "ETH",
"token": "USDT"
}'

Using currency field

curl -X POST {{BASE_URL}}/withdrawal/validate-address/ \
-H "Authorization: Bearer your_access_token" \
-H "Content-Type: application/json" \
-d '{
"address": "TNPeeaaFB7K9cmo4uQpcU32zGK8G1NYqeL",
"currency": "USDTTRC20"
}'

Response

Success Response (200 OK)

{
"is_valid": true,
"address": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"type": "EVM",
"blockchain": "ETH",
"token": "USDT",
"currency": "USDTERC20",
"error_message": null
}

Response Fields

FieldTypeDescription
is_validbooleanWhether the address is valid
addressstringThe address that was validated
typestringThe address type
blockchainstringBlockchain network
tokenstringToken symbol
currencystringCombined currency code
error_messagestringError description if address is invalid, null otherwise

Invalid Address Response

{
"is_valid": false,
"address": "invalid_address",
"type": null,
"blockchain": "ETH",
"token": "USDT",
"currency": "USDTERC20",
"error_message": "Invalid EVM address format"
}

Error Responses

400 Bad Request - Missing Required Fields

{
"error": {
"code": "invalid_request",
"message": "At least one of currency, blockchain, or type must be provided",
"details": {}
}
}

Notes

  • At least one of currency, blockchain, or type must be provided
  • When blockchain is provided without type, the system automatically determines the address type
  • For blockchains that require a memo/tag (like XRP or XLM), the memo field is also validated when provided
  • It is recommended to validate addresses before initiating any withdrawal