Webscale Networks Address sets API

The Address sets API from Webscale Networks — 5 operation(s) for address sets.

Operations 8

GET /address-sets Read address set collection #
POST /address-sets Create an address set #
GET /address-sets/{id} Read an address set #
PATCH /address-sets/{id} Update an address set #
DELETE /address-sets/{id} Delete an address set #
GET /address-sets/{id}/addresses Read addresses for an address set #
GET /address-sets/metrics Read address set collection metrics #
GET /address-sets/{id}/metrics Read address set metrics #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/webscale-networks-address-sets-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

webscale-networks-address-sets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Webscale Address sets API
  version: '2026.273'
  description: The Webscale APIs allow programmatic access to the Webscale services.
servers:
- url: https://api.webscale.com/v2
security:
- access_key: []
tags:
- name: Address sets
  x-tag-expanded: false
paths:
  /address-sets:
    get:
      summary: Read address set collection
      description: Returns all the address sets associated with the caller's account.
      tags:
      - Address sets
      responses:
        '200':
          description: The address sets were successfully retrieved.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AddressSet'
      operationId: getAddressSets
      x-operation-id-source: derived
    post:
      summary: Create an address set
      description: Creates a new address set and returns the definition
      parameters: []
      tags:
      - Address sets
      responses:
        '200':
          description: The address sets was successfully created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AddressSet'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddressSetPost'
              description: The address set definition
      operationId: postAddressSets
      x-operation-id-source: derived
  /address-sets/{id}:
    get:
      summary: Read an address set
      description: Retrieves an address set definition
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: Address set id
      tags:
      - Address sets
      responses:
        '200':
          description: The address set was successfully retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AddressSet'
      operationId: getAddressSetsById
      x-operation-id-source: derived
    patch:
      summary: Update an address set
      description: Updates the address set and returns the updated definition
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: Address set id
      tags:
      - Address sets
      responses:
        '200':
          description: The address sets was successfully updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AddressSet'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddressSetPatch'
              description: The address set definition
      operationId: patchAddressSetsById
      x-operation-id-source: derived
    delete:
      summary: Delete an address set
      description: The address must belong to the current account
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: Address set id
      tags:
      - Address sets
      responses:
        '200':
          description: The address set was successfully deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AddressSet'
      operationId: deleteAddressSetsById
      x-operation-id-source: derived
  /address-sets/{id}/addresses:
    get:
      summary: Read addresses for an address set
      description: Retrieves all address entries contained within the address set. Includes addresses from any and all included sets
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          description: Address set id
      tags:
      - Address sets
      responses:
        '200':
          description: The call was successful
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AddressSetEntry'
      operationId: getAddressSetsByIdAddresses
      x-operation-id-source: derived
  /address-sets/metrics:
    get:
      summary: Read address set collection metrics
      description: Returns requested metrics for all address sets for the current account.
      tags:
      - Address sets
      parameters:
      - name: names
        in: query
        required: true
        schema:
          type: array
          items:
            type: string
          description: 'A comma separated list of metrics names. Allowed metric names: entries_added, entries_extended, entries_expired, entries_deleted'
      - $ref: '#/components/parameters/from'
        schema: {}
      - $ref: '#/components/parameters/to'
        schema: {}
      - $ref: '#/components/parameters/resolution'
        schema: {}
      - $ref: '#/components/parameters/summarize'
        schema: {}
      responses:
        '200':
          description: Metrics for the address set have been returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metrics'
      operationId: getAddressSetsMetrics
      x-operation-id-source: derived
  /address-sets/{id}/metrics:
    get:
      summary: Read address set metrics
      description: Returns requested metrics for a single address set.
      tags:
      - Address sets
      parameters:
      - name: names
        in: query
        required: true
        schema:
          type: array
          items:
            type: string
          description: 'A comma separated list of metrics names. Allowed metric names:

            entries_added, entries_extended, entries_expired, entries_deleted

            '
      - $ref: '#/components/parameters/from'
        schema: {}
      - $ref: '#/components/parameters/to'
        schema: {}
      - $ref: '#/components/parameters/resolution'
        schema: {}
      - $ref: '#/components/parameters/summarize'
        schema: {}
      responses:
        '200':
          description: Metrics for the address set have been returned successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Metrics'
      operationId: getAddressSetsByIdMetrics
      x-operation-id-source: derived
