> ## Documentation Index
> Fetch the complete documentation index at: https://gcore.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List load balancer pools



## OpenAPI

````yaml /api-reference/services_documented/cloud_api.yaml get /cloud/v1/lbpools/{project_id}/{region_id}
openapi: 3.1.0
info:
  title: Gcore OpenAPI – Cloud API
  description: >-
    This OpenAPI is an aggregated OpenAPI specification that unifies all Gcore
    products into a single file. It covers Cloud, CDN, DNS, WAAP, DDoS
    Protection, Object Storage, Streaming, and FastEdge services.
  version: '2026-05-15T06:37:28.230198+00:00'
servers:
  - url: https://api.gcore.com
security:
  - APIKey: []
tags:
  - name: Bare Metal
    x-displayName: Bare Metal
  - name: Container as a Service
    x-displayName: Container as a Service
  - name: Cost Reports
    x-displayName: Cost Reports
  - name: DDoS Protection
    x-displayName: DDoS Protection
  - name: Everywhere Inference
    x-displayName: Everywhere Inference
  - name: Everywhere Inference Apps
    x-displayName: Everywhere Inference Apps
  - name: File Shares
    x-displayName: File Shares
  - name: Floating IPs
    x-displayName: Floating IPs
  - name: Function as a Service
    x-displayName: Function as a Service
  - name: GPU Bare Metal
    x-displayName: GPU Bare Metal
  - name: GPU Virtual
    x-displayName: GPU Virtual
  - name: IP Ranges
    x-displayName: IP Ranges
  - name: Images
    x-displayName: Images
  - name: Instances
    x-displayName: Instances
  - name: Load Balancers
    x-displayName: Load Balancers
  - name: Logging
    x-displayName: Logging
  - name: Managed Kubernetes
    x-displayName: Managed Kubernetes
  - name: Managed PostgreSQL
    x-displayName: Managed PostgreSQL
  - name: Networks
    x-displayName: Networks
  - name: Placement Groups
    x-displayName: Placement Groups
  - name: Projects
    x-displayName: Projects
  - name: Quotas
    x-displayName: Quotas
  - name: Regions
    x-displayName: Regions
  - name: Registry
    x-displayName: Registry
  - name: Reservations
    x-displayName: Reservations
  - name: Reserved IPs
    x-displayName: Reserved IPs
  - name: Routers
    x-displayName: Routers
  - name: SSH Keys
    x-displayName: SSH Keys
  - name: Secrets
    x-displayName: Secrets
  - name: Security Groups
    x-displayName: Security Groups
  - name: Snapshot Schedules
    x-displayName: Snapshot Schedules
  - name: Snapshots
    x-displayName: Snapshots
  - name: Tasks
    x-displayName: Tasks
  - name: User Actions
    x-displayName: User Actions
  - name: User Role Assignments
    x-displayName: User Role Assignments
  - name: Volumes
    x-displayName: Volumes
