pub struct Erc20ApprovalPayload {
pub data: Erc20ApprovalPayloadData,
pub payload_id: String,
pub type_: Erc20ApprovalPayloadType,
}Expand description
An ERC-20 approval transaction payload. The payer must send data as an EVM transaction via eth_sendTransaction and return the resulting transaction hash.
JSON schema
{
"title": "ERC-20 Approval Payload",
"description": "An ERC-20 approval transaction payload. The payer must send `data` as an EVM transaction via `eth_sendTransaction` and return the resulting transaction hash.",
"examples": [
{
"data": {
"chainId": 1,
"data": "0x095ea7b3000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000ffffffffffffffffffffffffffffffffffffffff",
"gas": "63804",
"maxFeePerGas": "1751588354",
"maxPriorityFeePerGas": "1000000000",
"to": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
"value": "0"
},
"payloadId": "payload_bf3948c1-a957-5gh8-cgf0-ddd33e046225",
"type": "erc20_approval"
}
],
"type": "object",
"required": [
"data",
"payloadId",
"type"
],
"properties": {
"data": {
"description": "An EVM transaction object. Send via `eth_sendTransaction`.",
"examples": [
{
"chainId": 1,
"data": "0x095ea7b3000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000ffffffffffffffffffffffffffffffffffffffff",
"gas": "63804",
"maxFeePerGas": "1751588354",
"maxPriorityFeePerGas": "1000000000",
"to": "0xdAC17F958D2ee523a2206206994597C13D831ec7",
"value": "0"
}
],
"type": "object",
"required": [
"chainId",
"data",
"to",
"value"
],
"properties": {
"chainId": {
"description": "The EVM chain ID for the transaction.",
"examples": [
1
],
"type": "integer"
},
"data": {
"description": "The ABI-encoded `approve()` calldata.",
"examples": [
"0x095ea7b3000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000ffffffffffffffffffffffffffffffffffffffff"
],
"type": "string"
},
"gas": {
"description": "The estimated gas limit for the transaction.",
"examples": [
"63804"
],
"type": "string"
},
"maxFeePerGas": {
"description": "The maximum fee per gas unit (EIP-1559).",
"examples": [
"1751588354"
],
"type": "string"
},
"maxPriorityFeePerGas": {
"description": "The maximum priority fee per gas unit (EIP-1559).",
"examples": [
"1000000000"
],
"type": "string"
},
"to": {
"description": "The 0x-prefixed address of the ERC-20 token contract to approve.",
"examples": [
"0xdAC17F958D2ee523a2206206994597C13D831ec7"
],
"type": "string",
"pattern": "^0x[a-fA-F0-9]{40}$"
},
"value": {
"description": "The native token value to send (always `\"0\"` for approvals).",
"examples": [
"0"
],
"type": "string"
}
}
},
"payloadId": {
"description": "The unique identifier of the payload.",
"examples": [
"payload_bf3948c1-a957-5gh8-cgf0-ddd33e046225"
],
"type": "string"
},
"type": {
"description": "The payload type.",
"examples": [
"erc20_approval"
],
"type": "string",
"enum": [
"erc20_approval"
]
}
}
}Fields§
§data: Erc20ApprovalPayloadData§payload_id: StringThe unique identifier of the payload.
type_: Erc20ApprovalPayloadTypeThe payload type.
Implementations§
Source§impl Erc20ApprovalPayload
impl Erc20ApprovalPayload
pub fn builder() -> Erc20ApprovalPayload
Trait Implementations§
Source§impl Clone for Erc20ApprovalPayload
impl Clone for Erc20ApprovalPayload
Source§impl Debug for Erc20ApprovalPayload
impl Debug for Erc20ApprovalPayload
Source§impl<'de> Deserialize<'de> for Erc20ApprovalPayload
impl<'de> Deserialize<'de> for Erc20ApprovalPayload
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<&Erc20ApprovalPayload> for Erc20ApprovalPayload
impl From<&Erc20ApprovalPayload> for Erc20ApprovalPayload
Source§fn from(value: &Erc20ApprovalPayload) -> Self
fn from(value: &Erc20ApprovalPayload) -> Self
Converts to this type from the input type.
Source§impl From<Erc20ApprovalPayload> for ApprovalPayload
impl From<Erc20ApprovalPayload> for ApprovalPayload
Source§fn from(value: Erc20ApprovalPayload) -> Self
fn from(value: Erc20ApprovalPayload) -> Self
Converts to this type from the input type.
Source§impl From<Erc20ApprovalPayload> for OnchainSignaturePayload
impl From<Erc20ApprovalPayload> for OnchainSignaturePayload
Source§fn from(value: Erc20ApprovalPayload) -> Self
fn from(value: Erc20ApprovalPayload) -> Self
Converts to this type from the input type.
Source§impl From<Erc20ApprovalPayload> for RevocationPayload
impl From<Erc20ApprovalPayload> for RevocationPayload
Source§fn from(value: Erc20ApprovalPayload) -> Self
fn from(value: Erc20ApprovalPayload) -> Self
Converts to this type from the input type.
Source§impl From<Erc20ApprovalPayload> for Erc20ApprovalPayload
impl From<Erc20ApprovalPayload> for Erc20ApprovalPayload
Source§fn from(value: Erc20ApprovalPayload) -> Self
fn from(value: Erc20ApprovalPayload) -> Self
Converts to this type from the input type.
Source§impl Serialize for Erc20ApprovalPayload
impl Serialize for Erc20ApprovalPayload
Source§impl TryFrom<Erc20ApprovalPayload> for Erc20ApprovalPayload
impl TryFrom<Erc20ApprovalPayload> for Erc20ApprovalPayload
Source§type Error = ConversionError
type Error = ConversionError
The type returned in the event of a conversion error.
Source§fn try_from(value: Erc20ApprovalPayload) -> Result<Self, ConversionError>
fn try_from(value: Erc20ApprovalPayload) -> Result<Self, ConversionError>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for Erc20ApprovalPayload
impl RefUnwindSafe for Erc20ApprovalPayload
impl Send for Erc20ApprovalPayload
impl Sync for Erc20ApprovalPayload
impl Unpin for Erc20ApprovalPayload
impl UnsafeUnpin for Erc20ApprovalPayload
impl UnwindSafe for Erc20ApprovalPayload
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