LBU API 2012-06-01

The Load Balancer Unit (LBU) API enables you to manage load balancers in the OUTSCALE Cloud.
It is compliant with the Elastic Load Balancing (ELB) API of Amazon Web Services (AWS). See the AWS Compatibility Matrix.

Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.

Endpoints

Name Base URL
ap-northeast-1 https://lbu.ap-northeast-1.outscale.com
cloudgouv-eu-west-1 https://lbu.cloudgouv-eu-west-1.outscale.com
eu-west-2 (default) https://lbu.eu-west-2.outscale.com
us-east-2 https://lbu.us-east-2.outscale.com
us-west-1 https://lbu.us-west-1.outscale.com

Terms of service. Email: support@outscale.com. License: BSD 3 Clause.

Authentication Schemes

Access Key/Secret Key

The main way to authenticate your requests to this API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in Signature of API Requests.

In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.

For example, if you use OSC CLI:

  1. You need to create an ~/.osc/config.json file to specify your access key, secret key, and the Region of your account.
  2. You then specify the --profile option when executing OSC CLI commands.

For more information, see Installing and Configuring OSC CLI.

See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see About Access Keys.

Other Security Mechanisms

In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see Managing Your API Accesses.

Load Balancers

ConfigureHealthCheck

POST /ConfigureHealthCheck

Configures the health checks settings of a specified load balancer.
This action enables you to configure the settings of the availability tests that are regularly sent by a specified load balancer to its backend instances.

This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu ConfigureHealthCheck --profile "default" \
  --HealthCheck '{
      "HealthyThreshold": 0,
      "Interval": 0,
      "Target": "string",
      "Timeout": 0,
      "UnhealthyThreshold": 0
    }' \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=ConfigureHealthCheck' \
  --data-urlencode 'HealthCheck.HealthyThreshold=0' \
  --data-urlencode 'HealthCheck.Interval=0' \
  --data-urlencode 'HealthCheck.Target=string' \
  --data-urlencode 'HealthCheck.Timeout=0' \
  --data-urlencode 'HealthCheck.UnhealthyThreshold=0' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
HealthCheck (required) HealthCheck Information about the health check configuration.
HealthyThreshold integer The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included).
Interval integer The number of seconds between two requests (between 5 and 600 both included).
Target string The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:
- Protocol: TCP, SSL, HTTP or HTTPS.
- Port: Between 1 and 65535, both included.
- Path: If you use the HTTP or HTTPS protocols, the request URL path.
Timeout integer The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included).
UnhealthyThreshold integer The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included).
LoadBalancerName (required) string The name of the load balancer.

Response Elements

Examples

200 Response

{
  "HealthCheck": {
    "HealthyThreshold": 0,
    "Interval": 0,
    "Target": "string",
    "Timeout": 0,
    "UnhealthyThreshold": 0
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (ConfigureHealthCheckResponse):

Response Element Type Description
HealthCheck HealthCheck Information about the health check configuration.
HealthyThreshold integer The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included).
Interval integer The number of seconds between two requests (between 5 and 600 both included).
Target string The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:

- Protocol: TCP, SSL, HTTP or HTTPS.

- Port: Between 1 and 65535, both included.

- Path: If you use the HTTP or HTTPS protocols, the request URL path.
Timeout integer The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included).
UnhealthyThreshold integer The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included).
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

CreateAppCookieStickinessPolicy

POST /CreateAppCookieStickinessPolicy

Creates a stickiness policy with sticky session lifetimes following the one of an application-generated cookie.
The created policy can be used only with HTTP listeners.
Unlike policies created using the CreateLBCookieStickinessPolicy method, the lifetime of the special Load Balancer Unit cookie follows the lifetime of the application-generated cookie specified in the policy configuration. The load balancer inserts a new stickiness cookie only when the application response includes a new application cookie.
The session stops being sticky if the application cookie is removed or expires, until a new application cookie is issued.

For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu CreateAppCookieStickinessPolicy --profile "default" \
  --CookieName "string" \
  --LoadBalancerName "string" \
  --PolicyName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=CreateAppCookieStickinessPolicy' \
  --data-urlencode 'CookieName=string' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'PolicyName=string'

