Load Balancers

Contents

Load Balancers

Allow the user to manage load balancers.

List load balancers

GET /v3/network/load_balancers

Lists all load balancers.

Inputs

None

Returns

An array of load balancers of the following format:

Field Type Description
id String Identifier of the load balancer.
name String Name of the load balancer.
remote_id String Remote id of the load balancer.
state String State of the load balancer.
load_balancer_plan_id String Identifier of the load balancer plan of the load balancer.
vpc_id String Identifier of the VPC in which the load balancer is.
cloud_account_id String Identifier of the cloud account of the load balancer.
realm_id String Identifier of the realm of the load balancer.
dns_name String Name of the DNS of the load balancer.
global_state String A global state of the load balancer and all its subcomponents.
resource_type String An identifier for the type of resource, specifically "load_balancer".
desired_remote_id String Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards.
label_ids Array of Strings List of ids corresponding to the labels the load balancer has assigned.

Back to top

Show load balancer

GET /v3/network/load_balancers/:id

Shows information about a specific load balancer.

Inputs

None

Returns

a load balancer of the following format:

Field Type Description
id String Identifier of the load balancer.
name String Name of the load balancer.
remote_id String Remote id of the load balancer.
state String State of the load balancer.
load_balancer_plan_id String Identifier of the load balancer plan of the load balancer.
vpc_id String Identifier of the VPC in which the load balancer is.
cloud_account_id String Identifier of the cloud account of the load balancer.
realm_id String Identifier of the realm of the load balancer.
dns_name String Name of the DNS of the load balancer.
global_state String A global state of the load balancer and all its subcomponents.
resource_type String An identifier for the type of resource, specifically "load_balancer".
desired_remote_id String Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards.
label_ids Array of Strings List of ids corresponding to the labels the load balancer has assigned.

Back to top

Create load balancer

POST /v3/network/load_balancers

Creates a new load balancer.

Inputs

Field Type Description Required
name String Name of the load balancer Yes
cloud_account_id String Identifier of the cloud account of the load balancer. Yes
load_balancer_plan_id String Identifier of the load balancer plan of the load balancer. Yes
vpc_id String Identifier of the VPC in which the load balancer is. Yes
desired_remote_id String Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards. No
label_ids String List of ids corresponding to the labels the load balancer has assigned. Yes

Returns

a load balancer of the following format:

Field Type Description
id String Identifier of the load balancer.
name String Name of the load balancer.
remote_id String Remote id of the load balancer.
state String State of the load balancer.
load_balancer_plan_id String Identifier of the load balancer plan of the load balancer.
vpc_id String Identifier of the VPC in which the load balancer is.
cloud_account_id String Identifier of the cloud account of the load balancer.
realm_id String Identifier of the realm of the load balancer.
dns_name String Name of the DNS of the load balancer.
global_state String A global state of the load balancer and all its subcomponents.
resource_type String An identifier for the type of resource, specifically "load_balancer".
desired_remote_id String Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards.
label_ids Array of Strings List of ids corresponding to the labels the load balancer has assigned.

Back to top

Update load balancer

PUT /v3/network/load_balancers/:id

Updates an existing load balancer.

Inputs

Field Type Description Required
name String The new name of the load balancer. No

Returns

a load balancer of the following format:

Field Type Description
id String Identifier of the load balancer.
name String Name of the load balancer.
remote_id String Remote id of the load balancer.
state String State of the load balancer.
load_balancer_plan_id String Identifier of the load balancer plan of the load balancer.
vpc_id String Identifier of the VPC in which the load balancer is.
cloud_account_id String Identifier of the cloud account of the load balancer.
realm_id String Identifier of the realm of the load balancer.
dns_name String Name of the DNS of the load balancer.
global_state String A global state of the load balancer and all its subcomponents.
resource_type String An identifier for the type of resource, specifically "load_balancer".
desired_remote_id String Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards.
label_ids Array of Strings List of ids corresponding to the labels the load balancer has assigned.

Back to top

Destroy load balancer

DELETE /v3/network/load_balancers/:id

Destroys a load balancer.

Inputs

None

Returns

the destroyed load balancer with the following format:

