pub struct WalletMandateApprovalOptionsResponse {
pub ineligible_addresses: Vec<IneligibleWalletMandateApprovalAddresses>,
pub options: Vec<WalletMandateApprovalOption>,
}Expand description
The available options for approving this mandate on a wallet source, one per eligible asset the address can back. Present them to the customer, have them sign the chosen option’s payloads, then call Approve a mandate with a wallet. Requested addresses with no eligible option appear in ineligibleAddresses with a code explaining why. This is a stateless read operation and does not modify the mandate.
JSON schema
{
"title": "Wallet Mandate Approval Options Response",
"description": "The available options for approving this mandate on a wallet source, one per eligible asset the address can back. Present them to the customer, have them sign the chosen option's payloads, then call **Approve a mandate with a wallet**. Requested addresses with no eligible option appear in `ineligibleAddresses` with a `code` explaining why. This is a stateless read operation and does not modify the mandate.",
"type": "object",
"required": [
"ineligibleAddresses",
"options"
],
"properties": {
"ineligibleAddresses": {
"description": "Requested customer addresses that have no eligible mandate approval option, each with a `code` explaining why. Empty when every requested address can approve the mandate.",
"examples": [
[]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/IneligibleWalletMandateApprovalAddresses"
}
},
"options": {
"description": "The available wallet mandate approval options.",
"examples": [
[
{
"optionId": "opt_a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"payloads": [
{
"data": {
"domain": {
"chainId": 8453,
"name": "USD Coin",
"verifyingContract": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"version": "2"
},
"message": {
"deadline": "1798761600",
"nonce": "0",
"owner": "0xAbC1234567890aBcDeF1234567890AbCdEf123456",
"spender": "0x9Fb909eA400c2b8D99Be292DADf07e63B814527c",
"value": "115792089237316195423570985008687907853269984665640564039457584007913129639935"
},
"primaryType": "Permit",
"types": {
"EIP712Domain": [
{
"name": "name",
"type": "string"
},
{
"name": "version",
"type": "string"
},
{
"name": "chainId",
"type": "uint256"
},
{
"name": "verifyingContract",
"type": "address"
}
],
"Permit": [
{
"name": "owner",
"type": "address"
},
{
"name": "spender",
"type": "address"
},
{
"name": "value",
"type": "uint256"
},
{
"name": "nonce",
"type": "uint256"
},
{
"name": "deadline",
"type": "uint256"
}
]
}
},
"payloadId": "payload_af2937b0-9846-4fe7-bfe9-ccc22d935114",
"type": "eip2612"
}
],
"source": {
"address": "0xAbC1234567890aBcDeF1234567890AbCdEf123456",
"asset": "usdc",
"network": "base"
}
}
]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/WalletMandateApprovalOption"
}
}
}
}Fields§
§ineligible_addresses: Vec<IneligibleWalletMandateApprovalAddresses>Requested customer addresses that have no eligible mandate approval option, each with a code explaining why. Empty when every requested address can approve the mandate.
options: Vec<WalletMandateApprovalOption>The available wallet mandate approval options.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for WalletMandateApprovalOptionsResponse
impl<'de> Deserialize<'de> for WalletMandateApprovalOptionsResponse
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<&WalletMandateApprovalOptionsResponse> for WalletMandateApprovalOptionsResponse
impl From<&WalletMandateApprovalOptionsResponse> for WalletMandateApprovalOptionsResponse
Source§fn from(value: &WalletMandateApprovalOptionsResponse) -> Self
fn from(value: &WalletMandateApprovalOptionsResponse) -> Self
Converts to this type from the input type.
Source§impl From<WalletMandateApprovalOptionsResponse> for WalletMandateApprovalOptionsResponse
impl From<WalletMandateApprovalOptionsResponse> for WalletMandateApprovalOptionsResponse
Source§fn from(value: WalletMandateApprovalOptionsResponse) -> Self
fn from(value: WalletMandateApprovalOptionsResponse) -> Self
Converts to this type from the input type.
Source§impl TryFrom<WalletMandateApprovalOptionsResponse> for WalletMandateApprovalOptionsResponse
impl TryFrom<WalletMandateApprovalOptionsResponse> for WalletMandateApprovalOptionsResponse
Source§type Error = ConversionError
type Error = ConversionError
The type returned in the event of a conversion error.
Source§fn try_from(
value: WalletMandateApprovalOptionsResponse,
) -> Result<Self, ConversionError>
fn try_from( value: WalletMandateApprovalOptionsResponse, ) -> Result<Self, ConversionError>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for WalletMandateApprovalOptionsResponse
impl RefUnwindSafe for WalletMandateApprovalOptionsResponse
impl Send for WalletMandateApprovalOptionsResponse
impl Sync for WalletMandateApprovalOptionsResponse
impl Unpin for WalletMandateApprovalOptionsResponse
impl UnsafeUnpin for WalletMandateApprovalOptionsResponse
impl UnwindSafe for WalletMandateApprovalOptionsResponse
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