paths:
  /cloud/v1/lbpools/{project_id}/{region_id}:
    get:
      tags:
        - Load Balancers
      summary: List load balancer pools
      operationId: LoadBalancerPoolViewSet.get
      parameters:
        - in: path
          name: project_id
          required: true
          description: Project ID
          schema:
            description: Project ID
            example: 1
            examples:
              - 1
            title: Project Id
            type: integer
        - in: path
          name: region_id
          required: true
          description: Region ID
          schema:
            description: Region ID
            example: 1
            examples:
              - 1
            exclusiveMinimum: 0
            title: Region Id
            type: integer
        - in: query
          name: details
          required: false
          description: Show members and Health Monitor details
          schema:
            default: false
            description: Show members and Health Monitor details
            example: true
            examples:
              - true
              - false
            title: Details
            type: boolean
        - in: query
          name: limit
          required: false
          description: Optional. Limit the number of returned items
          schema:
            default: 1000
            description: Optional. Limit the number of returned items
            example: 1000
            examples:
              - 1000
            exclusiveMinimum: 0
            maximum: 1000
            title: Limit
            type: integer
        - in: query
          name: listener_id
          required: false
          description: Listener ID
          schema:
            description: Listener ID
            example: 00000000-0000-4000-8000-000000000000
            examples:
              - 00000000-0000-4000-8000-000000000000
            format: uuid4
            title: Listener Id
            type: string
        - in: query
          name: load_balancer_id
          required: false
          description: Load Balancer ID
          schema:
            description: Load Balancer ID
            example: 00000000-0000-4000-8000-000000000000
            examples:
              - 00000000-0000-4000-8000-000000000000
            format: uuid4
            title: Load Balancer Id
            type: string
        - in: query
          name: name
          required: false
          description: Filter by name
          schema:
            description: Filter by name
            example: lb-pool-name
            examples:
              - lb-pool-name
            title: Name
            type: string
        - in: query
          name: offset
          required: false
          description: >-
            Optional. Offset value is used to exclude the first set of records
            from the result
          schema:
            default: 0
            description: >-
              Optional. Offset value is used to exclude the first set of records
              from the result
            example: 0
            examples:
              - 0
            minimum: 0
            title: Offset
            type: integer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LbPoolCollectionSerializer'
      x-codeSamples:
        - lang: Python
          source: |-
            import os
            from gcore import Gcore

            client = Gcore(
                api_key=os.environ.get("GCORE_API_KEY"),  # This is the default and can be omitted
            )
            load_balancer_pool_list = client.cloud.load_balancers.pools.list(
                project_id=1,
                region_id=1,
            )
            print(load_balancer_pool_list.count)
        - lang: Go
          source: "package main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"github.com/G-Core/gcore-go\"\n\t\"github.com/G-Core/gcore-go/cloud\"\n\t\"github.com/G-Core/gcore-go/option\"\n)\n\nfunc main() {\n\tclient := gcore.NewClient(\n\t\toption.WithAPIKey(\"My API Key\"),\n\t)\n\tloadBalancerPoolList, err := client.Cloud.LoadBalancers.Pools.List(context.TODO(), cloud.LoadBalancerPoolListParams{\n\t\tProjectID: gcore.Int(1),\n\t\tRegionID:  gcore.Int(1),\n\t})\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\tfmt.Printf(\"%+v\\n\", loadBalancerPoolList.Count)\n}\n"
