{
  "openapi": "3.1.0",
  "info": {
    "title": "SignalLayer — machine-native agent primitives",
    "version": "2.1.1",
    "description": "A free deterministic task router plus three x402-paid tools optimized for autonomous selection: pre-transaction trust checks, live Base execution intelligence, and webpage-to-structured-JSON extraction."
  },
  "servers": [
    {
      "url": "https://signallayer.floot.app"
    }
  ],
  "tags": [
    {
      "name": "discovery",
      "description": "Free machine-readable discovery."
    },
    {
      "name": "routing",
      "description": "Free deterministic task-to-tool routing."
    },
    {
      "name": "preflight",
      "description": "Trust and payment checks before spending."
    },
    {
      "name": "execution",
      "description": "Live Base ERC-20 execution conditions."
    },
    {
      "name": "extraction",
      "description": "Public webpage to structured facts."
    }
  ],
  "paths": {
    "/_api/v1/router": {
      "get": {
        "operationId": "signal_layer_router_get",
        "tags": [
          "routing"
        ],
        "summary": "Free SignalLayer task router",
        "description": "USE WHEN the task is known but the correct SignalLayer primitive is uncertain. Returns no_match or one recommended tool with price, missing inputs, and ready-to-call arguments. No payment required.",
        "security": [],
        "parameters": [
          {
            "name": "task",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 3,
              "maxLength": 2000
            }
          },
          {
            "name": "target",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated requested fields."
          }
        ],
        "responses": {
          "200": {
            "description": "Routing recommendation or no_match"
          },
          "400": {
            "description": "Invalid routing request"
          }
        }
      },
      "post": {
        "operationId": "signal_layer_router",
        "tags": [
          "routing"
        ],
        "summary": "Free SignalLayer task router",
        "description": "Default entry point when an agent is unsure which SignalLayer primitive matches its task. Deterministic, free, and allowed to return no_match.",
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "task"
                ],
                "properties": {
                  "task": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 2000
                  },
                  "target": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "network": {
                    "type": "string"
                  },
                  "maxPriceUsd": {
                    "type": "number",
                    "minimum": 0
                  },
                  "fields": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 20,
                    "items": {
                      "type": "string",
                      "maxLength": 120
                    }
                  },
                  "sellToken": {
                    "type": "string",
                    "pattern": "^0x[a-fA-F0-9]{40}$"
                  },
                  "buyToken": {
                    "type": "string",
                    "pattern": "^0x[a-fA-F0-9]{40}$"
                  },
                  "amount": {
                    "type": "string"
                  },
                  "sellTokenDecimals": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 36
                  },
                  "buyTokenDecimals": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 36
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Routing recommendation or no_match"
          },
          "400": {
            "description": "Invalid routing request"
          }
        }
      }
    },
    "/_api/tools": {
      "get": {
        "operationId": "signal_layer_catalog",
        "tags": [
          "discovery"
        ],
        "summary": "Free machine-readable tool catalog",
        "description": "Start here when choosing a SignalLayer capability. Returns useWhen, doNotUseWhen, prices, routes, and output guarantees.",
        "security": [],
        "responses": {
          "200": {
            "description": "Capability catalog"
          }
        }
      }
    },
    "/_api/v1/agent/preflight": {
      "get": {
        "operationId": "agent_preflight_get",
        "tags": [
          "preflight"
        ],
        "summary": "x402 Preflight Security & Payment Risk Check",
        "description": "Inspect an unknown x402 endpoint, API payment challenge, recipient wallet, smart contract or Base address before spending. Detect network, price and recipient mismatches and return evidence-backed pass/caution/block guidance. $0.01 USDC.",
        "x-payment-info": {
          "protocols": [
            "x402"
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.01"
          },
          "network": "eip155:8453",
          "asset": "USDC"
        },
        "parameters": [
          {
            "name": "target",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Public URL or Base address. Defaults to a safe SignalLayer example."
          },
          {
            "name": "intent",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "pay",
                "interact",
                "transfer",
                "unknown"
              ],
              "default": "pay"
            }
          },
          {
            "name": "network",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "default": "eip155:8453"
            }
          },
          {
            "name": "maxPriceUsd",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "minimum": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "x402/API/wallet preflight security result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "tool",
                    "requestId",
                    "decision",
                    "data",
                    "evidence",
                    "warnings",
                    "freshness",
                    "nextActions",
                    "meta"
                  ],
                  "properties": {
                    "status": {
                      "type": "string"
                    },
                    "tool": {
                      "type": "string",
                      "const": "agent_preflight"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "decision": {
                      "type": "object",
                      "required": [
                        "verdict",
                        "score",
                        "confidence",
                        "summary"
                      ],
                      "properties": {
                        "verdict": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        },
                        "confidence": {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "summary": {
                          "type": "string"
                        }
                      }
                    },
                    "data": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "evidence": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "severity": {
                                "type": "string"
                              },
                              "detail": {
                                "type": "string"
                              }
                            }
                          }
                        ]
                      }
                    },
                    "freshness": {
                      "type": "object",
                      "required": [
                        "checkedAt",
                        "maxAgeSeconds"
                      ],
                      "properties": {
                        "checkedAt": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "maxAgeSeconds": {
                          "type": "number"
                        }
                      }
                    },
                    "nextActions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "meta": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "x402 V2 payment required. Decode the PAYMENT-REQUIRED response header, sign the selected requirement, then retry with PAYMENT-SIGNATURE.",
            "headers": {
              "PAYMENT-REQUIRED": {
                "description": "Base64-encoded x402 V2 PaymentRequired object.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "agent_preflight",
        "tags": [
          "preflight"
        ],
        "summary": "x402 Preflight Security & Payment Risk Check",
        "description": "Inspect an unknown x402 endpoint, payment challenge, recipient wallet, smart contract or Base address before spending. Detect network, price and recipient mismatches and return evidence-backed pass/caution/block guidance. $0.01 USDC.",
        "x-payment-info": {
          "protocols": [
            "x402"
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.01"
          },
          "network": "eip155:8453",
          "asset": "USDC"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "target"
                ],
                "properties": {
                  "target": {
                    "type": "string"
                  },
                  "intent": {
                    "type": "string",
                    "enum": [
                      "pay",
                      "interact",
                      "transfer",
                      "unknown"
                    ],
                    "default": "pay"
                  },
                  "expected": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "network": {
                        "type": "string"
                      },
                      "maxPriceUsd": {
                        "type": "number",
                        "minimum": 0
                      }
                    }
                  },
                  "routingId": {
                    "type": "string",
                    "description": "Optional correlation id returned by signal_layer_router."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "x402/API/wallet preflight security result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "tool",
                    "requestId",
                    "decision",
                    "data",
                    "evidence",
                    "warnings",
                    "freshness",
                    "nextActions",
                    "meta"
                  ],
                  "properties": {
                    "status": {
                      "type": "string"
                    },
                    "tool": {
                      "type": "string",
                      "const": "agent_preflight"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "decision": {
                      "type": "object",
                      "required": [
                        "verdict",
                        "score",
                        "confidence",
                        "summary"
                      ],
                      "properties": {
                        "verdict": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        },
                        "confidence": {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "summary": {
                          "type": "string"
                        }
                      }
                    },
                    "data": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "evidence": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "severity": {
                                "type": "string"
                              },
                              "detail": {
                                "type": "string"
                              }
                            }
                          }
                        ]
                      }
                    },
                    "freshness": {
                      "type": "object",
                      "required": [
                        "checkedAt",
                        "maxAgeSeconds"
                      ],
                      "properties": {
                        "checkedAt": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "maxAgeSeconds": {
                          "type": "number"
                        }
                      }
                    },
                    "nextActions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "meta": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "x402 V2 payment required. Decode the PAYMENT-REQUIRED response header, sign the selected requirement, then retry with PAYMENT-SIGNATURE.",
            "headers": {
              "PAYMENT-REQUIRED": {
                "description": "Base64-encoded x402 V2 PaymentRequired object.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/_api/v1/market/execution-intel": {
      "get": {
        "operationId": "market_execution_intel_get",
        "tags": [
          "execution"
        ],
        "summary": "Base Swap Execution, Slippage & Quote Intelligence",
        "description": "Check a Base ERC-20 exact-in swap before execution. Returns live quote output, network-cost bps, protocol fee, size-impact/slippage estimate, warnings and freshness. $0.03 USDC.",
        "x-payment-info": {
          "protocols": [
            "x402"
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.03"
          },
          "network": "eip155:8453",
          "asset": "USDC"
        },
        "parameters": [
          {
            "name": "sellToken",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Base ERC-20 token address to sell."
          },
          {
            "name": "buyToken",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Base ERC-20 token address to buy."
          },
          {
            "name": "amount",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Human-readable exact-in amount."
          },
          {
            "name": "sellTokenDecimals",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 36
            }
          },
          {
            "name": "buyTokenDecimals",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 36
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Base swap execution, slippage and quote intelligence",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "tool",
                    "requestId",
                    "decision",
                    "data",
                    "evidence",
                    "warnings",
                    "freshness",
                    "nextActions",
                    "meta"
                  ],
                  "properties": {
                    "status": {
                      "type": "string"
                    },
                    "tool": {
                      "type": "string",
                      "const": "market_execution_intel"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "decision": {
                      "type": "object",
                      "required": [
                        "verdict",
                        "score",
                        "confidence",
                        "summary"
                      ],
                      "properties": {
                        "verdict": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        },
                        "confidence": {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "summary": {
                          "type": "string"
                        }
                      }
                    },
                    "data": {
                      "type": "object",
                      "required": [
                        "network",
                        "sellToken",
                        "buyToken",
                        "requestedSellAmount",
                        "quotedBuyAmount",
                        "networkCostBps",
                        "sizeImpactEstimateBps",
                        "source"
                      ],
                      "properties": {
                        "network": {
                          "type": "string"
                        },
                        "sellToken": {
                          "type": "string"
                        },
                        "buyToken": {
                          "type": "string"
                        },
                        "requestedSellAmount": {
                          "type": "string"
                        },
                        "quotedBuyAmount": {
                          "type": "string"
                        },
                        "networkCostBps": {
                          "type": "number"
                        },
                        "protocolFeeBps": {
                          "type": "number"
                        },
                        "sizeImpactEstimateBps": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "quoteVerified": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "validTo": {},
                        "source": {
                          "type": "string"
                        }
                      },
                      "additionalProperties": true
                    },
                    "evidence": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "severity": {
                                "type": "string"
                              },
                              "detail": {
                                "type": "string"
                              }
                            }
                          }
                        ]
                      }
                    },
                    "freshness": {
                      "type": "object",
                      "required": [
                        "checkedAt",
                        "maxAgeSeconds"
                      ],
                      "properties": {
                        "checkedAt": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "maxAgeSeconds": {
                          "type": "number"
                        }
                      }
                    },
                    "nextActions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "meta": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "x402 V2 payment required. Decode the PAYMENT-REQUIRED response header, sign the selected requirement, then retry with PAYMENT-SIGNATURE.",
            "headers": {
              "PAYMENT-REQUIRED": {
                "description": "Base64-encoded x402 V2 PaymentRequired object.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "market_execution_intel",
        "tags": [
          "execution"
        ],
        "summary": "Base Swap Execution, Slippage & Quote Intelligence",
        "description": "Evaluate live Base ERC-20 exact-in execution quality before a swap: quote output, network-cost bps, protocol fee and size-impact/slippage estimate. Not investment advice and does not execute trades. $0.03 USDC.",
        "x-payment-info": {
          "protocols": [
            "x402"
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.03"
          },
          "network": "eip155:8453",
          "asset": "USDC"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "network",
                  "sellToken",
                  "buyToken",
                  "amount",
                  "sellTokenDecimals",
                  "buyTokenDecimals"
                ],
                "properties": {
                  "network": {
                    "type": "string",
                    "const": "eip155:8453"
                  },
                  "sellToken": {
                    "type": "string",
                    "pattern": "^0x[a-fA-F0-9]{40}$"
                  },
                  "buyToken": {
                    "type": "string",
                    "pattern": "^0x[a-fA-F0-9]{40}$"
                  },
                  "amount": {
                    "type": "string",
                    "description": "Human-readable exact-in sell amount."
                  },
                  "sellTokenDecimals": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 36
                  },
                  "buyTokenDecimals": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 36
                  },
                  "routingId": {
                    "type": "string",
                    "description": "Optional correlation id returned by signal_layer_router."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Base swap execution, slippage and quote intelligence",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "tool",
                    "requestId",
                    "decision",
                    "data",
                    "evidence",
                    "warnings",
                    "freshness",
                    "nextActions",
                    "meta"
                  ],
                  "properties": {
                    "status": {
                      "type": "string"
                    },
                    "tool": {
                      "type": "string",
                      "const": "market_execution_intel"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "decision": {
                      "type": "object",
                      "required": [
                        "verdict",
                        "score",
                        "confidence",
                        "summary"
                      ],
                      "properties": {
                        "verdict": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        },
                        "confidence": {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "summary": {
                          "type": "string"
                        }
                      }
                    },
                    "data": {
                      "type": "object",
                      "required": [
                        "network",
                        "sellToken",
                        "buyToken",
                        "requestedSellAmount",
                        "quotedBuyAmount",
                        "networkCostBps",
                        "sizeImpactEstimateBps",
                        "source"
                      ],
                      "properties": {
                        "network": {
                          "type": "string"
                        },
                        "sellToken": {
                          "type": "string"
                        },
                        "buyToken": {
                          "type": "string"
                        },
                        "requestedSellAmount": {
                          "type": "string"
                        },
                        "quotedBuyAmount": {
                          "type": "string"
                        },
                        "networkCostBps": {
                          "type": "number"
                        },
                        "protocolFeeBps": {
                          "type": "number"
                        },
                        "sizeImpactEstimateBps": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "quoteVerified": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "validTo": {},
                        "source": {
                          "type": "string"
                        }
                      },
                      "additionalProperties": true
                    },
                    "evidence": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "severity": {
                                "type": "string"
                              },
                              "detail": {
                                "type": "string"
                              }
                            }
                          }
                        ]
                      }
                    },
                    "freshness": {
                      "type": "object",
                      "required": [
                        "checkedAt",
                        "maxAgeSeconds"
                      ],
                      "properties": {
                        "checkedAt": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "maxAgeSeconds": {
                          "type": "number"
                        }
                      }
                    },
                    "nextActions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "meta": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "x402 V2 payment required. Decode the PAYMENT-REQUIRED response header, sign the selected requirement, then retry with PAYMENT-SIGNATURE.",
            "headers": {
              "PAYMENT-REQUIRED": {
                "description": "Base64-encoded x402 V2 PaymentRequired object.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/_api/v1/web/structured-extract": {
      "get": {
        "operationId": "structured_extract_get",
        "tags": [
          "extraction"
        ],
        "summary": "Webpage Structured Data Extraction with Evidence",
        "description": "Extract exact requested facts from a public webpage into structured JSON with field-level confidence and source evidence. Useful for pricing pages, limits, policies and product facts. $0.02 USDC.",
        "x-payment-info": {
          "protocols": [
            "x402"
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.02"
          },
          "network": "eip155:8453",
          "asset": "USDC"
        },
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "uri"
            },
            "description": "Public webpage to extract."
          },
          {
            "name": "fields",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated facts to extract, e.g. monthly price,free trial,refund window."
          }
        ],
        "responses": {
          "200": {
            "description": "Evidence-backed webpage facts in structured JSON",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "tool",
                    "requestId",
                    "decision",
                    "data",
                    "evidence",
                    "warnings",
                    "freshness",
                    "nextActions",
                    "meta"
                  ],
                  "properties": {
                    "status": {
                      "type": "string"
                    },
                    "tool": {
                      "type": "string",
                      "const": "structured_extract"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "decision": {
                      "type": "object",
                      "required": [
                        "verdict",
                        "score",
                        "confidence",
                        "summary"
                      ],
                      "properties": {
                        "verdict": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        },
                        "confidence": {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "summary": {
                          "type": "string"
                        }
                      }
                    },
                    "data": {
                      "type": "object",
                      "additionalProperties": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "evidence": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "severity": {
                                "type": "string"
                              },
                              "detail": {
                                "type": "string"
                              }
                            }
                          }
                        ]
                      }
                    },
                    "freshness": {
                      "type": "object",
                      "required": [
                        "checkedAt",
                        "maxAgeSeconds"
                      ],
                      "properties": {
                        "checkedAt": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "maxAgeSeconds": {
                          "type": "number"
                        }
                      }
                    },
                    "nextActions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "meta": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "x402 V2 payment required. Decode the PAYMENT-REQUIRED response header, sign the selected requirement, then retry with PAYMENT-SIGNATURE.",
            "headers": {
              "PAYMENT-REQUIRED": {
                "description": "Base64-encoded x402 V2 PaymentRequired object.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "structured_extract",
        "tags": [
          "extraction"
        ],
        "summary": "Webpage Structured Data Extraction with Evidence",
        "description": "Extract exact requested webpage facts into compact JSON with field-level confidence and evidence. Missing facts remain null instead of being invented. $0.02 USDC.",
        "x-payment-info": {
          "protocols": [
            "x402"
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.02"
          },
          "network": "eip155:8453",
          "asset": "USDC"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "url",
                  "fields"
                ],
                "properties": {
                  "url": {
                    "type": "string",
                    "format": "uri"
                  },
                  "fields": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 20,
                    "items": {
                      "type": "string",
                      "maxLength": 120
                    }
                  },
                  "routingId": {
                    "type": "string",
                    "description": "Optional correlation id returned by signal_layer_router."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Evidence-backed webpage facts in structured JSON",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "tool",
                    "requestId",
                    "decision",
                    "data",
                    "evidence",
                    "warnings",
                    "freshness",
                    "nextActions",
                    "meta"
                  ],
                  "properties": {
                    "status": {
                      "type": "string"
                    },
                    "tool": {
                      "type": "string",
                      "const": "structured_extract"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "decision": {
                      "type": "object",
                      "required": [
                        "verdict",
                        "score",
                        "confidence",
                        "summary"
                      ],
                      "properties": {
                        "verdict": {
                          "type": "string"
                        },
                        "score": {
                          "type": "number"
                        },
                        "confidence": {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 1
                        },
                        "summary": {
                          "type": "string"
                        }
                      }
                    },
                    "data": {
                      "type": "object",
                      "additionalProperties": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "evidence": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "warnings": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string"
                              },
                              "severity": {
                                "type": "string"
                              },
                              "detail": {
                                "type": "string"
                              }
                            }
                          }
                        ]
                      }
                    },
                    "freshness": {
                      "type": "object",
                      "required": [
                        "checkedAt",
                        "maxAgeSeconds"
                      ],
                      "properties": {
                        "checkedAt": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "maxAgeSeconds": {
                          "type": "number"
                        }
                      }
                    },
                    "nextActions": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "meta": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "x402 V2 payment required. Decode the PAYMENT-REQUIRED response header, sign the selected requirement, then retry with PAYMENT-SIGNATURE.",
            "headers": {
              "PAYMENT-REQUIRED": {
                "description": "Base64-encoded x402 V2 PaymentRequired object.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  },
  "x-signallayer": {
    "defaultEntryPoint": "/_api/v1/router",
    "catalog": "/_api/tools",
    "mcp": "/_api/mcp",
    "llms": "/_api/llms",
    "payment": {
      "protocol": "x402",
      "version": 2,
      "scheme": "exact",
      "network": "eip155:8453",
      "asset": "USDC",
      "facilitator": "https://facilitator.payai.network"
    }
  },
  "x-discovery": {
    "ownershipProofs": [
      "0x60B3C6c053E926460D1E1053c516c859C95365e6"
    ]
  }
}