Field Type Description
id String Identifier of the load balancer.
name String Name of the load balancer.
remote_id String Remote id of the load balancer.
state String State of the load balancer.
load_balancer_plan_id String Identifier of the load balancer plan of the load balancer.
vpc_id String Identifier of the VPC in which the load balancer is.
cloud_account_id String Identifier of the cloud account of the load balancer.
realm_id String Identifier of the realm of the load balancer.
dns_name String Name of the DNS of the load balancer.
global_state String A global state of the load balancer and all its subcomponents.
resource_type String An identifier for the type of resource, specifically "load_balancer".
desired_remote_id String Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards.
label_ids Array of Strings List of ids corresponding to the labels the load balancer has assigned.

Back to top

Retry load balancer

PUT /v3/network/load_balancers/:id/retry

Retries the application of a load balancer from IMCO.

Inputs

None

Returns

the retried load balancer with the following format:

Field Type Description
id String Identifier of the load balancer.
name String Name of the load balancer.
remote_id String Remote id of the load balancer.
state String State of the load balancer.
load_balancer_plan_id String Identifier of the load balancer plan of the load balancer.
vpc_id String Identifier of the VPC in which the load balancer is.
cloud_account_id String Identifier of the cloud account of the load balancer.
realm_id String Identifier of the realm of the load balancer.
dns_name String Name of the DNS of the load balancer.
global_state String A global state of the load balancer and all its subcomponents.
resource_type String An identifier for the type of resource, specifically "load_balancer".
desired_remote_id String Identifier that the user wants to have as Identifier of the resource on the cloud. Available from version 10.3 onwards.
label_ids Array of Strings List of ids corresponding to the labels the load balancer has assigned.

Back to top

Load Balancer Plans

Allow the user to manage load balancer plans.

Show load balancer plan

GET /v3/network/load_balancer_plans/:id

Shows information about a specific load balancer plan.

Inputs

None

Returns

a load balancer plan of the following format:

Field Type Description
id String Identifier of the load balancer plan.
name String Name of the load balancer plan.
protocol String The protocol of the load balancer plan.
rule_fields String State of the load balancer.
health_check_protocols Array of Strings List of protocols available in the load balancer plan.
health_check_interval_valid_values Hash An object defining a set of valid values for the health check interval. It has a key to define whether is a range of values or a list of values.
health_check_timeout_valid_values Hash An object defining a set of valid values for the health check timeout. It has a key to define whether is a range of values or a list of values.
health_check_threshold_count_valid_values Hash An object defining a set of valid values for the health check threshold count. It has a key to define whether is a range of values or a list of values.
realm_id String Identifier of the realm of the load balancer plan.
realm_provider_name String Name of the realm of the cloud provider.
flavour_provider_name String Name of the flavour of the cloud provider.
deprecated Boolean Indicates if the load balancer plan is deprecated.
resource_type String An identifier for the type of resource, specifically "load_balancer_plan".

Back to top

Target groups

Allow the user to manage target groups of a load balancer.

List target groups

GET /v3/network/load_balancers/:load_balancer_id/target_groups

Lists all target groups of a load balancer.

Inputs

None

Returns

An array of target groups of the following format:

Field Type Description
id String Identifier of the target group.
name String Name of the target group.
remote_id String Remote id of the target group.
state String State of the target group.
port Integer Port of the target group.
protocol String The protocol of the target group.
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target.
health_check_protocol String The protocol of the health check of the target group.
health_check_port Integer Port of the health check of the target group.
health_check_interval Integer Interval of the health check of the target group.
health_check_timeout Integer The timeout of the health check of the target group.
health_check_threshold_count Integer Threshold count of the health check of the target group.
health_check_path String Path of the health check of the target group.
load_balancer_id String Identifier of the load balance of the target group.
resource_type String An identifier for the type of resource, specifically "target_group".

Back to top

Show target group

GET /v3/network/target_groups/:id

Shows information about a target group.

Inputs

None

Returns

A target group of the following format:

Field Type Description
id String Identifier of the target group.
name String Name of the target group.
remote_id String Remote id of the target group.
state String State of the target group.
port Integer Port of the target group.
protocol String The protocol of the target group.
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target.
health_check_protocol String The protocol of the health check of the target group.
health_check_port Integer Port of the health check of the target group.
health_check_interval Integer Interval of the health check of the target group.
health_check_timeout Integer The timeout of the health check of the target group.
health_check_threshold_count Integer Threshold count of the health check of the target group.
health_check_path String Path of the health check of the target group.
load_balancer_id String Identifier of the load balance of the target group.
resource_type String An identifier for the type of resource, specifically "target_group".

Back to top

Create target group