Request Parameter Type Description
CookieName (required) string The name of the application cookie used for stickiness.
LoadBalancerName (required) string The name of the load balancer.
PolicyName (required) string The unique name of the policy (alphanumeric characters and dashes (-)).

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (CreateAppCookieStickinessPolicyResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

CreateLBCookieStickinessPolicy

POST /CreateLBCookieStickinessPolicy

Creates a stickiness policy with sticky session lifetimes defined by the browser lifetime or by a specified expiration period.
The created policy can be used with HTTP or HTTPS listeners only.
If this policy is implemented by a load balancer, this load balancer uses this cookie in all incoming requests to direct them to the specified backend server instance. If this cookie is not present, the load balancer sends the request to any other server according to its load-balancing algorithm.

For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu CreateLBCookieStickinessPolicy --profile "default" \
  --CookieExpirationPeriod 0 \
  --LoadBalancerName "string" \
  --PolicyName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=CreateLBCookieStickinessPolicy' \
  --data-urlencode 'CookieExpirationPeriod=0' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'PolicyName=string'

Request Parameter Type Description
CookieExpirationPeriod integer The lifetime of the cookie, in seconds. If not specified, the default value of this parameter is 1, which means that the sticky session lasts for the duration of the browser session.
LoadBalancerName (required) string The name of the load balancer.
PolicyName (required) string The name of the policy. This name must be unique and consist of alphanumeric characters and dashes (-).

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (CreateLBCookieStickinessPolicyResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

CreateLoadBalancer

POST /CreateLoadBalancer

Creates a load balancer.
The load balancer is created with a unique Domain Name Service (DNS) name. It receives the incoming traffic and routes it to its registered instances.
By default, this action creates an Internet-facing load balancer, resolving to External IPs (EIPs). To create an internal load balancer in a Virtual Private Cloud (VPC), resolving to private IPs, use the Scheme parameter.
You must specify either the AvailabilityZones.member.N or the Subnets.member.N parameters.

For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancer in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu CreateLoadBalancer --profile "default" \
  --AvailabilityZones.member.0 "string" \
  --Listeners.member.0 '{
      "InstancePort": 0,
      "InstanceProtocol": "string",
      "LoadBalancerPort": 0,
      "Protocol": "string",
      "SSLCertificateId": "string"
    }' \
  --LoadBalancerName "string" \
  --Scheme "string" \
  --SecurityGroups.member.0 "string" \
  --Subnets.member.0 "string" \
  --Tags.member.0 '{
      "Key": "string",
      "Value": "string"
    }'

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=CreateLoadBalancer' \
  --data-urlencode 'AvailabilityZones.member.0=string' \
  --data-urlencode 'Listeners.member.0.InstancePort=0' \
  --data-urlencode 'Listeners.member.0.InstanceProtocol=string' \
  --data-urlencode 'Listeners.member.0.LoadBalancerPort=0' \
  --data-urlencode 'Listeners.member.0.Protocol=string' \
  --data-urlencode 'Listeners.member.0.SSLCertificateId=string' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'Scheme=string' \
  --data-urlencode 'SecurityGroups.member.0=string' \
  --data-urlencode 'Subnets.member.0=string' \
  --data-urlencode 'Tags.member.0.Key=string' \
  --data-urlencode 'Tags.member.0.Value=string'

Request Parameter Type Description
AvailabilityZones.member.N string (public Cloud only) The Availability Zone (AZ) in which you want to create the load balancer. Regardless of this AZ, the load balancer can distribute traffic to all AZs. This parameter is required in the public Cloud.
Listeners.member.N (required) Listeners.member.N One or more listeners.
InstancePort (required) integer The port on which the instance is listening (between 1 and 65535 both included).
InstanceProtocol string The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL).
LoadBalancerPort (required) integer The port on which the load balancer is listening (between 1 and 65535 both included).
Protocol (required) string The routing protocol (HTTP | HTTPS | TCP | SSL).
SSLCertificateId string The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs).
LoadBalancerName (required) string The unique name of the load balancer (32 alphanumeric or hyphen characters maximum, but cannot start or end with a hyphen).
Scheme string The type of load balancer. Use this parameter only for load balancers in a VPC. To create an internal load balancer, set this parameter to internal.
SecurityGroups.member.N string (VPC only) One or more IDs of security groups you want to assign to the load balancer. If not specified, the default security group of the VPC is assigned to the load balancer.
Subnets.member.N string (VPC only) The ID of the subnet in which you want to create the load balancer. Regardless of this subnet, the load balancer can distribute traffic to all subnets. This parameter is required in a VPC.
Tags.member.N Tags.member.N One or more tags assigned to the load balancer.
Key string The key of the tag, with a minimum of 1 character.
Value string The value of the tag, with a minimum of 0 character.

Response Elements

Examples

200 Response

{
  "DNSName": "string",
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (CreateLoadBalancerResponse):

Response Element Type Description
DNSName string The DNS name of the load balancer.
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

CreateLoadBalancerListeners

POST /CreateLoadBalancerListeners

Creates one or more listeners for a specified load balancer.

For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerListeners in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu CreateLoadBalancerListeners --profile "default" \
  --Listeners.member.0 '{
      "InstancePort": 0,
      "InstanceProtocol": "string",
      "LoadBalancerPort": 0,
      "Protocol": "string",
      "SSLCertificateId": "string"
    }' \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=CreateLoadBalancerListeners' \
  --data-urlencode 'Listeners.member.0.InstancePort=0' \
  --data-urlencode 'Listeners.member.0.InstanceProtocol=string' \
  --data-urlencode 'Listeners.member.0.LoadBalancerPort=0' \
  --data-urlencode 'Listeners.member.0.Protocol=string' \
  --data-urlencode 'Listeners.member.0.SSLCertificateId=string' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
