SolEnrich

Solana onchain data enrichment. Wallet profiling, token analysis, risk scoring. JSON for agents, natural language for LLMs.

  • 25 Entrypoints
  • v1.0.0 Version
  • None Payments
solenrich-production.up.railway.app

Entrypoints

Explore the capabilities exposed by this agent. Invoke with JSON, stream responses when available, and inspect pricing where monetization applies.

enrich-wallet-light

Invoke

Light wallet profile with holdings, labels, and risk score

Pricing Free
Invoke Endpoint POST /entrypoints/enrich-wallet-light/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "depth": {
      "default": "light",
      "type": "string",
      "enum": [
        "light",
        "full"
      ]
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "address",
    "depth",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/enrich-wallet-light/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "address": "string",
        "depth": "light",
        "format": "json"
      }
    }
  '

enrich-wallet-full

Invoke

Full wallet profile with holdings, DeFi positions, labels, risk score, and connected wallets

Pricing Free
Invoke Endpoint POST /entrypoints/enrich-wallet-full/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "depth": {
      "default": "light",
      "type": "string",
      "enum": [
        "light",
        "full"
      ]
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "address",
    "depth",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/enrich-wallet-full/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "address": "string",
        "depth": "light",
        "format": "json"
      }
    }
  '

enrich-token-light

Invoke

Token analysis with price, market data, liquidity, and risk flags

Pricing Free
Invoke Endpoint POST /entrypoints/enrich-token-light/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "include_holders": {
      "default": false,
      "type": "boolean"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "mint",
    "include_holders",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/enrich-token-light/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "mint": "string",
        "include_holders": true,
        "format": "json"
      }
    }
  '

enrich-token-full

Invoke

Full token analysis with price, market data, liquidity, risk flags, and top holders

Pricing Free
Invoke Endpoint POST /entrypoints/enrich-token-full/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "include_holders": {
      "default": false,
      "type": "boolean"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "mint",
    "include_holders",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/enrich-token-full/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "mint": "string",
        "include_holders": true,
        "format": "json"
      }
    }
  '

parse-transaction

Invoke

Parse and enrich a Solana transaction with type detection, protocol identification, and transfer details

Pricing Free
Invoke Endpoint POST /entrypoints/parse-transaction/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "signature": {
      "type": "string",
      "minLength": 86,
      "maxLength": 90,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "signature",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/parse-transaction/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "signature": "string",
        "format": "json"
      }
    }
  '

whale-watch

Invoke

Identify large token holders and track accumulation/distribution patterns

Pricing Free
Invoke Endpoint POST /entrypoints/whale-watch/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "threshold_usd": {
      "default": 10000,
      "type": "number",
      "minimum": 100
    },
    "lookback_hours": {
      "default": 24,
      "type": "number",
      "minimum": 1,
      "maximum": 168
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "mint",
    "threshold_usd",
    "lookback_hours",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/whale-watch/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "mint": "string",
        "threshold_usd": 100,
        "lookback_hours": 1,
        "format": "json"
      }
    }
  '

batch-enrich

Invoke

Enrich multiple wallets or tokens in parallel

Pricing Free
Invoke Endpoint POST /entrypoints/batch-enrich/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "addresses": {
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 32,
        "maxLength": 44,
        "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
      }
    },
    "type": {
      "type": "string",
      "enum": [
        "wallet",
        "token"
      ]
    },
    "depth": {
      "default": "light",
      "type": "string",
      "enum": [
        "light",
        "full"
      ]
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "addresses",
    "type",
    "depth",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/batch-enrich/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "addresses": [
          "string"
        ],
        "type": "wallet",
        "depth": "light",
        "format": "json"
      }
    }
  '

wallet-graph

Invoke

Map wallet transaction connections and detect suspicious clusters

Pricing Free
Invoke Endpoint POST /entrypoints/wallet-graph/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "depth": {
      "default": 1,
      "type": "number",
      "minimum": 1,
      "maximum": 2
    },
    "min_interactions": {
      "default": 1,
      "type": "number",
      "minimum": 1
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "address",
    "depth",
    "min_interactions",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/wallet-graph/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "address": "string",
        "depth": 1,
        "min_interactions": 1,
        "format": "json"
      }
    }
  '

copy-trade-signals

Invoke

Analyze wallet trading performance and copyability

Pricing Free
Invoke Endpoint POST /entrypoints/copy-trade-signals/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "lookback_days": {
      "default": 30,
      "type": "number",
      "minimum": 1,
      "maximum": 90
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "address",
    "lookback_days",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/copy-trade-signals/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "address": "string",
        "lookback_days": 1,
        "format": "json"
      }
    }
  '

