Solana swap execution for AI agents
Solana swap execution for AI agents. Returns an UNSIGNED swap transaction on the best venue after fees, Jito tip and expected sandwich loss, with the plan, a simulation and the net-benefit arithmetic to verify before signing, plus the same Safe / Protect / Refuse verdict as /analyse. Needs taker: the mainnet wallet that signs and funds the trade. Never signs or holds keys. Full contract: GET /v1/agent. Terms: https://zendiq.ai/agents/terms/
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://api.zendiq.ai/v1/agent/optimize
| Category | Code and developer |
|---|---|
| Provider host | api.zendiq.ai |
| Networks | solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp |
| Payment schemes | exact |
| Self-reported calls, 30 days | 6 from 1 payers (the provider's figure, not ours) |
Our checks, last 30 days
We never call tools that send, buy, move money or file anything, not even without paying.
Example input (from the provider)
{
"body": {
"amount": "1000000",
"inputMint": "So11111111111111111111111111111111111111112",
"outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"taker": "BS9DnoBnndNj6QmeEbH2mxizefWYyrLond5G8bKUYxHC"
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"properties": {
"amount": {
"description": "Amount sold, as an integer string in the input mint's atomic units.",
"pattern": "^[0-9]{1,20}$",
"type": "string"
},
"analysisId": {
"description": "Optional. analysisId from /analyse or /analyse-token for this outputMint, within 60 s, to skip the token scan.",
"maxLength": 128,
"type": "string"
},
"inputMint": {
"description": "Base58 mint of the token being sold.",
"pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
"type": "string"
},
"outputMint": {
"description": "Base58 mint of the token being bought. Must differ from inputMint.",
"pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
"type": "string"
},
"slippageBps": {
"description": "Optional. Omit to let the router decide.",
"maximum": 10000,
"minimum": 0,
"type": "integer"
},
"taker": {
"description": "Mainnet wallet that signs the trade and holds the input amount; not the wallet paying for the call.",
"pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
"type": "string"
}
},
"required": [
"inputMint",
"outputMint",
"amount",
"taker"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}