pub struct X402DiscoveryResource {
pub accepts: Vec<X402PaymentRequirements>,
pub description: Option<String>,
pub extensions: Map<String, Value>,
pub last_updated: Option<DateTime<Utc>>,
pub quality: Option<X402ResourceQuality>,
pub resource: String,
pub type_: X402DiscoveryResourceType,
pub x402_version: X402Version,
}Expand description
A single discovered x402 resource.
JSON schema
{
"description": "A single discovered x402 resource.",
"type": "object",
"required": [
"resource",
"type",
"x402Version"
],
"properties": {
"accepts": {
"description": "Payment requirements accepted by the resource.",
"examples": [
[
{
"amount": "1000000",
"asset": "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"scheme": "exact"
}
]
],
"type": "array",
"items": {
"$ref": "#/components/schemas/x402PaymentRequirements"
}
},
"description": {
"description": "A human-readable description of the resource.",
"examples": [
"Real-time weather forecast data"
],
"type": "string"
},
"extensions": {
"description": "Map of x402 protocol extensions supported by the resource, keyed by extension name.",
"examples": [
{
"bazaar": {
"info": {
"input": {
"method": "GET",
"type": "http"
}
},
"schema": {}
}
}
],
"type": "object",
"additionalProperties": true
},
"lastUpdated": {
"description": "Timestamp of the last update.",
"examples": [
"2024-01-15T10:30:00Z"
],
"type": "string",
"format": "date-time"
},
"quality": {
"$ref": "#/components/schemas/x402ResourceQuality"
},
"resource": {
"description": "The URL of the resource.",
"examples": [
"https://api.example.com/weather/forecast"
],
"type": "string"
},
"type": {
"description": "Communication protocol (e.g., \"http\", \"mcp\").",
"examples": [
"http"
],
"type": "string",
"enum": [
"http",
"mcp"
]
},
"x402Version": {
"$ref": "#/components/schemas/X402Version"
}
}
}Fields§
§accepts: Vec<X402PaymentRequirements>Payment requirements accepted by the resource.
description: Option<String>A human-readable description of the resource.
extensions: Map<String, Value>Map of x402 protocol extensions supported by the resource, keyed by extension name.
last_updated: Option<DateTime<Utc>>Timestamp of the last update.
quality: Option<X402ResourceQuality>§resource: StringThe URL of the resource.
type_: X402DiscoveryResourceTypeCommunication protocol (e.g., “http”, “mcp”).
x402_version: X402VersionImplementations§
Source§impl X402DiscoveryResource
impl X402DiscoveryResource
pub fn builder() -> X402DiscoveryResource
Trait Implementations§
Source§impl Clone for X402DiscoveryResource
impl Clone for X402DiscoveryResource
Source§fn clone(&self) -> X402DiscoveryResource
fn clone(&self) -> X402DiscoveryResource
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 X402DiscoveryResource
impl Debug for X402DiscoveryResource
Source§impl<'de> Deserialize<'de> for X402DiscoveryResource
impl<'de> Deserialize<'de> for X402DiscoveryResource
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<&X402DiscoveryResource> for X402DiscoveryResource
impl From<&X402DiscoveryResource> for X402DiscoveryResource
Source§fn from(value: &X402DiscoveryResource) -> Self
fn from(value: &X402DiscoveryResource) -> Self
Converts to this type from the input type.
Source§impl From<X402DiscoveryResource> for X402DiscoveryResource
impl From<X402DiscoveryResource> for X402DiscoveryResource
Source§fn from(value: X402DiscoveryResource) -> Self
fn from(value: X402DiscoveryResource) -> Self
Converts to this type from the input type.
Source§impl Serialize for X402DiscoveryResource
impl Serialize for X402DiscoveryResource
Source§impl TryFrom<X402DiscoveryResource> for X402DiscoveryResource
impl TryFrom<X402DiscoveryResource> for X402DiscoveryResource
Source§type Error = ConversionError
type Error = ConversionError
The type returned in the event of a conversion error.
Source§fn try_from(value: X402DiscoveryResource) -> Result<Self, ConversionError>
fn try_from(value: X402DiscoveryResource) -> Result<Self, ConversionError>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for X402DiscoveryResource
impl RefUnwindSafe for X402DiscoveryResource
impl Send for X402DiscoveryResource
impl Sync for X402DiscoveryResource
impl Unpin for X402DiscoveryResource
impl UnsafeUnpin for X402DiscoveryResource
impl UnwindSafe for X402DiscoveryResource
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