due-diligence

Invoke

Comprehensive token research briefing with security, whales, and holder analysis

Pricing Free
Invoke Endpoint POST /entrypoints/due-diligence/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "mint",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/due-diligence/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "mint": "string",
        "format": "json"
      }
    }
  '

compare-tokens

Invoke

Compare 2-3 tokens side-by-side: price, liquidity, volatility, holder concentration, risk flags

Pricing Free
Invoke Endpoint POST /entrypoints/compare-tokens/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "mints": {
      "minItems": 2,
      "maxItems": 3,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 32,
        "maxLength": 44,
        "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
      },
      "description": "2-3 token mint addresses to compare"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "mints",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/compare-tokens/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "mints": [
          "string"
        ],
        "format": "json"
      }
    }
  '

compare-wallets

Invoke

Compare 2-3 wallets side-by-side: portfolio value, activity, risk, labels, holdings

Pricing Free
Invoke Endpoint POST /entrypoints/compare-wallets/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "addresses": {
      "minItems": 2,
      "maxItems": 3,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 32,
        "maxLength": 44,
        "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
      },
      "description": "2-3 wallet addresses to compare"
    },
    "depth": {
      "default": "light",
      "type": "string",
      "enum": [
        "light",
        "full"
      ]
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "addresses",
    "depth",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/compare-wallets/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "addresses": [
          "string"
        ],
        "depth": "light",
        "format": "json"
      }
    }
  '

token-trend

Invoke

Token trend analysis: price, liquidity, concentration changes over 7/14/30 days with direction indicators

Pricing Free
Invoke Endpoint POST /entrypoints/token-trend/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "lookback": {
      "default": "7d",
      "type": "string",
      "enum": [
        "7d",
        "14d",
        "30d"
      ]
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "mint",
    "lookback",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/token-trend/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "mint": "string",
        "lookback": "7d",
        "format": "json"
      }
    }
  '

wallet-history

Invoke

Wallet history: portfolio value, balance, risk score changes over 7/14/30 days with position changes

Pricing Free
Invoke Endpoint POST /entrypoints/wallet-history/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "lookback": {
      "default": "7d",
      "type": "string",
      "enum": [
        "7d",
        "14d",
        "30d"
      ]
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "address",
    "lookback",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/wallet-history/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "address": "string",
        "lookback": "7d",
        "format": "json"
      }
    }
  '

portfolio-history

Invoke

Full portfolio time-series for a wallet — daily snapshots of value, balance, holdings, risk, plus summary stats (peak, trough, max drawdown, average, change vs period start). Distinct from wallet-history which returns two-point deltas; this returns the series for charting.

Pricing Free
Invoke Endpoint POST /entrypoints/portfolio-history/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "period": {
      "default": "7d",
      "type": "string",
      "enum": [
        "7d",
        "14d",
        "30d"
      ]
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "address",
    "period",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/portfolio-history/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "address": "string",
        "period": "7d",
        "format": "json"
      }
    }
  '

new-tokens

Invoke

Discover recently launched tokens on Solana with risk scoring and filtering. Returns safest first.

Pricing Free
Invoke Endpoint POST /entrypoints/new-tokens/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "min_liquidity_usd": {
      "default": 1000,
      "description": "Minimum liquidity in USD to include",
      "type": "number"
    },
    "max_risk_score": {
      "default": 0.8,
      "description": "Maximum risk score (0-1) to include",
      "type": "number",
      "minimum": 0,
      "maximum": 1
    },
    "limit": {
      "default": 10,
      "description": "Number of tokens to return",
      "type": "number",
      "minimum": 1,
      "maximum": 20
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "min_liquidity_usd",
    "max_risk_score",
    "limit",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/new-tokens/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "min_liquidity_usd": 0,
        "max_risk_score": 0,
        "limit": 1,
        "format": "json"
      }
    }
  '

protocol-profile

Invoke

DeFi protocol analytics: TVL, yield pools, on-chain activity, health signals

Pricing Free
Invoke Endpoint POST /entrypoints/protocol-profile/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "protocol": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "Protocol slug (e.g. \"raydium\", \"orca\") or Solana program ID"
    },
    "include_yields": {
      "default": true,
      "type": "boolean"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "protocol",
    "include_yields",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/protocol-profile/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "protocol": "<Protocol slug (e.g. \"raydium\", \"orca\") or Solana program ID>",
        "include_yields": true,
        "format": "json"
      }
    }
  '