Listeners.member.N (required) Listeners.member.N One or more listeners.
InstancePort (required) integer The port on which the instance is listening (between 1 and 65535 both included).
InstanceProtocol string The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL).
LoadBalancerPort (required) integer The port on which the load balancer is listening (between 1 and 65535 both included).
Protocol (required) string The routing protocol (HTTP | HTTPS | TCP | SSL).
SSLCertificateId string The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs).
LoadBalancerName (required) string The name of load balancer.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (CreateLoadBalancerListenersResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

CreateLoadBalancerPolicy

POST /CreateLoadBalancerPolicy

Creates a policy for the specified load balancer.

For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu CreateLoadBalancerPolicy --profile "default" \
  --LoadBalancerName "string" \
  --PolicyName "string" \
  --PolicyTypeName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=CreateLoadBalancerPolicy' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'PolicyName=string' \
  --data-urlencode 'PolicyTypeName=string'

Request Parameter Type Description
LoadBalancerName (required) string The name of the load balancer.
PolicyName (required) string The name of the load balancer policy to create. This name must be unique within the policies of the specified load balancer.
PolicyTypeName (required) string The name of the base policy type (always ProxyProtocolPolicyType).

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (CreateLoadBalancerPolicyResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DeleteLoadBalancer

POST /DeleteLoadBalancer

Deletes a specified load balancer.

This AWS-compliant method corresponds to DeleteLoadBalancer in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DeleteLoadBalancer --profile "default" \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DeleteLoadBalancer' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
LoadBalancerName (required) string The name of the load balancer.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (DeleteLoadBalancerResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DeleteLoadBalancerListeners

POST /DeleteLoadBalancerListeners

Deletes listeners of a specified load balancer.

This AWS-compliant method corresponds to DeleteLoadBalancerListeners in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DeleteLoadBalancerListeners --profile "default" \
  --LoadBalancerName "string" \
  --LoadBalancerPorts.member.0 0

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DeleteLoadBalancerListeners' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'LoadBalancerPorts.member.0=0'

Request Parameter Type Description
LoadBalancerName (required) string The name of the load balancer.
LoadBalancerPorts.member.N (required) integer The port numbers of the listeners.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (DeleteLoadBalancerListenersResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DeleteLoadBalancerPolicy

POST /DeleteLoadBalancerPolicy

Deletes a specified policy from a load balancer.
In order to be deleted, the policy must not be enabled for any listener.

This AWS-compliant method corresponds to DeleteLoadBalancerPolicy in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DeleteLoadBalancerPolicy --profile "default" \
  --LoadBalancerName "string" \
  --PolicyName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DeleteLoadBalancerPolicy' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'PolicyName=string'

Request Parameter Type Description
LoadBalancerName (required) string The name of the load balancer.
PolicyName (required) string The name of the policy.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (DeleteLoadBalancerPolicyResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DeregisterInstancesFromLoadBalancer

POST /DeregisterInstancesFromLoadBalancer

Deregisters a specified instance from a load balancer.

This AWS-compliant method corresponds to UnlinkLoadBalancerBackendMachines in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DeregisterInstancesFromLoadBalancer --profile "default" \
  --Instances.member.0 '{
      "InstanceId": "string"
    }' \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DeregisterInstancesFromLoadBalancer' \
  --data-urlencode 'Instances.member.0.InstanceId=string' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
Instances.member.N (required) Instances.member.N Information about one or more instances.
InstanceId (required) string The ID of the instance.
LoadBalancerName (required) string The name of the load balancer.

Response Elements

Examples

200 Response

{
  "Instances.member.N": {
    "InstanceId": "string"
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (DeregisterInstancesFromLoadBalancerResponse):

Response Element Type Description
Instances.member.N Instances.member.N Information about one or more instances.
InstanceId string The ID of the instance.
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DescribeInstanceHealth

POST /DescribeInstanceHealth

Describes the state of one or more backend instances registered with a specified load balancer.

This AWS-compliant method corresponds to ReadVmsHealth in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DescribeInstanceHealth --profile "default" \
  --Instances.member.0 '{
      "InstanceId": "string"
    }' \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DescribeInstanceHealth' \
  --data-urlencode 'Instances.member.0.InstanceId=string' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
Instances.member.N Instances.member.N Information about one or more instances.
InstanceId (required) string The ID of the instance.
LoadBalancerName (required) string The name of the load balancer.

Response Elements

Examples

200 Response

{
  "InstanceStates.member.N": {
    "Description": "string",
    "InstanceId": "string",
    "ReasonCode": "string",
    "State": "string"
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (DescribeInstanceHealthResponse):

Response Element Type Description
InstanceStates.member.N InstanceStates.member.N Information about the health of one or more backend instances.
Description string A description of the instance state.
InstanceId string The ID of the instance.
ReasonCode string Information about the cause of OutOfService instances.

Specifically, whether the cause is Elastic Load Balancing or the instance (ELB | Instance | N/A).
State string The current state of the instance (InService | OutOfService | Unknown).
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DescribeLoadBalancerAttributes

POST /DescribeLoadBalancerAttributes

Describes the attributes of the specified load balancer.

This AWS-compliant method corresponds to ReadLoadBalancers in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DescribeLoadBalancerAttributes --profile "default" \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DescribeLoadBalancerAttributes' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
LoadBalancerName (required) string The name of the load balancer.

Response Elements

Examples

200 Response

{
  "LoadBalancerAttributes": {
    "AccessLog": {
      "EmitInterval": 0,
      "Enabled": true,
      "S3BucketName": "string",
      "S3BucketPrefix": "string"
    },
    "AdditionalAttributes.member.N": {
      "Key": "string",
      "Value": "string"
    },
    "ConnectionDraining": {
      "Enabled": true,
      "Timeout": 0
    },
    "ConnectionSettings": {
      "IdleTimeout": 0
    }
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (DescribeLoadBalancerAttributesResponse):

Response Element Type Description
LoadBalancerAttributes LoadBalancerAttributes The attributes of the load balancer.
AccessLog AccessLog Information about the publication of the access logs.
EmitInterval integer The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60).
Enabled boolean If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required.
S3BucketName string The name of the OOS bucket for the access logs.
S3BucketPrefix string The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket).
AdditionalAttributes.member.N AdditionalAttributes.member.N Information about additional load balancer attributes, for example secure cookies.
Key string The name of the attribute.

You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response).
Value string The value of the attribute.

If the Key is SecuredCookies, set the Value to true to enable secure cookies and false to disable them.
ConnectionDraining ConnectionDraining Information about the draining of the connections to unhealthy or deregistered instances.
Enabled boolean If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false.
Timeout integer The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20).
ConnectionSettings ConnectionSettings Information about idle connections.
IdleTimeout integer The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds.

By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.

If you set a new duration, the same value is applied to both the front-end and backend connections.
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DescribeLoadBalancers

POST /DescribeLoadBalancers

Describes one or more load balancers.

This AWS-compliant method corresponds to ReadLoadBalancers in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DescribeLoadBalancers --profile "default" \
  --LoadBalancerNames.member.0 "string" \
  --Marker "string" \
  --PageSize 0

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DescribeLoadBalancers' \
  --data-urlencode 'LoadBalancerNames.member.0=string' \
  --data-urlencode 'Marker=string' \
  --data-urlencode 'PageSize=0'

Request Parameter Type Description
LoadBalancerNames.member.N string The name of one or more load balancers.
Marker string The marker to request the next results page.
PageSize integer The maximum number of results that can be returned in a single page.

Response Elements

Examples

200 Response

{
  "LoadBalancerDescriptions.member.N": {
    "AvailabilityZones.member.N": "string",
    "BackendServerDescriptions.member.N": {
      "InstancePort": 0,
      "PolicyNames.member.N": "string"
    },
    "CreatedTime": "string",
    "DNSName": "string",
    "HealthCheck": {
      "HealthyThreshold": 0,
      "Interval": 0,
      "Target": "string",
      "Timeout": 0,
      "UnhealthyThreshold": 0
    },
    "Instances.member.N": {
      "InstanceId": "string"
    },
    "ListenerDescriptions.member.N": {
      "Listener": {
        "InstancePort": 0,
        "InstanceProtocol": "string",
        "LoadBalancerPort": 0,
        "Protocol": "string",
        "SSLCertificateId": "string"
      },
      "PolicyNames.member.N": "string"
    },
    "LoadBalancerName": "string",
    "Policies": {
      "AppCookieStickinessPolicies.member.N": {
        "CookieName": "string",
        "PolicyName": "string"
      },
      "LBCookieStickinessPolicies.member.N": {
        "CookieExpirationPeriod": 0,
        "PolicyName": "string"
      },
      "OtherPolicies.member.N": "string"
    },
    "Scheme": "string",
    "SecurityGroups.member.N": "string",
    "SourceSecurityGroup": {
      "GroupName": "string",
      "OwnerAlias": "string"
    },
    "Subnets.member.N": "string",
    "VPCId": "string"
  },
  "NextMarker": "string",
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (DescribeLoadBalancersResponse):

Response Element Type Description
LoadBalancerDescriptions.member.N LoadBalancerDescriptions.member.N Information about one or more load balancers.
AvailabilityZones.member.N string The ID of the AZ in which the load balancer was created.
BackendServerDescriptions.member.N BackendServerDescriptions.member.N Information about the configuration of your instances.
InstancePort integer The port on which the instance is listening (between 1 and 65535, both included).
PolicyNames.member.N string The names of the policies enabled for the instance.
CreatedTime string The date and time the load balancer was created.
DNSName string The DNS name of the load balancer.
HealthCheck HealthCheck Information about the health check configuration.
HealthyThreshold integer The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included).
Interval integer The number of seconds between two requests (between 5 and 600 both included).
Target string The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:

- Protocol: TCP, SSL, HTTP or HTTPS.

- Port: Between 1 and 65535, both included.

- Path: If you use the HTTP or HTTPS protocols, the request URL path.
Timeout integer The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included).
UnhealthyThreshold integer The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included).
Instances.member.N Instances.member.N Information about one or more instances.
InstanceId string The ID of the instance.
ListenerDescriptions.member.N ListenerDescriptions.member.N The listeners for the load balancer.
Listener Listener The listener.
InstancePort integer The port on which the instance is listening (between 1 and 65535 both included).
InstanceProtocol string The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL).
LoadBalancerPort integer The port on which the load balancer is listening (between 1 and 65535 both included).
Protocol string The routing protocol (HTTP | HTTPS | TCP | SSL).
SSLCertificateId string The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs).
PolicyNames.member.N string The policies. If there are no policies enabled, the list is empty.
LoadBalancerName string The name of the load balancer.
Policies Policies The policies defined for the load balancer.
AppCookieStickinessPolicies.member.N AppCookieStickinessPolicies.member.N The stickiness policies created using CreateAppCookieStickinessPolicy.
CookieName string The name of the application cookie used for stickiness.
PolicyName string The mnemonic name for the policy being created. The name must be unique within a set of policies for this load balancer.
LBCookieStickinessPolicies.member.N LBCookieStickinessPolicies.member.N The stickiness policies created using CreateLBCookieStickinessPolicy.
CookieExpirationPeriod integer The time period, in seconds, after which the cookie should be considered stale.

If 1, the stickiness session lasts for the duration of the browser session.
PolicyName string The name of the policy. This name must be unique within the set of policies for this load balancer.
OtherPolicies.member.N string The policies other than the stickiness policies.
Scheme string The type of load balancer. Valid only for load balancers in a VPC.

If Scheme is internet-facing, the load balancer has a public DNS name that resolves to an External IP (EIP).

If Scheme is internal, the load balancer has a public DNS name that resolves to a private IP.
SecurityGroups.member.N string The security groups for the load balancer. Valid only for load balancers in a VPC.
SourceSecurityGroup SourceSecurityGroup The security group for the load balancer, which you can use as part of your inbound rules for your registered instances.
To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source.
GroupName string The name of the security group.
OwnerAlias string The owner of the security group.
Subnets.member.N string The ID of the subnet in which the load balancer was created.
VPCId string The ID of the VPC for the load balancer.
NextMarker string The marker to request the next results page (empty if there is no more results to return).
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

ModifyLoadBalancerAttributes

POST /ModifyLoadBalancerAttributes

Modifies the specified attributes of a load balancer.

This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu ModifyLoadBalancerAttributes --profile "default" \
  --LoadBalancerAttributes '{
      "AccessLog": {
        "EmitInterval": 0,
        "Enabled": True,
        "S3BucketName": "string",
        "S3BucketPrefix": "string"
      },
      "AdditionalAttributes.member.0": {
        "Key": "string",
        "Value": "string"
      },
      "ConnectionDraining": {
        "Enabled": True,
        "Timeout": 0
      },
      "ConnectionSettings": {
        "IdleTimeout": 0
      }
    }' \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=ModifyLoadBalancerAttributes' \
  --data-urlencode 'LoadBalancerAttributes.AccessLog.EmitInterval=0' \
  --data-urlencode 'LoadBalancerAttributes.AccessLog.Enabled=true' \
  --data-urlencode 'LoadBalancerAttributes.AccessLog.S3BucketName=string' \
  --data-urlencode 'LoadBalancerAttributes.AccessLog.S3BucketPrefix=string' \
  --data-urlencode 'LoadBalancerAttributes.AdditionalAttributes.member.0.Key=string' \
  --data-urlencode 'LoadBalancerAttributes.AdditionalAttributes.member.0.Value=string' \
  --data-urlencode 'LoadBalancerAttributes.ConnectionDraining.Enabled=true' \
  --data-urlencode 'LoadBalancerAttributes.ConnectionDraining.Timeout=0' \
  --data-urlencode 'LoadBalancerAttributes.ConnectionSettings.IdleTimeout=0' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
