{
  "service": "ipregistry",
  "displayName": "Ipregistry",
  "categories": [
    "Location",
    "Security",
    "Data"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "IPREGISTRY_API_KEY",
      "description": "Ipregistry API key used in the Authorization: ApiKey header. View and manage keys at https://dashboard.ipregistry.co/signin?redirect=/keys."
    }
  ],
  "homepageUrl": "https://ipregistry.co",
  "actions": [
    {
      "id": "ipregistry.batch_lookup_asns",
      "service": "ipregistry",
      "name": "batch_lookup_asns",
      "description": "Look up data for multiple Autonomous System Numbers with Ipregistry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "asns": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "The Autonomous System Number to look up, such as AS15169 or 15169."
            },
            "description": "The Autonomous System Numbers to look up.",
            "minItems": 1,
            "maxItems": 16
          },
          "fields": {
            "type": "string",
            "minLength": 1,
            "description": "Optional Ipregistry field selection expression used to limit the returned payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "asns"
        ],
        "description": "Input parameters for batch ASN lookup with Ipregistry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One result payload returned by Ipregistry."
            },
            "description": "The Ipregistry result payloads in request order."
          }
        },
        "additionalProperties": false,
        "description": "Ipregistry batch response wrapper."
      }
    },
    {
      "id": "ipregistry.batch_lookup_ips",
      "service": "ipregistry",
      "name": "batch_lookup_ips",
      "description": "Look up Ipregistry data for multiple IPv4 or IPv6 addresses in one request.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "ipAddresses": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "The IPv4 or IPv6 address to look up."
            },
            "description": "The IPv4 or IPv6 addresses to look up.",
            "minItems": 1,
            "maxItems": 1024
          },
          "includeHostname": {
            "type": "boolean",
            "description": "Whether Ipregistry should resolve and include hostname data."
          },
          "fields": {
            "type": "string",
            "minLength": 1,
            "description": "Optional Ipregistry field selection expression used to limit the returned payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "ipAddresses"
        ],
        "description": "Input parameters for batch IP lookup with Ipregistry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One result payload returned by Ipregistry."
            },
            "description": "The Ipregistry result payloads in request order."
          }
        },
        "additionalProperties": false,
        "description": "Ipregistry batch response wrapper."
      }
    },
    {
      "id": "ipregistry.lookup_asn",
      "service": "ipregistry",
      "name": "lookup_asn",
      "description": "Look up data for one Autonomous System Number with Ipregistry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "asn": {
            "type": "string",
            "minLength": 1,
            "description": "The Autonomous System Number to look up, such as AS15169 or 15169."
          },
          "fields": {
            "type": "string",
            "minLength": 1,
            "description": "Optional Ipregistry field selection expression used to limit the returned payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "asn"
        ],
        "description": "Input parameters for looking up one Autonomous System Number with Ipregistry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Ipregistry response payload."
          }
        },
        "additionalProperties": false,
        "description": "Ipregistry lookup response wrapper."
      }
    },
    {
      "id": "ipregistry.lookup_ip",
      "service": "ipregistry",
      "name": "lookup_ip",
      "description": "Look up geolocation, connection, company, currency, time zone, and security data for one IP address.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "ipAddress": {
            "type": "string",
            "minLength": 1,
            "description": "The IPv4 or IPv6 address to look up."
          },
          "includeHostname": {
            "type": "boolean",
            "description": "Whether Ipregistry should resolve and include hostname data."
          },
          "fields": {
            "type": "string",
            "minLength": 1,
            "description": "Optional Ipregistry field selection expression used to limit the returned payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "ipAddress"
        ],
        "description": "Input parameters for looking up one IP address with Ipregistry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Ipregistry response payload."
          }
        },
        "additionalProperties": false,
        "description": "Ipregistry lookup response wrapper."
      }
    },
    {
      "id": "ipregistry.parse_user_agents",
      "service": "ipregistry",
      "name": "parse_user_agents",
      "description": "Parse one or more user-agent strings with Ipregistry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "userAgents": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "A user-agent string to parse."
            },
            "description": "The user-agent strings to parse.",
            "minItems": 1,
            "maxItems": 256
          },
          "fields": {
            "type": "string",
            "minLength": 1,
            "description": "Optional Ipregistry field selection expression used to limit the returned payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "userAgents"
        ],
        "description": "Input parameters for parsing user-agent strings with Ipregistry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One result payload returned by Ipregistry."
            },
            "description": "The Ipregistry result payloads in request order."
          }
        },
        "additionalProperties": false,
        "description": "Ipregistry batch response wrapper."
      }
    }
  ]
}
