---
title: "Creates an external load balancer in the project and returns the async operation."
method: POST
path: "/projects/{project_id}/networking/load-balancers"
tags: ["Load Balancers"]
---

# Creates an external load balancer in the project and returns the async operation.

`POST /projects/{project_id}/networking/load-balancers`

This endpoint creates a new external load balancer in the specified project. The request must include the VPC ID, name, location, and at least one listen port with its associated backends.

## Path parameters

- `project_id` string, required

## Request body

- ExternalLoadBalancerPostRequest
  - `health_check_options` HealthCheckOptionsExternalLB
    - `failure_count` integer, required — Number of allowed failures before considering the backend unhealthy.
    - `interval` integer, required — Interval between health checks (in seconds).
    - `success_count` integer, required — Number of successful checks required to consider the backend healthy.
    - `timeout` integer, required — Timeout for health check responses (in seconds).
  - `listen_ports_and_backends` ListenPortAndBackend[], required — Listen ports and associated backends configuration.
    - `backends` Backend[], required — List of backend configurations.
      - `ip` string, required — IP address of the backend server.
      - `port` integer, required — Port on which the backend server listens.
      - `status` string, required — Status of the backend server.
    - `listen_port` integer, required — Port on which the load balancer listens.
  - `location` string, required — Location of the External Load Balancer.
  - `name` string, required — Name of the External Load Balancer.
  - `protocol` string, required — The protocol of the External Load Balancer.
  - `vpc_id` string, required — ID of the VPC network this External Load Balancer belongs to.

## Response `200`

- AsyncOperationResponse
  - `operation` Operation, required — Individual resources that use Operations should populate the `metadata` field with resource-specific information.
    - `completed_at` string, required
    - `metadata` string, required
    - `operation_id` string, required
    - `result` string
    - `started_at` string, required
    - `state` 'IN_PROGRESS' | 'SUCCEEDED' | 'FAILED', required

## Other responses

- `401` — Error Authentication Failed
- `403` — Error Permissions
- `500` — Error Internal Server

---

[API](https://skmtc.net/crusoecloud/apis/crusoe-cloud-api-gateway.md) · [All operations](https://skmtc.net/crusoecloud/apis/crusoe-cloud-api-gateway/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/crusoecloud/crusoe-cloud-api-gateway/versions/a3fd2dedc72b/schema)
