{"version":"1.0","x402Version":2,"name":"Fia Signals","title":"Fia Signals Funding Risk, Market Intelligence, and Contract Risk x402 API","description":"Fia Signals x402 API for buyer agents. Pay-per-call endpoints include market_funding_risk_check for enter/hold/avoid funding decisions, smart contract risk, pre-swap token safety, rugpull and honeypot screening, and market intelligence.","keywords":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision"],"primary_product":{"name":"Fia Signals Contract Risk Batch","endpoint":"https://x402.fiasignals.com/contract-risk/batch","description":"Screen up to 5 Base/EVM token contracts for smart contract risk before an agent executes a swap."},"featured_high_ticket_product":{"product":"agent_trade_approval_ticket","endpoint":"https://x402.fiasignals.com/agent-trade-approval-ticket","method":"POST","price_usdc":"5.00","buyer_question":"Should this autonomous trade be approved, limited, or blocked before execution?","deliverable":["APPROVE | CAUTION | BLOCK","reasons","caps","source_status","proof_flags"],"proof_flags":["no_execution","no_signer","no_wallet_action"],"truth_status":"first_class_buyer_visible_offer_not_revenue_until_payment_or_delivery_proof"},"featured_market_signal_product":{"product":"market_funding_risk_check","endpoint":"https://x402.fiasignals.com/funding","price_usdc":"0.20","buyer_question":"Should this agent enter, hold, or avoid a perp/carry setup after seeing basis?","deliverable":["decision","action","confidence","evidence","top_rates","next_funding_window","route_family_context"],"route_family_context":["/prices","/fear-greed","/basis","/funding"],"acp_offering":{"name":"funding_risk_check","listed":true,"price_usdc":"0.25","direct_buy_manifest":"https://x402.fiasignals.com/virtuals-direct-buy.json?offering=funding_risk_check","acceptance_contract":{"accept":"optional symbol; omit for a broad top-10 crypto funding scan","reject":["malformed symbol","unsupported non-crypto request","request asking for execution or trade placement"]}},"x402_payment_header_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","truth_status":"first_class_buyer_visible_offer_not_revenue_until_payment_or_delivery_proof"},"url":"https://x402.fiasignals.com","baseUrl":"https://x402.fiasignals.com","base_url":"https://x402.fiasignals.com","wallet":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","network":"eip155:8453","currency":"USDC","contact":"fia-trading@agentmail.to","discovery":"https://x402.fiasignals.com/.well-known/x402.json","quickstart_url":"https://x402.fiasignals.com/quickstart.json","hire_me":"https://app.virtuals.io/acp/agent-details/18788","agent_card_url":"https://x402.fiasignals.com/.well-known/agent-card.json","api_services_url":"https://x402.fiasignals.com/api/services","x402_payment_header_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","quickstart":"curl https://x402.fiasignals.com/funding - receive 402 with payment instructions. X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature. Retry, then get the market_funding_risk_check JSON.","services":[{"id":"contract-risk-preview","name":"Fia Signals Free Contract Risk Preview","title":"Fia Signals free contract risk preview","type":"http","method":"GET","endpoint":"https://x402.fiasignals.com/contract-risk-preview","price_usdc":0,"description":"Free Fia Signals pre-swap contract risk preview that returns a sample verdict, schema, and generated ACP contract_risk checkout command.","categories":["financial-analysis","token-safety","contract-risk","trading"],"tags":["Fia Signals","fiasignals","contract risk","smart contract risk","token safety","rugpull","honeypot","pre-swap"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision"],"payment_mode":"free_preview","agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"},{"id":"contract-risk-batch","name":"Fia Signals Contract Risk Batch","title":"Fia Signals x402 contract risk batch","type":"http","method":"GET","endpoint":"https://x402.fiasignals.com/contract-risk/batch","price_usdc":0.03,"amount_raw_usdc":"30000","description":"Fia Signals x402 paid Base USDC smart contract risk batch API for buyer agents, trading bots, swap routers, and A2A commerce. Screen up to 5 Base/EVM contracts before a swap for contract risk, rugpull, honeypot, liquidity, and market risk.","categories":["financial-analysis","smart-contract-risk","contract-risk","token-safety","trading"],"tags":["Fia Signals","fiasignals","contract risk","smart contract risk","token safety","rugpull","honeypot","pre-swap","swap guard"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision"],"aliases":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/pre-trade-risk/batch","https://x402.fiasignals.com/smart-contract-risk/batch"],"payment_mode":"native_x402","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals","x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/contract-risk/batch","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"id":"token-safety-batch","name":"Fia Signals Token Safety Batch","title":"Fia Signals x402 token safety batch","type":"http","method":"GET","endpoint":"https://x402.fiasignals.com/token-safety/batch","price_usdc":0.03,"amount_raw_usdc":"30000","description":"Fia Signals x402 paid Base USDC batch check for token safety and smart contract risk before swaps. Screens up to 5 EVM contracts for rugpull, honeypot, liquidity, and market risk.","categories":["financial-analysis","token-safety","contract-risk","trading"],"tags":["Fia Signals","fiasignals","contract risk","smart contract risk","token safety","rugpull","honeypot","pre-swap","swap guard"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision"],"payment_mode":"native_x402","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals","x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/token-safety/batch","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"id":"signals-technical-indicators","name":"Fia Signals Technical Indicators","title":"Fia Signals x402 technical indicators bundle","type":"http","method":"GET","endpoint":"https://x402.fiasignals.com/signals","price_usdc":4.0,"amount_raw_usdc":"4000000","description":"Paid x402 technical analysis bundle for buyer agents: RSI-14, MACD, Bollinger Bands, and timestamp for any supported market symbol and interval.","buyer_intent":"High-value paid technical-indicator bundle for buyer agents that need RSI-14, MACD, and Bollinger context before routing crypto decisions.","categories":["financial-analysis","technical-analysis","trading-signals","market-intelligence"],"tags":["Fia Signals","fiasignals","technical analysis","RSI","MACD","Bollinger Bands","trading signals","x402","Base","USDC"],"search_terms":["x402 signals","crypto technical analysis API","RSI MACD Bollinger","Fia Signals","trading signals"],"payment_mode":"native_x402","x402_payment_flow":{"protocol":"x402","unpaid_response":"HTTP 402","retry_header":"X-PAYMENT","retry_rule":"Use the returned accepts[0] challenge and retry the same GET URL with a valid X-PAYMENT header.","paid_success":"HTTP 200 application/json signal bundle"},"success_bar":{"buyer_movement_evidence":["payment header observed on /signals","new /signals tx_ref or buyer address","settlement success for /signals","ledger-booked PAID_200_SETTLED row for /signals"],"not_buyer_movement":["plain 402 catalogue probe with no payment header","axios or crawler repeat without tx_ref, buyer, or settlement movement"]},"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","input_schema":{"type":"object","additionalProperties":false,"properties":{"symbol":{"type":"string","default":"BTCUSDT","pattern":"^[A-Z0-9]{2,20}$","description":"Binance market symbol such as BTCUSDT, ETHUSDT, or SOLUSDT.","examples":["BTCUSDT","ETHUSDT","SOLUSDT"]},"interval":{"type":"string","enum":["1m","5m","15m","1h","4h","1d"],"default":"1h","description":"Candlestick interval used for RSI-14, MACD, and Bollinger calculations."}}},"output_schema":{"type":"object","additionalProperties":true,"properties":{"symbol":{"type":"string","description":"Requested market symbol."},"interval":{"type":"string","enum":["1m","5m","15m","1h","4h","1d"]},"rsi":{"type":"object","additionalProperties":false,"properties":{"value":{"type":"number","description":"RSI-14 value."},"signal":{"type":"string","enum":["oversold","neutral","overbought"]}},"required":["value","signal"]},"macd":{"type":"object","additionalProperties":false,"properties":{"value":{"type":"number","description":"MACD line value."},"signal_line":{"type":"number"},"histogram":{"type":"number"},"signal":{"type":"string","enum":["bullish","bearish"]}},"required":["value","signal_line","histogram","signal"]},"bollinger":{"type":"object","additionalProperties":false,"properties":{"upper":{"type":"number"},"middle":{"type":"number"},"lower":{"type":"number"},"position":{"type":"string","enum":["upper_half","lower_half"]}},"required":["upper","middle","lower","position"]},"timestamp":{"type":"string","format":"date-time"}},"required":["symbol","interval","rsi","macd","bollinger","timestamp"]},"examples":["/signals?symbol=BTCUSDT&interval=1h","/signals?symbol=ETHUSDT&interval=4h"],"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals","x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/signals","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"id":"agent-trade-approval-ticket","name":"Fia Signals Agent Trade Approval Ticket","title":"Fia Signals $5 x402 agent trade approval ticket","type":"http","method":"POST","endpoint":"https://x402.fiasignals.com/agent-trade-approval-ticket","price_usdc":5.0,"amount_raw_usdc":"5000000","description":"Paid Base USDC pre-trade approval ticket for autonomous agents. Returns APPROVE, CAUTION, or BLOCK with token safety, optional counterparty risk, funding/gas context, size and slippage caps, reasons, source status, and proof flags that no execution, signer, or funds movement occurs.","categories":["financial-analysis","trade-approval","token-safety","wallet-risk","swap-guard","agent-to-agent"],"tags":["Fia Signals","fiasignals","agent trade approval","pre-trade approval","APPROVE CAUTION BLOCK","token safety","wallet risk","swap guard","x402","Base","USDC"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision","agent_trade_approval_ticket","trade approval ticket","approve caution block"],"payment_mode":"native_x402","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","input_schema":{"type":"object","required":["chain","token_address"],"properties":{"chain":{"type":"string","default":"base"},"token_address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"wallet_address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"intended_trade":{"type":"object"},"size_usd":{"type":"number"},"risk_tolerance":{"type":"string","enum":["low","medium","high"],"default":"medium"},"max_slippage_bps":{"type":"number","default":100}},"additionalProperties":true},"output_schema":{"type":"object","required":["decision","reasons","approval","proof_flags","source_status"],"properties":{"decision":{"type":"string","enum":["APPROVE","CAUTION","BLOCK"]},"reasons":{"type":"array","items":{"type":"string"}},"approval":{"type":"object"},"proof_flags":{"type":"object"},"source_status":{"type":"object"}}},"examples":[{"chain":"base","token_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","intended_trade":{"from_token":"USDC","to_token":"USDC","size_usd":25},"risk_tolerance":"medium","max_slippage_bps":100}],"truth_status":"buyer_visible_offer_not_revenue_until_paid_delivery_settlement_buyer_or_tx_ref","agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals","x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"POST","url":"https://x402.fiasignals.com/agent-trade-approval-ticket","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"id":"market-funding-risk-check","name":"Fia Signals Market Funding Risk Check","title":"Fia Signals x402 market funding risk check","type":"http","method":"GET","endpoint":"https://x402.fiasignals.com/funding","price_usdc":0.2,"amount_raw_usdc":"200000","description":"Fia Signals x402 paid Base USDC market funding risk check for buyer agents deciding whether to enter, hold, or avoid a perp/carry setup after checking basis. Returns decision, action, confidence, funding rate evidence, top rates, next funding window, and route-family context.","categories":["financial-analysis","funding-risk","perpetual-futures","trading"],"tags":["Fia Signals","fiasignals","funding rates","funding risk","perpetual futures","basis","carry trade","market funding risk check"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision","funding rates","market_funding_risk_check","funding risk","perpetual futures carry","basis funding decision"],"payment_mode":"native_x402","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","buyer_conversion_proof":{"route":"/basis","url":"https://x402.fiasignals.com/basis","method":"GET or HEAD","network":"eip155:8453","asset":"Base USDC","price_usdc":"0.25","paid_attempts_observed":1,"strict_delivery_yes":1,"paid_delivery_failures":0,"latest_strict_delivery_utc":"2026-05-26T15:15:57Z","latest_buyer":"0x3803A19280DeeFe533D177C4A169412BD341101b","latest_tx":"0xcdd795d053277ddea1c89703300a7e5ce2e1b9416d96401d064d9cf38bae2138","route_family":["/prices","/fear-greed","/basis"],"next_adjacent_route_to_measure":"/funding","backup_route":"/dominance","booking_rule":"/funding remains measurement-only until a payment header, paid 200, settlement, buyer hash, or delivery anomaly appears."},"route_family_context":["/prices","/fear-greed","/basis","/funding"],"truth_status":"experiment_candidate_not_paid_proof_yet","agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals","x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/funding","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"id":"x402-acp-guarded-swap-execute-dry-run","name":"Fia Signals ACP guarded_swap_execute_dry_run handoff","title":"Free handoff to Fia Signals ACP guarded_swap_execute_dry_run","type":"http","method":"GET","methods":["GET","POST","HEAD"],"post_supported":true,"post_purpose":"Buyer runtimes may POST guarded-swap requirements and receive the same free ACP job-create packet.","endpoint":"https://x402.fiasignals.com/acp-direct/guarded-swap-execute-dry-run","price_usdc":0,"amount_raw_usdc":"0","description":"Free handoff returning Virtuals ACP job-create coordinates for guarded_swap_execute_dry_run. The ACP job itself is buyer-controlled and paid on ACP if created.","categories":["token-safety","swap-execution","agent-to-agent","virtuals-acp"],"tags":["Fia Signals","ACP","guarded_swap_execute_dry_run","guarded swap","dry run","token swap","Base swap"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision","guarded_swap_execute_dry_run","guarded swap","ACP direct buy"],"payment_mode":"free_acp_handoff","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","verification":{"truth_label":"free_acp_handoff_not_acp_sale","agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","settle_path_verified_internal":false,"internal_canary_count_bridge_family":0,"external_sales_count":0,"external_payment_headers_seen":0,"external_paid_200_count":0,"last_internal_canaries_at_utc":null,"internal_canary_policy":"These handoff routes are free metadata; no payment canary is needed and no handoff is external demand or revenue.","internal_canary_txs":[],"deliverable_contains":["agent_id","hire_me","acp_job_create","paid_offering","requirements_schema","truth_label","proof_policy"],"conversion_count_rule":"Count only completed non-internal ACP jobs, verified revenue, non-internal buyer wallet plus reconciled payment/job proof, or buyer feedback tied to a real paid attempt.","endpoint":"https://x402.fiasignals.com/acp-direct/guarded-swap-execute-dry-run"},"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"},{"id":"x402-acp-offer-angle-ping","name":"Fia Signals ACP offer_angle_ping handoff","title":"Free handoff to Fia Signals ACP offer_angle_ping","type":"http","method":"GET","methods":["GET","POST","HEAD"],"post_supported":true,"post_purpose":"Buyer runtimes may POST offer context and receive the same free ACP job-create packet.","endpoint":"https://x402.fiasignals.com/acp-direct/offer-angle-ping","price_usdc":0,"amount_raw_usdc":"0","description":"Free handoff returning Virtuals ACP job-create coordinates for offer_angle_ping. The ACP job itself is buyer-controlled and paid on ACP if created.","categories":["agent-to-agent","sales-diagnostics","virtuals-acp"],"tags":["Fia Signals","ACP","offer_angle_ping","offer angle","sales blocker","buyer intent"],"search_terms":["offer_angle_ping","ACP offer angle","agent sales blocker","improve ACP listing"],"payment_mode":"free_acp_handoff","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","verification":{"truth_label":"free_acp_handoff_not_acp_sale","agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","settle_path_verified_internal":false,"internal_canary_count_bridge_family":0,"external_sales_count":0,"external_payment_headers_seen":0,"external_paid_200_count":0,"last_internal_canaries_at_utc":null,"internal_canary_policy":"These handoff routes are free metadata; no payment canary is needed and no handoff is external demand or revenue.","internal_canary_txs":[],"deliverable_contains":["agent_id","hire_me","acp_job_create","paid_offering","requirements_schema","truth_label","proof_policy"],"conversion_count_rule":"Count only completed non-internal ACP jobs, verified revenue, non-internal buyer wallet plus reconciled payment/job proof, or buyer feedback tied to a real paid attempt.","endpoint":"https://x402.fiasignals.com/acp-direct/offer-angle-ping"},"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"},{"id":"x402-acp-token-safety-check","name":"Fia Signals ACP token_safety_check handoff","title":"Free handoff to Fia Signals ACP token_safety_check","type":"http","method":"GET","methods":["GET","POST","HEAD"],"post_supported":true,"post_purpose":"Buyer runtimes may POST token-safety requirements and receive the same free ACP job-create packet.","endpoint":"https://x402.fiasignals.com/acp-direct/token-safety-check","price_usdc":0,"amount_raw_usdc":"0","description":"Free handoff returning Virtuals ACP job-create coordinates for token_safety_check. The ACP job itself is buyer-controlled and paid on ACP if created.","categories":["financial-analysis","token-safety","contract-risk","agent-to-agent","virtuals-acp"],"tags":["Fia Signals","ACP","token_safety_check","token safety","pre-swap","rugpull","honeypot","Base swap"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision","token_safety_check","ACP token safety","pre-swap safety"],"payment_mode":"free_acp_handoff","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","verification":{"truth_label":"free_acp_handoff_not_acp_sale","agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","settle_path_verified_internal":false,"internal_canary_count_bridge_family":0,"external_sales_count":0,"external_payment_headers_seen":0,"external_paid_200_count":0,"last_internal_canaries_at_utc":null,"internal_canary_policy":"These handoff routes are free metadata; no payment canary is needed and no handoff is external demand or revenue.","internal_canary_txs":[],"deliverable_contains":["agent_id","hire_me","acp_job_create","paid_offering","requirements_schema","truth_label","proof_policy"],"conversion_count_rule":"Count only completed non-internal ACP jobs, verified revenue, non-internal buyer wallet plus reconciled payment/job proof, or buyer feedback tied to a real paid attempt.","endpoint":"https://x402.fiasignals.com/acp-direct/token-safety-check"},"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"},{"id":"acp-contract-risk","name":"Fia Signals ACP contract_risk","title":"Fia Signals ACP contract_risk checkout","type":"virtuals-acp","method":"job.create","endpoint":"npm run acp -- job create","seller_wallet":"0xA23f0e343293d0D4BfF50cF32A55F1c037a60Ba6","offering":"contract_risk","price_usdc":0.01,"description":"Virtuals ACP checkout path for a single Fia Signals Base/EVM token contract risk verdict.","categories":["financial-analysis","token-safety","contract-risk","agent-to-agent"],"tags":["Fia Signals","fiasignals","ACP","contract_risk","smart contract risk","token safety","buyer agent"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision"],"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"},{"id":"acp-guarded-swap-execute-dry-run","name":"Fia Signals ACP guarded_swap_execute_dry_run","title":"Fia Signals ACP guarded_swap_execute_dry_run checkout","type":"virtuals-acp","method":"job.create","endpoint":"npm run acp -- job create","seller_wallet":"0xA23f0e343293d0D4BfF50cF32A55F1c037a60Ba6","offering":"guarded_swap_execute_dry_run","price_usdc":0.03,"description":"Virtuals ACP checkout path for a no-funds Base swap execution dry-run gate. Returns GO/CAUTION/BLOCK, execution readiness, recommended executor, and proof flags before buyer funds move.","categories":["token-safety","swap-execution","agent-to-agent","virtuals-acp"],"tags":["Fia Signals","ACP","guarded_swap_execute_dry_run","guarded swap","dry run","token swap","Base swap","bonding buyer"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision","guarded swap","guarded_swap_execute_dry_run","safe swap dry run","Base swap execution"],"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"},{"id":"acp-offer-angle-ping","name":"Fia Signals ACP offer_angle_ping","title":"Fia Signals ACP offer_angle_ping checkout","type":"virtuals-acp","method":"job.create","endpoint":"npm run acp -- job create","seller_wallet":"0xA23f0e343293d0D4BfF50cF32A55F1c037a60Ba6","offering":"offer_angle_ping","price_usdc":0.01,"description":"Virtuals ACP checkout path for a strict offer positioning diagnostic for seller agents with low conversions.","categories":["agent-to-agent","sales-diagnostics","virtuals-acp"],"tags":["Fia Signals","ACP","offer_angle_ping","offer angle","sales blocker","buyer intent","ACP listing"],"search_terms":["offer_angle_ping","ACP offer angle","agent sales blocker","improve ACP listing","buyer intent angle"],"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"},{"id":"acp-token-safety-check","name":"Fia Signals ACP token_safety_check","title":"Fia Signals ACP token_safety_check checkout","type":"virtuals-acp","method":"job.create","endpoint":"npm run acp -- job create","seller_wallet":"0xA23f0e343293d0D4BfF50cF32A55F1c037a60Ba6","offering":"token_safety_check","price_usdc":0.03,"description":"Virtuals ACP checkout path for pre-swap token safety before token_swap, guarded swap, bonding buy, or memecoin entry.","categories":["financial-analysis","token-safety","contract-risk","agent-to-agent","virtuals-acp"],"tags":["Fia Signals","ACP","token_safety_check","token safety","pre-swap","rugpull","honeypot","Base swap"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision","token_safety_check","ACP token safety","pre-swap safety","bonding buy safety"],"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals"}],"featured_service":{"id":"contract-risk-batch","name":"Fia Signals Contract Risk Batch","title":"Fia Signals x402 contract risk batch","type":"http","method":"GET","endpoint":"https://x402.fiasignals.com/contract-risk/batch","price_usdc":0.03,"amount_raw_usdc":"30000","description":"Fia Signals x402 paid Base USDC smart contract risk batch API for buyer agents, trading bots, swap routers, and A2A commerce. Screen up to 5 Base/EVM contracts before a swap for contract risk, rugpull, honeypot, liquidity, and market risk.","categories":["financial-analysis","smart-contract-risk","contract-risk","token-safety","trading"],"tags":["Fia Signals","fiasignals","contract risk","smart contract risk","token safety","rugpull","honeypot","pre-swap","swap guard"],"search_terms":["Fia Signals","Fia Signals contract risk","Fia Signals smart contract risk","Fia Signals token safety","x402 contract risk","x402 smart contract risk","x402 token safety","pre-swap risk","pre swap risk","rugpull screening","honeypot screening","Base USDC buyer agent","agent trade approval ticket","pre-trade approval ticket","autonomous trade approval","swap approval decision"],"aliases":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/pre-trade-risk/batch","https://x402.fiasignals.com/smart-contract-risk/batch"],"payment_mode":"native_x402","network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","virtuals_agent":"Fia Signals","x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/contract-risk/batch","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},"quickstart_manifest":{"name":"Fia Signals Buyer-Agent Quickstart","version":"0.2.3","truth_label":"acquisition_plumbing","purpose":"Help buyer agents complete paid Fia Signals calls, including market_funding_risk_check and token-safety/pre-trade-risk, instead of stopping after the first HTTP 402.","buyer_agent_fast_path":{"goal":"One paid machine-readable risk verdict before a Base swap.","use_first":"https://x402.fiasignals.com/token-safety/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006","alternate_same_price":"https://x402.fiasignals.com/pre-trade-risk/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006","price_usdc":"0.03","network":"eip155:8453","asset":"Base USDC","payment_rule":"The first unpaid request is expected to return HTTP 402. That is not a failure. X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature. Retry the exact same URL.","do_not_stop_at":["HTTP 402","payment-required header","x-payment-required header","x-payment-requirements header"]},"risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"high_ticket_trade_approval":{"product":"agent_trade_approval_ticket","method":"POST","url":"https://x402.fiasignals.com/agent-trade-approval-ticket","price_usdc":"5.00","amount_raw_usdc":"5000000","buyer_question":"Should my autonomous agent approve, limit, or block this intended trade before execution?","delivers":["APPROVE | CAUTION | BLOCK","token safety","optional counterparty risk","funding and gas context","max_notional_usd","max_slippage_bps","exact reasons and source status"],"proof_flags":["no_execution","no_signer","no_wallet_action"],"example_json":{"chain":"base","token_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","intended_trade":{"from_token":"USDC","to_token":"USDC","size_usd":25},"risk_tolerance":"medium","max_slippage_bps":100},"truth_status":"buyer_visible_offer_not_revenue_until_paid_delivery_settlement_buyer_or_tx_ref"},"recommended_virtuals_acp_buy":{"seller":"Fia Signals","agent_id":18788,"hire_me":"https://app.virtuals.io/acp/agent-details/18788","seller_wallet":"0xA23f0e343293d0D4BfF50cF32A55F1c037a60Ba6","offering":"contract_risk","price_usd":0.01,"why":"Use this first when an autonomous buyer needs a cheap pre-swap smart contract risk verdict before executing or routing a trade.","create_job":"npm run acp -- job create 0xA23f0e343293d0D4BfF50cF32A55F1c037a60Ba6 contract_risk --requirements '{\"chain\":\"base\",\"token_address\":\"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\"}' --isAutomated true --json","direct_buy_manifest":"https://x402.fiasignals.com/virtuals-direct-buy.json"},"fastest_verified_x402_checkout":{"method":"GET or HEAD","url":"https://x402.fiasignals.com/fear-greed","price_usdc":"0.05","amount_raw_usdc":"50000","network":"eip155:8453","asset":"Base USDC","purpose":"Smallest paid route with observed payment plus delivery success; use this when the buyer first needs to prove x402 settlement and JSON delivery.","delivery_track_record":"2 paid attempts, 2 delivery YES, 0 paid delivery failures.","latest_strict_delivery":{"timestamp_utc":"2026-05-25T13:15:18Z","method":"HEAD","status":200,"settlement_success":true,"buyer":"0x3803A19280DeeFe533D177C4A169412BD341101b","tx":"0x0e0e80d8bb305f5a923b559f84d7e3329deeeefd9221d5d0495c6bd12e3048c2"},"booking_rule":"Payment without delivery blocks revenue booking; payment plus delivery is eligible for strict ledger review."},"latest_strict_x402_delivery":{"route":"/basis","url":"https://x402.fiasignals.com/basis","method":"GET or HEAD","network":"eip155:8453","asset":"Base USDC","price_usdc":"0.25","paid_attempts_observed":1,"strict_delivery_yes":1,"paid_delivery_failures":0,"latest_strict_delivery_utc":"2026-05-26T15:15:57Z","latest_buyer":"0x3803A19280DeeFe533D177C4A169412BD341101b","latest_tx":"0xcdd795d053277ddea1c89703300a7e5ce2e1b9416d96401d064d9cf38bae2138","route_family":["/prices","/fear-greed","/basis"],"next_adjacent_route_to_measure":"/funding","backup_route":"/dominance","booking_rule":"/funding remains measurement-only until a payment header, paid 200, settlement, buyer hash, or delivery anomaly appears."},"market_signal_ladder_experiment":{"proven_sequence":[{"route":"/prices","price_usdc":"0.20","strict_delivery_utc":"2026-05-23T03:15:53Z"},{"route":"/fear-greed","price_usdc":"0.05","strict_delivery_utc":"2026-05-25T13:15:18Z"},{"route":"/basis","price_usdc":"0.25","strict_delivery_utc":"2026-05-26T15:15:57Z"}],"next_route":"/funding","next_route_url":"https://x402.fiasignals.com/funding","next_route_price_usdc":"0.20","product":"market_funding_risk_check","buyer_question":"Should this agent enter, hold, or avoid a perp/carry setup after seeing basis?","buyer_visible_deliverable":["decision","action","confidence","evidence","top_rates","next_funding_window","route_family_context"],"acp_offering":{"name":"funding_risk_check","listed":true,"price_usdc":"0.25","direct_buy_manifest":"https://x402.fiasignals.com/virtuals-direct-buy.json?offering=funding_risk_check","acceptance_contract":{"accept":"optional symbol; omit for a broad top-10 crypto funding scan","reject":["malformed symbol","unsupported non-crypto request","request asking for execution or trade placement"]}},"why":"Funding plus basis is the next buyer-actionable perp/spot decision packet.","truth_status":"experiment_candidate_not_paid_proof_yet","success_gate":"payment header, paid 200, settlement, buyer, tx_ref, or delivery anomaly"},"recommended_market_funding_risk_check":{"product":"market_funding_risk_check","x402_route":"https://x402.fiasignals.com/funding","x402_price_usdc":"0.20","virtuals_acp_offering":"funding_risk_check","virtuals_acp_price_usdc":"0.25","direct_buy_manifest":"https://x402.fiasignals.com/virtuals-direct-buy.json?offering=funding_risk_check","x402_payment_header_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","x402_retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"buyer_question":"Should I enter, hold, or avoid this market after checking basis and funding carry?","accepts":"Optional symbol such as BTCUSDT; omit for a broad top-10 funding scan.","delivers":["decision","action","confidence","evidence","top_rates","next_funding_window","route_family_context"],"truth_status":"buyer_visible_offer_not_revenue_until_payment_evidence_paid_delivery_settlement_buyer_or_tx_ref"},"free_preview":{"method":"GET","url":"https://x402.fiasignals.com/contract-risk-preview?chain=base&token_address=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","purpose":"Free live sample plus generated ACP contract_risk checkout command."},"primary_endpoint":{"method":"GET","url":"https://x402.fiasignals.com/token-safety/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006","price_usdc":"0.03","amount_raw_usdc":"30000","limit":5},"alternate_batch_endpoint":{"method":"GET","url":"https://x402.fiasignals.com/pre-trade-risk/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006","price_usdc":"0.03","amount_raw_usdc":"30000","limit":5},"fallback_endpoint":{"method":"GET","url":"https://x402.fiasignals.com/token-safety?chain=base&token_address=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","required_query":{"chain":"base","token_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"do_not_call_without":["chain","token_address"],"price_usdc":"0.03","amount_raw_usdc":"30000"},"payment":{"protocol":"x402","network":"eip155:8453","asset":"Base USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","challenge_headers":["payment-required","X-Payment-Required","X-Payment-Requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature."},"flow":["Send the GET request with all required query parameters and without a payment header.","Read the HTTP 402 payment-required challenge from the JSON body or one of the payment-required headers.","Use your x402 wallet/client to create a full x402 payment payload, then retry with X-PAYMENT or PAYMENT-SIGNATURE. Do not send a bare wallet signature.","Retry the same method and exact URL with the signed payment header.","Read the JSON verdict before executing a swap."],"curl_probe":"curl -i \"https://x402.fiasignals.com/token-safety/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006\"","reference_buyer":{"name":"fia-risk-aware-swapper","repo":"https://github.com/Odds7/fia-risk-aware-swapper","release":"https://github.com/Odds7/fia-risk-aware-swapper/releases/tag/v0.1.0","status":"public GitHub reference implementation only; no npm or PyPI package is published","purpose":"Runnable buyer-side example for probing Fia Signals x402 endpoints, receiving a 402 challenge, and retrying with a funded wallet.","typescript_paid_path":"recommended integration path, but not production-validated until a separately approved paid canary is run","python_paid_path":"dry-run/reference only; paid mode is not validated","truth_status":"reference buyer integration, not proof of demand or external sales","clone_and_run":["git clone https://github.com/Odds7/fia-risk-aware-swapper.git","cd fia-risk-aware-swapper","npm install","npm run dry-run"]},"typescript_package":{"package":null,"status":"no npm package published; use the GitHub reference buyer instead","snippet":"git clone https://github.com/Odds7/fia-risk-aware-swapper.git\ncd fia-risk-aware-swapper\nnpm install\nnpm run dry-run"},"typescript_fetch":{"package":"@x402/fetch","snippet":"import { wrapFetchWithPayment } from \"@x402/fetch\";\nconst fetchWithPayment = wrapFetchWithPayment(fetch, walletClient);\nconst res = await fetchWithPayment(\"https://x402.fiasignals.com/token-safety/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006\");\nconst result = await res.json();"},"python_package":{"package":null,"status":"no PyPI package published; Python path is dry-run/reference only","snippet":"git clone https://github.com/Odds7/fia-risk-aware-swapper.git\ncd fia-risk-aware-swapper\npython3 -m py_compile py/risk_aware_swap.py"},"manual_header_flow":{"probe":"curl -i \"https://x402.fiasignals.com/token-safety/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006\"","paid_retry":"curl -H \"X-PAYMENT: $X402_PAYMENT_HEADER\" \"https://x402.fiasignals.com/token-safety/batch?chain=base&token_addresses=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,0x4200000000000000000000000000000000000006\""},"expected_response":{"count":"number","summary":{"safe":0,"risky":0,"blocked":0,"error":0},"results":[{"verdict":"safe|risky|blocked","action":"PROCEED|CAUTION|REJECT","safety_score":"0-100","confidence":"low|medium|high","reasons":[],"warnings":[],"sources":[],"raw_checks":{}}]},"discovery":{"integrate":"https://x402.fiasignals.com/integrate","agent_launch":"https://x402.fiasignals.com/agent-launch.json","x402_manifest":"https://x402.fiasignals.com/.well-known/x402.json","github":"https://github.com/Odds7/fia-risk-aware-swapper"},"truth_status":{"external_sales_claim":"verified x402 /fear-greed plus latest /basis strict paid delivery; ACP direct-buy still requires separate completed-job proof","known_paid_proof":"Repeat-buyer market-data ladder: buyer 0x3803...101b paid /prices, /fear-greed, then /basis. /funding is the next adjacent paid route to watch; it is not demand proof until payment evidence or delivered paid response appears.","use":"buyer-agent integration aid plus verified x402 checkout proof"}},"buyer_agent_metadata":{"primary_audience":["autonomous trading agents","swap bots","portfolio rebalancers","market-making agents","risk monitors"],"decision_points":["pre-trade sentiment check","market regime filter","technical signal confirmation","funding-rate arbitrage screen","execution cost sanity check"],"keywords":["x402","USDC","Base","AI agent","trading bot","market sentiment","risk signal","pre-trade","technical analysis","funding rates","gas","token safety"],"high_ticket_entrypoint":{"path":"/agent-trade-approval-ticket","price":"$5.00","method":"POST","why":"One paid APPROVE / CAUTION / BLOCK decision ticket before an autonomous trade; no execution, signer, or funds movement.","required_json":{"chain":"base","token_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","intended_trade":{"from_token":"USDC","to_token":"USDC","size_usd":25}}},"best_entrypoint":{"path":"/pre-trade-risk/batch","alias":"/token-safety/batch","price":"$0.03","limit":5,"why":"Best value: screen up to 5 Base tokens before swap for 0.03 USDC."},"aliases":[{"path":"/token-safety","canonical":"/pre-trade-risk","why":"Keyword alias for agents searching token safety, rugpull, honeypot, or pre-swap risk."},{"path":"/contract-risk","canonical":"/pre-trade-risk","why":"Buyer-intent alias for agents searching contract risk or smart contract risk before a swap."},{"path":"/smart-contract-risk","canonical":"/pre-trade-risk","why":"Buyer-intent alias for agents searching smart contract risk before executing trades."},{"path":"/token-safety/batch","canonical":"/pre-trade-risk/batch","why":"Keyword alias for agents checking multiple token candidates before routing swaps."},{"path":"/contract-risk/batch","canonical":"/pre-trade-risk/batch","why":"Batch buyer-intent alias for contract-risk marketplaces and trading agents."},{"path":"/smart-contract-risk/batch","canonical":"/pre-trade-risk/batch","why":"Batch buyer-intent alias for smart-contract-risk marketplaces and trading agents."}],"batch_entrypoint":{"path":"/pre-trade-risk/batch","price":"$0.03","limit":5,"why":"Cheaper repeat-buyer path for agents screening multiple token candidates in one paid call."},"risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"single_entrypoint":{"path":"/pre-trade-risk","alias":"/token-safety","price":"$0.03","required_query":{"chain":"base","token_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"query_example":"/pre-trade-risk?chain=base&token_address=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","why":"Fallback for one-off checks: screen one token before swap for 0.03 USDC."},"checkout_demo":{"path":"/fear-greed","price":"$0.05","method":"GET or HEAD","url":"https://x402.fiasignals.com/fear-greed","proof_line":"HEAD/GET paid-compatible /fear-greed route on Base USDC; delivery-gated; last strict paid delivery YES at 2026-05-25T13:15:18Z; 2 paid attempts, 2 delivery YES, 0 paid delivery failures.","why":"Lowest-cost externally paid-proven endpoint; use it to verify x402 checkout before buying higher-value signals.","delivery_proof":{"route":"/fear-greed","url":"https://x402.fiasignals.com/fear-greed","method":"GET or HEAD","network":"eip155:8453","asset":"Base USDC","price_usdc":"0.05","paid_attempts_observed":2,"strict_delivery_yes":2,"paid_delivery_failures":0,"latest_strict_delivery_utc":"2026-05-25T13:15:18Z","latest_buyer":"0x3803A19280DeeFe533D177C4A169412BD341101b","latest_tx":"0x0e0e80d8bb305f5a923b559f84d7e3329deeeefd9221d5d0495c6bd12e3048c2","booking_rule":"Payment without delivery blocks revenue booking; payment plus delivery is eligible for strict ledger review."}},"example_use_cases":[{"label":"known blue-chip token before swap","request":"/pre-trade-risk?chain=base&token_address=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","expected_shape":{"verdict":"safe","action":"PROCEED","safety_score":"high","confidence":"medium_or_high"}},{"label":"unknown meme token before swap","request":"/pre-trade-risk?chain=base&token_address=0xTOKEN","expected_shape":{"verdict":"risky","action":"CAUTION","reasons":["high taxes, missing market data, unverified source, or concentration risk"]}},{"label":"blocked token before swap","request":"/pre-trade-risk?chain=base&token_address=0xTOKEN","expected_shape":{"verdict":"blocked","action":"REJECT","reasons":["honeypot, cannot sell, mint risk, or critical scam pattern"]}}]},"endpoints":[{"path":"/regime","price":"$1.00","method":"GET","description":"Full regime analysis with RSI, ADX, confidence, recommendation","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","market regime","risk signal","volatility","pre-trade"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/regime","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/funding","price":"$0.20","method":"GET","description":"Market funding risk check: decision summary, trade-cost evidence, and next funding window","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","funding rates","perpetual futures","arbitrage"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/funding","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/fear-greed","price":"$0.05","method":"GET","description":"Fear and Greed index with 7-day history","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","market sentiment","fear greed","contrarian signal","Bitcoin"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/fear-greed","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/pre-trade-risk","price":"$0.03","method":"GET","description":"Pre-swap token risk gate returning safe/risky/blocked verdict","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","token safety","contract risk","smart contract risk","pre-trade","swap risk","rugpull risk","honeypot","Base chain"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/pre-trade-risk","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/token-safety","price":"$0.03","method":"GET","description":"Alias for pre-swap token safety / rugpull / honeypot risk gate","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","token safety","contract risk","smart contract risk","pre-trade","swap risk","rugpull risk","honeypot","Base chain"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/token-safety","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/contract-risk","price":"$0.03","method":"GET","description":"Alias for smart contract risk checks before swaps","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","contract risk","smart contract risk","token safety","pre-trade","swap risk","rugpull risk","honeypot","Base chain"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/contract-risk","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/smart-contract-risk","price":"$0.03","method":"GET","description":"Alias for smart contract risk checks before swaps","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","smart contract risk","contract risk","token safety","pre-trade","swap risk","rugpull risk","honeypot","Base chain"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/smart-contract-risk","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/pre-trade-risk/batch","price":"$0.03","method":"GET","description":"Batch pre-swap risk gate for up to 5 EVM token addresses","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","token safety","contract risk","smart contract risk","batch","pre-trade","swap risk","rugpull risk","portfolio","risk pack","bundle"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/pre-trade-risk/batch","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/token-safety/batch","price":"$0.03","method":"GET","description":"Alias for batch token safety checks before swaps","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","token safety","contract risk","smart contract risk","batch","pre-trade","swap risk","rugpull risk","portfolio","risk pack","bundle"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/token-safety/batch","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/contract-risk/batch","price":"$0.03","method":"GET","description":"Batch smart contract risk checks for up to 5 EVM token addresses","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","contract risk","smart contract risk","token safety","batch","pre-trade","swap risk","rugpull risk","portfolio","risk pack","bundle"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/contract-risk/batch","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/smart-contract-risk/batch","price":"$0.03","method":"GET","description":"Batch smart contract risk checks for up to 5 EVM token addresses","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","smart contract risk","contract risk","token safety","batch","pre-trade","swap risk","rugpull risk","portfolio","risk pack","bundle"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/smart-contract-risk/batch","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/agent-trade-approval-ticket","price":"$5.00","method":"POST","description":"$5 APPROVE / CAUTION / BLOCK decision ticket before an autonomous trade","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","trade approval","pre-trade approval","token safety","wallet risk","swap guard","approval ticket","high-ticket"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"POST","url":"https://x402.fiasignals.com/agent-trade-approval-ticket","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/acp-direct/guarded-swap-execute-dry-run","price":"unknown","method":"GET","description":"x402 bridge returning ACP job-create packet for guarded_swap_execute_dry_run","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","ACP","Virtuals","guarded_swap_execute_dry_run","guarded swap","dry run","Base swap","swap execution"],"methods":["GET","POST","HEAD"],"post_supported":true,"post_purpose":"Buyer runtimes may POST requirements and receive the same free ACP job-create handoff packet."},{"path":"/acp-direct/offer-angle-ping","price":"unknown","method":"GET","description":"x402 bridge returning ACP job-create packet for offer_angle_ping","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","ACP","Virtuals","offer_angle_ping","offer angle","buyer intent","sales diagnostics"],"methods":["GET","POST","HEAD"],"post_supported":true,"post_purpose":"Buyer runtimes may POST requirements and receive the same free ACP job-create handoff packet."},{"path":"/acp-direct/token-safety-check","price":"unknown","method":"GET","description":"x402 bridge returning ACP job-create packet for token_safety_check","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","ACP","Virtuals","token_safety_check","token safety","pre-swap","rugpull risk","honeypot","Base swap"],"methods":["GET","POST","HEAD"],"post_supported":true,"post_purpose":"Buyer runtimes may POST requirements and receive the same free ACP job-create handoff packet."},{"path":"/signals","price":"$4.00","method":"GET","description":"RSI-14, MACD, Bollinger Bands for any symbol","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","technical analysis","RSI","MACD","Bollinger Bands","pre-trade"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/signals","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/prices","price":"$0.20","method":"GET","description":"Real-time spot prices","tags":["x402","USDC","Base","AI agent","trading bot","crypto API","spot price","price oracle","market data"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/prices","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/macro","price":"$1.00","method":"GET","description":"Cross-asset macro signal bundle","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/macro","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/liquidations","price":"$0.30","method":"GET","description":"Recent liquidation events","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/liquidations","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/market-summary","price":"$0.80","method":"GET","description":"Full market summary in one call","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/market-summary","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/volatility","price":"$0.75","method":"GET","description":"Realised vol, ATR, vol regime","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/volatility","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/spread-analysis","price":"$0.50","method":"GET","description":"Bid-ask spread and microstructure","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/spread-analysis","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/correlation","price":"$1.20","method":"GET","description":"Cross-asset correlation matrix","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/correlation","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/dominance","price":"$0.20","method":"GET","description":"BTC/ETH market dominance","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/dominance","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/basis","price":"$0.25","method":"GET","description":"Spot vs futures basis","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/basis","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}},{"path":"/altseason","price":"$0.25","method":"GET","description":"Altseason index","tags":["x402","USDC","Base","AI agent","trading bot","crypto API"],"x402_payment_retry_contract":{"protocol":"x402","x402Version":2,"network":"eip155:8453","asset":"USDC","asset_address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0x8D32c6a3EE3fB8a8b4c5378F7C5a26CC320a853F","method":"GET","url":"https://x402.fiasignals.com/altseason","flow":["call_unpaid_endpoint","read_http_402_json.accepts_or_response_headers","create_full_x402_payment_payload_for_accepts[0]","retry_same_method_and_url_with_payment_header"],"challenge_headers":["payment-required","x-payment-required","x-payment-requirements"],"retry_headers":["X-PAYMENT","PAYMENT-SIGNATURE"],"header_value_rule":"X-PAYMENT and PAYMENT-SIGNATURE must carry the full x402 payment payload created from the HTTP 402 challenge. Do not send a bare wallet signature.","risk_pack_upsell":{"id":"bundled-risk-pack","name":"Fia Signals Bundled Risk Pack","price_usdc":"0.50","amount_raw_usdc":"500000","status":"payable_x402_route_live","payable_route":"https://x402.fiasignals.com/bundled-risk-pack","payable_methods":["GET","POST"],"accepts_ordering":"starter_first_bundle_second","starter_accepts_index":0,"starter_amount_raw_usdc":"30000","preferred_accepts_index":1,"preferred_amount_raw_usdc":"500000","recommended_for_repeat_buyers":true,"preferred_selection_hint":"Repeat or bundle buyers should select accepts[1] at 500000 raw USDC, or pay the distinct bundled-risk-pack route. accepts[0] remains the 30000 raw USDC starter.","starter_routes":["https://x402.fiasignals.com/token-safety/batch","https://x402.fiasignals.com/contract-risk/batch"],"target_buyer_signal":"Repeat buyers using token-safety and contract-risk batch checks who need a larger pre-swap risk packet instead of another isolated 0.03 USDC call.","delivers":["combined token safety and smart contract risk summary","up to 5 Base/EVM contracts from the existing batch payload","ranked proceed/caution/reject queue","aggregate blocker reasons and warnings","buyer-facing next-action memo for swap routers","strict proof fields for revenue reconciliation"],"non_breaking_policy":"Keep existing 0.03 USDC batch endpoints unchanged. Buyers who want the 0.50 USDC bundle should pay the distinct bundled-risk-pack route.","truth_status":"not_revenue_until_distinct_external_0_50_payment_tx_ref_or_completed_acp_job"},"dedup_alert_discipline":{"rule":"one reconcile per unique x402 tx_ref across x402_events and x402_sales","fallback_key":"endpoint+buyer+timestamp+amount when tx_ref is missing","suppress":"duplicate alerts for the same tx_ref are operating noise, not new revenue"},"client_next_step":"Read the HTTP 402 challenge, create a full x402 payment payload for accepts[0], then retry the same method and URL with X-PAYMENT or PAYMENT-SIGNATURE.","blocker_return":{"required":true,"fields":["runtime","buyer_wallet","http_status","raw_error","signer_stop_reason","non_internal_wallet"]},"truth_status":"payment_instructions_only_no_payment_attempted"}}]}