LoadBalancerAttributes (required) LoadBalancerAttributes The attributes of the load balancer.
AccessLog AccessLog Information about the publication of the access logs.
EmitInterval integer The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60).
Enabled boolean If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required.
S3BucketName string The name of the OOS bucket for the access logs.
S3BucketPrefix string The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket).
AdditionalAttributes.member.N AdditionalAttributes.member.N Information about additional load balancer attributes, for example secure cookies.
Key string The name of the attribute.
You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response).
Value string The value of the attribute.
If the Key is SecuredCookies, set the Value to true to enable secure cookies and false to disable them.
ConnectionDraining ConnectionDraining Information about the draining of the connections to unhealthy or deregistered instances.
Enabled boolean If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false.
Timeout integer The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20).
ConnectionSettings ConnectionSettings Information about idle connections.
IdleTimeout integer The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds.
By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.
If you set a new duration, the same value is applied to both the front-end and backend connections.
LoadBalancerName (required) string The name of the load balancer.

Response Elements

Examples

200 Response

{
  "LoadBalancerAttributes": {
    "AccessLog": {
      "EmitInterval": 0,
      "Enabled": true,
      "S3BucketName": "string",
      "S3BucketPrefix": "string"
    },
    "AdditionalAttributes.member.N": {
      "Key": "string",
      "Value": "string"
    },
    "ConnectionDraining": {
      "Enabled": true,
      "Timeout": 0
    },
    "ConnectionSettings": {
      "IdleTimeout": 0
    }
  },
  "LoadBalancerName": "string",
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (ModifyLoadBalancerAttributesResponse):

Response Element Type Description
LoadBalancerAttributes LoadBalancerAttributes The attributes of the load balancer.
AccessLog AccessLog Information about the publication of the access logs.
EmitInterval integer The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60).
Enabled boolean If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required.
S3BucketName string The name of the OOS bucket for the access logs.
S3BucketPrefix string The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket).
AdditionalAttributes.member.N AdditionalAttributes.member.N Information about additional load balancer attributes, for example secure cookies.
Key string The name of the attribute.