POST /v3/network/load_balancers/:load_balancer_id/target_groups

Creates a new target group in a load balancer.

Inputs

Field Type Description Required
name String Name of the target group. Yes
port Integer Port of the target group. Yes
protocol String The protocol of the target group. Yes
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target. No
health_check_protocol String The protocol of the health check of the target group. Yes
health_check_port Integer Port of the health check of the target group. No
health_check_interval Integer Interval of the health check of the target group. Yes
health_check_timeout Integer The timeout of the health check of the target group. Yes
health_check_threshold_count Integer Threshold count of the health check of the target group. Yes
health_check_path String Path of the health check of the target group. No
load_balancer_id String Identifier of the load balancer of the target group. Yes

Returns

A target group of the following format:

Field Type Description
id String Identifier of the target group.
name String Name of the target group.
remote_id String Remote id of the target group.
state String State of the target group.
port Integer Port of the target group.
protocol String The protocol of the target group.
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target.
health_check_protocol String The protocol of the health check of the target group.
health_check_port Integer Port of the health check of the target group.
health_check_interval Integer Interval of the health check of the target group.
health_check_timeout Integer The timeout of the health check of the target group.
health_check_threshold_count Integer Threshold count of the health check of the target group.
health_check_path String Path of the health check of the target group.
load_balancer_id String Identifier of the load balance of the target group.
resource_type String An identifier for the type of resource, specifically "target_group".

Back to top

Update target group

PUT /v3/network/target_groups/:id

Updates an existing target group.

Inputs

Field Type Description Required
name String Name of the target group Yes
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target. No
health_check_protocol String The protocol of the health check of the target group. Yes
health_check_port Integer Port of the health check of the target group. No
health_check_interval Integer Interval of the health check of the target group. Yes
health_check_timeout Integer The timeout of the health check of the target group. Yes
health_check_threshold_count Integer Threshold count of the health check of the target group. Yes
health_check_path String Path of the health check of the target group. No

Returns

A target group of the following format:

Field Type Description
id String Identifier of the target group.
name String Name of the target group.
remote_id String Remote id of the target group.
state String State of the target group.
port Integer Port of the target group.
protocol String The protocol of the target group.
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target.
health_check_protocol String The protocol of the health check of the target group.
health_check_port Integer Port of the health check of the target group.
health_check_interval Integer Interval of the health check of the target group.
health_check_timeout Integer The timeout of the health check of the target group.
health_check_threshold_count Integer Threshold count of the health check of the target group.
health_check_path String Path of the health check of the target group.
load_balancer_id String Identifier of the load balance of the target group.
resource_type String An identifier for the type of resource, specifically "target_group".

Back to top

Destroy target group

DELETE /v3/network/target_groups/:id

Destroys a target group.

Inputs

None

Returns

The destroyed target group with the following format:

Field Type Description
id String Identifier of the target group.
name String Name of the target group.
remote_id String Remote id of the target group.
state String State of the target group.
port Integer Port of the target group.
protocol String The protocol of the target group.
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target.
health_check_protocol String The protocol of the health check of the target group.
health_check_port Integer Port of the health check of the target group.
health_check_interval Integer Interval of the health check of the target group.
health_check_timeout Integer The timeout of the health check of the target group.
health_check_threshold_count Integer Threshold count of the health check of the target group.
health_check_path String Path of the health check of the target group.
load_balancer_id String Identifier of the load balance of the target group.
resource_type String An identifier for the type of resource, specifically "target_group".

Back to top

Retry target group

PUT /v3/network/target_groups/:id/retry

Retries the application of a target group of a load balancer from IMCO.

Inputs

None

Returns

the retried target group with the following format:

Field Type Description
id String Identifier of the target group.
name String Name of the target group.
remote_id String Remote id of the target group.
state String State of the target group.
port Integer Port of the target group.
protocol String The protocol of the target group.
stickiness Boolean Flag to indicate whether requests from the same origin must be redirected to the same target.
health_check_protocol String The protocol of the health check of the target group.
health_check_port Integer Port of the health check of the target group.
health_check_interval Integer Interval of the health check of the target group.
health_check_timeout Integer The timeout of the health check of the target group.
health_check_threshold_count Integer Threshold count of the health check of the target group.
health_check_path String Path of the health check of the target group.
load_balancer_id String Identifier of the load balance of the target group.
resource_type String An identifier for the type of resource, specifically "target_group".

