{
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "scheme": "bearer",
        "type": "http"
      }
    },
    "schemas": {
      "Manual576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP": {
        "type": "object",
        "required": [
          "ips"
        ],
        "properties": {
          "ips": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "examples": [
              [
                "8.8.8.8",
                "1.1.1.1"
              ],
              [
                "2001:4860:4860::8888"
              ]
            ],
            "description": "List of 1 to 1000 IP addresses. Managed execution accepts only distinct bare IPv4 or IPv6 addresses, with one lookup charged per entry. BYOK also supports URL patterns. For free tier tokens, prefix IPs with 'lite/' (e.g., 'lite/8.8.8.8'). Supports field extraction patterns like 'lite/8.8.8.8/country' or 'lite/8.8.8.8/asn'. IPv4 and IPv6 addresses are both supported."
          },
          "filter": {
            "type": "boolean",
            "default": false,
            "description": "When True, entries with null responses are omitted from results. Useful for filtering out invalid IPs."
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__86bb82a2480b89fc"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__86bb82a2480b89fc": {
        "type": "object",
        "additionalProperties": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__02efb893c89729df"
            },
            {
              "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__c48b3f4d58cc7712"
            },
            {
              "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__b18791aed07addfa"
            },
            {
              "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__3eb68c49622d481a"
            },
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__02efb893c89729df": {
        "type": "object",
        "required": [
          "ip",
          "geo"
        ],
        "properties": {
          "as": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "ip": {
            "type": "string"
          },
          "geo": {
            "type": "object",
            "additionalProperties": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "number"
                }
              ]
            }
          },
          "hostname": {
            "type": "string"
          },
          "is_place": {
            "type": "boolean"
          },
          "is_mobile": {
            "type": "boolean"
          },
          "is_anycast": {
            "type": "boolean"
          },
          "is_hosting": {
            "type": "boolean"
          },
          "is_anonymous": {
            "type": "boolean"
          },
          "is_satellite": {
            "type": "boolean"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__c48b3f4d58cc7712": {
        "type": "object",
        "required": [
          "ip",
          "bogon"
        ],
        "properties": {
          "ip": {
            "type": "string"
          },
          "bogon": {
            "type": "boolean"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__b18791aed07addfa": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string"
          },
          "asn": {
            "type": "string"
          },
          "as_name": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "as_domain": {
            "type": "string"
          },
          "continent": {
            "type": "string"
          },
          "country_code": {
            "type": "string"
          },
          "continent_code": {
            "type": "string"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__3eb68c49622d481a": {
        "type": "object",
        "required": [
          "error"
        ],
        "properties": {
          "error": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_CITY_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to retrieve the city name for"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_CITY_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_CITY_BY_IP__output__225294cbacdc6ac8"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_CITY_BY_IP__output__225294cbacdc6ac8": {
        "type": "object",
        "required": [
          "city"
        ],
        "properties": {
          "city": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_COUNTRY_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to retrieve country information for."
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_COUNTRY_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_COUNTRY_BY_IP__output__25aefaee2e1cde14"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_COUNTRY_BY_IP__output__25aefaee2e1cde14": {
        "type": "object",
        "required": [
          "country_code"
        ],
        "properties": {
          "country_code": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_GEO_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "IPv4 or IPv6 address to look up for geolocation data"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_GEO_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_GEO_BY_IP__output__02590ddf8c5423c5"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_GEO_BY_IP__output__02590ddf8c5423c5": {
        "type": "object",
        "properties": {
          "ip": {
            "type": "string"
          },
          "loc": {
            "type": "string"
          },
          "org": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "postal": {
            "type": "string"
          },
          "radius": {
            "type": "integer"
          },
          "region": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "dma_code": {
            "type": "string"
          },
          "hostname": {
            "type": "string"
          },
          "latitude": {
            "type": "number"
          },
          "timezone": {
            "type": "string"
          },
          "continent": {
            "type": "string"
          },
          "longitude": {
            "type": "number"
          },
          "geoname_id": {
            "type": "integer"
          },
          "postal_code": {
            "type": "string"
          },
          "region_code": {
            "type": "string"
          },
          "country_code": {
            "type": "string"
          },
          "last_changed": {
            "type": "string"
          },
          "continent_code": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_HOSTNAME_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to look up hostname for"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_HOSTNAME_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_HOSTNAME_BY_IP__output__390038f1d5131a8e"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_HOSTNAME_BY_IP__output__390038f1d5131a8e": {
        "type": "object",
        "required": [
          "hostname"
        ],
        "properties": {
          "hostname": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_IP_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to query."
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_BY_IP__output__2b40f84ac30c9cfb"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_BY_IP__output__2b40f84ac30c9cfb": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888",
              "66.87.125.72"
            ],
            "description": "A single IPv4 or IPv6 IP address to look up"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__30a0322d5acdb096"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__30a0322d5acdb096": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string"
          },
          "asn": {
            "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__a32cf8a9110965a6"
          },
          "loc": {
            "type": "string"
          },
          "org": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "bogon": {
            "type": "boolean"
          },
          "postal": {
            "type": "string"
          },
          "region": {
            "type": "string"
          },
          "anycast": {
            "type": "boolean"
          },
          "carrier": {
            "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__861281b7ec587109"
          },
          "company": {
            "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__a40be2b7aae2f9d1"
          },
          "country": {
            "type": "string"
          },
          "domains": {
            "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__416abb298b6ae7c1"
          },
          "privacy": {
            "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__e2a72a2932aac7f5"
          },
          "hostname": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "is_mobile": {
            "type": "boolean"
          },
          "is_anycast": {
            "type": "boolean"
          },
          "is_hosting": {
            "type": "boolean"
          },
          "is_anonymous": {
            "type": "boolean"
          },
          "is_satellite": {
            "type": "boolean"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__a32cf8a9110965a6": {
        "type": "object",
        "required": [
          "asn",
          "name",
          "domain",
          "type"
        ],
        "properties": {
          "asn": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__1870b6c770024194"
          },
          "peers": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "route": {
            "type": "string"
          },
          "domain": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "num_ips": {
            "type": "integer"
          },
          "prefixes": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": {
                "type": "string"
              }
            }
          },
          "registry": {
            "type": "string"
          },
          "allocated": {
            "type": "string"
          },
          "prefixes6": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": {
                "type": "string"
              }
            }
          },
          "upstreams": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "downstreams": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__1870b6c770024194": {
        "enum": [
          "isp",
          "business",
          "education",
          "hosting",
          "inactive"
        ],
        "type": "string"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__861281b7ec587109": {
        "type": "object",
        "required": [
          "name",
          "mcc",
          "mnc"
        ],
        "properties": {
          "mcc": {
            "type": "string"
          },
          "mnc": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__a40be2b7aae2f9d1": {
        "type": "object",
        "required": [
          "name",
          "domain",
          "type"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__e305ea5bb33a1f2f"
          },
          "domain": {
            "type": "string"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__e305ea5bb33a1f2f": {
        "enum": [
          "isp",
          "business",
          "education",
          "hosting"
        ],
        "type": "string"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__416abb298b6ae7c1": {
        "type": "object",
        "required": [
          "total"
        ],
        "properties": {
          "ip": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "total": {
            "type": "integer"
          },
          "domains": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__e2a72a2932aac7f5": {
        "type": "object",
        "required": [
          "vpn",
          "proxy",
          "tor",
          "relay",
          "hosting",
          "service"
        ],
        "properties": {
          "tor": {
            "type": "boolean"
          },
          "vpn": {
            "type": "boolean"
          },
          "proxy": {
            "type": "boolean"
          },
          "relay": {
            "type": "boolean"
          },
          "hosting": {
            "type": "boolean"
          },
          "service": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_LOCATION_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to get location coordinates for (e.g., '8.8.8.8' or '2001:4860:4860::8888')"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_LOCATION_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_LOCATION_BY_IP__output__e05000aeb92594e6"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_LOCATION_BY_IP__output__e05000aeb92594e6": {
        "type": "object",
        "required": [
          "location"
        ],
        "properties": {
          "location": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_ORG_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to look up organization information for"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_ORG_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_ORG_BY_IP__output__5d2654acf452c088"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_ORG_BY_IP__output__5d2654acf452c088": {
        "type": "object",
        "required": [
          "org"
        ],
        "properties": {
          "ip": {
            "type": "string"
          },
          "org": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_POSTAL_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to look up the postal/zip code for"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_POSTAL_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_POSTAL_BY_IP__output__c4d308bb334b3b5e"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_POSTAL_BY_IP__output__c4d308bb334b3b5e": {
        "type": "object",
        "required": [
          "postal"
        ],
        "properties": {
          "postal": {
            "type": "string"
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_REGION_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "2001:4860:4860::8888"
            ],
            "description": "A single IPv4 or IPv6 IP address to retrieve the region/state for"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_REGION_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_REGION_BY_IP__output__7a27ca8156875065"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_REGION_BY_IP__output__7a27ca8156875065": {
        "type": "object",
        "required": [
          "region"
        ],
        "properties": {
          "region": {
            "type": "string",
            "examples": [
              "California",
              "England",
              "Tokyo"
            ]
          }
        }
      },
      "Manual576A0Ea506F3_connect_IPINFO_IO_GET_TIMEZONE_BY_IP": {
        "type": "object",
        "required": [
          "ip"
        ],
        "properties": {
          "ip": {
            "type": "string",
            "examples": [
              "8.8.8.8",
              "1.1.1.1",
              "2001:4860:4860::8888"
            ],
            "description": "IPv4 or IPv6 address to look up timezone for (e.g., '8.8.8.8' or '2001:4860:4860::8888')"
          }
        }
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_TIMEZONE_BY_IP__output__public_data": {
        "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_TIMEZONE_BY_IP__output__9ca744627b4e15d2"
      },
      "Response576A0Ea506F3_connect_IPINFO_IO_GET_TIMEZONE_BY_IP__output__9ca744627b4e15d2": {
        "type": "object",
        "required": [
          "timezone"
        ],
        "properties": {
          "timezone": {
            "type": "string"
          }
        }
      }
    },
    "responses": {},
    "parameters": {},
    "examples": {},
    "requestBodies": {},
    "headers": {},
    "links": {},
    "callbacks": {},
    "pathItems": {}
  },
  "info": {
    "description": "",
    "title": "IPinfo",
    "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/ipinfo-io/batch-lookup",
      "/apis/v1/ipinfo-io/get-city-by-ip",
      "/apis/v1/ipinfo-io/get-country-by-ip",
      "/apis/v1/ipinfo-io/get-geo-by-ip",
      "/apis/v1/ipinfo-io/get-hostname-by-ip",
      "/apis/v1/ipinfo-io/get-ip-by-ip",
      "/apis/v1/ipinfo-io/get-ip-info-by-ip",
      "/apis/v1/ipinfo-io/get-location-by-ip",
      "/apis/v1/ipinfo-io/get-org-by-ip",
      "/apis/v1/ipinfo-io/get-postal-by-ip",
      "/apis/v1/ipinfo-io/get-region-by-ip",
      "/apis/v1/ipinfo-io/get-timezone-by-ip"
    ],
    "x-aisa-document": {
      "facts_hash": "c5f1ee802daf768ef5fe3c42d02deae8d5355c4326d7d76583ac17fa6072c58a",
      "generator_version": "3",
      "protocol_version": "1",
      "schema_version": "1",
      "composer_version": "28",
      "response_pending": [],
      "document_hash": "sha256:5d25e04055e119f31417a2b166e64b50ebacb6bbc20ac5aae3f4c591c1abccd6"
    },
    "x-aisa-plans": {
      "builder": 1.0,
      "display_plan": "payg",
      "payg": 1.0,
      "similarweb_payg": 1.0,
      "team": 1.0,
      "version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb"
    },
    "x-aisa-provider": "ipinfo-io",
    "x-aisa-catalogs": {
      "ipinfo-io": {
        "title": "IPinfo",
        "description": "",
        "x-aisa-document": {
          "facts_hash": "c5f1ee802daf768ef5fe3c42d02deae8d5355c4326d7d76583ac17fa6072c58a",
          "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/ipinfo-io/batch-lookup": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.batch-lookup",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ips": {
                    "items": {
                      "type": "string"
                    },
                    "maxItems": 100,
                    "minItems": 1,
                    "type": "array",
                    "description": "List of 1 to 1000 IP addresses. Managed execution accepts only distinct bare IPv4 or IPv6 addresses, with one lookup charged per entry. BYOK also supports URL patterns. For free tier tokens, prefix IPs with 'lite/' (e.g., 'lite/8.8.8.8'). Supports field extraction patterns like 'lite/8.8.8.8/country' or 'lite/8.8.8.8/asn'. IPv4 and IPv6 addresses are both supported."
                  },
                  "filter": {
                    "type": "boolean",
                    "default": false,
                    "description": "When True, entries with null responses are omitted from results. Useful for filtering out invalid IPs."
                  }
                },
                "required": [
                  "ips"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_BATCH_LOOKUP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Batch IP Lookup",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "0f93fd3c7722"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "mixed",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.batch-lookup",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/batch-lookup"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:66cf652adef0c71eb046a6c26c2e92f3fd190441389d9278e53909a9e9bca95b"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-batch-lookup"
      }
    },
    "/apis/v1/ipinfo-io/get-city-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-city-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to retrieve the city name for"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_CITY_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get City by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "ede9452cca78"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-city-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-city-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:c671aea79a8af13691cf6dd6ebaf8a4b0626f7ff8b4c9c82689a6cf3e0199872"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-city-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-country-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-country-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to retrieve country information for."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_COUNTRY_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Country by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "4d2d180975f7"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-country-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-country-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:680f57dbbb728ea48cb4a11acfcfeaa7a45d9ce5edba3cdeba357c21bb03bae2"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-country-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-geo-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-geo-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "IPv4 or IPv6 address to look up for geolocation data"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_GEO_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Geo by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "685167600cc7"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-geo-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-geo-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:dc714e485cd2414390b08319bebfed60c25e2dcb054d09256bd95f78697b45b8"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-geo-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-hostname-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-hostname-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to look up hostname for"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_HOSTNAME_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Hostname by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "c8180c8e0924"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-hostname-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-hostname-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:309f0fe007b885187c19959ab965942a47e15fd5b729d7ad3a0e0df3a8466d0a"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-hostname-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-ip-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-ip-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to query."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get IP by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "9acddb95d352"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-ip-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-ip-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:64779469818a686499a1e1f07bce4b5855263c88f106406c5fc640263507015a"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-ip-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-ip-info-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-ip-info-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888",
                      "66.87.125.72"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to look up"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_IP_INFO_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Comprehensive IP Information",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "d20acc53b91a"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-ip-info-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-ip-info-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:4148a6426ccb8f3d864a78aeb1a18397dec305738e5dc8e263601dd00054a273"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-ip-info-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-location-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-location-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to get location coordinates for (e.g., '8.8.8.8' or '2001:4860:4860::8888')"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_LOCATION_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Location by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "955bfde8ad4e"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-location-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-location-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:f0029b77cf0b0e3c74bcaecd5d8cf5d00df29a6384d139990c7d71cbdae936ba"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-location-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-org-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-org-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to look up organization information for"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_ORG_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Organization by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "a341c4ac1f30"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-org-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-org-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:2b3b192072029ae1bc2fcbfc013774bf875e0bd75df395c7bc715f21573eca01"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-org-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-postal-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-postal-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to look up the postal/zip code for"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_POSTAL_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Postal Code by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "d9ff02e45c19"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-postal-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-postal-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:7338e7cf08ad251234376318f124f0e45a455e8f5489ea505447bd31175719b8"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-postal-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-region-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-region-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "2001:4860:4860::8888"
                    ],
                    "description": "A single IPv4 or IPv6 IP address to retrieve the region/state for"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_REGION_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Region by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "b3fda7bbee1d"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-region-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-region-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:7a072a057673135c9364f7a677bc3eb96397a00549f349873eb4a9eb57b71440"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-region-by-ip"
      }
    },
    "/apis/v1/ipinfo-io/get-timezone-by-ip": {
      "post": {
        "description": "<!-- aisa-pricing:start -->\n按用量计费；默认请求预估费用：$0.0005 USD（不是固定价格）。 声明的单位费率：每 provider_credit $0.000001 USD。 最终费用以账户适用价格及实际结算为准。\n<!-- aisa-pricing:end -->",
        "operationId": "ipinfo-io.get-timezone-by-ip",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "ip"
                ],
                "properties": {
                  "ip": {
                    "type": "string",
                    "examples": [
                      "8.8.8.8",
                      "1.1.1.1",
                      "2001:4860:4860::8888"
                    ],
                    "description": "IPv4 or IPv6 address to look up timezone for (e.g., '8.8.8.8' or '2001:4860:4860::8888')"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Tool result data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response576A0Ea506F3_connect_IPINFO_IO_GET_TIMEZONE_BY_IP__output__public_data"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Error response; upstream passthrough responses may use provider formats"
          }
        },
        "summary": "Get Timezone by IP",
        "tags": [
          "IPinfo"
        ],
        "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": "data",
        "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.0005,
          "estimate_source": "profile_seed",
          "evidence_source": "response_body",
          "maximum_units": 10000000,
          "unit": "provider_credit",
          "unit_rate_usd": 1e-06
        },
        "x-aisa-query-policy": {
          "ignore_undeclared": false,
          "request_wins": false
        },
        "x-aisa-revision": {
          "customer_pricing_ref": "541c4271fcd0",
          "plan_policy_version": "e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb",
          "profile_ref": "390fe43a0e96"
        },
        "x-aisa-status": "enabled",
        "x-aisa-validation": "provider",
        "x-aisa-catalog-id": "ipinfo-io",
        "x-aisa-runtime-operation": {
          "operation_id": "ipinfo-io.get-timezone-by-ip",
          "method": "POST",
          "path": "/apis/v1/ipinfo-io/get-timezone-by-ip"
        },
        "x-aisa-source": {
          "kind": "manual",
          "url": "https://connect.composio.dev/mcp",
          "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
          "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
          "converter": "scripts/prepare_composio_public_reference.py@1",
          "path_space": "public",
          "refresh_policy": "pinned",
          "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
          "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
          "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
          "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
          "source_pages": [
            {
              "url": "https://connect.composio.dev/mcp",
              "scope": "Captured input schemas only; no current-source review asserted"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
              "scope": "Exact provider tool slug to public route mapping"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
              "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
            },
            {
              "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
              "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
            }
          ],
          "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
          "owner": "AIsa-team/docs",
          "review_period_days": 30,
          "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
        },
        "x-aisa-response-source": {
          "kind": "upstream_success_contract",
          "source": {
            "kind": "manual",
            "url": "https://connect.composio.dev/mcp",
            "fetched_at": "unknown: historical capture did not retain an acquisition timestamp",
            "content_hash": "sha256:342defd4bbb364173f6f4dbfeeae2056fa539e0c0fd021df1d45b18d0003be5f",
            "converter": "scripts/prepare_composio_public_reference.py@1",
            "path_space": "public",
            "refresh_policy": "pinned",
            "refresh_reason": "Review captured provider argument schemas and the pinned owning HTTP request adapter together before replacement.",
            "source_git_revision": "3c55acbef31c1aae0648aaa48b0bc92184594500",
            "raw_content_hash": "sha256:f2b7e11cfb5bebbbe6dccf14f1e20bed99d24378de2ba765250101f592f999b7",
            "routes_content_hash": "sha256:60c8b6059312ec36d7cdfd57b8ee3d909da3c55d3956b408747b82fbc5f2d6aa",
            "source_pages": [
              {
                "url": "https://connect.composio.dev/mcp",
                "scope": "Captured input schemas only; no current-source review asserted"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/integrationcatalog/vendors.json",
                "scope": "Exact provider tool slug to public route mapping"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/services/api-service/internal/httpapi/integration_gateway_body.go",
                "scope": "wrapGatewayBody: caller root arguments are wrapped internally; the internal envelope is not a public input"
              },
              {
                "url": "https://raw.githubusercontent.com/AIsa-team/AIsaServices/3c55acbef31c1aae0648aaa48b0bc92184594500/packages/composioconnect/workbench.go",
                "scope": "PublicResponse returns only the one completed tool response data as HTTP 200"
              }
            ],
            "qualification": "Historical pinned metadata conversion requiring independent source review. Public responses project the declared data property through the fixed HTTP adapter. No live acquisition or formal approval asserted.",
            "owner": "AIsa-team/docs",
            "review_period_days": 30,
            "policy_revision": "sha256:2eaa3a85fb7f3c50982c51dcede3aa2251e4f385404e955a0ee32072ef7f79da"
          },
          "content_hash": "sha256:eb3b36d1b2241ee719502641e220fc0e7d26ae26f7fac3c1a09d3987dceca6db"
        },
        "x-aisa-docs-url": "https://aisa.one/docs/api-reference/ipinfo-io/ipinfo-io-get-timezone-by-ip"
      }
    }
  }
}
