F5 Load Balancer Pools API

Manage pools of backend servers for load distribution and health monitoring.

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/f5-load-balancer-pools-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 email required.

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

OpenAPI Specification

f5-load-balancer-pools-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: F5 Load Balancer F5 BIG-IP Application Services 3 Extension (AS3) Config Pools API
  description: The Application Services 3 Extension (AS3) provides a declarative API for managing application-specific configurations on BIG-IP systems. AS3 uses JSON declarations to describe the desired state of Layer 4-7 application services, enabling infrastructure-as-code workflows for load balancing, SSL offloading, and traffic management. Rather than issuing imperative commands, users submit a complete declaration and AS3 configures the BIG-IP to match the declared state.
  version: 3.50.0
  contact:
    name: F5 Networks Support
    email: support@f5.com
    url: https://www.f5.com/services/support
  license:
    name: Apache-2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  termsOfService: https://www.f5.com/company/policies/terms-of-use
servers:
- url: https://{bigip_host}/mgmt/shared/appsvcs
  description: BIG-IP AS3 Extension Endpoint
  variables:
    bigip_host:
      default: 192.168.1.245
      description: Hostname or IP address of the BIG-IP device
security:
- basicAuth: []
- tokenAuth: []
tags:
- name: Pools
  description: Manage pools of backend servers for load distribution and health monitoring.
  externalDocs:
    url: https://clouddocs.f5.com/api/icontrol-rest/APIRef_tm_ltm_pool.html
paths:
  /ltm/pool:
    get:
      operationId: listPools
      summary: F5 Load Balancer List all pools
      description: Retrieves a collection of all load balancing pool resources configured on the BIG-IP system. Pools contain members that receive traffic distributed by virtual servers.
      tags:
      - Pools
      parameters:
      - $ref: '#/components/parameters/SelectParam'
      - $ref: '#/components/parameters/FilterParam'
      - $ref: '#/components/parameters/TopParam'
      - $ref: '#/components/parameters/SkipParam'
      - $ref: '#/components/parameters/ExpandSubcollectionsParam'
      responses:
        '200':
          description: Successfully retrieved pool collection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PoolCollection'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createPool
      summary: F5 Load Balancer Create a pool
      description: Creates a new load balancing pool on the BIG-IP system. A pool is a collection of backend server members to which the BIG-IP distributes client traffic.
      tags:
      - Pools
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Pool'
      responses:
        '200':
          description: Pool created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pool'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '409':
          description: Pool with the specified name already exists
  /ltm/pool/{poolName}:
    parameters:
    - $ref: '#/components/parameters/PoolNameParam'
    get:
      operationId: getPool
      summary: F5 Load Balancer Get a specific pool
      description: Retrieves a single pool resource identified by name including its configuration and load balancing settings.
      tags:
      - Pools
      responses:
        '200':
          description: Successfully retrieved pool
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pool'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updatePool
      summary: F5 Load Balancer Update a pool
      description: Replaces the configuration of an existing pool resource.
      tags:
      - Pools
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Pool'
      responses:
        '200':
          description: Pool updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pool'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deletePool
      summary: F5 Load Balancer Delete a pool
      description: Removes a pool resource from the BIG-IP system. Any virtual servers referencing this pool should be updated before deletion.
      tags:
      - Pools
      responses:
        '200':
          description: Pool deleted successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    SkipParam:
      name: $skip
      in: query
      required: false
      description: Number of resources to skip before returning results.
      schema:
        type: integer
        minimum: 0
    PoolNameParam:
      name: poolName
      in: path
      required: true
      description: Name of the pool resource, optionally prefixed with the partition path (e.g., ~Common~my_pool).
      schema:
        type: string
    FilterParam:
      name: $filter
      in: query
      required: false
      description: OData filter expression to restrict returned resources.
      schema:
        type: string
    SelectParam:
      name: $select
      in: query
      required: false
      description: Comma-separated list of properties to include in the response.
      schema:
        type: string
    ExpandSubcollectionsParam:
      name: expandSubcollections
      in: query
      required: false
      description: When set to true, inline sub-collections in the response.
      schema:
        type: string
        enum:
        - 'true'
        - 'false'
    TopParam:
      name: $top
      in: query
      required: false
      description: Maximum number of resources to return.
      schema:
        type: integer
        minimum: 1
  schemas:
    ErrorResponse:
      type: object
      properties:
        code:
          type: integer
          description: HTTP status code.
        message:
          type: string
          description: Human-readable error message.
        errorStack:
          type: array
          items:
            type: string
          description: Stack trace for debugging purposes.
    PoolCollection:
      type: object
      properties:
        kind:
          type: string
          const: tm:ltm:pool:poolcollectionstate
        selfLink:
          type: string
          format: uri
        items:
          type: array
          items:
            $ref: '#/components/schemas/Pool'
    Pool:
      type: object
      required:
      - name
      properties:
        kind:
          type: string
          const: tm:ltm:pool:poolstate
          readOnly: true
        name:
          type: string
          description: Name of the pool resource.
          minLength: 1
          maxLength: 255
        fullPath:
          type: string
          readOnly: true
        generation:
          type: integer
          readOnly: true
        selfLink:
          type: string
          format: uri
          readOnly: true
        description:
          type: string
          description: User-defined description of the pool.
        loadBalancingMode:
          type: string
          description: Algorithm used to distribute traffic across pool members.
          enum:
          - round-robin
          - ratio-member
          - least-connections-member
          - observed-member
          - predictive-member
          - ratio-node
          - least-connections-node
          - fastest-node
          - observed-node
          - predictive-node
          - dynamic-ratio-node
          - fastest-app-response
          - least-sessions
          - dynamic-ratio-member
          - weighted-least-connections-member
          - weighted-least-connections-node
        monitor:
          type: string
          description: Health monitor(s) applied to pool members.
        partition:
          type: string
          description: Administrative partition containing this pool.
        allowNat:
          type: string
          description: Whether the pool can load balance NAT connections.
          enum:
          - 'yes'
          - 'no'
        allowSnat:
          type: string
          description: Whether the pool can load balance SNAT connections.
          enum:
          - 'yes'
          - 'no'
        minActiveMembers:
          type: integer
          description: Minimum active members before priority-group activation.
          minimum: 0
        slowRampTime:
          type: integer
          description: Seconds to ramp up traffic to newly enabled members.
          minimum: 0
        reselectTries:
          type: integer
          description: Reselection attempts after a passive failure detection.
          minimum: 0
        serviceDownAction:
          type: string
          description: Action when all pool members are unavailable.
          enum:
          - none
          - reset
          - reselect
          - drop
  responses:
    NotFound:
      description: The requested resource was not found on the BIG-IP system.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    BadRequest:
      description: The request was malformed or contained invalid parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Authentication credentials were missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Authentication using BIG-IP admin credentials.
    tokenAuth:
      type: apiKey
      in: header
      name: X-F5-Auth-Token
      description: Token-based authentication obtained from the /mgmt/shared/authn/login endpoint.
externalDocs:
  description: F5 BIG-IP AS3 Documentation
  url: https://clouddocs.f5.com/products/extensions/f5-appsvcs-extension/latest/