Back to top

List of targets in a target group

GET /v3/network/target_groups/:target_group_id/targets

Lists all targets of a target group.

Inputs

None

Returns

An array of targets of the following format:

Field Type Description
id String Identifier of the target group.
resource_type String An identifier for the type of resource, specifically "server" or "server_array".

Back to top

Create a target in a target group

POST /v3/network/target_groups/:target_group_id/targets

Creates a target in a target group.

Inputs

Field Type Description Required
id String Identifier of the server or server array. Yes
resource_type String The identifier for the type of resource, specifically "server" or "server_array". Yes

Returns

An array of targets of the following format:

Field Type Description
id String Identifier of the target group.
resource_type String An identifier for the type of resource, specifically "server" or "server_array".

Back to top

Destroy a target in a target group

DELETE /v3/network/target_groups/:target_group_id/targets/:resource_type/:id

Destroys a target in a target group.

Inputs

None

Returns

None

Back to top

Listeners

Allow the user to manage listeners of a load balancer.

List listeners

GET /v3/network/load_balancers/:load_balancer_id/listeners

Lists all listeners of a load balancer.

Inputs

None

Returns

An array of listeners of the following format:

Field Type Description
id String Identifier of the listener.
remote_id String Remote id of the listener.
state String State of the listener.
port Integer Port of the listener.
protocol String The protocol of the listener.
load_balancer_id String Identifier of the load balancer of the listener.
default_target_group_id String Identifier of the target group of the listener.
certificate_id String Identifier of the certificate of the listener.
resource_type String An identifier for the type of resource, specifically "listener".

Back to top

Show listener

GET /v3/network/listeners/:id

Shows information about a listener.

Inputs

None

Returns

A listener of the following format:

Field Type Description
id String Identifier of the listener.
remote_id String Remote id of the listener.
state String State of the listener.
port Integer Port of the listener.
protocol String The protocol of the listener.
load_balancer_id String Identifier of the load balancer of the listener.
default_target_group_id String Identifier of the target group of the listener.
certificate_id String Identifier of the certificate of the listener.
resource_type String An identifier for the type of resource, specifically "listener".

Back to top

Create listener

POST /v3/network/load_balancers/:load_balancer_id/listeners

Creates a new listener in a load balancer.

Inputs

Field Type Description Required
port Integer Port of the listener. Yes
protocol String The protocol of the listener. Yes
default_target_group_id String Identifier of the target group of the listener. Yes
certificate_id String Identifier of the certificate of the listener. No

Returns

A listener of the following format:

Field Type Description
id String Identifier of the listener.
remote_id String Remote id of the listener.
state String State of the listener.
port Integer Port of the listener.
protocol String The protocol of the listener.
load_balancer_id String Identifier of the load balancer of the listener.
default_target_group_id String Identifier of the target group of the listener.
certificate_id String Identifier of the certificate of the listener.
resource_type String An identifier for the type of resource, specifically "listener".

Back to top

Update listener

PUT /v3/network/listeners/:id

Updates an existing listener.

Inputs

Field Type Description Required
default_target_group_id String Identifier of the target group of the listener. No
certificate_id String Identifier of the certificate of the listener. No

Returns

A listener of the following format:

Field Type Description
id String Identifier of the listener.
remote_id String Remote id of the listener.
state String State of the listener.
port Integer Port of the listener.
protocol String The protocol of the listener.
load_balancer_id String Identifier of the load balancer of the listener.
default_target_group_id String Identifier of the target group of the listener.
certificate_id String Identifier of the certificate of the listener.
resource_type String An identifier for the type of resource, specifically "listener".

Back to top

Destroy listener

DELETE /v3/network/listeners/:id

Destroys a listener.

Inputs

None

Returns

The destroyed listener with the following format:

Field Type Description
id String Identifier of the listener.
remote_id String Remote id of the listener.
state String State of the listener.
port Integer Port of the listener.
protocol String The protocol of the listener.
load_balancer_id String Identifier of the load balancer of the listener.
default_target_group_id String Identifier of the target group of the listener.
certificate_id String Identifier of the certificate of the listener.
resource_type String An identifier for the type of resource, specifically "listener".

Back to top

Retry listener

PUT /v3/network/listeners/:id/retry

Retries the application of a listener of a load balancer from IMCO.

Inputs

None

Returns

The retried listener with the following format:

