Pocket Network · Schema
Pocket Network Relay
Schema describing a Shannon relay request and response as proxied by the PATH gateway. A Relay is the canonical unit of work in Pocket Network — every JSON-RPC call to a service (eth, solana, base, etc.) is metered as one or more relays priced in compute units.
Web3BlockchainRPCDecentralized InfrastructurePocket NetworkGrovePATHShannonCosmosPOKT
Properties
| Name | Type | Description |
|---|---|---|
| request | object | |
| response | object | |
| context | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://api-evangelist.com/schemas/pocket-network/pocket-network-relay-schema.json",
"title": "Pocket Network Relay",
"description": "Schema describing a Shannon relay request and response as proxied by the PATH gateway. A Relay is the canonical unit of work in Pocket Network — every JSON-RPC call to a service (eth, solana, base, etc.) is metered as one or more relays priced in compute units.",
"type": "object",
"definitions": {
"RelayRequest": {
"type": "object",
"description": "JSON-RPC payload routed through PATH to a Shannon supplier.",
"required": ["jsonrpc", "method"],
"properties": {
"jsonrpc": {
"type": "string",
"const": "2.0",
"description": "JSON-RPC version. Always '2.0'."
},
"id": {
"oneOf": [
{ "type": "integer" },
{ "type": "string" },
{ "type": "null" }
],
"description": "Client-supplied correlation ID echoed in the response."
},
"method": {
"type": "string",
"description": "JSON-RPC method of the target service (e.g. 'eth_blockNumber', 'eth_getBalance', 'getSlot')."
},
"params": {
"oneOf": [
{ "type": "array" },
{ "type": "object" }
],
"description": "Method parameters. Service-specific."
}
},
"additionalProperties": false
},
"RelayResponse": {
"type": "object",
"description": "JSON-RPC response returned by the selected supplier.",
"required": ["jsonrpc"],
"properties": {
"jsonrpc": {
"type": "string",
"const": "2.0"
},
"id": {
"oneOf": [
{ "type": "integer" },
{ "type": "string" },
{ "type": "null" }
]
},
"result": {
"description": "Successful result. Shape depends on the service and method."
},
"error": {
"$ref": "#/definitions/RelayError"
}
},
"oneOf": [
{ "required": ["result"] },
{ "required": ["error"] }
]
},
"RelayError": {
"type": "object",
"required": ["code", "message"],
"properties": {
"code": {
"type": "integer",
"description": "JSON-RPC error code surfaced by the supplier."
},
"message": {
"type": "string"
},
"data": {
"description": "Optional service-specific error data."
}
}
},
"RelayContext": {
"type": "object",
"description": "Metadata that the PATH gateway adds when scoring suppliers and routing relays. Exposed in development/debug builds; production responses are returned verbatim from the supplier.",
"properties": {
"service_id": {
"type": "string",
"description": "Shannon service identifier (e.g. 'eth', 'solana', 'base', 'arbitrum')."
},
"supplier_address": {
"type": "string",
"description": "Bech32 Shannon address of the supplier that served the relay."
},
"application_address": {
"type": "string",
"description": "Bech32 Shannon address of the application whose stake paid for the relay."
},
"session_block_height": {
"type": "integer",
"description": "Block height of the active session at the time the relay was served."
},
"compute_units": {
"type": "integer",
"description": "Compute units consumed by this relay (1 CU = $0.000000001 USD post-Shannon)."
},
"qos_score": {
"type": "number",
"description": "Quality-of-Service score (0-1) the gateway assigned to the supplier at relay time."
}
}
}
},
"properties": {
"request": { "$ref": "#/definitions/RelayRequest" },
"response": { "$ref": "#/definitions/RelayResponse" },
"context": { "$ref": "#/definitions/RelayContext" }
}
}