Create a Frontend
Create a new frontend on the given load balancer.
A frontend is the entry point for incoming traffic. It defines which ports to listen on, what protocol to use, and optional ACL rules to route traffic to different backends.
Authorization
bearer_auth Authentication
Create an API token on Profile, or with osctl auth login. Send it in the Authorization header:
Authorization: Bearer os1_...Do not use the Keycloak web-session JWT as an API token. Keep the secret secure and do not share it.
In: header
Path Parameters
A unique identifier for a load balancer instance.
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request body for creating or updating a frontend.
Response Body
application/json
application/json
text/pain
application/json
application/json
curl -X POST "https://example.com/v1/lbs/550e8400-e29b-41d4-a716-446655440000/frontends" \ -H "Content-Type: application/json" \ -d '{ "name": "https-frontend", "mode": "http", "binds": [ { "port": 443 } ] }'{ "name": "https-frontend", "mode": "http", "default_backend": "main-backend", "binds": [ { "port": 443, "ssl": true, "ssl_certificate": "my-cert", "use_http3": false } ], "acls": [ { "name": "is_api", "criterion": "path_beg", "value": "/api" } ], "backends": [ { "backend": "api-backend", "cond": "if", "test": "is_api" } ], "options": { "redirect_ssl": true, "forward_for": true }}{ "errors": [ { "message": "'vcpus' field must be an integer", "field": "resource_id" } ]}"Access denied"{ "errors": [ { "message": "User not initialized. Send POST /v1/init, then retry the request." } ]}{ "errors": [ { "message": "VM with ID 23 not found" } ]}