You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response).
Value string The value of the attribute.

If the Key is SecuredCookies, set the Value to true to enable secure cookies and false to disable them.
ConnectionDraining ConnectionDraining Information about the draining of the connections to unhealthy or deregistered instances.
Enabled boolean If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false.
Timeout integer The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20).
ConnectionSettings ConnectionSettings Information about idle connections.
IdleTimeout integer The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds.

By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.

If you set a new duration, the same value is applied to both the front-end and backend connections.
LoadBalancerName string The name of the load balancer.
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

RegisterInstancesWithLoadBalancer

POST /RegisterInstancesWithLoadBalancer

Registers one or more instances with a specified load balancer.
The instances can be in different subnets and different availability zones than the load balancer, as long as the instances and load balancers are all in the public Cloud or all in the same VPC. It may take a little time for an instance to be registered with the load balancer. Once the instance is registered with a load balancer, it receives traffic and requests from this load balancer and is called a backend instance.

This AWS-compliant method corresponds to RegisterVmsInLoadBalancer in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu RegisterInstancesWithLoadBalancer --profile "default" \
  --Instances.member.0 '{
      "InstanceId": "string"
    }' \
  --LoadBalancerName "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=RegisterInstancesWithLoadBalancer' \
  --data-urlencode 'Instances.member.0.InstanceId=string' \
  --data-urlencode 'LoadBalancerName=string'

Request Parameter Type Description
Instances.member.N (required) Instances.member.N Information about one or more instances.
InstanceId (required) string The ID of the instance.
LoadBalancerName (required) string The name of the load balancer.

Response Elements

Examples

200 Response

{
  "Instances.member.N": {
    "InstanceId": "string"
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (RegisterInstancesWithLoadBalancerResponse):

Response Element Type Description
Instances.member.N Instances.member.N Information about one or more instances.
InstanceId string The ID of the instance.
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

SetLoadBalancerListenerSSLCertificate

POST /SetLoadBalancerListenerSSLCertificate

Sets a new SSL certificate to an SSL or HTTPS listener of a load balancer.
This certificate replaces any certificate used on the same load balancer and port. To do so, you first need to upload a certificate using the UploadServerCertificate method in the Elastic Identity Management (EIM) API.

This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu SetLoadBalancerListenerSSLCertificate --profile "default" \
  --LoadBalancerName "string" \
  --LoadBalancerPort 0 \
  --SSLCertificateId "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=SetLoadBalancerListenerSSLCertificate' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'LoadBalancerPort=0' \
  --data-urlencode 'SSLCertificateId=string'

Request Parameter Type Description
LoadBalancerName (required) string The name of the load balancer.
LoadBalancerPort (required) integer The port using the SSL certificate.
SSLCertificateId (required) string The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs).

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (SetLoadBalancerListenerSSLCertificateResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

SetLoadBalancerPoliciesForBackendServer

POST /SetLoadBalancerPoliciesForBackendServer

Replaces the set of policies enabled for the specified port on which the instance is listening with a new set of policies.
You can use the DescribeLoadBalancers method to list the policies associated with the instance. For more information, see DescribeLoadBalancers.

This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu SetLoadBalancerPoliciesForBackendServer --profile "default" \
  --InstancePort 0 \
  --LoadBalancerName "string" \
  --PolicyNames.member.0 "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=SetLoadBalancerPoliciesForBackendServer' \
  --data-urlencode 'InstancePort=0' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'PolicyNames.member.0=string'

Request Parameter Type Description
InstancePort (required) integer The port on which the instance is listening.
LoadBalancerName (required) string The name of the load balancer.
PolicyNames.member.N (required) string The names of all the policies you want to enable for your load balancer. You need to list the already enabled policies that you want to keep along with the new ones you are enabling. If the list is empty, then all current policies are removed from the instance.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (SetLoadBalancerPoliciesForBackendServerResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

SetLoadBalancerPoliciesOfListener

POST /SetLoadBalancerPoliciesOfListener

Replaces the currently enabled policy for a load balancer with another one.
If the PolicyNames.member.N parameter is empty, the currently enabled policy is disabled.

This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu SetLoadBalancerPoliciesOfListener --profile "default" \
  --LoadBalancerName "string" \
  --LoadBalancerPort 0 \
  --PolicyNames.member.0 "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=SetLoadBalancerPoliciesOfListener' \
  --data-urlencode 'LoadBalancerName=string' \
  --data-urlencode 'LoadBalancerPort=0' \
  --data-urlencode 'PolicyNames.member.0=string'

Request Parameter Type Description
LoadBalancerName (required) string The name of the load balancer.
LoadBalancerPort (required) integer The external port of the load balancer.
PolicyNames.member.N (required) string The name of the policy you want to enable for the listener.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (SetLoadBalancerPoliciesOfListenerResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

Tags

AddTags

POST /AddTags

Adds one or more tags to the specified load balancers.
If a tag with the same key already exists for the load balancer, the tag value is replaced.

For more information, see About Tags.
This AWS-compliant method corresponds to CreateLoadBalancerTags in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu AddTags --profile "default" \
  --LoadBalancerNames.member.0 "string" \
  --Tags.member.0 '{
      "Key": "string",
      "Value": "string"
    }'

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=AddTags' \
  --data-urlencode 'LoadBalancerNames.member.0=string' \
  --data-urlencode 'Tags.member.0.Key=string' \
  --data-urlencode 'Tags.member.0.Value=string'

Request Parameter Type Description
LoadBalancerNames.member.N (required) string The name of a load balancer.
Tags.member.N (required) Tags.member.N One or more tags assigned to the load balancer.
Key string The key of the tag, with a minimum of 1 character.
Value string The value of the tag, with a minimum of 0 character.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (AddTagsResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

DescribeTags

POST /DescribeTags

Describes the tags associated with one or more specified load balancers.

This AWS-compliant method corresponds to ReadLoadBalancerTags in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu DescribeTags --profile "default" \
  --LoadBalancerNames.member.0 "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=DescribeTags' \
  --data-urlencode 'LoadBalancerNames.member.0=string'

Request Parameter Type Description
LoadBalancerNames.member.N (required) string The name of one or more load balancers.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  },
  "TagDescriptions.member.N": {
    "LoadBalancerName": "string",
    "Tags.member.N": {
      "Key": "string",
      "Value": "string"
    }
  }
}

Response 200 (DescribeTagsResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.
TagDescriptions.member.N TagDescriptions.member.N Information about the tags associated with the specified load balancers.
LoadBalancerName string The name of the load balancer.
Tags.member.N Tags.member.N One or more tags assigned to the load balancer.
Key string The key of the tag, with a minimum of 1 character.
Value string The value of the tag, with a minimum of 0 character.

RemoveTags

POST /RemoveTags

Deletes one or more tags from the specified load balancers.

This AWS-compliant method corresponds to DeleteLoadBalancerTags in the OUTSCALE API.

Request Parameters

Examples

osc-cli lbu RemoveTags --profile "default" \
  --LoadBalancerNames.member.0 "string" \
  --Tags.member.0.Key "string"

# You need Curl version 7.75 or later to use the --aws-sigv4 option

curl -X POST https://lbu.$OSC_REGION.outscale.com \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'aws:amz' \
  --data-urlencode 'Version=2012-06-01' \
  --data-urlencode 'Action=RemoveTags' \
  --data-urlencode 'LoadBalancerNames.member.0=string' \
  --data-urlencode 'Tags.member.0.Key=string'

Request Parameter Type Description
LoadBalancerNames.member.N (required) string The name of a load balancer.
Tags.member.N.Key (required) string The key of a tag you want to delete from the load balancer.

Response Elements

Examples

200 Response

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Response 200 (RemoveTagsResponse):

Response Element Type Description
ResponseMetadata ResponseMetadata Information about the response.
RequestId string The ID of the request.

Schemas

AccessLog

Information about the publication of the access logs.

Property Type Description
EmitInterval integer The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60).
Enabled boolean If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required.
S3BucketName string The name of the OOS bucket for the access logs.
S3BucketPrefix string The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket).

Schema

{
  "EmitInterval": 0,
  "Enabled": true,
  "S3BucketName": "string",
  "S3BucketPrefix": "string"
}

AddTagsResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

AdditionalAttributes.member.N

Information about additional load balancer attributes, for example secure cookies.

Property Type Description
Key string The name of the attribute.

You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response).
Value string The value of the attribute.