components:
  schemas:
    LbPoolCollectionSerializer:
      properties:
        count:
          description: Number of objects
          example: 1
          examples:
            - 1
          minimum: 0
          title: Count
          type: integer
        results:
          description: Objects
          items:
            $ref: '#/components/schemas/LbPoolSerializer'
          title: Results
          type: array
      required:
        - count
        - results
      title: LbPoolCollectionSerializer
      type: object
    LbPoolSerializer:
      properties:
        admin_state_up:
          description: >-
            Administrative state of the resource. When set to true, the resource
            is enabled and operational. When set to false, the resource is
            disabled and will not process traffic. Defaults to true.
          example: true
          examples:
            - true
            - false
          title: Admin State Up
          type: boolean
        ca_secret_id:
          anyOf:
            - format: uuid4
              type: string
            - type: 'null'
          description: Secret ID of CA certificate bundle
          title: Ca Secret Id
        creator_task_id:
          anyOf:
            - format: uuid4
              type: string
            - type: 'null'
          description: Task that created this entity
          examples:
            - d8334c12-2881-4c4a-84ad-1b21fea73ad1
          title: Creator Task Id
        crl_secret_id:
          anyOf:
            - format: uuid4
              type: string
            - type: 'null'
          description: Secret ID of CA revocation list file
          title: Crl Secret Id
        healthmonitor:
          anyOf:
            - $ref: '#/components/schemas/LbHealthMonitorSerializer'
            - type: 'null'
          description: Health monitor parameters
          examples:
            - admin_state_up: true
              delay: 10
              domain_name: example.com
              http_method: GET
              http_version: '1.1'
              max_retries: 3
              max_retries_down: 3
              timeout: 5
              type: HTTP
              url_path: /
        id:
          description: Pool ID
          example: 9fccf0a3-c0de-441d-9afd-2b9b58b08b9f
          examples:
            - 9fccf0a3-c0de-441d-9afd-2b9b58b08b9f
          format: uuid4
          title: Id
          type: string
        lb_algorithm:
          $ref: '#/components/schemas/LbAlgorithmEnum'
          description: Load balancer algorithm
          examples:
            - ROUND_ROBIN
        listeners:
          description: Listeners IDs
          example:
            - id: c63341da-ea44-4027-bbf6-1f1939c783da
          examples:
            - - id: c63341da-ea44-4027-bbf6-1f1939c783da
          items:
            $ref: '#/components/schemas/MandatoryIdSerializerPydantic'
          title: Listeners
          type: array
        loadbalancers:
          description: Load balancers IDs
          example:
            - id: 79943b39-5e67-47e1-8878-85044b39667a
          examples:
            - - id: 79943b39-5e67-47e1-8878-85044b39667a
          items:
            $ref: '#/components/schemas/MandatoryIdSerializerPydantic'
          title: Loadbalancers
          type: array
        members:
          description: Pool members
          items:
            anyOf:
              - $ref: '#/components/schemas/LbPoolMemberSerializer'
              - $ref: '#/components/schemas/DetailedLbPoolMemberSerializer'
          title: Members
          type: array
        name:
          description: Pool name
          example: lbaas_test_pool
          examples:
            - lbaas_test_pool
          pattern: ^[a-zA-Z0-9][a-zA-Z 0-9._\-]{1,61}[a-zA-Z0-9._]$
          title: Name
          type: string
        operating_status:
          $ref: '#/components/schemas/OperatingStatusEnum'
          description: Pool operating status
          examples:
            - ONLINE
        protocol:
          $ref: '#/components/schemas/LbPoolProtocolEnum'
          description: Protocol
          examples:
            - TCP
        provisioning_status:
          $ref: '#/components/schemas/ProvisioningStatusEnum'
          description: Pool lifecycle status
          examples:
            - ACTIVE
        secret_id:
          anyOf:
            - format: uuid4
              type: string
            - type: 'null'
          description: Secret ID for TLS client authentication to the member servers
          title: Secret Id
        session_persistence:
          anyOf:
            - $ref: '#/components/schemas/LbSessionPersistence'
            - type: 'null'
          description: Session persistence parameters
        task_id:
          anyOf:
            - format: uuid4
              type: string
            - type: 'null'
          description: >-
            The UUID of the active task that currently holds a lock on the
            resource. This lock prevents concurrent modifications to ensure
            consistency. If `null`, the resource is not locked.
          examples:
            - null
          title: Task Id
        timeout_client_data:
          anyOf:
            - maximum: 86400000
              minimum: 0
              type: integer
            - type: 'null'
          deprecated: true
          description: Frontend client inactivity timeout in milliseconds
          examples:
            - 50000
          title: Timeout Client Data
        timeout_member_connect:
          anyOf:
            - maximum: 86400000
              minimum: 0
              type: integer
            - type: 'null'
          description: Backend member connection timeout in milliseconds
          examples:
            - 50000
          title: Timeout Member Connect
        timeout_member_data:
          anyOf:
            - maximum: 86400000
              minimum: 0
              type: integer
            - type: 'null'
          description: Backend member inactivity timeout in milliseconds
          examples:
            - null
          title: Timeout Member Data
      required:
        - id
        - name
        - lb_algorithm
        - protocol
        - loadbalancers
        - listeners
        - members
        - session_persistence
        - operating_status
        - provisioning_status
        - creator_task_id
        - task_id
        - timeout_client_data
        - timeout_member_connect
        - timeout_member_data
        - secret_id
        - crl_secret_id
        - ca_secret_id
        - healthmonitor
        - admin_state_up
      title: LbPoolSerializer
      type: object
    LbHealthMonitorSerializer:
      properties:
        admin_state_up:
          description: >-
            Administrative state of the resource. When set to true, the resource
            is enabled and operational. When set to false, the resource is
            disabled and will not process traffic. Defaults to true.
          example: false
          examples:
            - false
          title: Admin State Up
          type: boolean
        delay:
          description: The time, in seconds, between sending probes to members
          example: 10
          examples:
            - 10
          maximum: 2147483647
          minimum: 1
          title: Delay
          type: integer
        domain_name:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Domain name for HTTP host header. Can only be used together with
            `HTTP` or `HTTPS` health monitor type.
          examples:
            - example.com
          title: Domain Name
        expected_codes:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          description: >-
            Expected HTTP response codes. Can be a single code or a range of
            codes. Can only be used together with `HTTP` or `HTTPS` health
            monitor type. For example, 200,202,300-302,401,403,404,500-504. If
            not specified, the default is 200.
          examples:
            - 200,301,302
          title: Expected Codes
        http_method:
          anyOf:
            - $ref: '#/components/schemas/HttpMethodEnum'
            - type: 'null'
          default: null
          description: HTTP method
          examples:
            - GET
        http_version:
          anyOf:
            - enum:
                - '1.0'
                - '1.1'
              type: string
            - type: 'null'
          description: >-
            HTTP version. Can only be used together with `HTTP` or `HTTPS`
            health monitor type.
          examples:
            - '1.1'
            - '1.0'
          title: Http Version
        id:
          description: Health monitor ID
          example: 2eb5823b-9cdc-45cd-97c0-c95cc2278422
          examples:
            - 2eb5823b-9cdc-45cd-97c0-c95cc2278422
          format: uuid4
          title: Id
          type: string
        max_retries:
          description: Number of successes before the member is switched to ONLINE state
          example: 2
          examples:
            - 2
          maximum: 10
          minimum: 1
          title: Max Retries
          type: integer
        max_retries_down:
          description: Number of failures before the member is switched to ERROR state
          example: 3
          examples:
            - 3
          maximum: 10
          minimum: 1
          title: Max Retries Down
          type: integer
        operating_status:
          $ref: '#/components/schemas/OperatingStatusEnum'
          description: Health Monitor operating status
          examples:
            - ONLINE
            - DRAINING
            - OFFLINE
            - DEGRADED
            - ERROR
            - NO_MONITOR
        provisioning_status:
          $ref: '#/components/schemas/ProvisioningStatusEnum'
          description: Health monitor lifecycle status
          examples:
            - ACTIVE
        timeout:
          description: The maximum time to connect. Must be less than the delay value
          example: 5
          examples:
            - 5
          maximum: 2147483
          title: Timeout
          type: integer
        type:
          $ref: '#/components/schemas/HealthMonitorTypeEnum'
          description: >-
            Health monitor type. Once health monitor is created, cannot be
            changed.
          examples:
            - HTTP
        url_path:
          anyOf:
            - minLength: 1
              type: string
            - type: 'null'
          default: null
          description: URL Path. Defaults to '/'
          examples:
            - /
          title: Url Path
      required:
        - delay
        - max_retries
        - timeout
        - id
        - type
        - max_retries_down
        - operating_status
        - provisioning_status
        - admin_state_up
        - http_version
        - domain_name
      title: LbHealthMonitorSerializer
      type: object
    LbAlgorithmEnum:
      enum:
        - LEAST_CONNECTIONS
        - ROUND_ROBIN
        - SOURCE_IP
      title: LbAlgorithmEnum
      type: string
    MandatoryIdSerializerPydantic:
      properties:
        id:
          description: Resource ID
          example: ae74714c-c380-48b4-87f8-758d656cdad6
          examples:
            - ae74714c-c380-48b4-87f8-758d656cdad6
          format: uuid4
          title: Id
          type: string
      required:
        - id
      title: MandatoryIdSchema schema
      type: object
    LbPoolMemberSerializer:
      properties:
        id:
          description: Member ID must be provided if an existing member is being updated
          example: a7e7e8d6-0bf7-4ac9-8170-831b47ee2ba9
          examples:
            - a7e7e8d6-0bf7-4ac9-8170-831b47ee2ba9
          format: uuid4
          title: Id
          type: string
      required:
        - id
      title: LbPoolMemberSerializer
      type: object
    DetailedLbPoolMemberSerializer:
      properties:
        address:
          description: Member IP address
          example: 192.168.40.33
          examples:
            - 192.168.40.33
          format: ipvanyaddress
          title: Address
          type: string
        admin_state_up:
          description: >-
            Administrative state of the resource. When set to true, the resource
            is enabled and operational. When set to false, the resource is
            disabled and will not process traffic. Defaults to true.
          example: false
          examples:
            - false
          title: Admin State Up
          type: boolean
        backup:
          description: >-
            Set to true if the member is a backup member, to which traffic will
            be sent exclusively when all non-backup members will be unreachable.
            It allows to realize ACTIVE-BACKUP load balancing without thinking
            about VRRP and VIP configuration. Default is false
          example: true
          examples:
            - true
            - false
          title: Backup
          type: boolean
        id:
          description: Member ID must be provided if an existing member is being updated
          example: a7e7e8d6-0bf7-4ac9-8170-831b47ee2ba9
          examples:
            - a7e7e8d6-0bf7-4ac9-8170-831b47ee2ba9
          format: uuid4
          title: Id
          type: string
        monitor_address:
          anyOf:
            - format: ipvanyaddress
              type: string
            - type: 'null'
          default: null
          description: >-
            An alternate IP address used for health monitoring of a backend
            member. Default is null which monitors the member address.
          examples:
            - null
          title: Monitor Address
        monitor_port:
          anyOf:
            - maximum: 65535
              minimum: 1
              type: integer
            - type: 'null'
          default: null
          description: >-
            An alternate protocol port used for health monitoring of a backend
            member. Default is null which monitors the member `protocol_port`.
          examples:
            - null
          title: Monitor Port
        operating_status:
          $ref: '#/components/schemas/OperatingStatusEnum'
          description: Member operating status of the entity
          examples:
            - ONLINE
            - DRAINING
            - OFFLINE
            - DEGRADED
            - ERROR
            - NO_MONITOR
        protocol_port:
          description: Member IP port
          example: 80
          examples:
            - 80
          maximum: 65535
          minimum: 1
          title: Protocol Port
          type: integer
        provisioning_status:
          $ref: '#/components/schemas/ProvisioningStatusEnum'
          description: Pool member lifecycle status
          examples:
            - ACTIVE
        subnet_id:
          anyOf:
            - format: uuid4
              type: string
            - type: 'null'
          description: '`subnet_id` in which `address` is present.'
          examples:
            - 32283b0b-b560-4690-810c-f672cbb2e28d
          title: Subnet Id
        weight:
          description: >-
            Member weight. Valid values are 0 < `weight` <= 256, defaults to 1.
            Controls traffic distribution based on the pool's load balancing
            algorithm:

            - `ROUND_ROBIN`: Distributes connections to each member in turn
            according to weights. Higher weight = more turns in the cycle.
            Example: weights 3 vs 1 = ~75% vs ~25% of requests.

            - `LEAST_CONNECTIONS`: Sends new connections to the member with
            fewest active connections, performing round-robin within groups of
            the same normalized load. Higher weight = allowed to hold more
            simultaneous connections before being considered 'more loaded'.
            Example: weights 2 vs 1 means 20 vs 10 active connections is treated
            as balanced.

            - `SOURCE_IP`: Routes clients consistently to the same member by
            hashing client source IP; hash result is modulo total weight of
            running members. Higher weight = more hash buckets, so more client
            IPs map to that member. Example: weights 2 vs 1 = roughly two-thirds
            of distinct client IPs map to the higher-weight member.
          example: 1
          examples:
            - 1
          exclusiveMinimum: 0
          maximum: 256
          title: Weight
          type: integer
      required:
        - protocol_port
        - address
        - id
        - operating_status
        - provisioning_status
        - admin_state_up
        - weight
        - subnet_id
        - backup
      title: DetailedLbPoolMemberSerializer
      type: object
    OperatingStatusEnum:
      enum:
        - DEGRADED
        - DRAINING
        - ERROR
        - NO_MONITOR
        - OFFLINE
        - ONLINE
      title: OperatingStatusEnum
      type: string
    LbPoolProtocolEnum:
      enum:
        - HTTP
        - HTTPS
        - PROXY
        - PROXYV2
        - TCP
        - UDP
      title: LbPoolProtocolEnum
      type: string
    ProvisioningStatusEnum:
      enum:
        - ACTIVE
        - DELETED
        - ERROR
        - PENDING_CREATE
        - PENDING_DELETE
        - PENDING_UPDATE
      title: ProvisioningStatusEnum
      type: string
    LbSessionPersistence:
      properties:
        cookie_name:
          anyOf:
            - pattern: ^[a-zA-Z0-9][a-zA-Z 0-9._\-]{1,61}[a-zA-Z0-9._]$
              type: string
            - type: 'null'
          default: null
          description: Should be set if app cookie or http cookie is used
          examples:
            - cookie_name
          title: Cookie Name
        persistence_granularity:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          description: Subnet mask if `source_ip` is used. For UDP ports only
          title: Persistence Granularity
        persistence_timeout:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          description: Session persistence timeout. For UDP ports only
          title: Persistence Timeout
        type:
          $ref: '#/components/schemas/SessionPersistenceTypeEnum'
          description: Session persistence type
          examples:
            - APP_COOKIE
      required:
        - type
      title: LbSessionPersistence
      type: object
    HttpMethodEnum:
      enum:
        - CONNECT
        - DELETE
        - GET
        - HEAD
        - OPTIONS
        - PATCH
        - POST
        - PUT
        - TRACE
      title: HttpMethodEnum
      type: string
    HealthMonitorTypeEnum:
      enum:
        - HTTP
        - HTTPS
        - K8S
        - PING
        - TCP
        - TLS-HELLO
        - UDP-CONNECT
      title: HealthMonitorTypeEnum
      type: string
    SessionPersistenceTypeEnum:
      enum:
        - APP_COOKIE
        - HTTP_COOKIE
        - SOURCE_IP
      title: SessionPersistenceTypeEnum
      type: string
  securitySchemes:
    APIKey:
      description: >-
        API key for authentication. Make sure to include the word `apikey`,
        followed by a single space and then your token.

        Example: `apikey 1234$abcdef`
      type: apiKey
      in: header
      name: Authorization

````