components:
  schemas:
    AddressSetEntry:
      type: object
      description: An IP address or a CIDR block
      allOf:
      - $ref: '#/components/schemas/AddressSetEntryState'
      - $ref: '#/components/schemas/AddressSetEntryConfiguration'
    MetricValues:
      description: An array of metric values, one per resolution period
      type: array
      items:
        type: number
    AddressSetPatch:
      type: object
      description: An address set record details to update
      allOf:
      - $ref: '#/components/schemas/AddressSetConfiguration'
    AddressSetTextFileParameters:
      type: object
      description: Parameters for text-file address set type
      required:
      - interval
      - url
      properties:
        url:
          type: string
          description: A URL from which addresses are retrieved
          pattern: ^https?://[a-z].*$
        interval:
          type: integer
          description: An interval, given in seconds, that sets the frequency at which the set is updated
          minimum: 60
      additionalProperties: false
    MultiMetrics:
      description: An Array of metrics for multiple objects
      type: array
      items:
        description: Identification and metric values for objects
        type: object
        properties:
          name:
            description: Name of the object
            type: string
          href:
            description: Href of the object
            type: string
          metrics:
            description: Requested metrics of the object
            anyOf:
            - $ref: '#/components/schemas/MetricValues'
            - $ref: '#/components/schemas/MetricSummary'
    AddressSetJsonFileParameters:
      type: object
      description: Parameters for json-file address set type
      required:
      - interval
      - query
      - url
      properties:
        url:
          type: string
          description: A URL from which a JSON object is read
          pattern: ^https?://[a-z].*$
        interval:
          type: integer
          description: An interval, given in seconds, that sets the frequency at which the set is updated
          minimum: 60
        query:
          type: string
          description: A JMESPath expression (http://jmespath.org) that is used to extract addresses. This expression applied over the result of fetching a url must produce an array of IP addresses or CIDR blocks
      additionalProperties: false
    AddressSetDomainsParameters:
      type: object
      description: Parameters for domains address set type
      required:
      - domains
      properties:
        domains:
          type: array
          description: If a forward-confirmed reverse DNS lookup of a tested address belongs to one of these domains, then the address is considered to belong to the set
          items:
            $ref: '#/components/schemas/DomainName'
          minItems: 1
          uniqueItems: true
      additionalProperties: false
    AddressSetHref:
      type: string
      pattern: ^/v2/address-sets/[a-z0-9]+$
      description: The endpoint for an address set resource
    AddressSetConfiguration:
      type: object
      description: An address set record details
      properties:
        name:
          description: The name of the address set
          type: string
          minLength: 1
          maxLength: 50
        description:
          type: string
          description: Description of the addresses contained in the address set
          maxLength: 500
        type:
          description: "The type of the address set:\n  A 'manual' address set type implies that it includes IP addresses/CIDR values that are statically defined by the user or the system.\n  A 'dynamic' address set type is one where the IP addresses are dynamically added by the system (e.g. via a web control). Addresses may not be edited for a 'dynamic' address set. A 'combined' set is composed of other sets using the 'inclusions' attribute. A 'text-file' type gets addresses using a 'url' and 'interval' specified in 'params'. A 'json-file' type gets addresses using a 'url', 'interval', and 'query' specified in 'params'"
          type: string
          enum:
          - combined
          - domains
          - dynamic
          - json-file
          - manual
          - text-file
        entries:
          type: array
          description: List of address entries that are part of this address set
          items:
            $ref: '#/components/schemas/AddressSetEntryConfiguration'
        inclusions:
          type: array
          description: List of other address set references that are included in this address set, valid only for 'combined' types
          items:
            $ref: '#/components/schemas/AddressSetHref'
        parameters:
          description: Parameters for configuring an address set
          $ref: '#/components/schemas/AddressSetParameters'
      additionalProperties: false
    Metrics:
      description: Metrics for the given specifications.
      type: object
      required:
      - from
      - to
      - resolution
      - metrics
      properties:
        from:
          $ref: '#/components/schemas/Timestamp'
          description: Start time for the metrics.
        to:
          $ref: '#/components/schemas/Timestamp'
          description: End time for the metrics.
        resolution:
          type: integer
          description: Resolution of the time series data returned.
        metrics:
          type: object
          description: Metrics returned
          additionalProperties:
            anyOf:
            - $ref: '#/components/schemas/MetricValues'
            - $ref: '#/components/schemas/MetricSummary'
            - $ref: '#/components/schemas/MultiMetrics'
    AddressSetState:
      type: object
      required:
      - href
      - created
      - updated
      properties:
        href:
          $ref: '#/components/schemas/AddressSetHref'
        owner:
          type: string
          description: A reference to an account that owns an address set
        created:
          $ref: '#/components/schemas/Timestamp'
          description: Address set created time
        updated:
          $ref: '#/components/schemas/Timestamp'
          description: Timestamp reflecting when the address set was last updated
    AddressSet:
      type: object
      description: An address set record details
      allOf:
      - $ref: '#/components/schemas/AddressSetState'
      - $ref: '#/components/schemas/AddressSetConfiguration'
      - type: object
        properties:
          entries:
            $ref: '#/components/schemas/AddressSetEntry'
    Timestamp:
      type: string
      format: date-time
      description: An iso8601 formatted timestamp
    Cidr:
      type: string
      description: A ip address or range.
      pattern: ^((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))?|(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|([0-9a-fA-F]{1,4}:)(:[0-9a-fA-F]{1,4}){1,6}|:(:[0-9a-fA-F]{1,4}){1,7}|::)(/([0-9]|[1-9][0-9]|1[01][0-9]|12[0-8]))?)$
    AddressSetEntryConfiguration:
      type: object
      description: Configuration for address entries for address sets
      required:
      - address
      properties:
        description:
          type: string
          description: Description of the address
        address:
          $ref: '#/components/schemas/Cidr'
        expiry:
          $ref: '#/components/schemas/Timestamp'
          description: Expiry time associated with this address
    DomainName:
      type: string
      description: A domain name as specified by RFC1035, RFC1123, and RFC2181 with the exception that no space character or double quote (") can be part of the name
      pattern: ^([^."\s]+){1,63}(?:\.[^."\s]{1,63})+$
      minLength: 1
      maxLength: 253
    AddressSetPost:
      type: object
      description: An address set record details needed to create a new set
      allOf:
      - required:
        - name
        - type
      - $ref: '#/components/schemas/AddressSetConfiguration'
    AddressSetEntryState:
      type: object
      description: State values for address entries for address sets
      properties:
        created:
          $ref: '#/components/schemas/Timestamp'
          description: Creation time associated with this address
        created_by:
          type: string
          description: Reference to the user that created this id
    AddressSetParameters:
      description: Parameters for configuring an address set
      anyOf:
      - $ref: '#/components/schemas/AddressSetJsonFileParameters'
      - $ref: '#/components/schemas/AddressSetTextFileParameters'
      - $ref: '#/components/schemas/AddressSetDomainsParameters'
    MetricSummary:
      description: A summary value of a metric across the entire returned time range
      type: number
  parameters:
    summarize:
      name: summarize
      in: query
      description: 'When true specifies that a single value for each named metric is returned for

        the requested time period instead of an array divided into resolution-sized

        buckets. Mutually exlusive with `resolution`.

        '
      schema:
        type: boolean
    resolution:
      name: resolution
      in: query
      description: 'Size in seconds of each bucket for which metrics data will be returned.

        Mutually exclusive with `summarize`.

        '
      schema:
        type: integer
        minimum: 5
    to:
      in: query
      name: to
      description: Select items before but not including this time stamp.
      schema:
        type: string
        format: date-time
    from:
      in: query
      name: from
      description: Select items on or after this time stamp.
      schema:
        type: string
        format: date-time
  securitySchemes:
    access_key:
      type: http
      scheme: Bearer
      description: "An access key secret must be sent as a\n[bearer token](https://www.rfc-editor.org/rfc/rfc7235#section-5.1)\nwith each HTTP request in an `Authorization` header.  Tokens are obtained\nin one of three ways:\n\n1. Creating an access key in your\n   [user profile](https://control.webscale.com/profile).\n2. Using an access key secret created when a service user is created\n   with the [POST accounts/{id}/service-users](#post-/accounts/-id-/service-users)\n   API.\n3. Obtaining a temporary access key using an existing access key secret\n   for a specified account with the\n   [POST users/self/authorization](#post-/users/-id-/authorization) API.\n"