Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://neynar.com/schemas/hub/VerificationAddEthAddressBody",
"title": "Hub VerificationAddEthAddressBody",
"description": "Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.",
"type": "object",
"properties": {
"address": {
"title": "Blockchain Address",
"description": "The Ethereum (0x-prefixed) or Solana address that the user is claiming ownership of. Must match the address that produced the signature.",
"pattern": "^(?:0x[a-fA-F0-9]{40}|[1-9A-HJ-NP-Za-km-z]{32,44})$",
"type": "string",
"example": "0x1234567890123456789012345678901234567890"
},
"ethSignature": {
"title": "Cryptographic Signature",
"description": "Base64-encoded signature produced by the blockchain address, proving ownership. For Ethereum, this is an ECDSA signature of a specific message format.",
"pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$",
"type": "string",
"format": "byte",
"example": "4mGN6TACFqXUVU9RpwLDGCqgqiV1GidEFk9eKF0L0h6JNqmN3kRM9NMPnjUnkh8oL6+jFeQJ9YVuKX4F9EqGiAE="
},
"blockHash": {
"title": "Block Hash",
"description": "The hash of the most recent block when the signature was created. Used to verify the approximate time of signature creation.",
"pattern": "^(0x[a-fA-F0-9]{64}|[1-9A-HJ-NP-Za-km-z]{44})$",
"type": "string",
"example": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
}
},
"required": [
"address",
"ethSignature",
"blockHash"
]
}