{
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "scheme": "bearer",
        "type": "http"
      }
    },
    "schemas": {},
    "responses": {},
    "parameters": {},
    "examples": {},
    "requestBodies": {},
    "headers": {},
    "links": {},
    "callbacks": {},
    "pathItems": {}
  },
  "info": {
    "description": "",
    "title": "Keenable",
    "version": "1",
    "x-aisa-capabilities": {
      "idempotency": "Idempotency-Key",
      "max_price": "X-AISA-Max-Price-USD",
      "quote": {
        "header": "X-AISA-Cost-Mode",
        "value": "quote"
      }
    },
    "x-aisa-configured-paths": [
      "/apis/v1/keenable/web-fetch",
      "/apis/v1/keenable/web-search"
    ],
    "x-aisa-document": {
      "facts_hash": "3415c49b2b2756d6f740d04e55cdf44f8cfe867ca67124eab424807a11b8d6ca",
      "generator_version": "3",
      "protocol_version": "1",
      "schema_version": "1",
      "composer_version": "28",
      "response_pending": [
        {
          "operation_id": "keenable.web-search",
          "path": "/apis/v1/keenable/web-search",
          "method": "POST",
          "statuses": [
            "200"
          ],
          "reason": "public success response has no authoritative payload declaration"
        }
      ],
      "document_hash": "sha256:8cca6f75109fca2a9966d50e3e787908e52940203e67880e5ebba6e8e5e71b48"
    },
    "x-aisa-plans": {
      "builder": 1.0,
      "display_plan": "payg",
      "payg": 1.0,
      "similarweb_payg": 1.0,
      "team": 1.0,
      "version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb"
    },
    "x-aisa-provider": "keenable",
    "x-aisa-catalogs": {
      "keenable": {
        "title": "Keenable",
        "description": "",
        "x-aisa-document": {
          "facts_hash": "3415c49b2b2756d6f740d04e55cdf44f8cfe867ca67124eab424807a11b8d6ca",
          "generator_version": "3",
          "protocol_version": "1",
          "schema_version": "1"
        },
        "x-aisa-plans": {
          "builder": 1.0,
          "display_plan": "payg",
          "payg": 1.0,
          "similarweb_payg": 1.0,
          "team": 1.0,
          "version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb"
        },
        "x-aisa-capabilities": {
          "idempotency": "Idempotency-Key",
          "max_price": "X-AISA-Max-Price-USD",
          "quote": {
            "header": "X-AISA-Cost-Mode",
            "value": "quote"
          }
        }
      }
    }
  },
  "jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
  "openapi": "3.1.0",
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "servers": [
    {
      "url": "https://api.aisa.one"
    }
  ],
  "paths": {
    "/apis/v1/keenable/web-search": {
      "post": {
        "description": "Results include title, URL, description, snippet, and optional published/acquired timestamps. Unknown body fields are refused locally on the shared key.\n\n<!-- aisa-pricing:start -->\nUsage-based billing; Default request estimate: $0.004 USD (not a fixed price). Declared unit rate: $0.000001 USD per provider_credit. Account-specific pricing and final settlement may differ.\n<!-- aisa-pricing:end -->",
        "operationId": "keenable.web-search",
        "responses": {
          "200": {
            "description": "Successful response"
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Search the open web",
        "tags": [
          "Keenable"
        ],
        "x-aisa-capabilities": {
          "idempotency": "Idempotency-Key",
          "max_price": "X-AISA-Max-Price-USD",
          "quote": {
            "header": "X-AISA-Cost-Mode",
            "value": "quote"
          },
          "mpp": false,
          "mpp_methods": [],
          "x402": false
        },
        "x-aisa-category": "search",
        "x-aisa-passthrough": true,
        "x-aisa-pricing": {
          "cost_contract": "response_units",
          "customer_multiplier": 1.0,
          "customer_pricing": "provider_cost_multiplier",
          "default_request_estimate_usd": 0.004,
          "estimate_source": "profile_seed",
          "evidence_source": "response_header",
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "open_query": true,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "fda7874df42d",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "78fff8ef26af"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "keenable",
        "x-aisa-runtime-operation": {
          "operation_id": "keenable.web-search",
          "method": "POST",
          "path": "/apis/v1/keenable/web-search"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "query": {
                    "type": "string",
                    "examples": [
                      "Keenable API documentation"
                    ],
                    "minLength": 1
                  },
                  "mode": {
                    "type": "string",
                    "default": "pro",
                    "enum": [
                      "pro",
                      "realtime"
                    ],
                    "description": "pro performs deeper retrieval; realtime returns faster. The response echoes the mode actually used.",
                    "examples": [
                      "pro"
                    ]
                  },
                  "site": {
                    "type": "string",
                    "description": "Restrict results to one domain.",
                    "examples": [
                      "docs.keenable.ai"
                    ]
                  },
                  "acquired_after": {
                    "type": "string",
                    "description": "RFC 3339 date, ISO 8601 timestamp, or relative delta such as 7d, 30min, 2h, 6mo, or 1y.",
                    "examples": [
                      "7d"
                    ]
                  },
                  "acquired_before": {
                    "type": "string",
                    "description": "RFC 3339 date, ISO 8601 timestamp, or relative delta. A bare date includes that full UTC day."
                  },
                  "published_after": {
                    "type": "string",
                    "description": "RFC 3339 date, ISO 8601 timestamp, or relative delta.",
                    "examples": [
                      "30d"
                    ]
                  },
                  "published_before": {
                    "type": "string",
                    "description": "RFC 3339 date, ISO 8601 timestamp, or relative delta. A bare date includes that full UTC day."
                  },
                  "query_time": {
                    "type": "string",
                    "description": "Search the index as it existed at this date or timestamp; relative filters are rebased to it."
                  },
                  "snippet_max_length": {
                    "type": "integer",
                    "minimum": 180,
                    "maximum": 10000,
                    "examples": [
                      500
                    ]
                  },
                  "max_results": {
                    "type": "integer",
                    "default": 10,
                    "minimum": 1,
                    "maximum": 50,
                    "examples": [
                      10
                    ]
                  }
                },
                "required": [
                  "query"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://raw.githubusercontent.com/superdesigndev/treg/95670bbae5561fce0ea55c1e0ee4216eb34cbf18/src/treg/catalog/",
          "fetched_at": "2026-11-07T11:52:30.302332+00:00",
          "content_hash": "sha256:3ba9b222c7b0d3b69c4895ec21da5d6e6d8a55ffb2152b5d5c1a65bcc2973566",
          "raw_content_hash": "sha256:0804b46b6fb80c59d215e1ed43032d11e13328e2c2ade48d85c75ae00fd9cb68",
          "converter": "scripts/prepare_treg_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review immutable provider declarations and both gateway HTTP boundaries together.",
          "source_git_revision": "95670bbae5561fce0ea55c1e0ee4216eb34cbf18",
          "source_pages": [
            {
              "url": "https://raw.githubusercontent.com/superdesigndev/treg/95670bbae5561fce0ea55c1e0ee4216eb34cbf18/src/treg/application/call/resolve.py",
              "scope": "pathParams arrive as query; array enum and numeric bounds semantics"
            },
            {
              "url": "https://raw.githubusercontent.com/superdesigndev/treg/95670bbae5561fce0ea55c1e0ee4216eb34cbf18/src/treg/domain/catalog/schema/common.py",
              "scope": "Parameter declaration vocabulary and optional required flag"
            }
          ],
          "qualification": "Request-only source review candidate. Exact declarations retained; unsupported shapes remain pending. No formal approval or response schema asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:5284e1076511154e5bd27c88cf8f1f29cf6ca5b51a779bd931e39faa66f99978"
        },
        "x-aisa-response-pending": {
          "operation_id": "keenable.web-search",
          "path": "/apis/v1/keenable/web-search",
          "method": "POST",
          "statuses": [
            "200"
          ],
          "reason": "public success response has no authoritative payload declaration"
        },
        "x-codeSamples": [
          {
            "lang": "text",
            "label": "Reference example",
            "source": "# Fixed reference example. Playground inputs do not update this sample.\ncurl --request POST \\\n  --url https://api.aisa.one/apis/v1/keenable/web-search \\\n  --header 'Authorization: Bearer <token>' \\\n  --header 'Content-Type: application/json' \\\n  --data '{\n  \"query\": \"Keenable API documentation\"\n}'"
          }
        ],
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/keenable/keenable-web-search"
      }
    }
  }
}