perps-market-structure

Invoke

Jupiter Perps market structure — per-market OI, utilization, borrow APR, skew, OI caps, and health flags for SOL/BTC/ETH

Pricing Free
Invoke Endpoint POST /entrypoints/perps-market-structure/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/perps-market-structure/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "format": "json"
      }
    }
  '

perps-trader-profile

Invoke

Jupiter Perps trader profile — open positions for a wallet with size, leverage, entry, unrealized PnL, and risk flags

Pricing Free
Invoke Endpoint POST /entrypoints/perps-trader-profile/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "address",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/perps-trader-profile/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "address": "string",
        "format": "json"
      }
    }
  '

trending-signals

Invoke

Orchestrated ranking of trending Solana tokens. Scans DexScreener trending, enriches with token analysis + optional whale-watch flow, and returns a composite-signal ranked list with reasoning. "What's worth paying attention to right now?"

Pricing Free
Invoke Endpoint POST /entrypoints/trending-signals/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "min_liquidity_usd": {
      "default": 10000,
      "type": "number",
      "minimum": 0
    },
    "max_risk_score": {
      "default": 0.7,
      "type": "number",
      "minimum": 0,
      "maximum": 1
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "include_whale_watch": {
      "default": true,
      "type": "boolean"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "min_liquidity_usd",
    "max_risk_score",
    "limit",
    "include_whale_watch",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/trending-signals/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "min_liquidity_usd": 0,
        "max_risk_score": 0,
        "limit": 1,
        "include_whale_watch": true,
        "format": "json"
      }
    }
  '

smart-money-flow

Invoke

Orchestrated smart-money intelligence. Scores a seed wallet list via copy-trade metrics, filters to qualifying winners (win rate + trade count), then surfaces tokens they're accumulating and wallet clusters. Pass your own `wallets` array or use our curated default list.

Pricing Free
Invoke Endpoint POST /entrypoints/smart-money-flow/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "wallets": {
      "maxItems": 30,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 32,
        "maxLength": 44,
        "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
      }
    },
    "lookback_days": {
      "default": 14,
      "type": "integer",
      "minimum": 1,
      "maximum": 90
    },
    "min_win_rate": {
      "default": 0.55,
      "type": "number",
      "minimum": 0,
      "maximum": 1
    },
    "top_n_tokens": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "include_graph": {
      "default": true,
      "type": "boolean"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "lookback_days",
    "min_win_rate",
    "top_n_tokens",
    "include_graph",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/smart-money-flow/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "lookback_days": 1,
        "min_win_rate": 0,
        "top_n_tokens": 1,
        "include_graph": true,
        "format": "json"
      }
    }
  '

query

Invoke

Plain English questions routed to the right enricher. Single-intent questions hit one enricher; compound questions ("should I buy X?", "wallet deep dive on X", "what's trending?") chain 2-3 enrichers in parallel and return a unified briefing.

Pricing Free
Invoke Endpoint POST /entrypoints/query/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "question": {
      "type": "string",
      "minLength": 3,
      "maxLength": 500
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "question",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/query/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "question": "string",
        "format": "json"
      }
    }
  '

feed-latest

Invoke

Daily SolEnrich intelligence brief — pre-computed ranking of trending Solana tokens with composite signal scoring (liquidity, risk, holder concentration, whale flow). Cached 24h. Pass `since` (ISO 8601) to short-circuit on no-change. Pay-per-poll model — designed for agents that want recurring signal without orchestration cost.

Pricing Free
Invoke Endpoint POST /entrypoints/feed-latest/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "since": {
      "type": "string",
      "format": "date-time",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/feed-latest/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "format": "json"
      }
    }
  '

consensus-signal

Invoke

Agent attention signal — what tokens or wallets are being queried by other agents right now. Proprietary data: derived from SolEnrich's own query stream, not market volume. Two modes: pass `address` to get that entity's rank/percentile/trend; omit it to get the top-N most-queried entities. Windows: 1h, 6h, 24h.

Pricing Free
Invoke Endpoint POST /entrypoints/consensus-signal/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "type": {
      "default": "token",
      "type": "string",
      "enum": [
        "token",
        "wallet"
      ]
    },
    "address": {
      "type": "string",
      "minLength": 32,
      "maxLength": 44,
      "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
    },
    "window": {
      "default": "1h",
      "type": "string",
      "enum": [
        "1h",
        "6h",
        "24h"
      ]
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "type",
    "window",
    "limit",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/consensus-signal/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "type": "token",
        "window": "1h",
        "limit": 1,
        "format": "json"
      }
    }
  '