If the Key is SecuredCookies, set the Value to true to enable secure cookies and false to disable them.

Schema

{
  "Key": "string",
  "Value": "string"
}

AppCookieStickinessPolicies.member.N

The stickiness policies created using CreateAppCookieStickinessPolicy.

Property Type Description
CookieName string The name of the application cookie used for stickiness.
PolicyName string The mnemonic name for the policy being created. The name must be unique within a set of policies for this load balancer.

Schema

{
  "CookieName": "string",
  "PolicyName": "string"
}

BackendServerDescriptions.member.N

Information about the configuration of your instances.

Property Type Description
InstancePort integer The port on which the instance is listening (between 1 and 65535, both included).
PolicyNames.member.N string The names of the policies enabled for the instance.

Schema

{
  "InstancePort": 0,
  "PolicyNames.member.N": "string"
}

ConfigureHealthCheckResponse

Property Type Description
HealthCheck HealthCheck Information about the health check configuration.
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "HealthCheck": {
    "HealthyThreshold": 0,
    "Interval": 0,
    "Target": "string",
    "Timeout": 0,
    "UnhealthyThreshold": 0
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

ConnectionDraining

Information about the draining of the connections to unhealthy or deregistered instances.

Property Type Description
Enabled boolean If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false.
Timeout integer The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20).

Schema

{
  "Enabled": true,
  "Timeout": 0
}

ConnectionSettings

Information about idle connections.

Property Type Description
IdleTimeout integer The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds.

By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.

If you set a new duration, the same value is applied to both the front-end and backend connections.

Schema

{
  "IdleTimeout": 0
}

CreateAppCookieStickinessPolicyResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

CreateLBCookieStickinessPolicyResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

CreateLoadBalancerListenersResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

CreateLoadBalancerPolicyResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

CreateLoadBalancerResponse

Property Type Description
DNSName string The DNS name of the load balancer.
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "DNSName": "string",
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DeleteLoadBalancerListenersResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DeleteLoadBalancerPolicyResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DeleteLoadBalancerResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DeregisterInstancesFromLoadBalancerResponse