Field Type Description
id String Identifier of the listener.
remote_id String Remote id of the listener.
state String State of the listener.
port Integer Port of the listener.
protocol String The protocol of the listener.
load_balancer_id String Identifier of the load balancer of the listener.
default_target_group_id String Identifier of the target group of the listener.
certificate_id String Identifier of the certificate of the listener.
resource_type String An identifier for the type of resource, specifically "listener".

Back to top

List of rules in a listener

GET /v3/network/listeners/:listener_id/rules

Lists all rules of a listener.

Inputs

None

Returns

An array of rules of the following format:

Field Type Description
id String Identifier of the rule.
field String Field of the rule.
values Array of Strings Values of the rule.
listener_id String Identifier of the listener of the rule.
target_group_id String Identifier of the target group of the rule
resource_type String An identifier for the type of resource, specifically "rule".

Back to top

Create a rule in a listener

POST /v3/network/listeners/:listener_id/rules

Creates a rule in a listener.

Inputs

Field Type Description
field String Field of the rule.
values Array of Strings Values of the rule.
target_group_id String Identifier of the target group of the rule

Returns

The rule of the following format:

Field Type Description
id String Identifier of the rule.
field String Field of the rule.
values Array of Strings Values of the rule.
listener_id String Identifier of the listener of the rule.
target_group_id String Identifier of the target group of the rule
resource_type String An identifier for the type of resource, specifically "rule".

Back to top

Update a rule in a listener

PUT /v3/network/listeners/:listener_id/rules/:id

Updates a rule in a listener.

Inputs

Field Type Description
field String Field of the rule.
values Array of Strings Values of the rule.

Returns

The rule of the following format:

Field Type Description
id String Identifier of the rule.
field String Field of the rule.
values Array of Strings Values of the rule.
listener_id String Identifier of the listener of the rule.
target_group_id String Identifier of the target group of the rule
resource_type String An identifier for the type of resource, specifically "rule".

Back to top

Destroy a rule in a listener

DELETE /v3/network/listeners/:listener_id/rules/:id

Destroys a rule in a listener.

Inputs

None

Returns

None

Back to top

Certificates

Allow the user to manage certificates of a load balancer.

List certificates

GET /v3/network/load_balancers/:load_balancer_id/certificates

Lists all certificates of a load balancer.

Inputs

None

Returns

An array of certificates of the following format:

Field Type Description
id String Identifier of the certificate.
name String Name of the certificate.
public_key String The public key of the certificate.
chain String Chain of the certificate.
load_balancer_id String Identifier of the load balance of the certificate.
resource_type String An identifier for the type of resource, specifically "certificate".

Back to top

Show certificate

GET /v3/network/load_balancers/:load_balancer_id/certificates/:id

Shows information about a certificate.

Inputs

None

Returns

A certificate of the following format:

Field Type Description
id String Identifier of the certificate.
name String Name of the certificate.
public_key String The public key of the certificate.
chain String Chain of the certificate.
load_balancer_id String Identifier of the load balance of the certificate.
resource_type String An identifier for the type of resource, specifically "certificate".

Back to top

Create certificate

POST /v3/network/load_balancers/:load_balancer_id/certificates

Creates a new certificate in a load balancer.

Inputs

Field Type Description Required
name String Name of the certificate. Yes
public_key String The public key of the certificate. Yes
chain String Chain of the certificate. Yes
private_key String The private key of the certificate. Yes
load_balancer_id String Identifier of the load balancer of the certificate. Yes

Returns

A certificate of the following format:

Field Type Description
id String Identifier of the certificate.
name String Name of the certificate.
public_key String The public key of the certificate.
chain String Chain of the certificate.
load_balancer_id String Identifier of the load balance of the certificate.
resource_type String An identifier for the type of resource, specifically "certificate".

Back to top

Update certificate

PUT /v3/network/load_balancers/:load_balancer_id/certificates/:id

Updates an existing certificate.

Inputs

Field Type Description Required
name String Name of the target group Yes

Returns

A certificate of the following format:

Field Type Description
id String Identifier of the certificate.
name String Name of the certificate.
public_key String The public key of the certificate.
chain String Chain of the certificate.
load_balancer_id String Identifier of the load balance of the certificate.
resource_type String An identifier for the type of resource, specifically "certificate".

Back to top

Destroy certificate

DELETE /v3/network/load_balancers/:load_balancer_id/certificates/:id

Destroys a certificate.

Inputs

None

Returns

None

Back to top