check-alerts

Invoke

Poll-based event detection. Pass a watchlist (tokens + wallets) and a `since` ISO 8601 timestamp; receive alerts fired since that time. Detects price spikes/drops, risk score changes, whale inflow/outflow, holder concentration shifts, portfolio value changes, and position additions/removals. Stateless: agent owns the `since` cursor. Watchlist capped at 10 tokens + 10 wallets per call. Step 1 of 3 (poll → SSE → webhooks).

Pricing Free
Invoke Endpoint POST /entrypoints/check-alerts/invoke
Input Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "tokens": {
      "default": [],
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 32,
        "maxLength": 44,
        "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
      }
    },
    "wallets": {
      "default": [],
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 32,
        "maxLength": 44,
        "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
      }
    },
    "since": {
      "type": "string",
      "format": "date-time",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
    },
    "criteria": {
      "default": {},
      "type": "object",
      "properties": {
        "min_price_change_pct": {
          "type": "number",
          "minimum": 0,
          "maximum": 1000
        },
        "min_risk_score_delta": {
          "type": "number",
          "minimum": 0,
          "maximum": 1
        },
        "min_whale_volume_usd": {
          "type": "number",
          "minimum": 0
        },
        "min_portfolio_change_pct": {
          "type": "number",
          "minimum": 0,
          "maximum": 10000
        },
        "min_concentration_shift_pct": {
          "type": "number",
          "minimum": 0,
          "maximum": 100
        }
      },
      "additionalProperties": false
    },
    "format": {
      "default": "json",
      "type": "string",
      "enum": [
        "json",
        "llm",
        "both"
      ]
    }
  },
  "required": [
    "tokens",
    "wallets",
    "since",
    "criteria",
    "format"
  ],
  "additionalProperties": false
}
Invoke with curl
curl -s -X POST \
  'https://solenrich-production.up.railway.app/entrypoints/check-alerts/invoke' \
  -H 'Content-Type: application/json' \
  -d '
    {
      "input": {
        "tokens": [
          "string"
        ],
        "wallets": [
          "string"
        ],
        "since": "string",
        "criteria": {
          "min_price_change_pct": 0,
          "min_risk_score_delta": 0,
          "min_whale_volume_usd": 0,
          "min_portfolio_change_pct": 0,
          "min_concentration_shift_pct": 0
        },
        "format": "json"
      }
    }
  '

Client Example: x402-fetch

Use the x402-fetch helpers to wrap a standard fetch call and automatically attach payments. This script loads configuration from .env, pays the facilitator, and logs both the response body and the decoded payment receipt.

import { config } from "dotenv";
import {
  decodeXPaymentResponse,
  wrapFetchWithPayment,
  createSigner,
  type Hex,
} from "x402-fetch";

config();

const privateKey = process.env.AGENT_WALLET_PRIVATE_KEY as Hex | string;
const agentUrl = process.env.AGENT_URL as string; // e.g. https://agent.example.com
const endpointPath = process.env.ENDPOINT_PATH as string; // e.g. /entrypoints/echo/invoke
const url = `${agentUrl}${endpointPath}`;

if (!agentUrl || !privateKey || !endpointPath) {
  console.error("Missing required environment variables");
  console.error("Required: AGENT_WALLET_PRIVATE_KEY, AGENT_URL, ENDPOINT_PATH");
  process.exit(1);
}

/**
 * Demonstrates paying for a protected resource using x402-fetch.
 *
 * Required environment variables:
 * - AGENT_WALLET_PRIVATE_KEY    Wallet private key for signing payments
 * - AGENT_URL                   Base URL of the agent server
 * - ENDPOINT_PATH               Endpoint path (e.g. /entrypoints/echo/invoke)
 */
async function main(): Promise<void> {
  // const signer = await createSigner("solana-devnet", privateKey); // uncomment for Solana
  const signer = await createSigner("base-sepolia", privateKey);
  const fetchWithPayment = wrapFetchWithPayment(fetch, signer);

  const response = await fetchWithPayment(url, { method: "GET" });
  const body = await response.json();
  console.log(body);

  const paymentResponse = decodeXPaymentResponse(
    response.headers.get("x-payment-response")!
  );
  console.log(paymentResponse);
}

main().catch((error) => {
  console.error(error?.response?.data?.error ?? error);
  process.exit(1);
});

Manifest

Loading…
Fetching agent card…