Property Type Description
Instances.member.N Instances.member.N Information about one or more instances.
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "Instances.member.N": {
    "InstanceId": "string"
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DescribeInstanceHealthResponse

Property Type Description
InstanceStates.member.N InstanceStates.member.N Information about the health of one or more backend instances.
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "InstanceStates.member.N": {
    "Description": "string",
    "InstanceId": "string",
    "ReasonCode": "string",
    "State": "string"
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DescribeLoadBalancerAttributesResponse

Property Type Description
LoadBalancerAttributes LoadBalancerAttributes The attributes of the load balancer.
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "LoadBalancerAttributes": {
    "AccessLog": {
      "EmitInterval": 0,
      "Enabled": true,
      "S3BucketName": "string",
      "S3BucketPrefix": "string"
    },
    "AdditionalAttributes.member.N": {
      "Key": "string",
      "Value": "string"
    },
    "ConnectionDraining": {
      "Enabled": true,
      "Timeout": 0
    },
    "ConnectionSettings": {
      "IdleTimeout": 0
    }
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DescribeLoadBalancersResponse

Property Type Description
LoadBalancerDescriptions.member.N LoadBalancerDescriptions.member.N Information about one or more load balancers.
NextMarker string The marker to request the next results page (empty if there is no more results to return).
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "LoadBalancerDescriptions.member.N": {
    "AvailabilityZones.member.N": "string",
    "BackendServerDescriptions.member.N": {
      "InstancePort": 0,
      "PolicyNames.member.N": "string"
    },
    "CreatedTime": "string",
    "DNSName": "string",
    "HealthCheck": {
      "HealthyThreshold": 0,
      "Interval": 0,
      "Target": "string",
      "Timeout": 0,
      "UnhealthyThreshold": 0
    },
    "Instances.member.N": {
      "InstanceId": "string"
    },
    "ListenerDescriptions.member.N": {
      "Listener": {
        "InstancePort": 0,
        "InstanceProtocol": "string",
        "LoadBalancerPort": 0,
        "Protocol": "string",
        "SSLCertificateId": "string"
      },
      "PolicyNames.member.N": "string"
    },
    "LoadBalancerName": "string",
    "Policies": {
      "AppCookieStickinessPolicies.member.N": {
        "CookieName": "string",
        "PolicyName": "string"
      },
      "LBCookieStickinessPolicies.member.N": {
        "CookieExpirationPeriod": 0,
        "PolicyName": "string"
      },
      "OtherPolicies.member.N": "string"
    },
    "Scheme": "string",
    "SecurityGroups.member.N": "string",
    "SourceSecurityGroup": {
      "GroupName": "string",
      "OwnerAlias": "string"
    },
    "Subnets.member.N": "string",
    "VPCId": "string"
  },
  "NextMarker": "string",
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

DescribeTagsResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.
TagDescriptions.member.N TagDescriptions.member.N Information about the tags associated with the specified load balancers.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  },
  "TagDescriptions.member.N": {
    "LoadBalancerName": "string",
    "Tags.member.N": {
      "Key": "string",
      "Value": "string"
    }
  }
}

HealthCheck

Information about the health check configuration.

Property Type Description
HealthyThreshold integer The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included).
Interval integer The number of seconds between two requests (between 5 and 600 both included).
Target string The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:

- Protocol: TCP, SSL, HTTP or HTTPS.

- Port: Between 1 and 65535, both included.

- Path: If you use the HTTP or HTTPS protocols, the request URL path.
Timeout integer The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included).
UnhealthyThreshold integer The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included).

Schema

{
  "HealthyThreshold": 0,
  "Interval": 0,
  "Target": "string",
  "Timeout": 0,
  "UnhealthyThreshold": 0
}

InstanceStates.member.N

Information about the health of one or more backend instances.

Property Type Description
Description string A description of the instance state.
InstanceId string The ID of the instance.
ReasonCode string Information about the cause of OutOfService instances.

Specifically, whether the cause is Elastic Load Balancing or the instance (ELB | Instance | N/A).
State string The current state of the instance (InService | OutOfService | Unknown).

Schema

{
  "Description": "string",
  "InstanceId": "string",
  "ReasonCode": "string",
  "State": "string"
}

Instances.member.N

Information about one or more instances.

Property Type Description
InstanceId string The ID of the instance.

Schema

{
  "InstanceId": "string"
}

LBCookieStickinessPolicies.member.N

The stickiness policies created using CreateLBCookieStickinessPolicy.

Property Type Description
CookieExpirationPeriod integer The time period, in seconds, after which the cookie should be considered stale.

If 1, the stickiness session lasts for the duration of the browser session.
PolicyName string The name of the policy. This name must be unique within the set of policies for this load balancer.

Schema

{
  "CookieExpirationPeriod": 0,
  "PolicyName": "string"
}

Listener

The listener.

Property Type Description
InstancePort integer The port on which the instance is listening (between 1 and 65535 both included).
InstanceProtocol string The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL).
LoadBalancerPort integer The port on which the load balancer is listening (between 1 and 65535 both included).
Protocol string The routing protocol (HTTP | HTTPS | TCP | SSL).
SSLCertificateId string The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs).

Schema

{
  "InstancePort": 0,
  "InstanceProtocol": "string",
  "LoadBalancerPort": 0,
  "Protocol": "string",
  "SSLCertificateId": "string"
}

ListenerDescriptions.member.N

The listeners for the load balancer.

Property Type Description
Listener Listener The listener.
PolicyNames.member.N string The policies. If there are no policies enabled, the list is empty.

Schema

{
  "Listener": {
    "InstancePort": 0,
    "InstanceProtocol": "string",
    "LoadBalancerPort": 0,
    "Protocol": "string",
    "SSLCertificateId": "string"
  },
  "PolicyNames.member.N": "string"
}

Listeners.member.N

One or more listeners.

Property Type Description
InstancePort integer The port on which the instance is listening (between 1 and 65535 both included).
InstanceProtocol string The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL).
LoadBalancerPort integer The port on which the load balancer is listening (between 1 and 65535 both included).
Protocol string The routing protocol (HTTP | HTTPS | TCP | SSL).
SSLCertificateId string The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs).

Schema

{
  "InstancePort": 0,
  "InstanceProtocol": "string",
  "LoadBalancerPort": 0,
  "Protocol": "string",
  "SSLCertificateId": "string"
}

LoadBalancerAttributes

The attributes of the load balancer.

Property Type Description
AccessLog AccessLog Information about the publication of the access logs.
AdditionalAttributes.member.N AdditionalAttributes.member.N Information about additional load balancer attributes, for example secure cookies.
ConnectionDraining ConnectionDraining Information about the draining of the connections to unhealthy or deregistered instances.
ConnectionSettings ConnectionSettings Information about idle connections.

Schema

