pub struct X402ExactEvmPayload {
pub authorization: X402ExactEvmPayloadAuthorization,
pub signature: String,
}
Expand description
The x402 protocol exact scheme payload for EVM networks. The scheme is implemented using ERC-3009. For more details, please see EVM Exact Scheme Details.
JSON schema
{
"title": "x402ExactEvmPayload",
"description": "The x402 protocol exact scheme payload for EVM networks. The scheme is implemented using ERC-3009. For more details, please see [EVM Exact Scheme Details](https://github.com/coinbase/x402/blob/main/specs/schemes/exact/scheme_exact_evm.md).",
"examples": [
{
"authorization": {
"from": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"nonce": "0x1234567890abcdef1234567890abcdef12345678",
"to": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"validAfter": "1716150000",
"validBefore": "1716150000",
"value": "1000000000000000000"
},
"signature": "0xf3746613c2d920b5fdabc0856f2aeb2d4f88ee6037b8cc5d04a71a4462f13480"
}
],
"type": "object",
"required": [
"authorization",
"signature"
],
"properties": {
"authorization": {
"description": "The authorization data for the ERC-3009 authorization message.",
"examples": [
{
"from": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"nonce": "0x1234567890abcdef1234567890abcdef12345678",
"to": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"validAfter": "1716150000",
"validBefore": "1716150000",
"value": "1000000000000000000"
}
],
"type": "object",
"required": [
"from",
"nonce",
"to",
"validAfter",
"validBefore",
"value"
],
"properties": {
"from": {
"description": "The 0x-prefixed, checksum EVM address of the sender of the payment.",
"examples": [
"0x742d35Cc6634C0532925a3b844Bc454e4438f44e"
],
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"nonce": {
"description": "The hex-encoded nonce of the payment.",
"examples": [
"0x1234567890abcdef1234567890abcdef12345678"
],
"type": "string"
},
"to": {
"description": "The 0x-prefixed, checksum EVM address of the recipient of the payment.",
"examples": [
"0x742d35Cc6634C0532925a3b844Bc454e4438f44e"
],
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$"
},
"validAfter": {
"description": "The unix timestamp after which the payment is valid.",
"examples": [
"1716150000"
],
"type": "string"
},
"validBefore": {
"description": "The unix timestamp before which the payment is valid.",
"examples": [
"1716150000"
],
"type": "string"
},
"value": {
"description": "The value of the payment, in atomic units of the payment asset.",
"examples": [
"1000000000000000000"
],
"type": "string"
}
}
},
"signature": {
"description": "The EIP-712 hex-encoded signature of the ERC-3009 authorization message.",
"examples": [
"0xf3746613c2d920b5fdabc0856f2aeb2d4f88ee6037b8cc5d04a71a4462f13480"
],
"type": "string"
}
}
}
Fields§
§signature: String
The EIP-712 hex-encoded signature of the ERC-3009 authorization message.
Implementations§
Source§impl X402ExactEvmPayload
impl X402ExactEvmPayload
pub fn builder() -> X402ExactEvmPayload
Trait Implementations§
Source§impl Clone for X402ExactEvmPayload
impl Clone for X402ExactEvmPayload
Source§fn clone(&self) -> X402ExactEvmPayload
fn clone(&self) -> X402ExactEvmPayload
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for X402ExactEvmPayload
impl Debug for X402ExactEvmPayload
Source§impl<'de> Deserialize<'de> for X402ExactEvmPayload
impl<'de> Deserialize<'de> for X402ExactEvmPayload
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<&X402ExactEvmPayload> for X402ExactEvmPayload
impl From<&X402ExactEvmPayload> for X402ExactEvmPayload
Source§fn from(value: &X402ExactEvmPayload) -> Self
fn from(value: &X402ExactEvmPayload) -> Self
Converts to this type from the input type.
Source§impl From<X402ExactEvmPayload> for X402ExactEvmPayload
impl From<X402ExactEvmPayload> for X402ExactEvmPayload
Source§fn from(value: X402ExactEvmPayload) -> Self
fn from(value: X402ExactEvmPayload) -> Self
Converts to this type from the input type.
Source§impl Serialize for X402ExactEvmPayload
impl Serialize for X402ExactEvmPayload
Source§impl TryFrom<X402ExactEvmPayload> for X402ExactEvmPayload
impl TryFrom<X402ExactEvmPayload> for X402ExactEvmPayload
Source§type Error = ConversionError
type Error = ConversionError
The type returned in the event of a conversion error.
Source§fn try_from(value: X402ExactEvmPayload) -> Result<Self, ConversionError>
fn try_from(value: X402ExactEvmPayload) -> Result<Self, ConversionError>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for X402ExactEvmPayload
impl RefUnwindSafe for X402ExactEvmPayload
impl Send for X402ExactEvmPayload
impl Sync for X402ExactEvmPayload
impl Unpin for X402ExactEvmPayload
impl UnwindSafe for X402ExactEvmPayload
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more