IGS Intents
Intent Schema
Intent Schema Reference
IGS Intents standardize how user trading goals are expressed, ensuring consistent interpretation across solvers, AI models, and smart contracts.
https://json-schema.org/draft-07/schema#
Schema Overview
igs_version
string
IGS version (constant: "1.0.0")
object
IGSObject
On-chain Sui object reference
user_address
string
User address (pattern: ^0x[a-fA-F0-9]{1,64}$)
operation
IGSOperation
Operation specification
description
string
Human-readable description (1-500 chars)
constraints
IGSConstraints
Execution constraints
preferences
IGSPreferences
User preferences
metadata
IGSMetadata
Additional metadata
Intent Types
swap.exact_input
Exact input amount swap
"Swap exactly 100 SUI for USDC"
swap.exact_output
Exact output amount swap
"Get exactly 100 USDC by selling SUI"
limit.sell
Sell limit order
"Sell 100 SUI when price ≥ $2.50"
limit.buy
Buy limit order
"Buy SUI with 100 USDC when price ≤ $2.00"
IGSObject Structure
user_address
string
Sui object owner address
created_ts
number
Creation timestamp (milliseconds)
policy
object
Access control policy
Policy Object
solver_access_window
object
Time window for solver access
auto_revoke_time
number
Automatic access revocation time
access_condition
object
Solver access conditions
Solver Access Window
start_ms
number
Window start time (milliseconds)
end_ms
number
Window end time (milliseconds)
Access Conditions
requires_solver_registration
boolean
Must be registered solver
min_solver_stake
string
Minimum stake amount
requires_tee_attestation
boolean
Requires TEE attestation
min_solver_reputation_score
number
Minimum reputation (0-100)
IGSOperation Structure
mode
string
Operation mode
inputs
array
Input assets (1-10 items)
outputs
array
Output assets (1-10 items)
expected_outcome
IGSExpectedOutcome
Expected execution outcome
Operation Modes
exact_input
Specify exact input amount
exact_output
Specify exact output amount
limit_order
Conditional execution based on price
IGSAssetFlow Structure
asset_id
string
Asset identifier
asset_info
object
Additional asset information
amount
IGSAmount
Amount specification
Asset ID Format
0x{address}::{module}::{struct}
0x2::sui::SUI
Sui Move type
native
native
Native chain token
Asset Info Object
symbol
string
Token symbol (e.g., "SUI", "USDC")
decimals
number
Decimal places (0-18)
name
string
Full token name
IGSAmount Structure
Exact Amount
type
string
"exact"
value
string
Exact amount (integer string)
Range Amount
type
string
"range"
min
string
Minimum amount
max
string
Maximum amount
All Amount
type
string
"all" (use entire balance)
IGSExpectedOutcome Structure
expected_outputs
array
Expected output amounts
expected_costs
object
Cost estimates
market_price
object
Current market price
Expected Outputs Item
asset_id
string
Asset identifier
amount
string
Expected amount
Expected Costs Object
gas_estimate
string
Estimated gas cost
protocol_fees
string
Protocol fee estimate
slippage_estimate
string
Expected slippage
Market Price Object
price
string
Current market price
price_asset
string
Price denomination asset
IGSConstraints Structure
max_slippage_bps
number
Maximum slippage in basis points (0-10000)
deadline_ms
number
Expiration timestamp
max_inputs
array
Maximum input amounts
min_outputs
array
Minimum output amounts
max_gas_cost
object
Maximum gas cost limit
routing
object
Routing preferences
limit_price
object
Limit price condition
Max Inputs/Min Outputs Item
asset_id
string
Asset identifier
amount
string
Amount limit
Routing Object
max_hops
number
Maximum routing hops (1-10)
blacklist_protocols
array
Forbidden protocols
whitelist_protocols
array
Allowed protocols only
Limit Price Object
price
string
Limit price value
comparison
string
"gte" or "lte"
price_asset
string
Price denomination asset
IGSPreferences Structure
optimization_goal
string
Primary optimization target
"balanced"
ranking_weights
object
Custom ranking weights
See below
execution
object
Execution preferences
See below
privacy
object
Privacy settings
See below
Optimization Goals
maximize_output
Prioritize highest output
minimize_gas
Prioritize lowest gas cost
fastest_execution
Prioritize speed
balanced
Balanced optimization
Ranking Weights
surplus_weight
number
60
Weight for surplus generation (0-100)
gas_cost_weight
number
20
Weight for gas optimization (0-100)
execution_speed_weight
number
10
Weight for execution speed (0-100)
reputation_weight
number
10
Weight for solver reputation (0-100)
Execution Preferences
mode
string
"best_solution"
Execution mode
show_top_n
number
3
Show top N solutions (1-10)
Privacy Settings
encrypt_intent
boolean
false
Encrypt intent data
anonymous_execution
boolean
false
Anonymous execution
IGSMetadata Structure
original_input
object
Original user input
client
object
Client application info
warnings
array
System warnings
clarifications
array
Intent clarifications
tags
array
Classification tags
Original Input Object
text
string
Original text input (max 1000 chars)
language
string
Language code (2 letters)
confidence
number
Parse confidence (0-1)
Client Object
name
string
Client application name
version
string
Client version
platform
string
Platform identifier
Learn More
IGS Core - Primitive types
Intents Concept - High-level overview
References
Last updated