GET /v1/workflows/{id}/analyze-funds
Analyze the fund requirements of a workflow without executing it. Returns resolved (wallet, chain, token, amount) tuples for every action that moves money, plus a `balance` row per requirement when the SimDune client is configured. The endpoint is read-only and does not consume CU.
GET
/v1/workflows/{id}/analyze-funds
Analyze the fund requirements of a workflow without executing it. Returns resolved (wallet, chain, token, amount) tuples for every action that moves money, plus a `balance` row per requirement when the SimDune client is configured. The endpoint is read-only and does not consume CU.
Path Parameters
id
string
required
path
Workflow ID
Query Parameters
version
integer
optional
query
Pin analysis to a specific workflow version
Responses
200
OK
application/jsoncode
integer
data
object
balancesFetched
boolean
requirements
object[]
Array of:
amountIsHumanReadable
boolean
balance
object
amount
string
raw units (wei)
amountUsd
number
chainId
integer
decimals
integer
isInsufficient
boolean
amount < requiredAmount
isLow
boolean
gas only: balance below LowGasThreshold
symbol
string
tokenAddress
string
walletAddress
string
chainId
integer
chainName
string
decimals
integer
isNative
boolean
nodeId
string
nodeName
string
nodeType
string
reason
string
requiredAmount
string
source
string
Enum:
requiredTokens, fundsMovement.sent, requiresGassymbol
string
tokenAddress
string
unresolved
boolean
unresolvedReason
string
Enum:
chainId, tokenAddress, parseErrorwalletAddress
string
unresolved
object[]
Array of:
amountIsHumanReadable
boolean
chainId
integer
chainName
string
decimals
integer
isNative
boolean
nodeId
string
nodeName
string
nodeType
string
reason
string
requiredAmount
string
source
string
Enum:
requiredTokens, fundsMovement.sent, requiresGassymbol
string
tokenAddress
string
unresolved
boolean
unresolvedReason
string
Enum:
chainId, tokenAddress, parseErrorwalletAddress
string
workflowId
string
workflowVersion
integer
message
string
requestId
string
400
Bad request
404
Workflow not found
curl -X GET 'https://api.example.com/v1/workflows/string/analyze-funds' \ -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://api.example.com/v1/workflows/string/analyze-funds', { method: 'GET', headers: { "Authorization": "Bearer YOUR_API_TOKEN" }});const data = await response.json();console.log(data);
import requestsheaders = { 'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.get('https://api.example.com/v1/workflows/string/analyze-funds', headers=headers)print(response.json())
package mainimport ( "fmt" "io" "net/http")func main() { req, _ := http.NewRequest("GET", "https://api.example.com/v1/workflows/string/analyze-funds", nil) req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN") resp, _ := http.DefaultClient.Do(req) defer resp.Body.Close() result, _ := io.ReadAll(resp.Body) fmt.Println(string(result))}
200
Response
{ "code": 200, "data": { "balancesFetched": true, "requirements": [ { "amountIsHumanReadable": true, "balance": { "amount": "<string>", "amountUsd": 123, "chainId": 123, "decimals": 123, "isInsufficient": true, "isLow": true, "symbol": "<string>", "tokenAddress": "<string>", "walletAddress": "<string>" }, "chainId": 123, "chainName": "<string>", "decimals": 123, "isNative": true, "nodeId": "<string>", "nodeName": "<string>", "nodeType": "<string>", "reason": "<string>", "requiredAmount": "<string>", "source": "requiredTokens", "symbol": "<string>", "tokenAddress": "<string>", "unresolved": true, "unresolvedReason": "chainId", "walletAddress": "<string>" } ], "unresolved": [ { "amountIsHumanReadable": true, "chainId": 123, "chainName": "<string>", "decimals": 123, "isNative": true, "nodeId": "<string>", "nodeName": "<string>", "nodeType": "<string>", "reason": "<string>", "requiredAmount": "<string>", "source": "requiredTokens", "symbol": "<string>", "tokenAddress": "<string>", "unresolved": true, "unresolvedReason": "chainId", "walletAddress": "<string>" } ], "workflowId": "<string>", "workflowVersion": 123 }, "message": "success", "requestId": "abc-123"}
API Playground
Try this endpoint
GET
/v1/workflows/{id}/analyze-funds