{
  "AccessLog": {
    "EmitInterval": 0,
    "Enabled": true,
    "S3BucketName": "string",
    "S3BucketPrefix": "string"
  },
  "AdditionalAttributes.member.N": {
    "Key": "string",
    "Value": "string"
  },
  "ConnectionDraining": {
    "Enabled": true,
    "Timeout": 0
  },
  "ConnectionSettings": {
    "IdleTimeout": 0
  }
}

LoadBalancerDescriptions.member.N

Information about one or more load balancers.

Property Type Description
AvailabilityZones.member.N string The ID of the AZ in which the load balancer was created.
BackendServerDescriptions.member.N BackendServerDescriptions.member.N Information about the configuration of your instances.
CreatedTime string The date and time the load balancer was created.
DNSName string The DNS name of the load balancer.
HealthCheck HealthCheck Information about the health check configuration.
Instances.member.N Instances.member.N Information about one or more instances.
ListenerDescriptions.member.N ListenerDescriptions.member.N The listeners for the load balancer.
LoadBalancerName string The name of the load balancer.
Policies Policies The policies defined for the load balancer.
Scheme string The type of load balancer. Valid only for load balancers in a VPC.

If Scheme is internet-facing, the load balancer has a public DNS name that resolves to an External IP (EIP).

If Scheme is internal, the load balancer has a public DNS name that resolves to a private IP.
SecurityGroups.member.N string The security groups for the load balancer. Valid only for load balancers in a VPC.
SourceSecurityGroup SourceSecurityGroup The security group for the load balancer, which you can use as part of your inbound rules for your registered instances.
To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source.
Subnets.member.N string The ID of the subnet in which the load balancer was created.
VPCId string The ID of the VPC for the load balancer.

Schema

{
  "AvailabilityZones.member.N": "string",
  "BackendServerDescriptions.member.N": {
    "InstancePort": 0,
    "PolicyNames.member.N": "string"
  },
  "CreatedTime": "string",
  "DNSName": "string",
  "HealthCheck": {
    "HealthyThreshold": 0,
    "Interval": 0,
    "Target": "string",
    "Timeout": 0,
    "UnhealthyThreshold": 0
  },
  "Instances.member.N": {
    "InstanceId": "string"
  },
  "ListenerDescriptions.member.N": {
    "Listener": {
      "InstancePort": 0,
      "InstanceProtocol": "string",
      "LoadBalancerPort": 0,
      "Protocol": "string",
      "SSLCertificateId": "string"
    },
    "PolicyNames.member.N": "string"
  },
  "LoadBalancerName": "string",
  "Policies": {
    "AppCookieStickinessPolicies.member.N": {
      "CookieName": "string",
      "PolicyName": "string"
    },
    "LBCookieStickinessPolicies.member.N": {
      "CookieExpirationPeriod": 0,
      "PolicyName": "string"
    },
    "OtherPolicies.member.N": "string"
  },
  "Scheme": "string",
  "SecurityGroups.member.N": "string",
  "SourceSecurityGroup": {
    "GroupName": "string",
    "OwnerAlias": "string"
  },
  "Subnets.member.N": "string",
  "VPCId": "string"
}

ModifyLoadBalancerAttributesResponse

Property Type Description
LoadBalancerAttributes LoadBalancerAttributes The attributes of the load balancer.
LoadBalancerName string The name of the load balancer.
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "LoadBalancerAttributes": {
    "AccessLog": {
      "EmitInterval": 0,
      "Enabled": true,
      "S3BucketName": "string",
      "S3BucketPrefix": "string"
    },
    "AdditionalAttributes.member.N": {
      "Key": "string",
      "Value": "string"
    },
    "ConnectionDraining": {
      "Enabled": true,
      "Timeout": 0
    },
    "ConnectionSettings": {
      "IdleTimeout": 0
    }
  },
  "LoadBalancerName": "string",
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

Policies

The policies defined for the load balancer.

Property Type Description
AppCookieStickinessPolicies.member.N AppCookieStickinessPolicies.member.N The stickiness policies created using CreateAppCookieStickinessPolicy.
LBCookieStickinessPolicies.member.N LBCookieStickinessPolicies.member.N The stickiness policies created using CreateLBCookieStickinessPolicy.
OtherPolicies.member.N string The policies other than the stickiness policies.

Schema

{
  "AppCookieStickinessPolicies.member.N": {
    "CookieName": "string",
    "PolicyName": "string"
  },
  "LBCookieStickinessPolicies.member.N": {
    "CookieExpirationPeriod": 0,
    "PolicyName": "string"
  },
  "OtherPolicies.member.N": "string"
}

RegisterInstancesWithLoadBalancerResponse

Property Type Description
Instances.member.N Instances.member.N Information about one or more instances.
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "Instances.member.N": {
    "InstanceId": "string"
  },
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

RemoveTagsResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

ResponseMetadata

Information about the response.

Property Type Description
RequestId string The ID of the request.

Schema

{
  "RequestId": "string"
}

SetLoadBalancerListenerSSLCertificateResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

SetLoadBalancerPoliciesForBackendServerResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

SetLoadBalancerPoliciesOfListenerResponse

Property Type Description
ResponseMetadata ResponseMetadata Information about the response.

Schema

{
  "ResponseMetadata": {
    "RequestId": "string"
  }
}

SourceSecurityGroup

The security group for the load balancer, which you can use as part of your inbound rules for your registered instances. To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source.

Property Type Description
GroupName string The name of the security group.
OwnerAlias string The owner of the security group.

Schema

{
  "GroupName": "string",
  "OwnerAlias": "string"
}

TagDescriptions.member.N

Information about the tags associated with the specified load balancers.

Property Type Description
LoadBalancerName string The name of the load balancer.
Tags.member.N Tags.member.N One or more tags assigned to the load balancer.

Schema

{
  "LoadBalancerName": "string",
  "Tags.member.N": {
    "Key": "string",
    "Value": "string"
  }
}

Tags.member.N

One or more tags assigned to the load balancer.

Property Type Description
Key string The key of the tag, with a minimum of 1 character.
Value string The value of the tag, with a minimum of 0 character.

Schema

{
  "Key": "string",
  "Value": "string"
}

AWS™ and Amazon Web Services™ are trademarks of Amazon Technologies, Inc or its affiliates in the United States and/or other countries.