diff --git a/pages/network/load_balancer/use_api_details/guide.en-asia.md b/pages/network/load_balancer/use_api_details/guide.en-asia.md index 0bd400381f1..3a25ce422c3 100644 --- a/pages/network/load_balancer/use_api_details/guide.en-asia.md +++ b/pages/network/load_balancer/use_api_details/guide.en-asia.md @@ -4,6 +4,236 @@ excerpt: Details of API functionalities updated: 2025-09-29 --- + + ## Objective This guide provides a detailed description of all API functions for the OVHcloud Load Balancer. @@ -31,7 +261,6 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > ## Services and zones - ### OVHcloud Load Balancer #### List active services @@ -39,3138 +268,2891 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### List the zones available for the OVHcloud Load Balancer > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Return details of a OVHcloud Load Balancer service -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify a OVHcloud Load Balancer service -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > The name you want to give to the service (String of characters) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > The SSL configuration you want to assign to the service (Value) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Ip** ^*^ + +- **displayName** +The name you want to give to the service (String of characters) + +- **sslConfiguration** +The SSL configuration you want to assign to the service (Value) + +/// + #### List the services attached to the OVHcloud Load Balancer -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List existing farms and their type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **vrackNetworkId** ->> > ->> >> Allows filtering according to the vrack network +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**vrackNetworkId** + +Allows filtering according to the vrack network + +/// + #### List the areas that can be attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different probes that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of farms that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of frontends that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing actions that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing rules that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + ### Service #### Get service information -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify service information -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Enables automatic service renewal (Boolean)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Enables the deletion of the service upon expiration. (Boolean) ->> >> ->> >> - **forced** ->> >> > ->> >> > Forces automatic renewal (Boolean) ->> >> ->> >> - **period** ->> >> > ->> >> > Fill in the renewal term (String of characters) +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Service** ^*^ + +- **automatic** +Enables automatic service renewal (Boolean)) + +- **deleteAtExpiration** +Enables the deletion of the service upon expiration. (Boolean) + +- **forced** +Forces automatic renewal (Boolean) + +- **period** +Fill in the renewal term (String of characters) + +/// + ### Zones #### List active zones for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) + +/// + #### Get the details of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the requested zone +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the requested zone + +/// + #### Delete a zone The service will be discontinued on the expiry date. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The service will be discontinued on the expiry date. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The service will be discontinued on the expiry date. + +/// + #### Undo the deletion of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the zone to be deleted +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the zone to be deleted + +/// + ## HTTP Protocol + Accessing HTTP protocol related elements (Frontend, Firmware, etc.). ### HTTP farms #### List HTTP farms attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of the zone (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Adding a new HTTP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** * ->> > ->> >> The name of the zone (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **balance** ->> >> ->> >> Your farm's load distribution method (Value) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (Probe HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> SSL activation is forced for the probe (Boolean) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> The behavior of the 'match' operator is reversed (Boolean) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) -> +
Paramètres :
-#### Getting the details of an HTTP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP farm +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **balance** ->> >> > ->> >> > The type of load distribution (Value) ->> >> ->> >> - **port** ->> >> > ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (HTTP probe) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > The type of connection persistence (Value) -> +The name of the zone (String of characters) -#### Delete an HTTP farm +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : +#### Adding a new HTTP farm to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### HTTP Servers +/// details | -#### List the servers linked to the HTTP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by server status (Value) -> +**serviceName** ^*^ -#### Adding a server to an HTTP farm +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **cookie** ->> > ->> >> The Value of your Cookie (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A server with high weight receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +**zone** ^*^ -#### Get the details of a server linked to an HTTP farm +The name of the zone (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**displayName** -#### Modify the properties of an HTTP server +The name you wish to give to your farm (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> > ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **cookie** ->> >> > ->> >> > The Value of your Cookie (String of characters) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> > ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> >> ->> >> - **ssl** ->> >> > ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> > ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> > ->> >> > The weight of your server for your farm (Number) -> +**balance** -#### Removing a server from an HTTP farm +Your farm's load distribution method (Value) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**port** -### Frontends HTTP +The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) -#### List HTTP frontends attached to a OVHcloud Load Balancer service +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the HTTP farm to which the HTTP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of connection persistence to use for your farm (Value) -#### Add an HTTP frontend to a OVHcloud Load Balancer service +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> >> ->> >> NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default HTTP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your HTTP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your HTTP frontend (String of characters) ->> > ->> > **hsts** ->> > ->> >> If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> > ->> > **httpHeader** ->> > ->> >> The custom *http* header to add (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> The redirection URL *http* (String of characters) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of probe to use on your farm (Probe HTTP) -### Get the details of an HTTP frontend +- **forceSsl** +SSL activation is forced for the probe (Boolean) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) -> +- **interval** +The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) -#### Modify the properties of an HTTP frontend +- **match** +The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> > ->> >> > NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> > ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **hsts** ->> >> > ->> >> > If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > The custom *http* header to add (String of characters) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +- **negate** +The behavior of the 'match' operator is reversed (Boolean) -#### Delete an HTTP frontend +- **method** +The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) -> +- **pattern** +The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) -### Routes HTTP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) -#### List the HTTP routes attached to a Load Balancer service +- **type** +The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : +- **url** +The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) + +/// + +#### Getting the details of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of an HTTP frontend (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Add a new HTTP route to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > The expected HTTP return code (Number) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the HTTP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +
Paramètres :
-#### Get the details of an HTTP route +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP route +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> The expected HTTP return code (Number) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> **frontendId** ->> >> ->> >> > The Identifier of the HTTP frontend for which your route is applied (Number) ->> >> ->> >> **weight** ->> >> ->> >> > The priority of your route. (Number) [0 - 255] -> +The identifier of your HTTP farm (Number) -#### Delete an HTTP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : +#### Modify the properties of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**BackendHttp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **balance** +The type of load distribution (Value) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (HTTP probe) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +/// + +### HTTP Servers + +#### List the servers linked to the HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by server status (Value) + +/// + +#### Adding a server to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**cookie** + +The Value of your Cookie (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A server with high weight receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of an HTTP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendHttpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **cookie** +The Value of your Cookie (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Removing a server from an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends HTTP + +#### List HTTP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the HTTP farm to which the HTTP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add an HTTP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default HTTP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your HTTP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your HTTP frontend (String of characters) + +**hsts** + +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +**httpHeader** + +The custom *http* header to add (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**redirectLocation** + +The redirection URL *http* (String of characters) + +**ssl** + +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +### Get the details of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +/// + +#### Modify the properties of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +**FrontendHttp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **hsts** +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +- **httpHeader** +The custom *http* header to add (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes HTTP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List the HTTP routes attached to a Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of an HTTP frontend (Number) + +/// + +#### Add a new HTTP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the HTTP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeHttp** ^*^ + +- **action** ^*^ +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The Identifier of the HTTP frontend for which your route is applied (Number) + +- **weight** +The priority of your route. (Number) [0 - 255] +/// + +#### Delete an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +### Routing rules + +#### List the routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +/// + +#### Add routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the operator :code:`match` is reversed (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## Protocol TCP + +Access the elements related to the TCP protocol (Frontend, Farm, etc.). + +### TCP Farms + +#### List TCP farms attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new TCP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**balance** + +Your farm's load sharing method (Value) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**probe** + +The type of probe to use on your farm (HTTP probe) + +- **forceSsl** +Activation of the SSL is forced for the probe (Boolean) + +- **interval** +The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) + +- **match** +The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) + +- **negate** +The behavior of the :code:`match` operator is reversed. (Boolean) + +- **method** +The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) + +- **pattern** +server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) + +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) + +- **type** +The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) + +**stickiness** + +The type of connection persistence to use for your farm (Value) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcp** ^*^ + +- **balance** +The type of load distribution (Value) + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (Sonde TCP) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### TCP Servers + +#### List the servers linked to the TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Add a server to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A high weight server receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value ) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Delete a server from a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends TCP + +#### List TCP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the TCP farm to which the TCP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a TCP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default TCP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your TCP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your TCP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**ssl** + +Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +/// + +#### Modify the properties of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +**FrontendTcp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes TCP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List TCP routes attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of a TCP frontend (Number) + +/// + +#### Add a new TCP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the TCP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeTcp** ^*^ + +- **action** +The action to carry out (routeTcpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The TCP frontend for which your route is applied (Number) + +- **weight** +The priority of your route (Number) [0 - 255] +/// + +#### Delete a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + ### Routing rules -#### List the routing rules attached to an HTTP route +#### List the routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +/// + +#### Add routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the :code:`match` operator is reversed. (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## UDP Protocol + +Access the UDP protocol elements (Frontend, Farm, etc.). + +### UDP Farms + +#### List UDP trusses attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new UDP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | -> [!faq] -> -> Service : +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +/// + +#### Delete a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Add routing rules attached to an HTTP route +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the operator :code:`match` is reversed (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +
Paramètres :
-#### Get the details of a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### UDP Servers + +#### List the servers linked to the UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Adding a server to a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP server + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocol TCP -Access the elements related to the TCP protocol (Frontend, Farm, etc.). +/// details | -### TCP Farms +
Paramètres :
-#### List TCP farms attached to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdpServer** ^*^ + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **status** +If your server is activated or not (Boolean) + +/// + +#### Removing a server from a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server UDP (Number) + +**farmId** ^*^ + +The identifier of your farm UDP (Number) + +/// + +### Frontends UDP + +#### List UDP frontends attached to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Add a new TCP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **balance** ->> > ->> >> Your farm's load sharing method (Value) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (HTTP probe) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > Activation of the SSL is forced for the probe (Boolean) ->> >> ->> >> - **interval** ->> >> ->> >> > The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) ->> >> ->> >> - **match** ->> >> ->> >> > The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > The behavior of the :code:`match` operator is reversed. (Boolean) ->> >> ->> >> - **method** ->> >> ->> >> > The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> ->> >> - **type** ->> >> ->> >> > The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) ->> >> ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP farm +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the UDP farm to which the UDP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a UDP frontend to a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** ^*^ + +The default UDP farm identifier for your frontend (Number) + +**disabled** + +If your UDP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your UDP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP frontend + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modify the properties of a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > The type of load distribution (Value) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > The type of connection persistence (Value) +/// + +#### Modify the properties of a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Delete a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **disabled** +If your UDP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your UDP frontend (String of characters) + +/// -> [!faq] +#### Delete a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Service : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +/// + +## Other features + +### Additional IP + +#### List Additional IPs routed on a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### Service Status + +#### Obtenir l'état des instances d'un service OVHcloud Load Balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -### TCP Servers +/// details | -#### List the servers linked to the TCP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### List the output IPs used by OVH for NAT + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -#### Add a server to a TCP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A high weight server receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### Apply changes to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Get the details of a server linked to a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### SSL Certificates + +#### List SSL certificates of a OVHcloud Load Balancer service -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**fingerprint** + +Lists the fingerprint of the SSL certificate (String of characters) + +**serial** + +Lists the identification number of the SSL certificate (String of characters) + +**type** + +Type of SSL certificate (Value) + +/// + +#### Add a new SSL object + +> [!api] > -> Parameters : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> > -#### Modify the properties of a TCP server +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**certificate** ^*^ + +Adding the SSL certificate (String of characters) + +**chain** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> ->> >> > The weight of your server for your farm (Number) -> +Adding the intermediate SSL certificate (String of characters) -#### Delete a server from a TCP farm +**key** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +Adding the private key (String of characters) -### Frontends TCP +/// -#### List TCP frontends attached to a OVHcloud Load Balancer service +#### Get the details of an SSL object -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the TCP farm to which the TCP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Add a TCP frontend to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default TCP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your TCP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your TCP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> >> ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> >> ->> >> The identifier of your frontend TCP (Number) ->> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of a TCP frontend +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend TCP (Number) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **ssl** ->> >> ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +The identifier of your SSL certificate (Number) -#### Delete a TCP frontend +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : +#### Delete an SSL object + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -### Routes TCP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. - -#### List TCP routes attached to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of a TCP frontend (Number) -> +
Paramètres :
-#### Add a new TCP route to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the TCP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Get the details of a TCP route +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your SSL certificate (Number) -#### Modify the properties of a TCP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > The action to carry out (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> - **frontendId** ->> >> ->> >> > The TCP frontend for which your route is applied (Number) ->> >> ->> >> - **weight** ->> >> ->> >> > The priority of your route (Number) [0 - 255] -> +### Tasks -#### Delete a TCP route +#### List current tasks for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -### Routing rules +/// details | -#### List the routing rules attached to a TCP route +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) -> +**serviceName** ^*^ -#### Add routing rules attached to a TCP route +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the :code:`match` operator is reversed. (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +**action** ^*^ -#### Get the details of a routing rule +Consultation of available tasks (Values) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : +/// + +#### Get the details of a task + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## UDP Protocol -Access the UDP protocol elements (Frontend, Farm, etc.). +**id** ^*^ -### UDP Farms +The identifier of your task (Number) -#### List UDP trusses attached to a OVHcloud Load Balancer service +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +### Contact -#### Add a new UDP farm to a OVHcloud Load Balancer service +#### Initiate a contact change -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Get the details of a UDP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +
Paramètres :
-#### Modify the properties of a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Delete a UDP farm +**contactAdmin** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +The OVH NIC to be configured for the Admin contact of this service (String of characters) -### UDP Servers +**contactBilling** -#### List the servers linked to the UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) -> +**contactTech** -#### Adding a server to a UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +/// -#### Get the details of a server linked to a UDP farm +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : +#### Description of the private networks attached to the load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP server +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) -> +
Paramètres :
-#### Removing a server from a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server UDP (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -### Frontends UDP +**subnet** -#### List UDP frontends attached to a OVHcloud Load Balancer service +Allows to filter according to the network used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the UDP farm to which the UDP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +**vlan** -#### Add a UDP frontend to a OVHcloud Load Balancer service +Allows to filter according to the vlan used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> The default UDP farm identifier for your frontend (Number) ->> > ->> > **disabled** ->> > ->> >> If your UDP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your UDP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +/// -#### Get the details of a UDP frontend +#### Add a private network in the vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP frontend +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your UDP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your UDP frontend (String of characters) -> +
Paramètres :
-#### Delete a UDP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## Other features +**displayName** -### Additional IP +The name you want to give to the network (String of characters) -#### List Additional IPs routed on a OVHcloud Load Balancer service +**farmId** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +Identification table of farms that you wish to attach to this private network -### Service Status +**natIp** -#### Obtenir l'état des instances d'un service OVHcloud Load Balancer +An IP block reserved for the load balancer to reach the servers. -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**subnet** -#### List the output IPs used by OVH for NAT +The IP block of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**vlan** -#### Apply changes to a OVHcloud Load Balancer service +Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Parameters : +/// + +#### Retrieve a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### SSL Certificates +/// details | -#### List SSL certificates of a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **fingerprint** ->> > ->> >> Lists the fingerprint of the SSL certificate (String of characters) ->> > ->> > **serial** ->> > ->> >> Lists the identification number of the SSL certificate (String of characters) ->> > ->> > **type** ->> > ->> >> Type of SSL certificate (Value) -> +**serviceName** ^*^ -#### Add a new SSL object +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **certificate** * ->> > ->> >> Adding the SSL certificate (String of characters) ->> > ->> > **chain** ->> > ->> >> Adding the intermediate SSL certificate (String of characters) ->> > ->> > **key** * ->> > ->> >> Adding the private key (String of characters) -> +**vrackNetworkId** ^*^ -#### Get the details of an SSL object +The identifier of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) -> +/// -#### Delete an SSL object +#### Modify a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### Tasks +/// details | -#### List current tasks for a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> Consultation of available tasks (Values) -> +**serviceName** ^*^ -#### Get the details of a task +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your task (Number) -> +**vrackNetworkId** ^*^ -### Contact +The identifier of the private network -#### Initiate a contact change +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Parameters : +#### Delete a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **contactAdmin** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactBilling** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactTech** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### vRack +/// details | -#### Description of the private networks attached to the load balancer +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **subnet** ->> > ->> >> Allows to filter according to the network used ->> > ->> > **vlan** ->> > ->> >> Allows to filter according to the vlan used -> +**serviceName** ^*^ -#### Add a private network in the vRack +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you want to give to the network (String of characters) ->> > ->> > **farmId** ->> > ->> >> Identification table of farms that you wish to attach to this private network ->> > ->> > **natIp** ->> > ->> >> An IP block reserved for the load balancer to reach the servers. ->> > ->> > **subnet** ->> > ->> >> The IP block of the private network ->> > ->> > **vlan** ->> > ->> >> Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> - -#### Retrieve, modify or delete a private network - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network -> +**vrackNetworkId** ^*^ + +The identifier of the private network + +/// #### Modify the list of farms attached to a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network ->> > ->> > **farmId** * ->> > ->> >> Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**vrackNetworkId** ^*^ + +The identifier of the private network + +**farmId** ^*^ + +Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. + +/// + ## Go further -Interact with our user community on . +Interact with our user community on +:root > * { + --md-api-get-color:#3a87ad; + --md-api-get-bgcolor:#c9ddf6; + --md-api-post-color:#468847; + --md-api-post-bgcolor:#d1e7db; + --md-api-put-color:#f89406; + --md-api-put-bgcolor:#f7dec0; + --md-api-delete-color:#b94a48; + --md-api-delete-bgcolor:#f4c1bf; + --md-details-icon: url('data:image/svg+xml;charset=utf-8,'); + --md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a; + --md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040; + --md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059; +} +/* HOOK API */ +.ovh-api { + position:relative !important; + width:calc(100% - 30px) !important; + z-index:2 !important; +} +.ovh-api > p { + display:none !important; +} +.ovh-api-main { + align-items:center !important; + border-radius:0 !important; + box-shadow:none !important; + display:flex !important; + font-size:initial !important; + margin:15px 0 !important; + overflow:hidden !important; + padding:0 !important; + scrollbar-width:thin !important; +} +.ovh-api-main:hover { + overflow-x:auto !important; +} +.ovh-api-main span { + font-size:13px !important +} +.ovh-api-main a { + align-items:center !important; + display:inline-flex !important; + height:30px !important; + text-decoration:none !important; +} +.ovh-api-verb { + align-items:center !important; + border-radius:4px !important; + color:#fff !important; + display:flex !important; + font-weight:700 !important; + height:22px !important; + justify-content:center !important; + letter-spacing:1px !important; + line-height:initial !important; + margin:0 1ch 0 4px !important; + padding:2px 0 0 !important; + position:initial !important; + text-shadow:none !important; + vertical-align:initial !important; + width:9ch !important; +} +.ovh-api-endpoint { + display: inline !important; + padding:3px 1ch 0 0 !important; + white-space:nowrap !important; +} +/* DETAILS */ +details:not(:has(summary:empty)) { + margin:10px 0; +} +.ovh-api + details:has(summary:empty) { + margin-top:-15px !important; + position:relative !important; +} +.ovh-api + details summary:empty { + cursor:pointer !important; + height:32px !important; + list-style:none !important; + outline:none !important; + position:absolute !important; + right:0 !important; + top:-32px !important; + width:30px !important; +} +.ovh-api + details > summary:empty:before { + background-color:#222c32 !important; + content:'' !important; + height:24px !important; + left:3px !important; + -webkit-mask-image:var(--md-details-icon) !important; + mask-image:var(--md-details-icon) !important; + -webkit-mask-position:center !important; + mask-position:center !important; + -webkit-mask-repeat:no-repeat !important; + mask-repeat:no-repeat !important; + -webkit-mask-size:contain !important; + mask-size:contain !important; + position:absolute !important; + top:3px !important; + transition:transform .25s !important; + width:24px !important; +} +.ovh-api + details > summary:empty::-webkit-details-marker { + /* Hides marker on Safari */ + display:none !important; +} +.ovh-api + details[open]:has(summary:empty) { + border-radius:0 0 4px 4px !important; + border-top:none !important; + margin-top:-47px !important; + padding:40px 15px 15px !important; +} +.ovh-api + details[open] > summary:empty { + right:-1px !important; + top:-1px !important; +} +.ovh-api + details[open] > summary:empty:before { + transform: rotate(90deg) !important; +} +.ovh-api + details[open]:has(summary:empty) p { + margin:0 0 10px !important; +} +.ovh-api + details[open]:has(summary:empty) h6 { + font-size: 16px !important; + font-weight:600 !important; + margin:0 0 20px !important; + text-transform:uppercase !important; +} +.ovh-api + details[open]:has(summary:empty) sup { + color: #900 !important; + font-size: 24px !important; + vertical-align: bottom !important; +} +/* GET */ +.ovh-api-main:has(.ovh-api-verb-GET) { + border:1px solid var(--md-api-get-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-GET { + background-color: var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty { + border:1px solid var(--md-api-get-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty:before { + background-color:var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-get-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-get-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-GET):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-get-color) !important; + width:calc(100% + 29px) !important; +} +/* POST */ +.ovh-api-main:has(.ovh-api-verb-POST) { + border:1px solid var(--md-api-post-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-POST { + background-color: var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty { + border:1px solid var(--md-api-post-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty:before { + background-color:var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-post-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-post-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-POST):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-post-color) !important; + width:calc(100% + 29px) !important; +} +/* PUT */ +.ovh-api-main:has(.ovh-api-verb-PUT) { + border:1px solid var(--md-api-put-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-PUT { + background-color: var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty { + border:1px solid var(--md-api-put-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty:before { + background-color:var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-put-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-put-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-PUT):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-put-color) !important; + width:calc(100% + 29px) !important; +} +/* DELETE */ +.ovh-api-main:has(.ovh-api-verb-DELETE) { + border:1px solid var(--md-api-delete-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-DELETE { + background-color: var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty { + border:1px solid var(--md-api-delete-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty:before { + background-color:var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-delete-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-delete-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-delete-color) !important; + width:calc(100% + 29px) !important; +} + + ## Objective This guide provides a detailed description of all API functions for the OVHcloud Load Balancer. @@ -31,7 +261,6 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > ## Services and zones - ### OVHcloud Load Balancer #### List active services @@ -39,3138 +268,2891 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### List the zones available for the OVHcloud Load Balancer > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Return details of a OVHcloud Load Balancer service -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify a OVHcloud Load Balancer service -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > The name you want to give to the service (String of characters) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > The SSL configuration you want to assign to the service (Value) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Ip** ^*^ + +- **displayName** +The name you want to give to the service (String of characters) + +- **sslConfiguration** +The SSL configuration you want to assign to the service (Value) + +/// + #### List the services attached to the OVHcloud Load Balancer -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List existing farms and their type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **vrackNetworkId** ->> > ->> >> Allows filtering according to the vrack network +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**vrackNetworkId** + +Allows filtering according to the vrack network + +/// + #### List the areas that can be attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different probes that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of farms that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of frontends that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing actions that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing rules that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + ### Service #### Get service information -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify service information -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Enables automatic service renewal (Boolean)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Enables the deletion of the service upon expiration. (Boolean) ->> >> ->> >> - **forced** ->> >> > ->> >> > Forces automatic renewal (Boolean) ->> >> ->> >> - **period** ->> >> > ->> >> > Fill in the renewal term (String of characters) +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Service** ^*^ + +- **automatic** +Enables automatic service renewal (Boolean)) + +- **deleteAtExpiration** +Enables the deletion of the service upon expiration. (Boolean) + +- **forced** +Forces automatic renewal (Boolean) + +- **period** +Fill in the renewal term (String of characters) + +/// + ### Zones #### List active zones for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) + +/// + #### Get the details of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the requested zone +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the requested zone + +/// + #### Delete a zone The service will be discontinued on the expiry date. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The service will be discontinued on the expiry date. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The service will be discontinued on the expiry date. + +/// + #### Undo the deletion of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the zone to be deleted +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the zone to be deleted + +/// + ## HTTP Protocol + Accessing HTTP protocol related elements (Frontend, Firmware, etc.). ### HTTP farms #### List HTTP farms attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of the zone (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Adding a new HTTP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** * ->> > ->> >> The name of the zone (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **balance** ->> >> ->> >> Your farm's load distribution method (Value) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (Probe HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> SSL activation is forced for the probe (Boolean) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> The behavior of the 'match' operator is reversed (Boolean) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) -> +
Paramètres :
-#### Getting the details of an HTTP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP farm +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **balance** ->> >> > ->> >> > The type of load distribution (Value) ->> >> ->> >> - **port** ->> >> > ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (HTTP probe) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > The type of connection persistence (Value) -> +The name of the zone (String of characters) -#### Delete an HTTP farm +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : +#### Adding a new HTTP farm to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### HTTP Servers +/// details | -#### List the servers linked to the HTTP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by server status (Value) -> +**serviceName** ^*^ -#### Adding a server to an HTTP farm +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **cookie** ->> > ->> >> The Value of your Cookie (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A server with high weight receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +**zone** ^*^ -#### Get the details of a server linked to an HTTP farm +The name of the zone (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**displayName** -#### Modify the properties of an HTTP server +The name you wish to give to your farm (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> > ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **cookie** ->> >> > ->> >> > The Value of your Cookie (String of characters) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> > ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> >> ->> >> - **ssl** ->> >> > ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> > ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> > ->> >> > The weight of your server for your farm (Number) -> +**balance** -#### Removing a server from an HTTP farm +Your farm's load distribution method (Value) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**port** -### Frontends HTTP +The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) -#### List HTTP frontends attached to a OVHcloud Load Balancer service +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the HTTP farm to which the HTTP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of connection persistence to use for your farm (Value) -#### Add an HTTP frontend to a OVHcloud Load Balancer service +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> >> ->> >> NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default HTTP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your HTTP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your HTTP frontend (String of characters) ->> > ->> > **hsts** ->> > ->> >> If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> > ->> > **httpHeader** ->> > ->> >> The custom *http* header to add (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> The redirection URL *http* (String of characters) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of probe to use on your farm (Probe HTTP) -### Get the details of an HTTP frontend +- **forceSsl** +SSL activation is forced for the probe (Boolean) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) -> +- **interval** +The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) -#### Modify the properties of an HTTP frontend +- **match** +The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> > ->> >> > NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> > ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **hsts** ->> >> > ->> >> > If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > The custom *http* header to add (String of characters) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +- **negate** +The behavior of the 'match' operator is reversed (Boolean) -#### Delete an HTTP frontend +- **method** +The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) -> +- **pattern** +The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) -### Routes HTTP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) -#### List the HTTP routes attached to a Load Balancer service +- **type** +The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : +- **url** +The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) + +/// + +#### Getting the details of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of an HTTP frontend (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Add a new HTTP route to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > The expected HTTP return code (Number) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the HTTP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +
Paramètres :
-#### Get the details of an HTTP route +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP route +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> The expected HTTP return code (Number) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> **frontendId** ->> >> ->> >> > The Identifier of the HTTP frontend for which your route is applied (Number) ->> >> ->> >> **weight** ->> >> ->> >> > The priority of your route. (Number) [0 - 255] -> +The identifier of your HTTP farm (Number) -#### Delete an HTTP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : +#### Modify the properties of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**BackendHttp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **balance** +The type of load distribution (Value) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (HTTP probe) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +/// + +### HTTP Servers + +#### List the servers linked to the HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by server status (Value) + +/// + +#### Adding a server to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**cookie** + +The Value of your Cookie (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A server with high weight receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of an HTTP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendHttpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **cookie** +The Value of your Cookie (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Removing a server from an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends HTTP + +#### List HTTP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the HTTP farm to which the HTTP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add an HTTP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default HTTP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your HTTP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your HTTP frontend (String of characters) + +**hsts** + +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +**httpHeader** + +The custom *http* header to add (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**redirectLocation** + +The redirection URL *http* (String of characters) + +**ssl** + +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +### Get the details of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +/// + +#### Modify the properties of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +**FrontendHttp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **hsts** +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +- **httpHeader** +The custom *http* header to add (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes HTTP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List the HTTP routes attached to a Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of an HTTP frontend (Number) + +/// + +#### Add a new HTTP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the HTTP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeHttp** ^*^ + +- **action** ^*^ +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The Identifier of the HTTP frontend for which your route is applied (Number) + +- **weight** +The priority of your route. (Number) [0 - 255] +/// + +#### Delete an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +### Routing rules + +#### List the routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +/// + +#### Add routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the operator :code:`match` is reversed (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## Protocol TCP + +Access the elements related to the TCP protocol (Frontend, Farm, etc.). + +### TCP Farms + +#### List TCP farms attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new TCP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**balance** + +Your farm's load sharing method (Value) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**probe** + +The type of probe to use on your farm (HTTP probe) + +- **forceSsl** +Activation of the SSL is forced for the probe (Boolean) + +- **interval** +The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) + +- **match** +The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) + +- **negate** +The behavior of the :code:`match` operator is reversed. (Boolean) + +- **method** +The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) + +- **pattern** +server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) + +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) + +- **type** +The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) + +**stickiness** + +The type of connection persistence to use for your farm (Value) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcp** ^*^ + +- **balance** +The type of load distribution (Value) + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (Sonde TCP) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### TCP Servers + +#### List the servers linked to the TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Add a server to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A high weight server receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value ) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Delete a server from a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends TCP + +#### List TCP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the TCP farm to which the TCP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a TCP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default TCP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your TCP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your TCP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**ssl** + +Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +/// + +#### Modify the properties of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +**FrontendTcp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes TCP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List TCP routes attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of a TCP frontend (Number) + +/// + +#### Add a new TCP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the TCP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeTcp** ^*^ + +- **action** +The action to carry out (routeTcpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The TCP frontend for which your route is applied (Number) + +- **weight** +The priority of your route (Number) [0 - 255] +/// + +#### Delete a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + ### Routing rules -#### List the routing rules attached to an HTTP route +#### List the routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +/// + +#### Add routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the :code:`match` operator is reversed. (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## UDP Protocol + +Access the UDP protocol elements (Frontend, Farm, etc.). + +### UDP Farms + +#### List UDP trusses attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new UDP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | -> [!faq] -> -> Service : +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +/// + +#### Delete a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Add routing rules attached to an HTTP route +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the operator :code:`match` is reversed (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +
Paramètres :
-#### Get the details of a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### UDP Servers + +#### List the servers linked to the UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Adding a server to a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP server + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocol TCP -Access the elements related to the TCP protocol (Frontend, Farm, etc.). +/// details | -### TCP Farms +
Paramètres :
-#### List TCP farms attached to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdpServer** ^*^ + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **status** +If your server is activated or not (Boolean) + +/// + +#### Removing a server from a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server UDP (Number) + +**farmId** ^*^ + +The identifier of your farm UDP (Number) + +/// + +### Frontends UDP + +#### List UDP frontends attached to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Add a new TCP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **balance** ->> > ->> >> Your farm's load sharing method (Value) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (HTTP probe) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > Activation of the SSL is forced for the probe (Boolean) ->> >> ->> >> - **interval** ->> >> ->> >> > The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) ->> >> ->> >> - **match** ->> >> ->> >> > The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > The behavior of the :code:`match` operator is reversed. (Boolean) ->> >> ->> >> - **method** ->> >> ->> >> > The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> ->> >> - **type** ->> >> ->> >> > The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) ->> >> ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP farm +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the UDP farm to which the UDP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a UDP frontend to a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** ^*^ + +The default UDP farm identifier for your frontend (Number) + +**disabled** + +If your UDP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your UDP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP frontend + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modify the properties of a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > The type of load distribution (Value) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > The type of connection persistence (Value) +/// + +#### Modify the properties of a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Delete a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **disabled** +If your UDP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your UDP frontend (String of characters) + +/// -> [!faq] +#### Delete a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Service : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +/// + +## Other features + +### Additional IP + +#### List Additional IPs routed on a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### Service Status + +#### Obtenir l'état des instances d'un service OVHcloud Load Balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -### TCP Servers +/// details | -#### List the servers linked to the TCP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### List the output IPs used by OVH for NAT + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -#### Add a server to a TCP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A high weight server receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### Apply changes to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Get the details of a server linked to a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### SSL Certificates + +#### List SSL certificates of a OVHcloud Load Balancer service -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**fingerprint** + +Lists the fingerprint of the SSL certificate (String of characters) + +**serial** + +Lists the identification number of the SSL certificate (String of characters) + +**type** + +Type of SSL certificate (Value) + +/// + +#### Add a new SSL object + +> [!api] > -> Parameters : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> > -#### Modify the properties of a TCP server +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**certificate** ^*^ + +Adding the SSL certificate (String of characters) + +**chain** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> ->> >> > The weight of your server for your farm (Number) -> +Adding the intermediate SSL certificate (String of characters) -#### Delete a server from a TCP farm +**key** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +Adding the private key (String of characters) -### Frontends TCP +/// -#### List TCP frontends attached to a OVHcloud Load Balancer service +#### Get the details of an SSL object -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the TCP farm to which the TCP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Add a TCP frontend to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default TCP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your TCP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your TCP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> >> ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> >> ->> >> The identifier of your frontend TCP (Number) ->> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of a TCP frontend +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend TCP (Number) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **ssl** ->> >> ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +The identifier of your SSL certificate (Number) -#### Delete a TCP frontend +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : +#### Delete an SSL object + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -### Routes TCP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. - -#### List TCP routes attached to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of a TCP frontend (Number) -> +
Paramètres :
-#### Add a new TCP route to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the TCP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Get the details of a TCP route +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your SSL certificate (Number) -#### Modify the properties of a TCP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > The action to carry out (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> - **frontendId** ->> >> ->> >> > The TCP frontend for which your route is applied (Number) ->> >> ->> >> - **weight** ->> >> ->> >> > The priority of your route (Number) [0 - 255] -> +### Tasks -#### Delete a TCP route +#### List current tasks for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -### Routing rules +/// details | -#### List the routing rules attached to a TCP route +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) -> +**serviceName** ^*^ -#### Add routing rules attached to a TCP route +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the :code:`match` operator is reversed. (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +**action** ^*^ -#### Get the details of a routing rule +Consultation of available tasks (Values) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : +/// + +#### Get the details of a task + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## UDP Protocol -Access the UDP protocol elements (Frontend, Farm, etc.). +**id** ^*^ -### UDP Farms +The identifier of your task (Number) -#### List UDP trusses attached to a OVHcloud Load Balancer service +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +### Contact -#### Add a new UDP farm to a OVHcloud Load Balancer service +#### Initiate a contact change -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Get the details of a UDP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +
Paramètres :
-#### Modify the properties of a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Delete a UDP farm +**contactAdmin** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +The OVH NIC to be configured for the Admin contact of this service (String of characters) -### UDP Servers +**contactBilling** -#### List the servers linked to the UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) -> +**contactTech** -#### Adding a server to a UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +/// -#### Get the details of a server linked to a UDP farm +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : +#### Description of the private networks attached to the load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP server +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) -> +
Paramètres :
-#### Removing a server from a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server UDP (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -### Frontends UDP +**subnet** -#### List UDP frontends attached to a OVHcloud Load Balancer service +Allows to filter according to the network used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the UDP farm to which the UDP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +**vlan** -#### Add a UDP frontend to a OVHcloud Load Balancer service +Allows to filter according to the vlan used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> The default UDP farm identifier for your frontend (Number) ->> > ->> > **disabled** ->> > ->> >> If your UDP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your UDP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +/// -#### Get the details of a UDP frontend +#### Add a private network in the vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP frontend +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your UDP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your UDP frontend (String of characters) -> +
Paramètres :
-#### Delete a UDP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## Other features +**displayName** -### Additional IP +The name you want to give to the network (String of characters) -#### List Additional IPs routed on a OVHcloud Load Balancer service +**farmId** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +Identification table of farms that you wish to attach to this private network -### Service Status +**natIp** -#### Obtenir l'état des instances d'un service OVHcloud Load Balancer +An IP block reserved for the load balancer to reach the servers. -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**subnet** -#### List the output IPs used by OVH for NAT +The IP block of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**vlan** -#### Apply changes to a OVHcloud Load Balancer service +Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Parameters : +/// + +#### Retrieve a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### SSL Certificates +/// details | -#### List SSL certificates of a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **fingerprint** ->> > ->> >> Lists the fingerprint of the SSL certificate (String of characters) ->> > ->> > **serial** ->> > ->> >> Lists the identification number of the SSL certificate (String of characters) ->> > ->> > **type** ->> > ->> >> Type of SSL certificate (Value) -> +**serviceName** ^*^ -#### Add a new SSL object +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **certificate** * ->> > ->> >> Adding the SSL certificate (String of characters) ->> > ->> > **chain** ->> > ->> >> Adding the intermediate SSL certificate (String of characters) ->> > ->> > **key** * ->> > ->> >> Adding the private key (String of characters) -> +**vrackNetworkId** ^*^ -#### Get the details of an SSL object +The identifier of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) -> +/// -#### Delete an SSL object +#### Modify a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### Tasks +/// details | -#### List current tasks for a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> Consultation of available tasks (Values) -> +**serviceName** ^*^ -#### Get the details of a task +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your task (Number) -> +**vrackNetworkId** ^*^ -### Contact +The identifier of the private network -#### Initiate a contact change +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Parameters : +#### Delete a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **contactAdmin** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactBilling** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactTech** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### vRack +/// details | -#### Description of the private networks attached to the load balancer +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **subnet** ->> > ->> >> Allows to filter according to the network used ->> > ->> > **vlan** ->> > ->> >> Allows to filter according to the vlan used -> +**serviceName** ^*^ -#### Add a private network in the vRack +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you want to give to the network (String of characters) ->> > ->> > **farmId** ->> > ->> >> Identification table of farms that you wish to attach to this private network ->> > ->> > **natIp** ->> > ->> >> An IP block reserved for the load balancer to reach the servers. ->> > ->> > **subnet** ->> > ->> >> The IP block of the private network ->> > ->> > **vlan** ->> > ->> >> Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> - -#### Retrieve, modify or delete a private network - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network -> +**vrackNetworkId** ^*^ + +The identifier of the private network + +/// #### Modify the list of farms attached to a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network ->> > ->> > **farmId** * ->> > ->> >> Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**vrackNetworkId** ^*^ + +The identifier of the private network + +**farmId** ^*^ + +Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. + +/// + ## Go further -Interact with our user community on . +Interact with our user community on +:root > * { + --md-api-get-color:#3a87ad; + --md-api-get-bgcolor:#c9ddf6; + --md-api-post-color:#468847; + --md-api-post-bgcolor:#d1e7db; + --md-api-put-color:#f89406; + --md-api-put-bgcolor:#f7dec0; + --md-api-delete-color:#b94a48; + --md-api-delete-bgcolor:#f4c1bf; + --md-details-icon: url('data:image/svg+xml;charset=utf-8,'); + --md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a; + --md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040; + --md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059; +} +/* HOOK API */ +.ovh-api { + position:relative !important; + width:calc(100% - 30px) !important; + z-index:2 !important; +} +.ovh-api > p { + display:none !important; +} +.ovh-api-main { + align-items:center !important; + border-radius:0 !important; + box-shadow:none !important; + display:flex !important; + font-size:initial !important; + margin:15px 0 !important; + overflow:hidden !important; + padding:0 !important; + scrollbar-width:thin !important; +} +.ovh-api-main:hover { + overflow-x:auto !important; +} +.ovh-api-main span { + font-size:13px !important +} +.ovh-api-main a { + align-items:center !important; + display:inline-flex !important; + height:30px !important; + text-decoration:none !important; +} +.ovh-api-verb { + align-items:center !important; + border-radius:4px !important; + color:#fff !important; + display:flex !important; + font-weight:700 !important; + height:22px !important; + justify-content:center !important; + letter-spacing:1px !important; + line-height:initial !important; + margin:0 1ch 0 4px !important; + padding:2px 0 0 !important; + position:initial !important; + text-shadow:none !important; + vertical-align:initial !important; + width:9ch !important; +} +.ovh-api-endpoint { + display: inline !important; + padding:3px 1ch 0 0 !important; + white-space:nowrap !important; +} +/* DETAILS */ +details:not(:has(summary:empty)) { + margin:10px 0; +} +.ovh-api + details:has(summary:empty) { + margin-top:-15px !important; + position:relative !important; +} +.ovh-api + details summary:empty { + cursor:pointer !important; + height:32px !important; + list-style:none !important; + outline:none !important; + position:absolute !important; + right:0 !important; + top:-32px !important; + width:30px !important; +} +.ovh-api + details > summary:empty:before { + background-color:#222c32 !important; + content:'' !important; + height:24px !important; + left:3px !important; + -webkit-mask-image:var(--md-details-icon) !important; + mask-image:var(--md-details-icon) !important; + -webkit-mask-position:center !important; + mask-position:center !important; + -webkit-mask-repeat:no-repeat !important; + mask-repeat:no-repeat !important; + -webkit-mask-size:contain !important; + mask-size:contain !important; + position:absolute !important; + top:3px !important; + transition:transform .25s !important; + width:24px !important; +} +.ovh-api + details > summary:empty::-webkit-details-marker { + /* Hides marker on Safari */ + display:none !important; +} +.ovh-api + details[open]:has(summary:empty) { + border-radius:0 0 4px 4px !important; + border-top:none !important; + margin-top:-47px !important; + padding:40px 15px 15px !important; +} +.ovh-api + details[open] > summary:empty { + right:-1px !important; + top:-1px !important; +} +.ovh-api + details[open] > summary:empty:before { + transform: rotate(90deg) !important; +} +.ovh-api + details[open]:has(summary:empty) p { + margin:0 0 10px !important; +} +.ovh-api + details[open]:has(summary:empty) h6 { + font-size: 16px !important; + font-weight:600 !important; + margin:0 0 20px !important; + text-transform:uppercase !important; +} +.ovh-api + details[open]:has(summary:empty) sup { + color: #900 !important; + font-size: 24px !important; + vertical-align: bottom !important; +} +/* GET */ +.ovh-api-main:has(.ovh-api-verb-GET) { + border:1px solid var(--md-api-get-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-GET { + background-color: var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty { + border:1px solid var(--md-api-get-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty:before { + background-color:var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-get-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-get-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-GET):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-get-color) !important; + width:calc(100% + 29px) !important; +} +/* POST */ +.ovh-api-main:has(.ovh-api-verb-POST) { + border:1px solid var(--md-api-post-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-POST { + background-color: var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty { + border:1px solid var(--md-api-post-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty:before { + background-color:var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-post-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-post-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-POST):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-post-color) !important; + width:calc(100% + 29px) !important; +} +/* PUT */ +.ovh-api-main:has(.ovh-api-verb-PUT) { + border:1px solid var(--md-api-put-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-PUT { + background-color: var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty { + border:1px solid var(--md-api-put-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty:before { + background-color:var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-put-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-put-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-PUT):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-put-color) !important; + width:calc(100% + 29px) !important; +} +/* DELETE */ +.ovh-api-main:has(.ovh-api-verb-DELETE) { + border:1px solid var(--md-api-delete-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-DELETE { + background-color: var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty { + border:1px solid var(--md-api-delete-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty:before { + background-color:var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-delete-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-delete-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-delete-color) !important; + width:calc(100% + 29px) !important; +} + + ## Objective This guide provides a detailed description of all API functions for the OVHcloud Load Balancer. @@ -31,7 +261,6 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > ## Services and zones - ### OVHcloud Load Balancer #### List active services @@ -39,3138 +268,2891 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### List the zones available for the OVHcloud Load Balancer > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Return details of a OVHcloud Load Balancer service -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify a OVHcloud Load Balancer service -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > The name you want to give to the service (String of characters) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > The SSL configuration you want to assign to the service (Value) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Ip** ^*^ + +- **displayName** +The name you want to give to the service (String of characters) + +- **sslConfiguration** +The SSL configuration you want to assign to the service (Value) + +/// + #### List the services attached to the OVHcloud Load Balancer -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List existing farms and their type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **vrackNetworkId** ->> > ->> >> Allows filtering according to the vrack network +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**vrackNetworkId** + +Allows filtering according to the vrack network + +/// + #### List the areas that can be attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different probes that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of farms that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of frontends that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing actions that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing rules that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + ### Service #### Get service information -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify service information -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Enables automatic service renewal (Boolean)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Enables the deletion of the service upon expiration. (Boolean) ->> >> ->> >> - **forced** ->> >> > ->> >> > Forces automatic renewal (Boolean) ->> >> ->> >> - **period** ->> >> > ->> >> > Fill in the renewal term (String of characters) +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Service** ^*^ + +- **automatic** +Enables automatic service renewal (Boolean)) + +- **deleteAtExpiration** +Enables the deletion of the service upon expiration. (Boolean) + +- **forced** +Forces automatic renewal (Boolean) + +- **period** +Fill in the renewal term (String of characters) + +/// + ### Zones #### List active zones for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) + +/// + #### Get the details of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the requested zone +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the requested zone + +/// + #### Delete a zone The service will be discontinued on the expiry date. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The service will be discontinued on the expiry date. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The service will be discontinued on the expiry date. + +/// + #### Undo the deletion of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the zone to be deleted +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the zone to be deleted + +/// + ## HTTP Protocol + Accessing HTTP protocol related elements (Frontend, Firmware, etc.). ### HTTP farms #### List HTTP farms attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of the zone (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Adding a new HTTP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** * ->> > ->> >> The name of the zone (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **balance** ->> >> ->> >> Your farm's load distribution method (Value) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (Probe HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> SSL activation is forced for the probe (Boolean) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> The behavior of the 'match' operator is reversed (Boolean) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) -> +
Paramètres :
-#### Getting the details of an HTTP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP farm +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **balance** ->> >> > ->> >> > The type of load distribution (Value) ->> >> ->> >> - **port** ->> >> > ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (HTTP probe) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > The type of connection persistence (Value) -> +The name of the zone (String of characters) -#### Delete an HTTP farm +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : +#### Adding a new HTTP farm to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### HTTP Servers +/// details | -#### List the servers linked to the HTTP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by server status (Value) -> +**serviceName** ^*^ -#### Adding a server to an HTTP farm +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **cookie** ->> > ->> >> The Value of your Cookie (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A server with high weight receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +**zone** ^*^ -#### Get the details of a server linked to an HTTP farm +The name of the zone (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**displayName** -#### Modify the properties of an HTTP server +The name you wish to give to your farm (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> > ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **cookie** ->> >> > ->> >> > The Value of your Cookie (String of characters) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> > ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> >> ->> >> - **ssl** ->> >> > ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> > ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> > ->> >> > The weight of your server for your farm (Number) -> +**balance** -#### Removing a server from an HTTP farm +Your farm's load distribution method (Value) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**port** -### Frontends HTTP +The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) -#### List HTTP frontends attached to a OVHcloud Load Balancer service +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the HTTP farm to which the HTTP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of connection persistence to use for your farm (Value) -#### Add an HTTP frontend to a OVHcloud Load Balancer service +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> >> ->> >> NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default HTTP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your HTTP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your HTTP frontend (String of characters) ->> > ->> > **hsts** ->> > ->> >> If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> > ->> > **httpHeader** ->> > ->> >> The custom *http* header to add (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> The redirection URL *http* (String of characters) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of probe to use on your farm (Probe HTTP) -### Get the details of an HTTP frontend +- **forceSsl** +SSL activation is forced for the probe (Boolean) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) -> +- **interval** +The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) -#### Modify the properties of an HTTP frontend +- **match** +The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> > ->> >> > NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> > ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **hsts** ->> >> > ->> >> > If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > The custom *http* header to add (String of characters) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +- **negate** +The behavior of the 'match' operator is reversed (Boolean) -#### Delete an HTTP frontend +- **method** +The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) -> +- **pattern** +The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) -### Routes HTTP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) -#### List the HTTP routes attached to a Load Balancer service +- **type** +The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : +- **url** +The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) + +/// + +#### Getting the details of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of an HTTP frontend (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Add a new HTTP route to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > The expected HTTP return code (Number) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the HTTP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +
Paramètres :
-#### Get the details of an HTTP route +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP route +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> The expected HTTP return code (Number) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> **frontendId** ->> >> ->> >> > The Identifier of the HTTP frontend for which your route is applied (Number) ->> >> ->> >> **weight** ->> >> ->> >> > The priority of your route. (Number) [0 - 255] -> +The identifier of your HTTP farm (Number) -#### Delete an HTTP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : +#### Modify the properties of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**BackendHttp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **balance** +The type of load distribution (Value) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (HTTP probe) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +/// + +### HTTP Servers + +#### List the servers linked to the HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by server status (Value) + +/// + +#### Adding a server to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**cookie** + +The Value of your Cookie (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A server with high weight receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of an HTTP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendHttpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **cookie** +The Value of your Cookie (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Removing a server from an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends HTTP + +#### List HTTP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the HTTP farm to which the HTTP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add an HTTP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default HTTP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your HTTP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your HTTP frontend (String of characters) + +**hsts** + +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +**httpHeader** + +The custom *http* header to add (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**redirectLocation** + +The redirection URL *http* (String of characters) + +**ssl** + +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +### Get the details of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +/// + +#### Modify the properties of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +**FrontendHttp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **hsts** +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +- **httpHeader** +The custom *http* header to add (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes HTTP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List the HTTP routes attached to a Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of an HTTP frontend (Number) + +/// + +#### Add a new HTTP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the HTTP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeHttp** ^*^ + +- **action** ^*^ +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The Identifier of the HTTP frontend for which your route is applied (Number) + +- **weight** +The priority of your route. (Number) [0 - 255] +/// + +#### Delete an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +### Routing rules + +#### List the routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +/// + +#### Add routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the operator :code:`match` is reversed (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## Protocol TCP + +Access the elements related to the TCP protocol (Frontend, Farm, etc.). + +### TCP Farms + +#### List TCP farms attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new TCP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**balance** + +Your farm's load sharing method (Value) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**probe** + +The type of probe to use on your farm (HTTP probe) + +- **forceSsl** +Activation of the SSL is forced for the probe (Boolean) + +- **interval** +The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) + +- **match** +The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) + +- **negate** +The behavior of the :code:`match` operator is reversed. (Boolean) + +- **method** +The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) + +- **pattern** +server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) + +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) + +- **type** +The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) + +**stickiness** + +The type of connection persistence to use for your farm (Value) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcp** ^*^ + +- **balance** +The type of load distribution (Value) + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (Sonde TCP) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### TCP Servers + +#### List the servers linked to the TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Add a server to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A high weight server receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value ) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Delete a server from a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends TCP + +#### List TCP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the TCP farm to which the TCP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a TCP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default TCP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your TCP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your TCP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**ssl** + +Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +/// + +#### Modify the properties of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +**FrontendTcp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes TCP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List TCP routes attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of a TCP frontend (Number) + +/// + +#### Add a new TCP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the TCP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeTcp** ^*^ + +- **action** +The action to carry out (routeTcpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The TCP frontend for which your route is applied (Number) + +- **weight** +The priority of your route (Number) [0 - 255] +/// + +#### Delete a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + ### Routing rules -#### List the routing rules attached to an HTTP route +#### List the routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +/// + +#### Add routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the :code:`match` operator is reversed. (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## UDP Protocol + +Access the UDP protocol elements (Frontend, Farm, etc.). + +### UDP Farms + +#### List UDP trusses attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new UDP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | -> [!faq] -> -> Service : +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +/// + +#### Delete a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Add routing rules attached to an HTTP route +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the operator :code:`match` is reversed (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +
Paramètres :
-#### Get the details of a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### UDP Servers + +#### List the servers linked to the UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Adding a server to a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP server + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocol TCP -Access the elements related to the TCP protocol (Frontend, Farm, etc.). +/// details | -### TCP Farms +
Paramètres :
-#### List TCP farms attached to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdpServer** ^*^ + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **status** +If your server is activated or not (Boolean) + +/// + +#### Removing a server from a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server UDP (Number) + +**farmId** ^*^ + +The identifier of your farm UDP (Number) + +/// + +### Frontends UDP + +#### List UDP frontends attached to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Add a new TCP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **balance** ->> > ->> >> Your farm's load sharing method (Value) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (HTTP probe) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > Activation of the SSL is forced for the probe (Boolean) ->> >> ->> >> - **interval** ->> >> ->> >> > The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) ->> >> ->> >> - **match** ->> >> ->> >> > The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > The behavior of the :code:`match` operator is reversed. (Boolean) ->> >> ->> >> - **method** ->> >> ->> >> > The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> ->> >> - **type** ->> >> ->> >> > The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) ->> >> ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP farm +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the UDP farm to which the UDP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a UDP frontend to a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** ^*^ + +The default UDP farm identifier for your frontend (Number) + +**disabled** + +If your UDP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your UDP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP frontend + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modify the properties of a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > The type of load distribution (Value) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > The type of connection persistence (Value) +/// + +#### Modify the properties of a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Delete a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **disabled** +If your UDP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your UDP frontend (String of characters) + +/// -> [!faq] +#### Delete a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Service : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +/// + +## Other features + +### Additional IP + +#### List Additional IPs routed on a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### Service Status + +#### Obtenir l'état des instances d'un service OVHcloud Load Balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -### TCP Servers +/// details | -#### List the servers linked to the TCP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### List the output IPs used by OVH for NAT + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -#### Add a server to a TCP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A high weight server receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### Apply changes to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Get the details of a server linked to a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### SSL Certificates + +#### List SSL certificates of a OVHcloud Load Balancer service -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**fingerprint** + +Lists the fingerprint of the SSL certificate (String of characters) + +**serial** + +Lists the identification number of the SSL certificate (String of characters) + +**type** + +Type of SSL certificate (Value) + +/// + +#### Add a new SSL object + +> [!api] > -> Parameters : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> > -#### Modify the properties of a TCP server +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**certificate** ^*^ + +Adding the SSL certificate (String of characters) + +**chain** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> ->> >> > The weight of your server for your farm (Number) -> +Adding the intermediate SSL certificate (String of characters) -#### Delete a server from a TCP farm +**key** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +Adding the private key (String of characters) -### Frontends TCP +/// -#### List TCP frontends attached to a OVHcloud Load Balancer service +#### Get the details of an SSL object -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the TCP farm to which the TCP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Add a TCP frontend to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default TCP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your TCP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your TCP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> >> ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> >> ->> >> The identifier of your frontend TCP (Number) ->> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of a TCP frontend +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend TCP (Number) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **ssl** ->> >> ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +The identifier of your SSL certificate (Number) -#### Delete a TCP frontend +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : +#### Delete an SSL object + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -### Routes TCP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. - -#### List TCP routes attached to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of a TCP frontend (Number) -> +
Paramètres :
-#### Add a new TCP route to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the TCP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Get the details of a TCP route +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your SSL certificate (Number) -#### Modify the properties of a TCP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > The action to carry out (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> - **frontendId** ->> >> ->> >> > The TCP frontend for which your route is applied (Number) ->> >> ->> >> - **weight** ->> >> ->> >> > The priority of your route (Number) [0 - 255] -> +### Tasks -#### Delete a TCP route +#### List current tasks for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -### Routing rules +/// details | -#### List the routing rules attached to a TCP route +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) -> +**serviceName** ^*^ -#### Add routing rules attached to a TCP route +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the :code:`match` operator is reversed. (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +**action** ^*^ -#### Get the details of a routing rule +Consultation of available tasks (Values) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : +/// + +#### Get the details of a task + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## UDP Protocol -Access the UDP protocol elements (Frontend, Farm, etc.). +**id** ^*^ -### UDP Farms +The identifier of your task (Number) -#### List UDP trusses attached to a OVHcloud Load Balancer service +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +### Contact -#### Add a new UDP farm to a OVHcloud Load Balancer service +#### Initiate a contact change -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Get the details of a UDP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +
Paramètres :
-#### Modify the properties of a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Delete a UDP farm +**contactAdmin** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +The OVH NIC to be configured for the Admin contact of this service (String of characters) -### UDP Servers +**contactBilling** -#### List the servers linked to the UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) -> +**contactTech** -#### Adding a server to a UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +/// -#### Get the details of a server linked to a UDP farm +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : +#### Description of the private networks attached to the load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP server +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) -> +
Paramètres :
-#### Removing a server from a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server UDP (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -### Frontends UDP +**subnet** -#### List UDP frontends attached to a OVHcloud Load Balancer service +Allows to filter according to the network used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the UDP farm to which the UDP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +**vlan** -#### Add a UDP frontend to a OVHcloud Load Balancer service +Allows to filter according to the vlan used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> The default UDP farm identifier for your frontend (Number) ->> > ->> > **disabled** ->> > ->> >> If your UDP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your UDP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +/// -#### Get the details of a UDP frontend +#### Add a private network in the vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP frontend +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your UDP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your UDP frontend (String of characters) -> +
Paramètres :
-#### Delete a UDP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## Other features +**displayName** -### Additional IP +The name you want to give to the network (String of characters) -#### List Additional IPs routed on a OVHcloud Load Balancer service +**farmId** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +Identification table of farms that you wish to attach to this private network -### Service Status +**natIp** -#### Obtenir l'état des instances d'un service OVHcloud Load Balancer +An IP block reserved for the load balancer to reach the servers. -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**subnet** -#### List the output IPs used by OVH for NAT +The IP block of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**vlan** -#### Apply changes to a OVHcloud Load Balancer service +Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Parameters : +/// + +#### Retrieve a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### SSL Certificates +/// details | -#### List SSL certificates of a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **fingerprint** ->> > ->> >> Lists the fingerprint of the SSL certificate (String of characters) ->> > ->> > **serial** ->> > ->> >> Lists the identification number of the SSL certificate (String of characters) ->> > ->> > **type** ->> > ->> >> Type of SSL certificate (Value) -> +**serviceName** ^*^ -#### Add a new SSL object +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **certificate** * ->> > ->> >> Adding the SSL certificate (String of characters) ->> > ->> > **chain** ->> > ->> >> Adding the intermediate SSL certificate (String of characters) ->> > ->> > **key** * ->> > ->> >> Adding the private key (String of characters) -> +**vrackNetworkId** ^*^ -#### Get the details of an SSL object +The identifier of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) -> +/// -#### Delete an SSL object +#### Modify a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### Tasks +/// details | -#### List current tasks for a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> Consultation of available tasks (Values) -> +**serviceName** ^*^ -#### Get the details of a task +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your task (Number) -> +**vrackNetworkId** ^*^ -### Contact +The identifier of the private network -#### Initiate a contact change +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Parameters : +#### Delete a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **contactAdmin** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactBilling** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactTech** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### vRack +/// details | -#### Description of the private networks attached to the load balancer +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **subnet** ->> > ->> >> Allows to filter according to the network used ->> > ->> > **vlan** ->> > ->> >> Allows to filter according to the vlan used -> +**serviceName** ^*^ -#### Add a private network in the vRack +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you want to give to the network (String of characters) ->> > ->> > **farmId** ->> > ->> >> Identification table of farms that you wish to attach to this private network ->> > ->> > **natIp** ->> > ->> >> An IP block reserved for the load balancer to reach the servers. ->> > ->> > **subnet** ->> > ->> >> The IP block of the private network ->> > ->> > **vlan** ->> > ->> >> Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> - -#### Retrieve, modify or delete a private network - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network -> +**vrackNetworkId** ^*^ + +The identifier of the private network + +/// #### Modify the list of farms attached to a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network ->> > ->> > **farmId** * ->> > ->> >> Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**vrackNetworkId** ^*^ + +The identifier of the private network + +**farmId** ^*^ + +Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. + +/// + ## Go further -Interact with our user community on . +Interact with our user community on +:root > * { + --md-api-get-color:#3a87ad; + --md-api-get-bgcolor:#c9ddf6; + --md-api-post-color:#468847; + --md-api-post-bgcolor:#d1e7db; + --md-api-put-color:#f89406; + --md-api-put-bgcolor:#f7dec0; + --md-api-delete-color:#b94a48; + --md-api-delete-bgcolor:#f4c1bf; + --md-details-icon: url('data:image/svg+xml;charset=utf-8,'); + --md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a; + --md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040; + --md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059; +} +/* HOOK API */ +.ovh-api { + position:relative !important; + width:calc(100% - 30px) !important; + z-index:2 !important; +} +.ovh-api > p { + display:none !important; +} +.ovh-api-main { + align-items:center !important; + border-radius:0 !important; + box-shadow:none !important; + display:flex !important; + font-size:initial !important; + margin:15px 0 !important; + overflow:hidden !important; + padding:0 !important; + scrollbar-width:thin !important; +} +.ovh-api-main:hover { + overflow-x:auto !important; +} +.ovh-api-main span { + font-size:13px !important +} +.ovh-api-main a { + align-items:center !important; + display:inline-flex !important; + height:30px !important; + text-decoration:none !important; +} +.ovh-api-verb { + align-items:center !important; + border-radius:4px !important; + color:#fff !important; + display:flex !important; + font-weight:700 !important; + height:22px !important; + justify-content:center !important; + letter-spacing:1px !important; + line-height:initial !important; + margin:0 1ch 0 4px !important; + padding:2px 0 0 !important; + position:initial !important; + text-shadow:none !important; + vertical-align:initial !important; + width:9ch !important; +} +.ovh-api-endpoint { + display: inline !important; + padding:3px 1ch 0 0 !important; + white-space:nowrap !important; +} +/* DETAILS */ +details:not(:has(summary:empty)) { + margin:10px 0; +} +.ovh-api + details:has(summary:empty) { + margin-top:-15px !important; + position:relative !important; +} +.ovh-api + details summary:empty { + cursor:pointer !important; + height:32px !important; + list-style:none !important; + outline:none !important; + position:absolute !important; + right:0 !important; + top:-32px !important; + width:30px !important; +} +.ovh-api + details > summary:empty:before { + background-color:#222c32 !important; + content:'' !important; + height:24px !important; + left:3px !important; + -webkit-mask-image:var(--md-details-icon) !important; + mask-image:var(--md-details-icon) !important; + -webkit-mask-position:center !important; + mask-position:center !important; + -webkit-mask-repeat:no-repeat !important; + mask-repeat:no-repeat !important; + -webkit-mask-size:contain !important; + mask-size:contain !important; + position:absolute !important; + top:3px !important; + transition:transform .25s !important; + width:24px !important; +} +.ovh-api + details > summary:empty::-webkit-details-marker { + /* Hides marker on Safari */ + display:none !important; +} +.ovh-api + details[open]:has(summary:empty) { + border-radius:0 0 4px 4px !important; + border-top:none !important; + margin-top:-47px !important; + padding:40px 15px 15px !important; +} +.ovh-api + details[open] > summary:empty { + right:-1px !important; + top:-1px !important; +} +.ovh-api + details[open] > summary:empty:before { + transform: rotate(90deg) !important; +} +.ovh-api + details[open]:has(summary:empty) p { + margin:0 0 10px !important; +} +.ovh-api + details[open]:has(summary:empty) h6 { + font-size: 16px !important; + font-weight:600 !important; + margin:0 0 20px !important; + text-transform:uppercase !important; +} +.ovh-api + details[open]:has(summary:empty) sup { + color: #900 !important; + font-size: 24px !important; + vertical-align: bottom !important; +} +/* GET */ +.ovh-api-main:has(.ovh-api-verb-GET) { + border:1px solid var(--md-api-get-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-GET { + background-color: var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty { + border:1px solid var(--md-api-get-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty:before { + background-color:var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-get-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-get-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-GET):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-get-color) !important; + width:calc(100% + 29px) !important; +} +/* POST */ +.ovh-api-main:has(.ovh-api-verb-POST) { + border:1px solid var(--md-api-post-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-POST { + background-color: var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty { + border:1px solid var(--md-api-post-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty:before { + background-color:var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-post-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-post-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-POST):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-post-color) !important; + width:calc(100% + 29px) !important; +} +/* PUT */ +.ovh-api-main:has(.ovh-api-verb-PUT) { + border:1px solid var(--md-api-put-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-PUT { + background-color: var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty { + border:1px solid var(--md-api-put-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty:before { + background-color:var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-put-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-put-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-PUT):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-put-color) !important; + width:calc(100% + 29px) !important; +} +/* DELETE */ +.ovh-api-main:has(.ovh-api-verb-DELETE) { + border:1px solid var(--md-api-delete-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-DELETE { + background-color: var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty { + border:1px solid var(--md-api-delete-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty:before { + background-color:var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-delete-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-delete-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-delete-color) !important; + width:calc(100% + 29px) !important; +} + + ## Objective This guide provides a detailed description of all API functions for the OVHcloud Load Balancer. @@ -31,7 +261,6 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > ## Services and zones - ### OVHcloud Load Balancer #### List active services @@ -39,3138 +268,2891 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### List the zones available for the OVHcloud Load Balancer > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Return details of a OVHcloud Load Balancer service -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify a OVHcloud Load Balancer service -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > The name you want to give to the service (String of characters) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > The SSL configuration you want to assign to the service (Value) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Ip** ^*^ + +- **displayName** +The name you want to give to the service (String of characters) + +- **sslConfiguration** +The SSL configuration you want to assign to the service (Value) + +/// + #### List the services attached to the OVHcloud Load Balancer -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List existing farms and their type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **vrackNetworkId** ->> > ->> >> Allows filtering according to the vrack network +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**vrackNetworkId** + +Allows filtering according to the vrack network + +/// + #### List the areas that can be attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different probes that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of farms that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of frontends that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing actions that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing rules that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + ### Service #### Get service information -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify service information -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Enables automatic service renewal (Boolean)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Enables the deletion of the service upon expiration. (Boolean) ->> >> ->> >> - **forced** ->> >> > ->> >> > Forces automatic renewal (Boolean) ->> >> ->> >> - **period** ->> >> > ->> >> > Fill in the renewal term (String of characters) +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Service** ^*^ + +- **automatic** +Enables automatic service renewal (Boolean)) + +- **deleteAtExpiration** +Enables the deletion of the service upon expiration. (Boolean) + +- **forced** +Forces automatic renewal (Boolean) + +- **period** +Fill in the renewal term (String of characters) + +/// + ### Zones #### List active zones for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) + +/// + #### Get the details of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the requested zone +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the requested zone + +/// + #### Delete a zone The service will be discontinued on the expiry date. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The service will be discontinued on the expiry date. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The service will be discontinued on the expiry date. + +/// + #### Undo the deletion of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the zone to be deleted +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the zone to be deleted + +/// + ## HTTP Protocol + Accessing HTTP protocol related elements (Frontend, Firmware, etc.). ### HTTP farms #### List HTTP farms attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of the zone (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Adding a new HTTP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** * ->> > ->> >> The name of the zone (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **balance** ->> >> ->> >> Your farm's load distribution method (Value) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (Probe HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> SSL activation is forced for the probe (Boolean) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> The behavior of the 'match' operator is reversed (Boolean) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) -> +
Paramètres :
-#### Getting the details of an HTTP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP farm +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **balance** ->> >> > ->> >> > The type of load distribution (Value) ->> >> ->> >> - **port** ->> >> > ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (HTTP probe) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > The type of connection persistence (Value) -> +The name of the zone (String of characters) -#### Delete an HTTP farm +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : +#### Adding a new HTTP farm to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### HTTP Servers +/// details | -#### List the servers linked to the HTTP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by server status (Value) -> +**serviceName** ^*^ -#### Adding a server to an HTTP farm +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **cookie** ->> > ->> >> The Value of your Cookie (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A server with high weight receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +**zone** ^*^ -#### Get the details of a server linked to an HTTP farm +The name of the zone (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**displayName** -#### Modify the properties of an HTTP server +The name you wish to give to your farm (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> > ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **cookie** ->> >> > ->> >> > The Value of your Cookie (String of characters) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> > ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> >> ->> >> - **ssl** ->> >> > ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> > ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> > ->> >> > The weight of your server for your farm (Number) -> +**balance** -#### Removing a server from an HTTP farm +Your farm's load distribution method (Value) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**port** -### Frontends HTTP +The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) -#### List HTTP frontends attached to a OVHcloud Load Balancer service +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the HTTP farm to which the HTTP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of connection persistence to use for your farm (Value) -#### Add an HTTP frontend to a OVHcloud Load Balancer service +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> >> ->> >> NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default HTTP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your HTTP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your HTTP frontend (String of characters) ->> > ->> > **hsts** ->> > ->> >> If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> > ->> > **httpHeader** ->> > ->> >> The custom *http* header to add (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> The redirection URL *http* (String of characters) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of probe to use on your farm (Probe HTTP) -### Get the details of an HTTP frontend +- **forceSsl** +SSL activation is forced for the probe (Boolean) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) -> +- **interval** +The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) -#### Modify the properties of an HTTP frontend +- **match** +The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> > ->> >> > NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> > ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **hsts** ->> >> > ->> >> > If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > The custom *http* header to add (String of characters) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +- **negate** +The behavior of the 'match' operator is reversed (Boolean) -#### Delete an HTTP frontend +- **method** +The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) -> +- **pattern** +The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) -### Routes HTTP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) -#### List the HTTP routes attached to a Load Balancer service +- **type** +The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : +- **url** +The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) + +/// + +#### Getting the details of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of an HTTP frontend (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Add a new HTTP route to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > The expected HTTP return code (Number) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the HTTP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +
Paramètres :
-#### Get the details of an HTTP route +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP route +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> The expected HTTP return code (Number) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> **frontendId** ->> >> ->> >> > The Identifier of the HTTP frontend for which your route is applied (Number) ->> >> ->> >> **weight** ->> >> ->> >> > The priority of your route. (Number) [0 - 255] -> +The identifier of your HTTP farm (Number) -#### Delete an HTTP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : +#### Modify the properties of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**BackendHttp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **balance** +The type of load distribution (Value) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (HTTP probe) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +/// + +### HTTP Servers + +#### List the servers linked to the HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by server status (Value) + +/// + +#### Adding a server to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**cookie** + +The Value of your Cookie (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A server with high weight receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of an HTTP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendHttpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **cookie** +The Value of your Cookie (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Removing a server from an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends HTTP + +#### List HTTP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the HTTP farm to which the HTTP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add an HTTP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default HTTP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your HTTP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your HTTP frontend (String of characters) + +**hsts** + +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +**httpHeader** + +The custom *http* header to add (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**redirectLocation** + +The redirection URL *http* (String of characters) + +**ssl** + +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +### Get the details of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +/// + +#### Modify the properties of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +**FrontendHttp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **hsts** +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +- **httpHeader** +The custom *http* header to add (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes HTTP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List the HTTP routes attached to a Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of an HTTP frontend (Number) + +/// + +#### Add a new HTTP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the HTTP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeHttp** ^*^ + +- **action** ^*^ +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The Identifier of the HTTP frontend for which your route is applied (Number) + +- **weight** +The priority of your route. (Number) [0 - 255] +/// + +#### Delete an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +### Routing rules + +#### List the routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +/// + +#### Add routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the operator :code:`match` is reversed (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## Protocol TCP + +Access the elements related to the TCP protocol (Frontend, Farm, etc.). + +### TCP Farms + +#### List TCP farms attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new TCP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**balance** + +Your farm's load sharing method (Value) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**probe** + +The type of probe to use on your farm (HTTP probe) + +- **forceSsl** +Activation of the SSL is forced for the probe (Boolean) + +- **interval** +The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) + +- **match** +The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) + +- **negate** +The behavior of the :code:`match` operator is reversed. (Boolean) + +- **method** +The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) + +- **pattern** +server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) + +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) + +- **type** +The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) + +**stickiness** + +The type of connection persistence to use for your farm (Value) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcp** ^*^ + +- **balance** +The type of load distribution (Value) + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (Sonde TCP) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### TCP Servers + +#### List the servers linked to the TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Add a server to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A high weight server receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value ) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Delete a server from a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends TCP + +#### List TCP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the TCP farm to which the TCP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a TCP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default TCP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your TCP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your TCP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**ssl** + +Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +/// + +#### Modify the properties of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +**FrontendTcp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes TCP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List TCP routes attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of a TCP frontend (Number) + +/// + +#### Add a new TCP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the TCP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeTcp** ^*^ + +- **action** +The action to carry out (routeTcpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The TCP frontend for which your route is applied (Number) + +- **weight** +The priority of your route (Number) [0 - 255] +/// + +#### Delete a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + ### Routing rules -#### List the routing rules attached to an HTTP route +#### List the routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +/// + +#### Add routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the :code:`match` operator is reversed. (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## UDP Protocol + +Access the UDP protocol elements (Frontend, Farm, etc.). + +### UDP Farms + +#### List UDP trusses attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new UDP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | -> [!faq] -> -> Service : +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +/// + +#### Delete a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Add routing rules attached to an HTTP route +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the operator :code:`match` is reversed (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +
Paramètres :
-#### Get the details of a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### UDP Servers + +#### List the servers linked to the UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Adding a server to a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP server + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocol TCP -Access the elements related to the TCP protocol (Frontend, Farm, etc.). +/// details | -### TCP Farms +
Paramètres :
-#### List TCP farms attached to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdpServer** ^*^ + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **status** +If your server is activated or not (Boolean) + +/// + +#### Removing a server from a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server UDP (Number) + +**farmId** ^*^ + +The identifier of your farm UDP (Number) + +/// + +### Frontends UDP + +#### List UDP frontends attached to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Add a new TCP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **balance** ->> > ->> >> Your farm's load sharing method (Value) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (HTTP probe) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > Activation of the SSL is forced for the probe (Boolean) ->> >> ->> >> - **interval** ->> >> ->> >> > The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) ->> >> ->> >> - **match** ->> >> ->> >> > The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > The behavior of the :code:`match` operator is reversed. (Boolean) ->> >> ->> >> - **method** ->> >> ->> >> > The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> ->> >> - **type** ->> >> ->> >> > The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) ->> >> ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP farm +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the UDP farm to which the UDP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a UDP frontend to a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** ^*^ + +The default UDP farm identifier for your frontend (Number) + +**disabled** + +If your UDP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your UDP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP frontend + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modify the properties of a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > The type of load distribution (Value) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > The type of connection persistence (Value) +/// + +#### Modify the properties of a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Delete a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **disabled** +If your UDP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your UDP frontend (String of characters) + +/// -> [!faq] +#### Delete a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Service : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +/// + +## Other features + +### Additional IP + +#### List Additional IPs routed on a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### Service Status + +#### Obtenir l'état des instances d'un service OVHcloud Load Balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -### TCP Servers +/// details | -#### List the servers linked to the TCP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### List the output IPs used by OVH for NAT + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -#### Add a server to a TCP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A high weight server receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### Apply changes to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Get the details of a server linked to a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### SSL Certificates + +#### List SSL certificates of a OVHcloud Load Balancer service -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**fingerprint** + +Lists the fingerprint of the SSL certificate (String of characters) + +**serial** + +Lists the identification number of the SSL certificate (String of characters) + +**type** + +Type of SSL certificate (Value) + +/// + +#### Add a new SSL object + +> [!api] > -> Parameters : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> > -#### Modify the properties of a TCP server +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**certificate** ^*^ + +Adding the SSL certificate (String of characters) + +**chain** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> ->> >> > The weight of your server for your farm (Number) -> +Adding the intermediate SSL certificate (String of characters) -#### Delete a server from a TCP farm +**key** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +Adding the private key (String of characters) -### Frontends TCP +/// -#### List TCP frontends attached to a OVHcloud Load Balancer service +#### Get the details of an SSL object -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the TCP farm to which the TCP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Add a TCP frontend to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default TCP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your TCP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your TCP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> >> ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> >> ->> >> The identifier of your frontend TCP (Number) ->> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of a TCP frontend +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend TCP (Number) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **ssl** ->> >> ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +The identifier of your SSL certificate (Number) -#### Delete a TCP frontend +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : +#### Delete an SSL object + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -### Routes TCP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. - -#### List TCP routes attached to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of a TCP frontend (Number) -> +
Paramètres :
-#### Add a new TCP route to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the TCP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Get the details of a TCP route +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your SSL certificate (Number) -#### Modify the properties of a TCP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > The action to carry out (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> - **frontendId** ->> >> ->> >> > The TCP frontend for which your route is applied (Number) ->> >> ->> >> - **weight** ->> >> ->> >> > The priority of your route (Number) [0 - 255] -> +### Tasks -#### Delete a TCP route +#### List current tasks for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -### Routing rules +/// details | -#### List the routing rules attached to a TCP route +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) -> +**serviceName** ^*^ -#### Add routing rules attached to a TCP route +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the :code:`match` operator is reversed. (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +**action** ^*^ -#### Get the details of a routing rule +Consultation of available tasks (Values) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : +/// + +#### Get the details of a task + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## UDP Protocol -Access the UDP protocol elements (Frontend, Farm, etc.). +**id** ^*^ -### UDP Farms +The identifier of your task (Number) -#### List UDP trusses attached to a OVHcloud Load Balancer service +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +### Contact -#### Add a new UDP farm to a OVHcloud Load Balancer service +#### Initiate a contact change -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Get the details of a UDP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +
Paramètres :
-#### Modify the properties of a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Delete a UDP farm +**contactAdmin** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +The OVH NIC to be configured for the Admin contact of this service (String of characters) -### UDP Servers +**contactBilling** -#### List the servers linked to the UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) -> +**contactTech** -#### Adding a server to a UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +/// -#### Get the details of a server linked to a UDP farm +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : +#### Description of the private networks attached to the load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP server +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) -> +
Paramètres :
-#### Removing a server from a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server UDP (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -### Frontends UDP +**subnet** -#### List UDP frontends attached to a OVHcloud Load Balancer service +Allows to filter according to the network used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the UDP farm to which the UDP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +**vlan** -#### Add a UDP frontend to a OVHcloud Load Balancer service +Allows to filter according to the vlan used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> The default UDP farm identifier for your frontend (Number) ->> > ->> > **disabled** ->> > ->> >> If your UDP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your UDP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +/// -#### Get the details of a UDP frontend +#### Add a private network in the vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP frontend +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your UDP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your UDP frontend (String of characters) -> +
Paramètres :
-#### Delete a UDP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## Other features +**displayName** -### Additional IP +The name you want to give to the network (String of characters) -#### List Additional IPs routed on a OVHcloud Load Balancer service +**farmId** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +Identification table of farms that you wish to attach to this private network -### Service Status +**natIp** -#### Obtenir l'état des instances d'un service OVHcloud Load Balancer +An IP block reserved for the load balancer to reach the servers. -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**subnet** -#### List the output IPs used by OVH for NAT +The IP block of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**vlan** -#### Apply changes to a OVHcloud Load Balancer service +Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Parameters : +/// + +#### Retrieve a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### SSL Certificates +/// details | -#### List SSL certificates of a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **fingerprint** ->> > ->> >> Lists the fingerprint of the SSL certificate (String of characters) ->> > ->> > **serial** ->> > ->> >> Lists the identification number of the SSL certificate (String of characters) ->> > ->> > **type** ->> > ->> >> Type of SSL certificate (Value) -> +**serviceName** ^*^ -#### Add a new SSL object +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **certificate** * ->> > ->> >> Adding the SSL certificate (String of characters) ->> > ->> > **chain** ->> > ->> >> Adding the intermediate SSL certificate (String of characters) ->> > ->> > **key** * ->> > ->> >> Adding the private key (String of characters) -> +**vrackNetworkId** ^*^ -#### Get the details of an SSL object +The identifier of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) -> +/// -#### Delete an SSL object +#### Modify a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### Tasks +/// details | -#### List current tasks for a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> Consultation of available tasks (Values) -> +**serviceName** ^*^ -#### Get the details of a task +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your task (Number) -> +**vrackNetworkId** ^*^ -### Contact +The identifier of the private network -#### Initiate a contact change +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Parameters : +#### Delete a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **contactAdmin** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactBilling** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactTech** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### vRack +/// details | -#### Description of the private networks attached to the load balancer +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **subnet** ->> > ->> >> Allows to filter according to the network used ->> > ->> > **vlan** ->> > ->> >> Allows to filter according to the vlan used -> +**serviceName** ^*^ -#### Add a private network in the vRack +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you want to give to the network (String of characters) ->> > ->> > **farmId** ->> > ->> >> Identification table of farms that you wish to attach to this private network ->> > ->> > **natIp** ->> > ->> >> An IP block reserved for the load balancer to reach the servers. ->> > ->> > **subnet** ->> > ->> >> The IP block of the private network ->> > ->> > **vlan** ->> > ->> >> Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> - -#### Retrieve, modify or delete a private network - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network -> +**vrackNetworkId** ^*^ + +The identifier of the private network + +/// #### Modify the list of farms attached to a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network ->> > ->> > **farmId** * ->> > ->> >> Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**vrackNetworkId** ^*^ + +The identifier of the private network + +**farmId** ^*^ + +Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. + +/// + ## Go further -Interact with our user community on . +Interact with our user community on +:root > * { + --md-api-get-color:#3a87ad; + --md-api-get-bgcolor:#c9ddf6; + --md-api-post-color:#468847; + --md-api-post-bgcolor:#d1e7db; + --md-api-put-color:#f89406; + --md-api-put-bgcolor:#f7dec0; + --md-api-delete-color:#b94a48; + --md-api-delete-bgcolor:#f4c1bf; + --md-details-icon: url('data:image/svg+xml;charset=utf-8,'); + --md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a; + --md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040; + --md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059; +} +/* HOOK API */ +.ovh-api { + position:relative !important; + width:calc(100% - 30px) !important; + z-index:2 !important; +} +.ovh-api > p { + display:none !important; +} +.ovh-api-main { + align-items:center !important; + border-radius:0 !important; + box-shadow:none !important; + display:flex !important; + font-size:initial !important; + margin:15px 0 !important; + overflow:hidden !important; + padding:0 !important; + scrollbar-width:thin !important; +} +.ovh-api-main:hover { + overflow-x:auto !important; +} +.ovh-api-main span { + font-size:13px !important +} +.ovh-api-main a { + align-items:center !important; + display:inline-flex !important; + height:30px !important; + text-decoration:none !important; +} +.ovh-api-verb { + align-items:center !important; + border-radius:4px !important; + color:#fff !important; + display:flex !important; + font-weight:700 !important; + height:22px !important; + justify-content:center !important; + letter-spacing:1px !important; + line-height:initial !important; + margin:0 1ch 0 4px !important; + padding:2px 0 0 !important; + position:initial !important; + text-shadow:none !important; + vertical-align:initial !important; + width:9ch !important; +} +.ovh-api-endpoint { + display: inline !important; + padding:3px 1ch 0 0 !important; + white-space:nowrap !important; +} +/* DETAILS */ +details:not(:has(summary:empty)) { + margin:10px 0; +} +.ovh-api + details:has(summary:empty) { + margin-top:-15px !important; + position:relative !important; +} +.ovh-api + details summary:empty { + cursor:pointer !important; + height:32px !important; + list-style:none !important; + outline:none !important; + position:absolute !important; + right:0 !important; + top:-32px !important; + width:30px !important; +} +.ovh-api + details > summary:empty:before { + background-color:#222c32 !important; + content:'' !important; + height:24px !important; + left:3px !important; + -webkit-mask-image:var(--md-details-icon) !important; + mask-image:var(--md-details-icon) !important; + -webkit-mask-position:center !important; + mask-position:center !important; + -webkit-mask-repeat:no-repeat !important; + mask-repeat:no-repeat !important; + -webkit-mask-size:contain !important; + mask-size:contain !important; + position:absolute !important; + top:3px !important; + transition:transform .25s !important; + width:24px !important; +} +.ovh-api + details > summary:empty::-webkit-details-marker { + /* Hides marker on Safari */ + display:none !important; +} +.ovh-api + details[open]:has(summary:empty) { + border-radius:0 0 4px 4px !important; + border-top:none !important; + margin-top:-47px !important; + padding:40px 15px 15px !important; +} +.ovh-api + details[open] > summary:empty { + right:-1px !important; + top:-1px !important; +} +.ovh-api + details[open] > summary:empty:before { + transform: rotate(90deg) !important; +} +.ovh-api + details[open]:has(summary:empty) p { + margin:0 0 10px !important; +} +.ovh-api + details[open]:has(summary:empty) h6 { + font-size: 16px !important; + font-weight:600 !important; + margin:0 0 20px !important; + text-transform:uppercase !important; +} +.ovh-api + details[open]:has(summary:empty) sup { + color: #900 !important; + font-size: 24px !important; + vertical-align: bottom !important; +} +/* GET */ +.ovh-api-main:has(.ovh-api-verb-GET) { + border:1px solid var(--md-api-get-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-GET { + background-color: var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty { + border:1px solid var(--md-api-get-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty:before { + background-color:var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-get-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-get-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-GET):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-get-color) !important; + width:calc(100% + 29px) !important; +} +/* POST */ +.ovh-api-main:has(.ovh-api-verb-POST) { + border:1px solid var(--md-api-post-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-POST { + background-color: var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty { + border:1px solid var(--md-api-post-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty:before { + background-color:var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-post-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-post-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-POST):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-post-color) !important; + width:calc(100% + 29px) !important; +} +/* PUT */ +.ovh-api-main:has(.ovh-api-verb-PUT) { + border:1px solid var(--md-api-put-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-PUT { + background-color: var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty { + border:1px solid var(--md-api-put-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty:before { + background-color:var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-put-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-put-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-PUT):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-put-color) !important; + width:calc(100% + 29px) !important; +} +/* DELETE */ +.ovh-api-main:has(.ovh-api-verb-DELETE) { + border:1px solid var(--md-api-delete-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-DELETE { + background-color: var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty { + border:1px solid var(--md-api-delete-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty:before { + background-color:var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-delete-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-delete-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-delete-color) !important; + width:calc(100% + 29px) !important; +} + + ## Objective This guide provides a detailed description of all API functions for the OVHcloud Load Balancer. @@ -31,7 +261,6 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > ## Services and zones - ### OVHcloud Load Balancer #### List active services @@ -39,3138 +268,2891 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### List the zones available for the OVHcloud Load Balancer > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Return details of a OVHcloud Load Balancer service -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify a OVHcloud Load Balancer service -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > The name you want to give to the service (String of characters) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > The SSL configuration you want to assign to the service (Value) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Ip** ^*^ + +- **displayName** +The name you want to give to the service (String of characters) + +- **sslConfiguration** +The SSL configuration you want to assign to the service (Value) + +/// + #### List the services attached to the OVHcloud Load Balancer -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List existing farms and their type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **vrackNetworkId** ->> > ->> >> Allows filtering according to the vrack network +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**vrackNetworkId** + +Allows filtering according to the vrack network + +/// + #### List the areas that can be attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different probes that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of farms that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of frontends that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing actions that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing rules that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + ### Service #### Get service information -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify service information -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Enables automatic service renewal (Boolean)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Enables the deletion of the service upon expiration. (Boolean) ->> >> ->> >> - **forced** ->> >> > ->> >> > Forces automatic renewal (Boolean) ->> >> ->> >> - **period** ->> >> > ->> >> > Fill in the renewal term (String of characters) +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Service** ^*^ + +- **automatic** +Enables automatic service renewal (Boolean)) + +- **deleteAtExpiration** +Enables the deletion of the service upon expiration. (Boolean) + +- **forced** +Forces automatic renewal (Boolean) + +- **period** +Fill in the renewal term (String of characters) + +/// + ### Zones #### List active zones for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) + +/// + #### Get the details of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the requested zone +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the requested zone + +/// + #### Delete a zone The service will be discontinued on the expiry date. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The service will be discontinued on the expiry date. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The service will be discontinued on the expiry date. + +/// + #### Undo the deletion of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the zone to be deleted +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the zone to be deleted + +/// + ## HTTP Protocol + Accessing HTTP protocol related elements (Frontend, Firmware, etc.). ### HTTP farms #### List HTTP farms attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of the zone (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Adding a new HTTP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** * ->> > ->> >> The name of the zone (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **balance** ->> >> ->> >> Your farm's load distribution method (Value) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (Probe HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> SSL activation is forced for the probe (Boolean) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> The behavior of the 'match' operator is reversed (Boolean) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) -> +
Paramètres :
-#### Getting the details of an HTTP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP farm +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **balance** ->> >> > ->> >> > The type of load distribution (Value) ->> >> ->> >> - **port** ->> >> > ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (HTTP probe) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > The type of connection persistence (Value) -> +The name of the zone (String of characters) -#### Delete an HTTP farm +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : +#### Adding a new HTTP farm to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### HTTP Servers +/// details | -#### List the servers linked to the HTTP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by server status (Value) -> +**serviceName** ^*^ -#### Adding a server to an HTTP farm +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **cookie** ->> > ->> >> The Value of your Cookie (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A server with high weight receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +**zone** ^*^ -#### Get the details of a server linked to an HTTP farm +The name of the zone (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**displayName** -#### Modify the properties of an HTTP server +The name you wish to give to your farm (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> > ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **cookie** ->> >> > ->> >> > The Value of your Cookie (String of characters) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> > ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> >> ->> >> - **ssl** ->> >> > ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> > ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> > ->> >> > The weight of your server for your farm (Number) -> +**balance** -#### Removing a server from an HTTP farm +Your farm's load distribution method (Value) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**port** -### Frontends HTTP +The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) -#### List HTTP frontends attached to a OVHcloud Load Balancer service +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the HTTP farm to which the HTTP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of connection persistence to use for your farm (Value) -#### Add an HTTP frontend to a OVHcloud Load Balancer service +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> >> ->> >> NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default HTTP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your HTTP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your HTTP frontend (String of characters) ->> > ->> > **hsts** ->> > ->> >> If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> > ->> > **httpHeader** ->> > ->> >> The custom *http* header to add (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> The redirection URL *http* (String of characters) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of probe to use on your farm (Probe HTTP) -### Get the details of an HTTP frontend +- **forceSsl** +SSL activation is forced for the probe (Boolean) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) -> +- **interval** +The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) -#### Modify the properties of an HTTP frontend +- **match** +The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> > ->> >> > NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> > ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **hsts** ->> >> > ->> >> > If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > The custom *http* header to add (String of characters) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +- **negate** +The behavior of the 'match' operator is reversed (Boolean) -#### Delete an HTTP frontend +- **method** +The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) -> +- **pattern** +The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) -### Routes HTTP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) -#### List the HTTP routes attached to a Load Balancer service +- **type** +The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : +- **url** +The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) + +/// + +#### Getting the details of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of an HTTP frontend (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Add a new HTTP route to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > The expected HTTP return code (Number) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the HTTP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +
Paramètres :
-#### Get the details of an HTTP route +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP route +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> The expected HTTP return code (Number) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> **frontendId** ->> >> ->> >> > The Identifier of the HTTP frontend for which your route is applied (Number) ->> >> ->> >> **weight** ->> >> ->> >> > The priority of your route. (Number) [0 - 255] -> +The identifier of your HTTP farm (Number) -#### Delete an HTTP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : +#### Modify the properties of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**BackendHttp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **balance** +The type of load distribution (Value) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (HTTP probe) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +/// + +### HTTP Servers + +#### List the servers linked to the HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by server status (Value) + +/// + +#### Adding a server to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**cookie** + +The Value of your Cookie (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A server with high weight receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of an HTTP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendHttpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **cookie** +The Value of your Cookie (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Removing a server from an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends HTTP + +#### List HTTP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the HTTP farm to which the HTTP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add an HTTP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default HTTP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your HTTP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your HTTP frontend (String of characters) + +**hsts** + +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +**httpHeader** + +The custom *http* header to add (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**redirectLocation** + +The redirection URL *http* (String of characters) + +**ssl** + +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +### Get the details of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +/// + +#### Modify the properties of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +**FrontendHttp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **hsts** +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +- **httpHeader** +The custom *http* header to add (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes HTTP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List the HTTP routes attached to a Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of an HTTP frontend (Number) + +/// + +#### Add a new HTTP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the HTTP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeHttp** ^*^ + +- **action** ^*^ +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The Identifier of the HTTP frontend for which your route is applied (Number) + +- **weight** +The priority of your route. (Number) [0 - 255] +/// + +#### Delete an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +### Routing rules + +#### List the routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +/// + +#### Add routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the operator :code:`match` is reversed (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## Protocol TCP + +Access the elements related to the TCP protocol (Frontend, Farm, etc.). + +### TCP Farms + +#### List TCP farms attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new TCP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**balance** + +Your farm's load sharing method (Value) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**probe** + +The type of probe to use on your farm (HTTP probe) + +- **forceSsl** +Activation of the SSL is forced for the probe (Boolean) + +- **interval** +The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) + +- **match** +The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) + +- **negate** +The behavior of the :code:`match` operator is reversed. (Boolean) + +- **method** +The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) + +- **pattern** +server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) + +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) + +- **type** +The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) + +**stickiness** + +The type of connection persistence to use for your farm (Value) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcp** ^*^ + +- **balance** +The type of load distribution (Value) + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (Sonde TCP) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### TCP Servers + +#### List the servers linked to the TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Add a server to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A high weight server receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value ) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Delete a server from a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends TCP + +#### List TCP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the TCP farm to which the TCP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a TCP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default TCP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your TCP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your TCP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**ssl** + +Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +/// + +#### Modify the properties of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +**FrontendTcp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes TCP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List TCP routes attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of a TCP frontend (Number) + +/// + +#### Add a new TCP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the TCP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeTcp** ^*^ + +- **action** +The action to carry out (routeTcpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The TCP frontend for which your route is applied (Number) + +- **weight** +The priority of your route (Number) [0 - 255] +/// + +#### Delete a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + ### Routing rules -#### List the routing rules attached to an HTTP route +#### List the routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +/// + +#### Add routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the :code:`match` operator is reversed. (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## UDP Protocol + +Access the UDP protocol elements (Frontend, Farm, etc.). + +### UDP Farms + +#### List UDP trusses attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new UDP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | -> [!faq] -> -> Service : +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +/// + +#### Delete a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Add routing rules attached to an HTTP route +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the operator :code:`match` is reversed (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +
Paramètres :
-#### Get the details of a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### UDP Servers + +#### List the servers linked to the UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Adding a server to a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP server + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocol TCP -Access the elements related to the TCP protocol (Frontend, Farm, etc.). +/// details | -### TCP Farms +
Paramètres :
-#### List TCP farms attached to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdpServer** ^*^ + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **status** +If your server is activated or not (Boolean) + +/// + +#### Removing a server from a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server UDP (Number) + +**farmId** ^*^ + +The identifier of your farm UDP (Number) + +/// + +### Frontends UDP + +#### List UDP frontends attached to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Add a new TCP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **balance** ->> > ->> >> Your farm's load sharing method (Value) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (HTTP probe) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > Activation of the SSL is forced for the probe (Boolean) ->> >> ->> >> - **interval** ->> >> ->> >> > The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) ->> >> ->> >> - **match** ->> >> ->> >> > The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > The behavior of the :code:`match` operator is reversed. (Boolean) ->> >> ->> >> - **method** ->> >> ->> >> > The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> ->> >> - **type** ->> >> ->> >> > The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) ->> >> ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP farm +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the UDP farm to which the UDP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a UDP frontend to a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** ^*^ + +The default UDP farm identifier for your frontend (Number) + +**disabled** + +If your UDP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your UDP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP frontend + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modify the properties of a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > The type of load distribution (Value) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > The type of connection persistence (Value) +/// + +#### Modify the properties of a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Delete a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **disabled** +If your UDP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your UDP frontend (String of characters) + +/// -> [!faq] +#### Delete a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Service : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +/// + +## Other features + +### Additional IP + +#### List Additional IPs routed on a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### Service Status + +#### Obtenir l'état des instances d'un service OVHcloud Load Balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -### TCP Servers +/// details | -#### List the servers linked to the TCP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### List the output IPs used by OVH for NAT + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -#### Add a server to a TCP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A high weight server receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### Apply changes to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Get the details of a server linked to a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### SSL Certificates + +#### List SSL certificates of a OVHcloud Load Balancer service -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**fingerprint** + +Lists the fingerprint of the SSL certificate (String of characters) + +**serial** + +Lists the identification number of the SSL certificate (String of characters) + +**type** + +Type of SSL certificate (Value) + +/// + +#### Add a new SSL object + +> [!api] > -> Parameters : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> > -#### Modify the properties of a TCP server +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**certificate** ^*^ + +Adding the SSL certificate (String of characters) + +**chain** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> ->> >> > The weight of your server for your farm (Number) -> +Adding the intermediate SSL certificate (String of characters) -#### Delete a server from a TCP farm +**key** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +Adding the private key (String of characters) -### Frontends TCP +/// -#### List TCP frontends attached to a OVHcloud Load Balancer service +#### Get the details of an SSL object -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the TCP farm to which the TCP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Add a TCP frontend to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default TCP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your TCP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your TCP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> >> ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> >> ->> >> The identifier of your frontend TCP (Number) ->> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of a TCP frontend +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend TCP (Number) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **ssl** ->> >> ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +The identifier of your SSL certificate (Number) -#### Delete a TCP frontend +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : +#### Delete an SSL object + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -### Routes TCP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. - -#### List TCP routes attached to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of a TCP frontend (Number) -> +
Paramètres :
-#### Add a new TCP route to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the TCP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Get the details of a TCP route +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your SSL certificate (Number) -#### Modify the properties of a TCP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > The action to carry out (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> - **frontendId** ->> >> ->> >> > The TCP frontend for which your route is applied (Number) ->> >> ->> >> - **weight** ->> >> ->> >> > The priority of your route (Number) [0 - 255] -> +### Tasks -#### Delete a TCP route +#### List current tasks for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -### Routing rules +/// details | -#### List the routing rules attached to a TCP route +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) -> +**serviceName** ^*^ -#### Add routing rules attached to a TCP route +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the :code:`match` operator is reversed. (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +**action** ^*^ -#### Get the details of a routing rule +Consultation of available tasks (Values) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : +/// + +#### Get the details of a task + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## UDP Protocol -Access the UDP protocol elements (Frontend, Farm, etc.). +**id** ^*^ -### UDP Farms +The identifier of your task (Number) -#### List UDP trusses attached to a OVHcloud Load Balancer service +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +### Contact -#### Add a new UDP farm to a OVHcloud Load Balancer service +#### Initiate a contact change -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Get the details of a UDP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +
Paramètres :
-#### Modify the properties of a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Delete a UDP farm +**contactAdmin** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +The OVH NIC to be configured for the Admin contact of this service (String of characters) -### UDP Servers +**contactBilling** -#### List the servers linked to the UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) -> +**contactTech** -#### Adding a server to a UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +/// -#### Get the details of a server linked to a UDP farm +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : +#### Description of the private networks attached to the load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP server +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) -> +
Paramètres :
-#### Removing a server from a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server UDP (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -### Frontends UDP +**subnet** -#### List UDP frontends attached to a OVHcloud Load Balancer service +Allows to filter according to the network used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the UDP farm to which the UDP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +**vlan** -#### Add a UDP frontend to a OVHcloud Load Balancer service +Allows to filter according to the vlan used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> The default UDP farm identifier for your frontend (Number) ->> > ->> > **disabled** ->> > ->> >> If your UDP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your UDP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +/// -#### Get the details of a UDP frontend +#### Add a private network in the vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP frontend +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your UDP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your UDP frontend (String of characters) -> +
Paramètres :
-#### Delete a UDP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## Other features +**displayName** -### Additional IP +The name you want to give to the network (String of characters) -#### List Additional IPs routed on a OVHcloud Load Balancer service +**farmId** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +Identification table of farms that you wish to attach to this private network -### Service Status +**natIp** -#### Obtenir l'état des instances d'un service OVHcloud Load Balancer +An IP block reserved for the load balancer to reach the servers. -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**subnet** -#### List the output IPs used by OVH for NAT +The IP block of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**vlan** -#### Apply changes to a OVHcloud Load Balancer service +Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Parameters : +/// + +#### Retrieve a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### SSL Certificates +/// details | -#### List SSL certificates of a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **fingerprint** ->> > ->> >> Lists the fingerprint of the SSL certificate (String of characters) ->> > ->> > **serial** ->> > ->> >> Lists the identification number of the SSL certificate (String of characters) ->> > ->> > **type** ->> > ->> >> Type of SSL certificate (Value) -> +**serviceName** ^*^ -#### Add a new SSL object +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **certificate** * ->> > ->> >> Adding the SSL certificate (String of characters) ->> > ->> > **chain** ->> > ->> >> Adding the intermediate SSL certificate (String of characters) ->> > ->> > **key** * ->> > ->> >> Adding the private key (String of characters) -> +**vrackNetworkId** ^*^ -#### Get the details of an SSL object +The identifier of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) -> +/// -#### Delete an SSL object +#### Modify a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### Tasks +/// details | -#### List current tasks for a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> Consultation of available tasks (Values) -> +**serviceName** ^*^ -#### Get the details of a task +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your task (Number) -> +**vrackNetworkId** ^*^ -### Contact +The identifier of the private network -#### Initiate a contact change +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Parameters : +#### Delete a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **contactAdmin** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactBilling** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactTech** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### vRack +/// details | -#### Description of the private networks attached to the load balancer +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **subnet** ->> > ->> >> Allows to filter according to the network used ->> > ->> > **vlan** ->> > ->> >> Allows to filter according to the vlan used -> +**serviceName** ^*^ -#### Add a private network in the vRack +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you want to give to the network (String of characters) ->> > ->> > **farmId** ->> > ->> >> Identification table of farms that you wish to attach to this private network ->> > ->> > **natIp** ->> > ->> >> An IP block reserved for the load balancer to reach the servers. ->> > ->> > **subnet** ->> > ->> >> The IP block of the private network ->> > ->> > **vlan** ->> > ->> >> Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> - -#### Retrieve, modify or delete a private network - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network -> +**vrackNetworkId** ^*^ + +The identifier of the private network + +/// #### Modify the list of farms attached to a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network ->> > ->> > **farmId** * ->> > ->> >> Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**vrackNetworkId** ^*^ + +The identifier of the private network + +**farmId** ^*^ + +Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. + +/// + ## Go further -Interact with our user community on . +Interact with our user community on +:root > * { + --md-api-get-color:#3a87ad; + --md-api-get-bgcolor:#c9ddf6; + --md-api-post-color:#468847; + --md-api-post-bgcolor:#d1e7db; + --md-api-put-color:#f89406; + --md-api-put-bgcolor:#f7dec0; + --md-api-delete-color:#b94a48; + --md-api-delete-bgcolor:#f4c1bf; + --md-details-icon: url('data:image/svg+xml;charset=utf-8,'); + --md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a; + --md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040; + --md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059; +} +/* HOOK API */ +.ovh-api { + position:relative !important; + width:calc(100% - 30px) !important; + z-index:2 !important; +} +.ovh-api > p { + display:none !important; +} +.ovh-api-main { + align-items:center !important; + border-radius:0 !important; + box-shadow:none !important; + display:flex !important; + font-size:initial !important; + margin:15px 0 !important; + overflow:hidden !important; + padding:0 !important; + scrollbar-width:thin !important; +} +.ovh-api-main:hover { + overflow-x:auto !important; +} +.ovh-api-main span { + font-size:13px !important +} +.ovh-api-main a { + align-items:center !important; + display:inline-flex !important; + height:30px !important; + text-decoration:none !important; +} +.ovh-api-verb { + align-items:center !important; + border-radius:4px !important; + color:#fff !important; + display:flex !important; + font-weight:700 !important; + height:22px !important; + justify-content:center !important; + letter-spacing:1px !important; + line-height:initial !important; + margin:0 1ch 0 4px !important; + padding:2px 0 0 !important; + position:initial !important; + text-shadow:none !important; + vertical-align:initial !important; + width:9ch !important; +} +.ovh-api-endpoint { + display: inline !important; + padding:3px 1ch 0 0 !important; + white-space:nowrap !important; +} +/* DETAILS */ +details:not(:has(summary:empty)) { + margin:10px 0; +} +.ovh-api + details:has(summary:empty) { + margin-top:-15px !important; + position:relative !important; +} +.ovh-api + details summary:empty { + cursor:pointer !important; + height:32px !important; + list-style:none !important; + outline:none !important; + position:absolute !important; + right:0 !important; + top:-32px !important; + width:30px !important; +} +.ovh-api + details > summary:empty:before { + background-color:#222c32 !important; + content:'' !important; + height:24px !important; + left:3px !important; + -webkit-mask-image:var(--md-details-icon) !important; + mask-image:var(--md-details-icon) !important; + -webkit-mask-position:center !important; + mask-position:center !important; + -webkit-mask-repeat:no-repeat !important; + mask-repeat:no-repeat !important; + -webkit-mask-size:contain !important; + mask-size:contain !important; + position:absolute !important; + top:3px !important; + transition:transform .25s !important; + width:24px !important; +} +.ovh-api + details > summary:empty::-webkit-details-marker { + /* Hides marker on Safari */ + display:none !important; +} +.ovh-api + details[open]:has(summary:empty) { + border-radius:0 0 4px 4px !important; + border-top:none !important; + margin-top:-47px !important; + padding:40px 15px 15px !important; +} +.ovh-api + details[open] > summary:empty { + right:-1px !important; + top:-1px !important; +} +.ovh-api + details[open] > summary:empty:before { + transform: rotate(90deg) !important; +} +.ovh-api + details[open]:has(summary:empty) p { + margin:0 0 10px !important; +} +.ovh-api + details[open]:has(summary:empty) h6 { + font-size: 16px !important; + font-weight:600 !important; + margin:0 0 20px !important; + text-transform:uppercase !important; +} +.ovh-api + details[open]:has(summary:empty) sup { + color: #900 !important; + font-size: 24px !important; + vertical-align: bottom !important; +} +/* GET */ +.ovh-api-main:has(.ovh-api-verb-GET) { + border:1px solid var(--md-api-get-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-GET { + background-color: var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty { + border:1px solid var(--md-api-get-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty:before { + background-color:var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-get-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-get-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-GET):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-get-color) !important; + width:calc(100% + 29px) !important; +} +/* POST */ +.ovh-api-main:has(.ovh-api-verb-POST) { + border:1px solid var(--md-api-post-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-POST { + background-color: var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty { + border:1px solid var(--md-api-post-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty:before { + background-color:var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-post-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-post-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-POST):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-post-color) !important; + width:calc(100% + 29px) !important; +} +/* PUT */ +.ovh-api-main:has(.ovh-api-verb-PUT) { + border:1px solid var(--md-api-put-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-PUT { + background-color: var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty { + border:1px solid var(--md-api-put-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty:before { + background-color:var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-put-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-put-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-PUT):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-put-color) !important; + width:calc(100% + 29px) !important; +} +/* DELETE */ +.ovh-api-main:has(.ovh-api-verb-DELETE) { + border:1px solid var(--md-api-delete-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-DELETE { + background-color: var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty { + border:1px solid var(--md-api-delete-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty:before { + background-color:var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-delete-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-delete-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-delete-color) !important; + width:calc(100% + 29px) !important; +} + + ## Objective This guide provides a detailed description of all API functions for the OVHcloud Load Balancer. @@ -31,7 +261,6 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > ## Services and zones - ### OVHcloud Load Balancer #### List active services @@ -39,3138 +268,2891 @@ All API calls that are made in the section */ipLoadbalancing* are available on [ > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### List the zones available for the OVHcloud Load Balancer > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Return details of a OVHcloud Load Balancer service -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify a OVHcloud Load Balancer service -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > The name you want to give to the service (String of characters) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > The SSL configuration you want to assign to the service (Value) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Ip** ^*^ + +- **displayName** +The name you want to give to the service (String of characters) + +- **sslConfiguration** +The SSL configuration you want to assign to the service (Value) + +/// + #### List the services attached to the OVHcloud Load Balancer -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List existing farms and their type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **vrackNetworkId** ->> > ->> >> Allows filtering according to the vrack network +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**vrackNetworkId** + +Allows filtering according to the vrack network + +/// + #### List the areas that can be attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different probes that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of farms that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of frontends that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing actions that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### List the different types of routing rules that can be used -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + ### Service #### Get service information -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters: +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +/// + #### Modify service information -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Enables automatic service renewal (Boolean)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Enables the deletion of the service upon expiration. (Boolean) ->> >> ->> >> - **forced** ->> >> > ->> >> > Forces automatic renewal (Boolean) ->> >> ->> >> - **period** ->> >> > ->> >> > Fill in the renewal term (String of characters) +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex: IP-1.2.3.4 (String of characters) + +**Service** ^*^ + +- **automatic** +Enables automatic service renewal (Boolean)) + +- **deleteAtExpiration** +Enables the deletion of the service upon expiration. (Boolean) + +- **forced** +Forces automatic renewal (Boolean) + +- **period** +Fill in the renewal term (String of characters) + +/// + ### Zones #### List active zones for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, ex. : IP-1.2.3.4 (String of characters) + +/// + #### Get the details of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the requested zone +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the requested zone + +/// + #### Delete a zone The service will be discontinued on the expiry date. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The service will be discontinued on the expiry date. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The service will be discontinued on the expiry date. + +/// + #### Undo the deletion of a zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **name** * ->> > ->> >> The name of the zone to be deleted +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**name** ^*^ + +The name of the zone to be deleted + +/// + ## HTTP Protocol + Accessing HTTP protocol related elements (Frontend, Firmware, etc.). ### HTTP farms #### List HTTP farms attached to a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of the zone (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Adding a new HTTP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** * ->> > ->> >> The name of the zone (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **balance** ->> >> ->> >> Your farm's load distribution method (Value) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (Probe HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> SSL activation is forced for the probe (Boolean) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> The behavior of the 'match' operator is reversed (Boolean) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) -> +
Paramètres :
-#### Getting the details of an HTTP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP farm +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **balance** ->> >> > ->> >> > The type of load distribution (Value) ->> >> ->> >> - **port** ->> >> > ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (HTTP probe) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > The type of connection persistence (Value) -> +The name of the zone (String of characters) -#### Delete an HTTP farm +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Parameters : +#### Adding a new HTTP farm to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### HTTP Servers +/// details | -#### List the servers linked to the HTTP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your HTTP farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by server status (Value) -> +**serviceName** ^*^ -#### Adding a server to an HTTP farm +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **cookie** ->> > ->> >> The Value of your Cookie (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A server with high weight receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +**zone** ^*^ -#### Get the details of a server linked to an HTTP farm +The name of the zone (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**displayName** -#### Modify the properties of an HTTP server +The name you wish to give to your farm (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> > ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **cookie** ->> >> > ->> >> > The Value of your Cookie (String of characters) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> > ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> >> ->> >> - **ssl** ->> >> > ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> > ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> > ->> >> > The weight of your server for your farm (Number) -> +**balance** -#### Removing a server from an HTTP farm +Your farm's load distribution method (Value) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +**port** -### Frontends HTTP +The listening port on your farm. Inherited from the frontend if undefined (Number, 1..65535) -#### List HTTP frontends attached to a OVHcloud Load Balancer service +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the HTTP farm to which the HTTP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of connection persistence to use for your farm (Value) -#### Add an HTTP frontend to a OVHcloud Load Balancer service +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> >> ->> >> NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default HTTP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your HTTP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your HTTP frontend (String of characters) ->> > ->> > **hsts** ->> > ->> >> If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> > ->> > **httpHeader** ->> > ->> >> The custom *http* header to add (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> The redirection URL *http* (String of characters) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +The type of probe to use on your farm (Probe HTTP) -### Get the details of an HTTP frontend +- **forceSsl** +SSL activation is forced for the probe (Boolean) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) -> +- **interval** +The interval in seconds between each probe test. Must be greater than 30. Default is 30. (Number) -#### Modify the properties of an HTTP frontend +- **match** +The method of correspondence used. default' uses the standard behavior of HAProxy. status' is only supported for HTTP probes (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your HTTP frontend (Number) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> > ->> >> > NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> > ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> > ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **hsts** ->> >> > ->> >> > If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > The custom *http* header to add (String of characters) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +- **negate** +The behavior of the 'match' operator is reversed (Boolean) -#### Delete an HTTP frontend +- **method** +The HTTP method used in type 'http'. HEAD' can save bandwidth. GET' by default (Value) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) -> +- **pattern** +The format of the server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches' (String of characters) -### Routes HTTP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) -#### List the HTTP routes attached to a Load Balancer service +- **type** +The type of the probe; its operation (Value) [HTTP, internal, MySQL, OCO, PgSQL, SMTP, TCP] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : +- **url** +The address to be used by the probe for HTTP type probes. The type is ignored if this parameter is set to (String of characters) + +/// + +#### Getting the details of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of an HTTP frontend (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Add a new HTTP route to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > The expected HTTP return code (Number) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the HTTP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +
Paramètres :
-#### Get the details of an HTTP route +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of an HTTP route +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> The expected HTTP return code (Number) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> **frontendId** ->> >> ->> >> > The Identifier of the HTTP frontend for which your route is applied (Number) ->> >> ->> >> **weight** ->> >> ->> >> > The priority of your route. (Number) [0 - 255] -> +The identifier of your HTTP farm (Number) -#### Delete an HTTP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Parameters : +#### Modify the properties of an HTTP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**BackendHttp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **balance** +The type of load distribution (Value) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (HTTP probe) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +/// + +### HTTP Servers + +#### List the servers linked to the HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your HTTP farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by server status (Value) + +/// + +#### Adding a server to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**cookie** + +The Value of your Cookie (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A server with high weight receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of an HTTP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendHttpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **cookie** +The Value of your Cookie (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Removing a server from an HTTP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends HTTP + +#### List HTTP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the HTTP farm to which the HTTP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add an HTTP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default HTTP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your HTTP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your HTTP frontend (String of characters) + +**hsts** + +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +**httpHeader** + +The custom *http* header to add (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**redirectLocation** + +The redirection URL *http* (String of characters) + +**ssl** + +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +### Get the details of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +/// + +#### Modify the properties of an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your HTTP frontend (Number) + +**FrontendHttp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +NB: the filtering is done at the Load Balancer level, so if the Load Balancer and the servers are not in a vRack, your servers are directly accessible from the Internet. + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **hsts** +If support for *https strict, HTTP Strict Transport Security* is enabled or disabled (Boolean) + +- **httpHeader** +The custom *http* header to add (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete an HTTP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes HTTP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List the HTTP routes attached to a Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of an HTTP frontend (Number) + +/// + +#### Add a new HTTP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the HTTP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeHttp** ^*^ + +- **action** ^*^ +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **status** +The expected HTTP return code (Number) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The Identifier of the HTTP frontend for which your route is applied (Number) + +- **weight** +The priority of your route. (Number) [0 - 255] +/// + +#### Delete an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +### Routing rules + +#### List the routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +/// + +#### Add routing rules attached to an HTTP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the operator :code:`match` is reversed (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your HTTP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## Protocol TCP + +Access the elements related to the TCP protocol (Frontend, Farm, etc.). + +### TCP Farms + +#### List TCP farms attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new TCP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**balance** + +Your farm's load sharing method (Value) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**probe** + +The type of probe to use on your farm (HTTP probe) + +- **forceSsl** +Activation of the SSL is forced for the probe (Boolean) + +- **interval** +The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) + +- **match** +The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) + +- **negate** +The behavior of the :code:`match` operator is reversed. (Boolean) + +- **method** +The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) + +- **pattern** +server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) + +- **port** +The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) + +- **type** +The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) + +**stickiness** + +The type of connection persistence to use for your farm (Value) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcp** ^*^ + +- **balance** +The type of load distribution (Value) + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +- **probe** +The type of probe to be used (Sonde TCP) + +- **stickiness** +The type of connection persistence (Value) + +/// + +#### Delete a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### TCP Servers + +#### List the servers linked to the TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**cookie** + +Filter Values by Cookie (String of characters) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Add a server to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**backup** + +If your server is configured as a backup server (Boolean) + +**chain** + +The Value of the Intermediate SSL Certificate (String of characters) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**probe** + +The type of probe to be used (Value) + +**proxyProtocolVersion** + +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) + +**ssl** ^*^ + +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +**weight** ^*^ + +The weight of your server for your farm. A high weight server receives more requests (Number) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a TCP server + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server-link (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendTcpServer** ^*^ + +- **backup** +If your server is configured as a backup server (Boolean) + +- **chain** +The Value of the Intermediate SSL Certificate (String of characters) + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **probe** +The type of probe to be used (Value) + +- **proxyProtocolVersion** +The proxyProtocol version to use, + +see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value ) + +- **ssl** +If the requests sent to your servers need to be encrypted with SSL (Boolean) + +- **status** +If your server is activated or not (Boolean) + +- **weight** +The weight of your server for your farm (Number) + +/// + +#### Delete a server from a TCP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### Frontends TCP + +#### List TCP frontends attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the TCP farm to which the TCP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a TCP frontend to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**allowedSource** + +The list of client IP addresses that have access to the Load Balancer (IPv4) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** + +The default TCP farm identifier for your frontend (Number) + +**defaultSslId** + +The default SSL Certificate ID (Number) + +**disabled** + +If your TCP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your TCP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**ssl** + +Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +/// + +#### Modify the properties of a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend TCP (Number) + +**FrontendTcp** ^*^ + +- **allowedSource** +The list of client IP addresses that have access to the Load Balancer (IPv4[]) + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **defaultSslId** +The default SSL Certificate ID (Number) + +- **disabled** +If your HTTP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your HTTP frontend (String of characters) + +- **ssl** +Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) + +/// + +#### Delete a TCP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend (Number) + +/// + +### Routes TCP + +Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. + +#### List TCP routes attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** + +The identifier of a TCP frontend (Number) + +/// + +#### Add a new TCP route to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**action** ^*^ + +The action triggered when all the rules of your route are validated (RouteHttpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +**displayName** + +The name of your route (String of characters) + +**frontendId** + +The Identifier of the TCP frontend for which your route is applied (Number) + +**weight** + +The priority of your route. (Number) [0 - 255] +/// + +#### Get the details of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + +#### Modify the properties of a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +**routeTcp** ^*^ + +- **action** +The action to carry out (routeTcpAction) + +- **target** +The farm identifier, or the template for the URL (String of characters) + +- **type** +The action on your route (String of characters) + +- **displayName** +The name of your route (String of characters) + +- **frontendId** +The TCP frontend for which your route is applied (Number) + +- **weight** +The priority of your route (Number) [0 - 255] +/// + +#### Delete a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your route (number) + +/// + ### Routing rules -#### List the routing rules attached to an HTTP route +#### List the routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +/// + +#### Add routing rules attached to a TCP route + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**field** ^*^ + +The name of the field to be tested with the "match" operator (String of characters) + +**match** ^*^ + +The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +The behavior of the :code:`match` operator is reversed. (Boolean) + +**pattern** + +The schema or the regular expression used by the "match" operator (Regex / String of characters) + +**subField** + +The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) + +/// + +#### Get the details of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +#### Modify the properties of a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +**RouteRule** ^*^ + +- **field** +The name of the field to be tested via the "match" operator (String of characters) + +- **match** +The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +If the "match" operator is inverted or not (Boolean) + +- **pattern** +The Value or regular expression to use with the "match" operator (Regex / String of characters) + +- **subField** +The name of the sub-field if applicable (String of characters) + +/// + +#### Delete a routing rule + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**routeId** ^*^ + +The identifier of your TCP route (Number) + +**ruleId** ^*^ + +The identifier of your HTTP routing rule (Number) + +/// + +## UDP Protocol + +Access the UDP protocol elements (Frontend, Farm, etc.). + +### UDP Farms + +#### List UDP trusses attached to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a new UDP farm to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**displayName** + +The name you wish to give to your farm (String of characters) + +**port** + +The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP farm + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | -> [!faq] -> -> Service : +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdp** ^*^ + +- **displayName** +The name of the farm (String of characters) + +- **port** +The farm's listening port (Number, 1..65000) + +/// + +#### Delete a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Add routing rules attached to an HTTP route +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the operator :code:`match` is reversed (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +
Paramètres :
-#### Get the details of a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +### UDP Servers + +#### List the servers linked to the UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** + +Filter Values by IPv4 address (IPv4) + +**status** + +Filter Values by Server Status (Value) + +/// + +#### Adding a server to a UDP farm + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**address** ^*^ + +The IPv4 address of your server (IPv4) + +**displayName** + +The name given to your server (String of characters) + +**port** + +The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) + +**status** ^*^ + +If your server is activated or not (Boolean) + +/// + +#### Get the details of a server linked to a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +/// + +#### Modify the properties of a UDP server + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your HTTP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocol TCP -Access the elements related to the TCP protocol (Frontend, Farm, etc.). +/// details | -### TCP Farms +
Paramètres :
-#### List TCP farms attached to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server (Number) + +**farmId** ^*^ + +The identifier of your farm (Number) + +**BackendUdpServer** ^*^ + +- **displayName** +The name of your server (String of characters) + +- **port** +The listening port of your server (Number, 1..65535) + +- **status** +If your server is activated or not (Boolean) + +/// + +#### Removing a server from a UDP farm + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**serverId** ^*^ + +The identifier of your server UDP (Number) + +**farmId** ^*^ + +The identifier of your farm UDP (Number) + +/// + +### Frontends UDP + +#### List UDP frontends attached to a OVHcloud Load Balancer service + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Add a new TCP farm to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **balance** ->> > ->> >> Your farm's load sharing method (Value) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to use on your farm (HTTP probe) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > Activation of the SSL is forced for the probe (Boolean) ->> >> ->> >> - **interval** ->> >> ->> >> > The interval (in seconds) between each probe test. Must be greater than 30. Default is 30 (Number) ->> >> ->> >> - **match** ->> >> ->> >> > The method of correspondence used. default' uses the standard HAProxy behavior. status' is only supported for HTTP probes. (Value) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > The behavior of the :code:`match` operator is reversed. (Boolean) ->> >> ->> >> - **method** ->> >> ->> >> > The HTTP method used in :code:`type` 'http'. HEAD' can save bandwidth. GET' by default (Value) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > server response when "UP". Empty for 'default', comma separated status list for 'status', text for 'contains', regular expression for 'matches'. (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The port that the probe should use to test the servers attached to your farm. Ignored for 'oco' probes. If not defined, the farm port is used (Number) ->> >> ->> >> - **type** ->> >> ->> >> > The type of the probe; its operation (Value) (HTTP, internal, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > The address to be used by the probe for HTTP type probes. The :code:`type` is ignored if this parameter is defined (String of characters) ->> >> ->> > **stickiness** ->> > ->> >> The type of connection persistence to use for your farm (Value) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP farm +**serviceName** ^*^ -> [!faq] -> -> Service : +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**defaultFarmId** + +The identifier of the UDP farm to which the UDP frontend is linked (Number) + +**port** + +The listening port on your frontend (Number, 1..65535) + +**zone** + +The name of your zone, ex: all (String of characters) + +/// + +#### Add a UDP frontend to a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**dedicatedIpfo** + +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +**defaultFarmId** ^*^ + +The default UDP farm identifier for your frontend (Number) + +**disabled** + +If your UDP frontend is disabled or enabled (Boolean) + +**displayName** + +The name of your UDP frontend (String of characters) + +**port** ^*^ + +The listening port on your frontend (Number, 1..65535) + +**zone** ^*^ + +The name of your zone, ex: all (String of characters) + +/// + +#### Get the details of a UDP frontend + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modify the properties of a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > The type of load distribution (Value) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > The type of connection persistence (Value) +/// + +#### Modify the properties of a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Delete a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) + +- **disabled** +If your UDP frontend is disabled or enabled (Boolean) + +- **displayName** +The name of your UDP frontend (String of characters) + +/// -> [!faq] +#### Delete a UDP frontend + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Service : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**frontendId** ^*^ + +The identifier of your frontend UDP (Number) + +/// + +## Other features + +### Additional IP + +#### List Additional IPs routed on a OVHcloud Load Balancer service + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover > -> Parameters : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### Service Status + +#### Obtenir l'état des instances d'un service OVHcloud Load Balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -### TCP Servers +/// details | -#### List the servers linked to the TCP farm +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **cookie** ->> > ->> >> Filter Values by Cookie (String of characters) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### List the output IPs used by OVH for NAT + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -#### Add a server to a TCP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **backup** ->> > ->> >> If your server is configured as a backup server (Boolean) ->> > ->> > **chain** ->> > ->> >> The Value of the Intermediate SSL Certificate (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **probe** ->> > ->> >> The type of probe to be used (Value) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> The proxyProtocol version to use, ->> >> see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value) ->> > ->> > **ssl** * ->> > ->> >> If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> > ->> > **weight** * ->> > ->> >> The weight of your server for your farm. A high weight server receives more requests (Number) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +#### Apply changes to a OVHcloud Load Balancer service + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Get the details of a server linked to a TCP farm +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +/// + +### SSL Certificates + +#### List SSL certificates of a OVHcloud Load Balancer service -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**fingerprint** + +Lists the fingerprint of the SSL certificate (String of characters) + +**serial** + +Lists the identification number of the SSL certificate (String of characters) + +**type** + +Type of SSL certificate (Value) + +/// + +#### Add a new SSL object + +> [!api] > -> Parameters : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> > -#### Modify the properties of a TCP server +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**certificate** ^*^ + +Adding the SSL certificate (String of characters) + +**chain** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server-link (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > If your server is configured as a backup server (Boolean) ->> >> ->> >> - **chain** ->> >> ->> >> > The Value of the Intermediate SSL Certificate (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > The type of probe to be used (Value) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > The proxyProtocol version to use, ->> >> > see http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Value >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > If the requests sent to your servers need to be encrypted with SSL (Boolean) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) ->> >> ->> >> - **weight** ->> >> ->> >> > The weight of your server for your farm (Number) -> +Adding the intermediate SSL certificate (String of characters) -#### Delete a server from a TCP farm +**key** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +Adding the private key (String of characters) -### Frontends TCP +/// -#### List TCP frontends attached to a OVHcloud Load Balancer service +#### Get the details of an SSL object -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the TCP farm to which the TCP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Add a TCP frontend to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **allowedSource** ->> > ->> >> The list of client IP addresses that have access to the Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> The default TCP farm identifier for your frontend (Number) ->> > ->> > **defaultSslId** ->> > ->> >> The default SSL Certificate ID (Number) ->> > ->> > **disabled** ->> > ->> >> If your TCP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your TCP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Whether requests sent to the TCP farm should be encrypted with SSL or not (Boolean) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +
Paramètres :
-#### Get the details of a TCP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> >> ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> >> ->> >> The identifier of your frontend TCP (Number) ->> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Modify the properties of a TCP frontend +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend TCP (Number) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > The list of client IP addresses that have access to the Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > The default SSL Certificate ID (Number) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your HTTP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your HTTP frontend (String of characters) ->> >> ->> >> - **ssl** ->> >> ->> >> > Whether requests sent to the HTTP farm should be encrypted with SSL or not (Boolean) -> +The identifier of your SSL certificate (Number) -#### Delete a TCP frontend +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Parameters : +#### Delete an SSL object + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend (Number) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -### Routes TCP -Routes are evaluated one by one, testing their routing rules. The first route validating all its rules sees its action executed, and stops the evaluation of the remaining routes. The order of execution is defined by the type and weight of the route. - -#### List TCP routes attached to a OVHcloud Load Balancer service +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The identifier of a TCP frontend (Number) -> +
Paramètres :
-#### Add a new TCP route to a OVHcloud Load Balancer service +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> The action triggered when all the rules of your route are validated (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > The farm identifier, or the template for the URL (String of characters) ->> >> ->> >> - **type** ->> >> ->> >> > The action on your route (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name of your route (String of characters) ->> > ->> > **frontendId** ->> > ->> >> The Identifier of the TCP frontend for which your route is applied (Number) ->> > ->> > **weight** ->> > ->> >> The priority of your route. (Number) [0 - 255] -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Get the details of a TCP route +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) -> +The identifier of your SSL certificate (Number) -#### Modify the properties of a TCP route +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > The action to carry out (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> The farm identifier, or the template for the URL (String of characters) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> The action on your route (String of characters) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your route (String of characters) ->> >> ->> >> - **frontendId** ->> >> ->> >> > The TCP frontend for which your route is applied (Number) ->> >> ->> >> - **weight** ->> >> ->> >> > The priority of your route (Number) [0 - 255] -> +### Tasks -#### Delete a TCP route +#### List current tasks for a OVHcloud Load Balancer service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your route (number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -### Routing rules +/// details | -#### List the routing rules attached to a TCP route +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) -> +**serviceName** ^*^ -#### Add routing rules attached to a TCP route +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **field** * ->> > ->> >> The name of the field to be tested with the "match" operator (String of characters) ->> > ->> > **match** * ->> > ->> >> The comparison operator (value) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> The behavior of the :code:`match` operator is reversed. (Boolean) ->> > ->> > **pattern** ->> > ->> >> The schema or the regular expression used by the "match" operator (Regex / String of characters) ->> > ->> > **subField** ->> > ->> >> The name of the sub-field, if applicable. Can be a cookie or a header name, for example (String of characters) -> +**action** ^*^ -#### Get the details of a routing rule +Consultation of available tasks (Values) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : +/// + +#### Get the details of a task + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -#### Modify the properties of a routing rule +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > The name of the field to be tested via the "match" operator (String of characters) ->> >> ->> >> - **match** ->> >> ->> >> > The comparison operator to use (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > If the "match" operator is inverted or not (Boolean) ->> >> ->> >> - **pattern** ->> >> ->> >> > The Value or regular expression to use with the "match" operator (Regex / String of characters) ->> >> ->> >> - **subField** ->> >> ->> >> > The name of the sub-field if applicable (String of characters) -> +
Paramètres :
-#### Delete a routing rule +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **routeId** * ->> > ->> >> The identifier of your TCP route (Number) ->> > ->> > **ruleId** * ->> > ->> >> The identifier of your HTTP routing rule (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## UDP Protocol -Access the UDP protocol elements (Frontend, Farm, etc.). +**id** ^*^ -### UDP Farms +The identifier of your task (Number) -#### List UDP trusses attached to a OVHcloud Load Balancer service +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +### Contact -#### Add a new UDP farm to a OVHcloud Load Balancer service +#### Initiate a contact change -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you wish to give to your farm (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port on your farm. Inherited from the frontend if not defined (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Get the details of a UDP farm +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +
Paramètres :
-#### Modify the properties of a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of the farm (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The farm's listening port (Number, 1..65000) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -#### Delete a UDP farm +**contactAdmin** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) -> +The OVH NIC to be configured for the Admin contact of this service (String of characters) -### UDP Servers +**contactBilling** -#### List the servers linked to the UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** ->> > ->> >> Filter Values by IPv4 address (IPv4) ->> > ->> > **status** ->> > ->> >> Filter Values by Server Status (Value) -> +**contactTech** -#### Adding a server to a UDP farm +The OVH NIC to be configured for the Admin contact of this service (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **address** * ->> > ->> >> The IPv4 address of your server (IPv4) ->> > ->> > **displayName** ->> > ->> >> The name given to your server (String of characters) ->> > ->> > **port** ->> > ->> >> The listening port of your server. Inherited from your farm if not defined (Number, 1..65535) ->> > ->> > **status** * ->> > ->> >> If your server is activated or not (Boolean) -> +/// -#### Get the details of a server linked to a UDP farm +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : +#### Description of the private networks attached to the load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP server +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm (Number) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > The name of your server (String of characters) ->> >> ->> >> - **port** ->> >> ->> >> > The listening port of your server (Number, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > If your server is activated or not (Boolean) -> +
Paramètres :
-#### Removing a server from a UDP farm +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **serverId** * ->> > ->> >> The identifier of your server UDP (Number) ->> > ->> > **farmId** * ->> > ->> >> The identifier of your farm UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -### Frontends UDP +**subnet** -#### List UDP frontends attached to a OVHcloud Load Balancer service +Allows to filter according to the network used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **defaultFarmId** ->> > ->> >> The identifier of the UDP farm to which the UDP frontend is linked (Number) ->> > ->> > **port** ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** ->> > ->> >> The name of your zone, ex: all (String of characters) -> +**vlan** -#### Add a UDP frontend to a OVHcloud Load Balancer service +Allows to filter according to the vlan used -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **dedicatedIpfo** ->> > ->> >> The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> The default UDP farm identifier for your frontend (Number) ->> > ->> > **disabled** ->> > ->> >> If your UDP frontend is disabled or enabled (Boolean) ->> > ->> > **displayName** ->> > ->> >> The name of your UDP frontend (String of characters) ->> > ->> > **port** * ->> > ->> >> The listening port on your frontend (Number, 1..65535) ->> > ->> > **zone** * ->> > ->> >> The name of your zone, ex: all (String of characters) -> +/// -#### Get the details of a UDP frontend +#### Add a private network in the vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modify the properties of a UDP frontend +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > The list of IP addresses of the remote servers to which your Load Balancer is connected (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > If your UDP frontend is disabled or enabled (Boolean) ->> >> ->> >> - **displayName** ->> >> ->> >> > The name of your UDP frontend (String of characters) -> +
Paramètres :
-#### Delete a UDP frontend +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **frontendId** * ->> > ->> >> The identifier of your frontend UDP (Number) -> +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -## Other features +**displayName** -### Additional IP +The name you want to give to the network (String of characters) -#### List Additional IPs routed on a OVHcloud Load Balancer service +**farmId** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +Identification table of farms that you wish to attach to this private network -### Service Status +**natIp** -#### Obtenir l'état des instances d'un service OVHcloud Load Balancer +An IP block reserved for the load balancer to reach the servers. -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**subnet** -#### List the output IPs used by OVH for NAT +The IP block of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> +**vlan** -#### Apply changes to a OVHcloud Load Balancer service +Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Parameters : +/// + +#### Retrieve a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### SSL Certificates +/// details | -#### List SSL certificates of a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **fingerprint** ->> > ->> >> Lists the fingerprint of the SSL certificate (String of characters) ->> > ->> > **serial** ->> > ->> >> Lists the identification number of the SSL certificate (String of characters) ->> > ->> > **type** ->> > ->> >> Type of SSL certificate (Value) -> +**serviceName** ^*^ -#### Add a new SSL object +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **certificate** * ->> > ->> >> Adding the SSL certificate (String of characters) ->> > ->> > **chain** ->> > ->> >> Adding the intermediate SSL certificate (String of characters) ->> > ->> > **key** * ->> > ->> >> Adding the private key (String of characters) -> +**vrackNetworkId** ^*^ -#### Get the details of an SSL object +The identifier of the private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) -> +/// -#### Delete an SSL object +#### Modify a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your SSL certificate (Number) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### Tasks +/// details | -#### List current tasks for a OVHcloud Load Balancer service +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **action** * ->> > ->> >> Consultation of available tasks (Values) -> +**serviceName** ^*^ -#### Get the details of a task +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **id** * ->> > ->> >> The identifier of your task (Number) -> +**vrackNetworkId** ^*^ -### Contact +The identifier of the private network -#### Initiate a contact change +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Parameters : +#### Delete a private network + +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **contactAdmin** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactBilling** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) ->> > ->> > **contactTech** ->> > ->> >> The OVH NIC to be configured for the Admin contact of this service (String of characters) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -### vRack +/// details | -#### Description of the private networks attached to the load balancer +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **subnet** ->> > ->> >> Allows to filter according to the network used ->> > ->> > **vlan** ->> > ->> >> Allows to filter according to the vlan used -> +**serviceName** ^*^ -#### Add a private network in the vRack +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **displayName** ->> > ->> >> The name you want to give to the network (String of characters) ->> > ->> > **farmId** ->> > ->> >> Identification table of farms that you wish to attach to this private network ->> > ->> > **natIp** ->> > ->> >> An IP block reserved for the load balancer to reach the servers. ->> > ->> > **subnet** ->> > ->> >> The IP block of the private network ->> > ->> > **vlan** ->> > ->> >> Vlan of the private network in the vRack. 0 if the private network is not in a vlan -> - -#### Retrieve, modify or delete a private network - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Parameters : -> ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network -> +**vrackNetworkId** ^*^ + +The identifier of the private network + +/// #### Modify the list of farms attached to a private network -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Parameters : +> [!api] > ->> > **serviceName** * ->> > ->> >> The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) ->> > ->> > **vrackNetworkId** * ->> > ->> >> The identifier of the private network ->> > ->> > **farmId** * ->> > ->> >> Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +The identifier of your Load Balancer, for example : "loadbalancer-abcdef0123456789" (String of characters) + +**vrackNetworkId** ^*^ + +The identifier of the private network + +**farmId** ^*^ + +Table of farm identifiers that you wish to attach to this private network. The Value "null" removes the vrack network id from all farms where it was configured. + +/// + ## Go further -Interact with our user community on . +Interact with our user community on +:root > * { + --md-api-get-color:#3a87ad; + --md-api-get-bgcolor:#c9ddf6; + --md-api-post-color:#468847; + --md-api-post-bgcolor:#d1e7db; + --md-api-put-color:#f89406; + --md-api-put-bgcolor:#f7dec0; + --md-api-delete-color:#b94a48; + --md-api-delete-bgcolor:#f4c1bf; + --md-details-icon: url('data:image/svg+xml;charset=utf-8,'); + --md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a; + --md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040; + --md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059; +} +/* HOOK API */ +.ovh-api { + position:relative !important; + width:calc(100% - 30px) !important; + z-index:2 !important; +} +.ovh-api > p { + display:none !important; +} +.ovh-api-main { + align-items:center !important; + border-radius:0 !important; + box-shadow:none !important; + display:flex !important; + font-size:initial !important; + margin:15px 0 !important; + overflow:hidden !important; + padding:0 !important; + scrollbar-width:thin !important; +} +.ovh-api-main:hover { + overflow-x:auto !important; +} +.ovh-api-main span { + font-size:13px !important +} +.ovh-api-main a { + align-items:center !important; + display:inline-flex !important; + height:30px !important; + text-decoration:none !important; +} +.ovh-api-verb { + align-items:center !important; + border-radius:4px !important; + color:#fff !important; + display:flex !important; + font-weight:700 !important; + height:22px !important; + justify-content:center !important; + letter-spacing:1px !important; + line-height:initial !important; + margin:0 1ch 0 4px !important; + padding:2px 0 0 !important; + position:initial !important; + text-shadow:none !important; + vertical-align:initial !important; + width:9ch !important; +} +.ovh-api-endpoint { + display: inline !important; + padding:3px 1ch 0 0 !important; + white-space:nowrap !important; +} +/* DETAILS */ +details:not(:has(summary:empty)) { + margin:10px 0; +} +.ovh-api + details:has(summary:empty) { + margin-top:-15px !important; + position:relative !important; +} +.ovh-api + details summary:empty { + cursor:pointer !important; + height:32px !important; + list-style:none !important; + outline:none !important; + position:absolute !important; + right:0 !important; + top:-32px !important; + width:30px !important; +} +.ovh-api + details > summary:empty:before { + background-color:#222c32 !important; + content:'' !important; + height:24px !important; + left:3px !important; + -webkit-mask-image:var(--md-details-icon) !important; + mask-image:var(--md-details-icon) !important; + -webkit-mask-position:center !important; + mask-position:center !important; + -webkit-mask-repeat:no-repeat !important; + mask-repeat:no-repeat !important; + -webkit-mask-size:contain !important; + mask-size:contain !important; + position:absolute !important; + top:3px !important; + transition:transform .25s !important; + width:24px !important; +} +.ovh-api + details > summary:empty::-webkit-details-marker { + /* Hides marker on Safari */ + display:none !important; +} +.ovh-api + details[open]:has(summary:empty) { + border-radius:0 0 4px 4px !important; + border-top:none !important; + margin-top:-47px !important; + padding:40px 15px 15px !important; +} +.ovh-api + details[open] > summary:empty { + right:-1px !important; + top:-1px !important; +} +.ovh-api + details[open] > summary:empty:before { + transform: rotate(90deg) !important; +} +.ovh-api + details[open]:has(summary:empty) p { + margin:0 0 10px !important; +} +.ovh-api + details[open]:has(summary:empty) h6 { + font-size: 16px !important; + font-weight:600 !important; + margin:0 0 20px !important; + text-transform:uppercase !important; +} +.ovh-api + details[open]:has(summary:empty) sup { + color: #900 !important; + font-size: 24px !important; + vertical-align: bottom !important; +} +/* GET */ +.ovh-api-main:has(.ovh-api-verb-GET) { + border:1px solid var(--md-api-get-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-GET { + background-color: var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty { + border:1px solid var(--md-api-get-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details > summary:empty:before { + background-color:var(--md-api-get-color) !important; +} +.ovh-api:has(.ovh-api-verb-GET) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-get-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-get-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-GET):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-get-color) !important; + width:calc(100% + 29px) !important; +} +/* POST */ +.ovh-api-main:has(.ovh-api-verb-POST) { + border:1px solid var(--md-api-post-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-POST { + background-color: var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty { + border:1px solid var(--md-api-post-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details > summary:empty:before { + background-color:var(--md-api-post-color) !important; +} +.ovh-api:has(.ovh-api-verb-POST) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-post-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-post-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-POST):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-post-color) !important; + width:calc(100% + 29px) !important; +} +/* PUT */ +.ovh-api-main:has(.ovh-api-verb-PUT) { + border:1px solid var(--md-api-put-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-PUT { + background-color: var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty { + border:1px solid var(--md-api-put-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details > summary:empty:before { + background-color:var(--md-api-put-color) !important; +} +.ovh-api:has(.ovh-api-verb-PUT) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-put-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-put-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-PUT):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-put-color) !important; + width:calc(100% + 29px) !important; +} +/* DELETE */ +.ovh-api-main:has(.ovh-api-verb-DELETE) { + border:1px solid var(--md-api-delete-color) !important; + border-right:0 !important; +} +.ovh-api-verb.ovh-api-verb-DELETE { + background-color: var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty { + border:1px solid var(--md-api-delete-color) !important; + border-left:0 !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details > summary:empty:before { + background-color:var(--md-api-delete-color) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE) + details[open]:has(summary:empty) { + border:1px solid var(--md-api-delete-color) !important; + box-shadow:var(--md-shadow-z2), inset 0 30px 0 var(--md-api-delete-bgcolor) !important; +} +.ovh-api:has(.ovh-api-verb-DELETE):not(:has(+ details > summary:empty)) .ovh-api-main { + border-right:1px solid var(--md-api-delete-color) !important; + width:calc(100% + 29px) !important; +} + + + + ## Objectif Ce guide fournit une description détaillée de toutes les fonctions de l'API pour le Load Balancer OVHcloud. @@ -31,7 +263,6 @@ Toutes les fonctions d'API qui sont utilisées dans la section */ipLoadbalancing > ## Services et zones - ### Load Balancer OVHcloud #### Lister les services actifs @@ -39,367 +270,331 @@ Toutes les fonctions d'API qui sont utilisées dans la section */ipLoadbalancing > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### Lister les zones disponibles pour le Load Balancer OVHcloud > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Retourner les détails d'un service Load Balancer OVHcloud -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Modifier un service Load Balancer OVHcloud -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > Le nom que vous souhaitez attribuer au service (chaîne de caractères) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > La configuration SSL que vous souhaitez attribuer au service (valeur) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +**Ip** ^*^ + +- **displayName** +Le nom que vous souhaitez attribuer au service (chaîne de caractères) + +- **sslConfiguration** +La configuration SSL que vous souhaitez attribuer au service (valeur) + +/// + #### Lister les services attachés au Load Balancer OVHcloud -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les fermes existantes et leur type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) ->> > ->> > **vrackNetworkId** ->> > ->> >> Permet de filtrer selon le réseau vrack +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +**vrackNetworkId** + +Permet de filtrer selon le réseau vrack + +/// + #### Lister les zones pouvant être attachées à un service Load Balancer OVHcloud -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différentes sondes pouvant être utilisées -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types de fermes pouvant être utilisées -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types de frontends pouvant être utilisés -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types d'actions de routage pouvant etre utilisés -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types de règles de routage pouvant être utilisés -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + ### Service #### Obtenir les informations du service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Modifier les informations du service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Active le renouvellement automatique du service (booléen)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Active la suppression du service lors de l'expiration (booléen) ->> >> ->> >> - **forced** ->> >> > ->> >> > Force le renouvellement automatique (booléen) ->> >> ->> >> - **period** ->> >> > ->> >> > Renseigne la durée de renouvellement (chaîne de caractères) +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +**Service** ^*^ + +- **automatic** +Active le renouvellement automatique du service (booléen)) + +- **deleteAtExpiration** +Active la suppression du service lors de l'expiration (booléen) + +- **forced** +Force le renouvellement automatique (booléen) + +- **period** +Renseigne la durée de renouvellement (chaîne de caractères) + +/// + ### Zones #### Lister les zones actives pour un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex. : IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex. : IP-1.2.3.4 (chaîne de caractères) + +/// + #### Obtenir les détails d'une zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **name** * ->> > ->> >> Le nom de la zone demandée +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**name** ^*^ + +Le nom de la zone demandée + +/// + #### Supprimer une zone Le service sera supprimé à la date d'expiration. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **name** * ->> > ->> >> Le nom de la zone à supprimer +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**name** ^*^ + +Le nom de la zone à supprimer + +/// + #### Annuler la suppression d'une zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **name** * ->> > ->> >> Le nom de la zone a supprimer +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**name** ^*^ + +Le nom de la zone a supprimer + +/// + ## Protocole HTTP Accéder aux éléments relatifs au protocole HTTP (frontend, ferme, etc.). @@ -408,2779 +603,2563 @@ Accéder aux éléments relatifs au protocole HTTP (frontend, ferme, etc.). #### Lister les fermes HTTP attachées à un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** ->> > ->> >> Le nom de la zone (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Ajouter une nouvelle ferme HTTP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** * ->> > ->> >> Le nom de la zone (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> le nom que vous souhaitez attribuer à votre ferme (chaîne de caractères) ->> > ->> > **balance** ->> >> ->> >> La méthode de répartition de charge de votre ferme (valeur) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> Le type de persistence de connexion à utiliser pour votre ferme (valeur) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser sur votre ferme (sonde HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> L'activation du SSL est forcée pour la sonde (booléen) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> L'intervalle en secondes entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> Le comportement de l'opérateur 'match' est inversé (booléen) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> La méthode HTTP utilisée en type 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> Le format de la réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> Le type de la sonde ; son fonctionnement (valeur) [HTTP, interne, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le type est ignoré si ce paramètre est défini (chaîne de caractères) -> +
Paramètres :
-#### Obtenir les détails d'une ferme HTTP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Modifier les propriétés d'une ferme HTTP +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > Le nom de la ferme (chaîne de caractères) ->> >> ->> >> - **balance** ->> >> > ->> >> > Le type de répartition de charge (valeur) ->> >> ->> >> - **port** ->> >> > ->> >> > Le port d'écoute de la ferme (nombre, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > Le type de sonde à utiliser (sonde HTTP) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > Le type de persistence de connexion (valeur) -> +Le nom de la zone (chaîne de caractères) -#### Supprimer une ferme HTTP +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Paramètres : +#### Ajouter une nouvelle ferme HTTP à un service Load Balancer OVHcloud + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### Serveurs HTTP +/// details | -#### Lister les serveurs liés à la ferme HTTP +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) ->> > ->> > **cookie** ->> > ->> >> Filtrer les valeurs par cookie (chaîne de caractères) ->> > ->> > **address** ->> > ->> >> Filtrer les valeurs par adresse IPv4 (IPv4) ->> > ->> > **status** ->> > ->> >> Filtrer les valeurs par statut du serveur (valeur) -> +**serviceName** ^*^ -#### Ajouter un serveur à une ferme HTTP +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** * ->> > ->> >> L'adresse IPv4 de votre serveur (IPv4) ->> > ->> > **backup** ->> > ->> >> Si votre serveur est configuré comme serveur de secours (booléen) ->> > ->> > **chain** ->> > ->> >> La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> > ->> > **cookie** ->> > ->> >> La valeur de votre cookie (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom donné à votre serveur (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser (valeur) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> La version de proxyProtocol à utiliser, ->> >> voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) ->> > ->> > **ssl** * ->> > ->> >> Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> > ->> > **weight** * ->> > ->> >> Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) ->> > ->> > **status** * ->> > ->> >> Si votre serveur est activé ou non (booléen) -> +**zone** ^*^ -#### Obtenir les détails d'un serveur lié à une ferme HTTP +Le nom de la zone (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +**displayName** -#### Modifier les propriétés d'un serveur HTTP +le nom que vous souhaitez attribuer à votre ferme (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre server-link (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > Si votre serveur est configuré comme serveur de secours (booléen) ->> >> ->> >> - **chain** ->> >> > ->> >> > La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> >> ->> >> - **cookie** ->> >> > ->> >> > La valeur de votre cookie (chaîne de caractères) ->> >> ->> >> - **displayName** ->> >> > ->> >> > Le nom de votre serveur (chaîne de caractères) ->> >> ->> >> - **port** ->> >> > ->> >> > Le port d'écoute de votre serveur (nombre, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > Le type de sonde à utiliser (valeur) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > La version de proxyProtocol à utiliser, ->> >> > voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> >> ->> >> - **status** ->> >> > ->> >> > Si votre serveur est activé ou non (booléen) ->> >> ->> >> - **weight** ->> >> > ->> >> > Le poids de votre serveur pour votre ferme (nombre) -> +**balance** -#### Supprimer un serveur d'une ferme HTTP +La méthode de répartition de charge de votre ferme (valeur) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +**port** -### Frontends HTTP +Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) -#### Lister les frontends HTTP attachés à un service Load Balancer OVHcloud +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme HTTP à laquelle le frontend HTTP est lié (nombre) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, par exemple: all (chaîne de caractères) -> +Le type de persistence de connexion à utiliser pour votre ferme (valeur) -#### Ajouter un frontend HTTP à un service Load Balancer OVHcloud +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **allowedSource** ->> > ->> >> La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) ->> >> ->> >> NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet ->> > ->> > **dedicatedIpfo** ->> > ->> >> La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme HTTP par défaut pour votre frontend (nombre) ->> > ->> > **defaultSslId** ->> > ->> >> L'identifiant du certificat SSL par défaut (nombre) ->> > ->> > **disabled** ->> > ->> >> Si votre frontend HTTP est désactivé ou activé (booléen) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre frontend HTTP (chaîne de caractères) ->> > ->> > **hsts** ->> > ->> >> Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) ->> > ->> > **httpHeader** ->> > ->> >> L'entête *http* personnalisé à ajouter (chaîne de caractères) ->> > ->> > **port** * ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> L'URL de redirection *http* (chaîne de caractères) ->> > ->> > **ssl** ->> > ->> >> Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +Le type de sonde à utiliser sur votre ferme (sonde HTTP) -### Obtenir les détails d'un frontend HTTP +- **forceSsl** +L'activation du SSL est forcée pour la sonde (booléen) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend HTTP (nombre) -> +- **interval** +L'intervalle en secondes entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) -#### Modifier les propriétés d'un frontend HTTP +- **match** +La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend HTTP (nombre) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4[]) ->> >> > ->> >> > NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > L'identifiant du certificat SSL par défaut (nombre) ->> >> ->> >> - **disabled** ->> >> > ->> >> > Si votre frontend HTTP est désactivé ou activé (booléen) ->> >> ->> >> - **displayName** ->> >> > ->> >> > Le nom de votre frontend HTTP (chaîne de caractères) ->> >> ->> >> - **hsts** ->> >> > ->> >> > Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > L'en-tête *http* personnalisé à ajouter (chaîne de caractères) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) -> +- **negate** +Le comportement de l'opérateur 'match' est inversé (booléen) -#### Supprimer un frontend HTTP +- **method** +La méthode HTTP utilisée en type 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend (nombre) -> +- **pattern** +Le format de la réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) -### Routes HTTP +- **port** +Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) -Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. +- **type** +Le type de la sonde ; son fonctionnement (valeur) [HTTP, interne, MySQL, OCO, PgSQL, SMTP, TCP] -#### Lister les routes HTTP attachées à un service Load Balancer +- **url** +L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le type est ignoré si ce paramètre est défini (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Paramètres : +/// + +#### Obtenir les détails d'une ferme HTTP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant d'un frontend HTTP (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Ajouter une nouvelle route HTTP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **action** * ->> > ->> >> L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > Le code de retour HTTP attendu (nombre) ->> >> ->> >> - **target** ->> >> ->> >> > L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> ->> >> - **type** ->> >> ->> >> > L'action de votre route (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre route (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) ->> > ->> > **weight** ->> > ->> >> La priorité de votre route. (nombre) [0 - 255] -> +
Paramètres :
-#### Obtenir les détails d'une route HTTP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Modifier les propriétés d'une route HTTP +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> Le code de retour HTTP attendu (nombre) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> L'action de votre route (chaîne de caractères) ->> >> ->> >> **displayName** ->> >> ->> >> > Le nom de votre route (chaîne de caractères) ->> >> ->> >> **frontendId** ->> >> ->> >> > L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) ->> >> ->> >> **weight** ->> >> ->> >> > La priorité de votre route. (nombre) [0 - 255] -> +L'identifiant de votre ferme HTTP (nombre) -#### Supprimer une route HTTP +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Paramètres : +#### Modifier les propriétés d'une ferme HTTP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -### Règles de routage +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme HTTP (nombre) + +**BackendHttp** ^*^ + +- **displayName** +Le nom de la ferme (chaîne de caractères) + +- **balance** +Le type de répartition de charge (valeur) + +- **port** +Le port d'écoute de la ferme (nombre, 1..65000) + +- **probe** +Le type de sonde à utiliser (sonde HTTP) + +- **stickiness** +Le type de persistence de connexion (valeur) + +/// + +#### Supprimer une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme HTTP (nombre) + +/// + +### Serveurs HTTP + +#### Lister les serveurs liés à la ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme HTTP (nombre) + +**cookie** + +Filtrer les valeurs par cookie (chaîne de caractères) + +**address** + +Filtrer les valeurs par adresse IPv4 (IPv4) + +**status** + +Filtrer les valeurs par statut du serveur (valeur) + +/// + +#### Ajouter un serveur à une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** ^*^ + +L'adresse IPv4 de votre serveur (IPv4) + +**backup** + +Si votre serveur est configuré comme serveur de secours (booléen) + +**chain** + +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +**cookie** + +La valeur de votre cookie (chaîne de caractères) + +**displayName** + +Le nom donné à votre serveur (chaîne de caractères) + +**port** + +Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) + +**probe** + +Le type de sonde à utiliser (valeur) + +**proxyProtocolVersion** + +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) + +**ssl** ^*^ + +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +**weight** ^*^ + +Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) + +**status** ^*^ + +Si votre serveur est activé ou non (booléen) + +/// + +#### Obtenir les détails d'un serveur lié à une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'un serveur HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre server-link (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendHttpServer** ^*^ + +- **backup** +Si votre serveur est configuré comme serveur de secours (booléen) + +- **chain** +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +- **cookie** +La valeur de votre cookie (chaîne de caractères) + +- **displayName** +Le nom de votre serveur (chaîne de caractères) + +- **port** +Le port d'écoute de votre serveur (nombre, 1..65535) + +- **probe** +Le type de sonde à utiliser (valeur) + +- **proxyProtocolVersion** +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) + +- **ssl** +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +- **status** +Si votre serveur est activé ou non (booléen) + +- **weight** +Le poids de votre serveur pour votre ferme (nombre) + +/// + +#### Supprimer un serveur d'une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Frontends HTTP + +#### Lister les frontends HTTP attachés à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**defaultFarmId** + +L'identifiant de la ferme HTTP à laquelle le frontend HTTP est lié (nombre) + +**port** + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** + +Le nom de votre zone, par exemple: all (chaîne de caractères) + +/// + +#### Ajouter un frontend HTTP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**allowedSource** + +La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) + +NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet + +**dedicatedIpfo** + +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +**defaultFarmId** + +L'identifiant de la ferme HTTP par défaut pour votre frontend (nombre) + +**defaultSslId** + +L'identifiant du certificat SSL par défaut (nombre) + +**disabled** + +Si votre frontend HTTP est désactivé ou activé (booléen) + +**displayName** + +Le nom de votre frontend HTTP (chaîne de caractères) + +**hsts** + +Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) + +**httpHeader** + +L'entête *http* personnalisé à ajouter (chaîne de caractères) + +**port** ^*^ + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**redirectLocation** + +L'URL de redirection *http* (chaîne de caractères) + +**ssl** + +Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +### Obtenir les détails d'un frontend HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend HTTP (nombre) + +/// + +#### Modifier les propriétés d'un frontend HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend HTTP (nombre) + +**FrontendHttp** ^*^ + +- **allowedSource** +La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4[]) + +NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet + +- **dedicatedIpfo** +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +- **defaultSslId** +L'identifiant du certificat SSL par défaut (nombre) + +- **disabled** +Si votre frontend HTTP est désactivé ou activé (booléen) + +- **displayName** +Le nom de votre frontend HTTP (chaîne de caractères) + +- **hsts** +Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) + +- **httpHeader** +L'en-tête *http* personnalisé à ajouter (chaîne de caractères) + +- **ssl** +Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) + +/// + +#### Supprimer un frontend HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend (nombre) + +/// + +### Routes HTTP + +Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. + +#### Lister les routes HTTP attachées à un service Load Balancer + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** + +L'identifiant d'un frontend HTTP (nombre) + +/// + +#### Ajouter une nouvelle route HTTP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**action** ^*^ + +L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) + +- **status** +Le code de retour HTTP attendu (nombre) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +**displayName** + +Le nom de votre route (chaîne de caractères) + +**frontendId** + +L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) + +**weight** + +La priorité de votre route. (nombre) [0 - 255] +/// + +#### Obtenir les détails d'une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +#### Modifier les propriétés d'une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +**routeHttp** ^*^ + +- **action** ^*^ +L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) + +- **status** +Le code de retour HTTP attendu (nombre) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +- **displayName** +Le nom de votre route (chaîne de caractères) + +- **frontendId** +L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) + +- **weight** +La priorité de votre route. (nombre) [0 - 255] +/// + +#### Supprimer une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +### Règles de routage #### Lister les règles de routages attachées à une route HTTP -> [!faq] -> -> Service : +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +/// + +#### Ajouter les règles de routages attachées à une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**field** ^*^ + +Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) + +**match** ^*^ + +L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +Le comportement de l'opérateur :code:`match` est inversé (booléen) + +**pattern** + +Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) + +**subField** + +Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) + +/// + +#### Obtenir les détails d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +#### Modifier les propriétés d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +**RouteRule** ^*^ + +- **field** +Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) + +- **match** +L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +Si l'opérateur "match" est inversé ou non (booléen) + +- **pattern** +La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) + +- **subField** +Le nom du sous-champ si applicable (chaîne de caractères) + +/// + +#### Supprimer une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +## Protocole TCP + +Accéder aux éléments relatifs au protocole TCP (frontend, ferme, etc.). + +### Fermes TCP + +#### Lister les fermes TCP attachées à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**zone** + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Ajouter une nouvelle ferme TCP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**balance** + +La méthode de répartition de charge de votre ferme (valeur) + +**displayName** + +Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) + +**port** + +Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) + +**probe** + +Le type de sonde à utiliser sur votre ferme (sonde HTTP) + +- **forceSsl** +L'activation du SSL est forcée pour la sonde (booléen) + +- **interval** +L'intervalle (en secondes) entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) + +- **match** +La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (valeur) (contains, default, internal, matches, status) + +- **negate** +Le comportement de l'opérateur :code:`match` est inversé (booléen) + +- **method** +La méthode HTTP utilisée en :code:`type` 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) (HEAD, GET, OPTIONS, internal) + +- **pattern** +réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) + +- **port** +Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) + +- **type** +Le type de la sonde ; son fonctionnement (valeur) (HTTP, interne, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le :code:`type` est ignoré si ce paramètre est défini (chaîne de caractères) + +**stickiness** + +Le type de persistence de connexion à utiliser pour votre ferme (valeur) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Obtenir les détails d'une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendTcp** ^*^ + +- **balance** +Le type de répartition de charge (valeur) + +- **displayName** +Le nom de la ferme (chaîne de caractères) + +- **port** +Le port d'écoute de la ferme (nombre, 1..65000) + +- **probe** +Le type de sonde à utiliser (sonde TCP) + +- **stickiness** +Le type de persistence de connexion (valeur) + +/// + +#### Supprimer une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Serveurs TCP + +#### Lister les serveurs liés à la ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**cookie** + +Filtrer les valeurs par cookie (chaîne de caractères) + +**address** + +Filtrer les valeurs par adresse IPv4 (IPv4) + +**status** + +Filtrer les valeurs par statut du serveur (valeur) + +/// + +#### Ajouter un serveur à une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** ^*^ + +L'adresse IPv4 de votre serveur (IPv4) + +**backup** + +Si votre serveur est configuré comme serveur de secours (booléen) + +**chain** + +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +**displayName** + +Le nom donné à votre serveur (chaîne de caractères) + +**port** + +Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) + +**probe** + +Le type de sonde à utiliser (valeur) + +**proxyProtocolVersion** + +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) + +**ssl** ^*^ + +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +**weight** ^*^ + +Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) + +**status** ^*^ + +Si votre serveur est activé ou non (booléen) + +/// + +#### Obtenir les détails d'un serveur lié à une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'un serveur TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre server-link (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendTcpServer** ^*^ + +- **backup** +Si votre serveur est configuré comme serveur de secours (booléen) + +- **chain** +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +- **displayName** +Le nom de votre serveur (chaîne de caractères) + +- **port** +Le port d'écoute de votre serveur (nombre, 1..65535) + +- **probe** +Le type de sonde à utiliser (valeur) + +- **proxyProtocolVersion** +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Valeur ) + +- **ssl** +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +- **status** +Si votre serveur est activé ou non (booléen) + +- **weight** +Le poids de votre serveur pour votre ferme (nombre) + +/// + +#### Supprimer un serveur d'une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Frontends TCP + +#### Lister les frontends TCP attachés à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**defaultFarmId** + +L'identifiant de la ferme TCP à laquelle le frontend TCP est lié (nombre) + +**port** + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Ajouter un frontend TCP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**allowedSource** + +La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) + +**dedicatedIpfo** + +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +**defaultFarmId** + +L'identifiant de la ferme TCP par défaut pour votre frontend (nombre) + +**defaultSslId** + +L'identifiant du certificat SSL par défaut (nombre) + +**disabled** + +Si votre frontend TCP est désactivé ou activé (booléen) + +**displayName** + +Le nom de votre frontend TCP (chaîne de caractères) + +**port** ^*^ + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**ssl** + +Si les requêtes envoyées à la ferme TCP doivent être chiffrées avec SSL ou non (booléen) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Obtenir les détails d'un frontend TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend TCP (nombre) + +/// + +#### Modifier les propriétés d'un frontend TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend TCP (nombre) + +**FrontendTcp** ^*^ + +- **allowedSource** +La liste des adresses IP clientes qui ont accès au Load Balancer (IPv4[]) + +- **dedicatedIpfo** +La liste des adresses IP des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +- **defaultSslId** +L'identifiant du certificat SSL par défaut (nombre) + +- **disabled** +Si votre frontend HTTP est désactivé ou activé (booléen) + +- **displayName** +Le nom de votre frontend HTTP (chaîne de caractères) + +- **ssl** +Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) + +/// + +#### Supprimer un frontend TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend (nombre) + +/// + +### Routes TCP + +Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. + +#### Lister les routes TCP attachées à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** + +L'identifiant d'un frontend TCP (nombre) + +/// + +#### Ajouter une nouvelle route TCP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**action** ^*^ + +L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +**displayName** + +Le nom de votre route (chaîne de caractères) + +**frontendId** + +L'identifiant du frontend TCP pour lequel votre route est appliquée (nombre) + +**weight** + +La priorité de votre route. (nombre) [0 - 255] +/// + +#### Obtenir les détails d'une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +#### Modifier les propriétés d'une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +**routeTcp** ^*^ + +- **action** +L'action à réaliser (routeTcpAction) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +- **displayName** +Le nom de votre route (chaîne de caractères) + +- **frontendId** +Le frontend TCP pour lequel votre route est appliquée (nombre) + +- **weight** +La priorité de votre route (nombre) [0 - 255] +/// + +#### Supprimer une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +### Règles de routage + +#### Lister les règles de routages attachées à une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +/// + +#### Ajouter les règles de routages attachées à une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**field** ^*^ + +Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) + +**match** ^*^ + +L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +Le comportement de l'opérateur :code:`match` est inversé (booléen) + +**pattern** + +Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) + +**subField** + +Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) + +/// + +#### Obtenir les détails d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +#### Modifier les propriétés d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +**RouteRule** ^*^ + +- **field** +Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) + +- **match** +L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +Si l'opérateur "match" est inversé ou non (booléen) + +- **pattern** +La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) + +- **subField** +Le nom du sous-champ si applicable (chaîne de caractères) + +/// + +#### Supprimer une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +## Protocole UDP + +Accéder aux éléments relatifs au protocole UDP (frontend, ferme, etc.). + +### Fermes UDP + +#### Lister les fermes UDP attachées à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**zone** + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Ajouter une nouvelle ferme UDP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**displayName** + +Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) + +**port** + +Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) + +**zone** ^*^ + +Le nom de votre zone, par exemple : all (chaîne de caractères) + +/// + +#### Obtenir les détails d'une ferme UDP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'une ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendUdp** ^*^ + +- **displayName** +Le nom de la ferme (chaîne de caractères) + +- **port** +Le port d'écoute de la ferme (nombre, 1..65000) + +/// + +#### Supprimer une ferme UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Ajouter les règles de routages attachées à une route HTTP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **field** * ->> > ->> >> Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) ->> > ->> > **match** * ->> > ->> >> L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> Le comportement de l'opérateur :code:`match` est inversé (booléen) ->> > ->> > **pattern** ->> > ->> >> Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) ->> > ->> > **subField** ->> > ->> >> Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) -> +
Paramètres :
-#### Obtenir les détails d'une règle de routage +**serviceName** ^*^ -> [!faq] -> -> Service : +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Serveurs UDP + +#### Lister les serveurs liés à la ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** + +Filtrer les valeurs par adresse IPv4 (IPv4) + +**status** + +Filtrer les valeurs par statut du serveur (valeur) + +/// + +#### Ajouter un serveur à une ferme UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modifier les propriétés d'une règle de routage +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) ->> >> ->> >> - **match** ->> >> ->> >> > L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > Si l'opérateur "match" est inversé ou non (booléen) ->> >> ->> >> - **pattern** ->> >> ->> >> > La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) ->> >> ->> >> - **subField** ->> >> ->> >> > Le nom du sous-champ si applicable (chaîne de caractères) -> +
Paramètres :
-#### Supprimer une règle de routage +**serviceName** ^*^ -> [!faq] -> -> Service : +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** ^*^ + +L'adresse IPv4 de votre serveur (IPv4) + +**displayName** + +Le nom donné à votre serveur (chaîne de caractères) + +**port** + +Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) + +**status** ^*^ + +Si votre serveur est activé ou non (booléen) + +/// + +#### Obtenir les détails d'un serveur lié à une ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'un serveur UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocole TCP +/// details | -Accéder aux éléments relatifs au protocole TCP (frontend, ferme, etc.). +
Paramètres :
-### Fermes TCP +**serviceName** ^*^ -#### Lister les fermes TCP attachées à un service Load Balancer OVHcloud +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendUdpServer** ^*^ + +- **displayName** +Le nom de votre serveur (chaîne de caractères) + +- **port** +Le port d'écoute de votre serveur (nombre, 1..65535) + +- **status** +Si votre serveur est activé ou non (booléen) + +/// + +#### Supprimer un serveur d'une ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur UDP (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme UDP (nombre) + +/// + +### Frontends UDP + +#### Lister les frontends UDP attachés à un service Load Balancer OVHcloud + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Ajouter une nouvelle ferme TCP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **balance** ->> > ->> >> La méthode de répartition de charge de votre ferme (valeur) ->> > ->> > **displayName** ->> > ->> >> Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser sur votre ferme (sonde HTTP) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > L'activation du SSL est forcée pour la sonde (booléen) ->> >> ->> >> - **interval** ->> >> ->> >> > L'intervalle (en secondes) entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) ->> >> ->> >> - **match** ->> >> ->> >> > La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (valeur) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > Le comportement de l'opérateur :code:`match` est inversé (booléen) ->> >> ->> >> - **method** ->> >> ->> >> > La méthode HTTP utilisée en :code:`type` 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) ->> >> ->> >> - **type** ->> >> ->> >> > Le type de la sonde ; son fonctionnement (valeur) (HTTP, interne, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le :code:`type` est ignoré si ce paramètre est défini (chaîne de caractères) ->> >> ->> > **stickiness** ->> > ->> >> Le type de persistence de connexion à utiliser pour votre ferme (valeur) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +
Paramètres :
-#### Obtenir les détails d'une ferme TCP +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**defaultFarmId** + +L'identifiant de la ferme UDP à laquelle le frontend UDP est lié (nombre) + +**port** + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** + +Le nom de votre zone, par exemple : all (chaîne de caractères) -> [!faq] +/// + +#### Ajouter un frontend UDP à un service Load Balancer OVHcloud + +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**dedicatedIpfo** + +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +**defaultFarmId** ^*^ + +L'identifiant de la ferme UDP par défaut pour votre frontend (nombre) + +**disabled** + +Si votre frontend UDP est désactivé ou activé (booléen) + +**displayName** + +Le nom de votre frontend UDP (chaîne de caractères) + +**port** ^*^ + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Obtenir les détails d'un frontend UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend UDP (nombre) + +/// + +#### Modifier les propriétés d'un frontend UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modifier les propriétés d'une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > Le type de répartition de charge (valeur) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de la ferme (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de la ferme (nombre, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > Le type de sonde à utiliser (sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > Le type de persistence de connexion (valeur) +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend UDP (nombre) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +- **disabled** +Si votre frontend UDP est désactivé ou activé (booléen) + +- **displayName** +Le nom de votre frontend UDP (chaîne de caractères) + +/// + +#### Supprimer un frontend UDP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Supprimer une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] +**frontendId** ^*^ + +L'identifiant de votre frontend UDP (nombre) + +/// + +## Autres fonctionnalités + +### Additional IP + +#### Lister les Additional IPs routées sur un service Load Balancer OVHcloud + +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// + +### État du service + +#### Obtenir l'état des instances d'un service Load Balancer OVHcloud + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// + +#### Lister les IPs de sortie utilisées par OVHcloud pour le NAT + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -### Serveurs TCP +/// details | -#### Lister les serveurs liés à la ferme TCP +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **cookie** ->> > ->> >> Filtrer les valeurs par cookie (chaîne de caractères) ->> > ->> > **address** ->> > ->> >> Filtrer les valeurs par adresse IPv4 (IPv4) ->> > ->> > **status** ->> > ->> >> Filtrer les valeurs par statut du serveur (valeur) +#### Appliquer les modifications d'un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Ajouter un serveur à une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// + +### Certificats SSL + +#### Lister les certificats SSL d'un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** * ->> > ->> >> L'adresse IPv4 de votre serveur (IPv4) ->> > ->> > **backup** ->> > ->> >> Si votre serveur est configuré comme serveur de secours (booléen) ->> > ->> > **chain** ->> > ->> >> La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom donné à votre serveur (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser (valeur) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> La version de proxyProtocol à utiliser, ->> >> voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) ->> > ->> > **ssl** * ->> > ->> >> Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> > ->> > **weight** * ->> > ->> >> Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) ->> > ->> > **status** * ->> > ->> >> Si votre serveur est activé ou non (booléen) +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > -#### Obtenir les détails d'un serveur lié à une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**fingerprint** + +Liste l'empreinte du certificat SSL (chaîne de caractères) + +**serial** + +Liste le numéro d'identification du certificat SSL (chaîne de caractères) + +**type** + +Type de certificat SSL (valeur) + +/// + +#### Ajouter un nouvel objet SSL -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**certificate** ^*^ + +Ajout du certificat SSL (chaîne de caractères) + +**chain** + +Ajout du certificat SSL intermédiaire (chaîne de caractères) + +**key** ^*^ + +Ajout de la clé privée (chaîne de caractères) + +/// + +#### Obtenir les détails d'un objet SSL + +> [!api] > -> Paramètres : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> > -#### Modifier les propriétés d'un serveur TCP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre server-link (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > Si votre serveur est configuré comme serveur de secours (booléen) ->> >> ->> >> - **chain** ->> >> ->> >> > La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre serveur (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de votre serveur (nombre, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > Le type de sonde à utiliser (valeur) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > La version de proxyProtocol à utiliser, ->> >> > voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Valeur >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> >> ->> >> - **status** ->> >> ->> >> > Si votre serveur est activé ou non (booléen) ->> >> ->> >> - **weight** ->> >> ->> >> > Le poids de votre serveur pour votre ferme (nombre) -> +
Paramètres :
-#### Supprimer un serveur d'une ferme TCP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### Frontends TCP +**id** ^*^ -#### Lister les frontends TCP attachés à un service Load Balancer OVHcloud +L'identifiant de votre certificat SSL (nombre) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme TCP à laquelle le frontend TCP est lié (nombre) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +/// -#### Ajouter un frontend TCP à un service Load Balancer OVHcloud +#### Supprimer un objet SSL -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **allowedSource** ->> > ->> >> La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme TCP par défaut pour votre frontend (nombre) ->> > ->> > **defaultSslId** ->> > ->> >> L'identifiant du certificat SSL par défaut (nombre) ->> > ->> > **disabled** ->> > ->> >> Si votre frontend TCP est désactivé ou activé (booléen) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre frontend TCP (chaîne de caractères) ->> > ->> > **port** * ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Si les requêtes envoyées à la ferme TCP doivent être chiffrées avec SSL ou non (booléen) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Obtenir les détails d'un frontend TCP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> >> ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> >> ->> >> L'identifiant de votre frontend TCP (nombre) ->> +
Paramètres :
-#### Modifier les propriétés d'un frontend TCP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend TCP (nombre) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > La liste des adresses IP clientes qui ont accès au Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > La liste des adresses IP des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > L'identifiant du certificat SSL par défaut (nombre) ->> >> ->> >> - **disabled** ->> >> ->> >> > Si votre frontend HTTP est désactivé ou activé (booléen) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre frontend HTTP (chaîne de caractères) ->> >> ->> >> - **ssl** ->> >> ->> >> > Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Supprimer un frontend TCP +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend (nombre) -> +L'identifiant de votre certificat SSL (nombre) -### Routes TCP +/// -Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. +### Tâches -#### Lister les routes TCP attachées à un service Load Balancer OVHcloud +#### Lister les tâches en cours pour un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant d'un frontend TCP (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -#### Ajouter une nouvelle route TCP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **action** * ->> > ->> >> L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> ->> >> - **type** ->> >> ->> >> > L'action de votre route (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre route (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant du frontend TCP pour lequel votre route est appliquée (nombre) ->> > ->> > **weight** ->> > ->> >> La priorité de votre route. (nombre) [0 - 255] -> +
Paramètres :
-#### Obtenir les détails d'une route TCP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Modifier les propriétés d'une route TCP +**action** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > L'action à réaliser (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> L'action de votre route (chaîne de caractères) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre route (chaîne de caractères) ->> >> ->> >> - **frontendId** ->> >> ->> >> > Le frontend TCP pour lequel votre route est appliquée (nombre) ->> >> ->> >> - **weight** ->> >> ->> >> > La priorité de votre route (nombre) [0 - 255] -> +Consultation des tâches disponibles (valeurs) -#### Supprimer une route TCP +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Paramètres : +#### Obtenir les détails d'une tâche + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -### Règles de routage +/// details | -#### Lister les règles de routages attachées à une route TCP +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) -> +**serviceName** ^*^ -#### Ajouter les règles de routages attachées à une route TCP +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **field** * ->> > ->> >> Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) ->> > ->> > **match** * ->> > ->> >> L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> Le comportement de l'opérateur :code:`match` est inversé (booléen) ->> > ->> > **pattern** ->> > ->> >> Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) ->> > ->> > **subField** ->> > ->> >> Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) -> +**id** ^*^ -#### Obtenir les détails d'une règle de routage +L'identifiant de votre tâche (nombre) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : +/// + +### Contact + +#### Initier un changement de contact + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Modifier les propriétés d'une règle de routage +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) ->> >> ->> >> - **match** ->> >> ->> >> > L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > Si l'opérateur "match" est inversé ou non (booléen) ->> >> ->> >> - **pattern** ->> >> ->> >> > La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) ->> >> ->> >> - **subField** ->> >> ->> >> > Le nom du sous-champ si applicable (chaîne de caractères) -> +
Paramètres :
-#### Supprimer une règle de routage +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -## Protocole UDP +**contactAdmin** -Accéder aux éléments relatifs au protocole UDP (frontend, ferme, etc.). +L'identifiant client OVHcloud à configurer pour le contact administrateur de ce service (chaîne de caractères) -### Fermes UDP +**contactBilling** -#### Lister les fermes UDP attachées à un service Load Balancer OVHcloud +L'identifiant client OVHcloud à configurer pour le contact facturation de ce service (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +**contactTech** -#### Ajouter une nouvelle ferme UDP à un service Load Balancer OVHcloud +L'identifiant client OVHcloud à configurer pour le contact technique de ce service (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Paramètres : +/// + +> [!primary] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, par exemple : all (chaîne de caractères) +> Pour plus d'informations sur la gestion des contacts OVHcloud, consultez le guide « [Gérer les contacts de ses services](/pages/account_and_service_management/account_information/managing_contacts) ». > -#### Obtenir les détails d'une ferme UDP +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Paramètres : +#### Description des réseaux privés attachés au load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modifier les propriétés d'une ferme UDP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > Le nom de la ferme (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de la ferme (nombre, 1..65000) -> +
Paramètres :
-#### Supprimer une ferme UDP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### Serveurs UDP +**subnet** -#### Lister les serveurs liés à la ferme UDP +Permet de filtrer selon le réseau utilisé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** ->> > ->> >> Filtrer les valeurs par adresse IPv4 (IPv4) ->> > ->> > **status** ->> > ->> >> Filtrer les valeurs par statut du serveur (valeur) -> +**vlan** -#### Ajouter un serveur à une ferme UDP +Permet de filtrer selon le vlan utilisé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** * ->> > ->> >> L'adresse IPv4 de votre serveur (IPv4) ->> > ->> > **displayName** ->> > ->> >> Le nom donné à votre serveur (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) ->> > ->> > **status** * ->> > ->> >> Si votre serveur est activé ou non (booléen) -> +/// -#### Obtenir les détails d'un serveur lié à une ferme UDP +#### Ajouter un réseau privé dans le vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modifier les propriétés d'un serveur UDP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > Le nom de votre serveur (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de votre serveur (nombre, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > Si votre serveur est activé ou non (booléen) -> +
Paramètres :
-#### Supprimer un serveur d'une ferme UDP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur UDP (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme UDP (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### Frontends UDP +**displayName** -#### Lister les frontends UDP attachés à un service Load Balancer OVHcloud +Le nom que vous souhaitez attribuer au réseau (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme UDP à laquelle le frontend UDP est lié (nombre) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, par exemple : all (chaîne de caractères) -> +**farmId** -#### Ajouter un frontend UDP à un service Load Balancer OVHcloud +Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **dedicatedIpfo** ->> > ->> >> La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> L'identifiant de la ferme UDP par défaut pour votre frontend (nombre) ->> > ->> > **disabled** ->> > ->> >> Si votre frontend UDP est désactivé ou activé (booléen) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre frontend UDP (chaîne de caractères) ->> > ->> > **port** * ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +**natIp** -#### Obtenir les détails d'un frontend UDP +Un bloc d'IP réservé au load balancer pour joindre les serveurs -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend UDP (nombre) -> +**subnet** -#### Modifier les propriétés d'un frontend UDP +Le bloc d'IP du réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend UDP (nombre) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > Si votre frontend UDP est désactivé ou activé (booléen) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre frontend UDP (chaîne de caractères) -> +**vlan** -#### Supprimer un frontend UDP +Vlan du réseau privé dans le vRack. 0 si le réseau privé n'est pas dans un vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Paramètres : +/// + +#### Récupérer un réseau privé + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend UDP (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -## Autres fonctionnalités +/// details | -### Additional IP +
Paramètres :
-#### Lister les Additional IPs routées sur un service Load Balancer OVHcloud +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### État du service +**vrackNetworkId** ^*^ -#### Obtenir l'état des instances d'un service Load Balancer OVHcloud +L'identifiant du réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> +/// -#### Lister les IPs de sortie utilisées par OVHcloud pour le NAT +#### Modifier un réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -#### Appliquer les modifications d'un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> +
Paramètres :
-### Certificats SSL +**serviceName** ^*^ -#### Lister les certificats SSL d'un service Load Balancer OVHcloud +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **fingerprint** ->> > ->> >> Liste l'empreinte du certificat SSL (chaîne de caractères) ->> > ->> > **serial** ->> > ->> >> Liste le numéro d'identification du certificat SSL (chaîne de caractères) ->> > ->> > **type** ->> > ->> >> Type de certificat SSL (valeur) -> +**vrackNetworkId** ^*^ -#### Ajouter un nouvel objet SSL +L'identifiant du réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **certificate** * ->> > ->> >> Ajout du certificat SSL (chaîne de caractères) ->> > ->> > **chain** ->> > ->> >> Ajout du certificat SSL intermédiaire (chaîne de caractères) ->> > ->> > **key** * ->> > ->> >> Ajout de la clé privée (chaîne de caractères) -> +/// -#### Obtenir les détails d'un objet SSL +#### Supprimer un réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **id** * ->> > ->> >> L'identifiant de votre certificat SSL (nombre) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -#### Supprimer un objet SSL - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **id** * ->> > ->> >> L'identifiant de votre certificat SSL (nombre) -> +/// details | -### Tâches +
Paramètres :
-#### Lister les tâches en cours pour un service Load Balancer OVHcloud +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **action** * ->> > ->> >> Consultation des tâches disponibles (valeurs) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Obtenir les détails d'une tâche +**vrackNetworkId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **id** * ->> > ->> >> L'identifiant de votre tâche (nombre) -> +L'identifiant du réseau privé -### Contact +/// -#### Initier un changement de contact +#### Modifier la liste des fermes attachées à un réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **contactAdmin** ->> > ->> >> L'identifiant client OVHcloud à configurer pour le contact administrateur de ce service (chaîne de caractères) ->> > ->> > **contactBilling** ->> > ->> >> L'identifiant client OVHcloud à configurer pour le contact facturation de ce service (chaîne de caractères) ->> > ->> > **contactTech** ->> > ->> >> L'identifiant client OVHcloud à configurer pour le contact technique de ce service (chaîne de caractères) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > -> [!primary] -> -> Pour plus d'informations sur la gestion des contacts OVHcloud, consultez le guide « [Gérer les contacts de ses services](/pages/account_and_service_management/account_information/managing_contacts) ». -> +/// details | -### vRack +
Paramètres :
-#### Description des réseaux privés attachés au load balancer +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **subnet** ->> > ->> >> Permet de filtrer selon le réseau utilisé ->> > ->> > **vlan** ->> > ->> >> Permet de filtrer selon le vlan utilisé -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Ajouter un réseau privé dans le vRack +**vrackNetworkId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom que vous souhaitez attribuer au réseau (chaîne de caractères) ->> > ->> > **farmId** ->> > ->> >> Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé ->> > ->> > **natIp** ->> > ->> >> Un bloc d'IP réservé au load balancer pour joindre les serveurs ->> > ->> > **subnet** ->> > ->> >> Le bloc d'IP du réseau privé ->> > ->> > **vlan** ->> > ->> >> Vlan du réseau privé dans le vRack. 0 si le réseau privé n'est pas dans un vlan -> - -#### Récupérer, modifier ou supprimer un réseau privé - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **vrackNetworkId** * ->> > ->> >> L'identifiant du réseau privé -> +L'identifiant du réseau privé -#### Modifier la liste des fermes attachées à un réseau privé +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **vrackNetworkId** * ->> > ->> >> L'identifiant du réseau privé ->> > ->> > **farmId** * ->> > ->> >> Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé. La valeur "null" supprime le vrack network id de toutes les fermes où il était configuré. -> +Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé. La valeur "null" supprime le vrack network id de toutes les fermes où il était configuré. + +/// ## Aller plus loin Échangez avec notre [communauté d'utilisateurs](/links/community). + diff --git a/pages/network/load_balancer/use_api_details/guide.fr-fr.md b/pages/network/load_balancer/use_api_details/guide.fr-fr.md index 377e8cc63b6..64d5b1b170c 100644 --- a/pages/network/load_balancer/use_api_details/guide.fr-fr.md +++ b/pages/network/load_balancer/use_api_details/guide.fr-fr.md @@ -4,6 +4,237 @@ excerpt: "Détails des fonctionnalités de l’API OVHcloud pour l’offre OVHcl updated: 2025-09-29 --- + + + ## Objectif Ce guide fournit une description détaillée de toutes les fonctions de l'API pour le Load Balancer OVHcloud. @@ -31,7 +262,6 @@ Toutes les fonctions d'API qui sont utilisées dans la section */ipLoadbalancing > ## Services et zones - ### Load Balancer OVHcloud #### Lister les services actifs @@ -39,367 +269,331 @@ Toutes les fonctions d'API qui sont utilisées dans la section */ipLoadbalancing > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing -> +> #### Lister les zones disponibles pour le Load Balancer OVHcloud > [!api] > > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/availableZones -> +> #### Retourner les détails d'un service Load Balancer OVHcloud -> [!faq] -> -> API: +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} ->> > ->> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Modifier un service Load Balancer OVHcloud -> [!faq] -> -> API: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) ->> > ->> > **Ip** * ->> > ->> >> **displayName** ->> >> > ->> >> > Le nom que vous souhaitez attribuer au service (chaîne de caractères) ->> > ->> >> **sslConfiguration** ->> >> ->> >> > La configuration SSL que vous souhaitez attribuer au service (valeur) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +**Ip** ^*^ + +- **displayName** +Le nom que vous souhaitez attribuer au service (chaîne de caractères) + +- **sslConfiguration** +La configuration SSL que vous souhaitez attribuer au service (valeur) + +/// + #### Lister les services attachés au Load Balancer OVHcloud -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/allowedServers > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les fermes existantes et leur type -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) ->> > ->> > **vrackNetworkId** ->> > ->> >> Permet de filtrer selon le réseau vrack +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/definedFarms > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +**vrackNetworkId** + +Permet de filtrer selon le réseau vrack + +/// + #### Lister les zones pouvant être attachées à un service Load Balancer OVHcloud -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableServerZones > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différentes sondes pouvant être utilisées -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmProbes > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types de fermes pouvant être utilisées -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFarmType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types de frontends pouvant être utilisés -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableFrontendType > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types d'actions de routage pouvant etre utilisés -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteActions > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Lister les différents types de règles de routage pouvant être utilisés -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/availableRouteRules > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + ### Service #### Obtenir les informations du service -> [!faq] -> -> Service: -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Paramètres: +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/serviceInfos > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +/// + #### Modifier les informations du service -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) ->> > ->> > **Service** * ->> > ->> >> - **automatic** ->> >> > ->> >> > Active le renouvellement automatique du service (booléen)) ->> >> ->> >> - **deleteAtExpiration** ->> >> > ->> >> > Active la suppression du service lors de l'expiration (booléen) ->> >> ->> >> - **forced** ->> >> > ->> >> > Force le renouvellement automatique (booléen) ->> >> ->> >> - **period** ->> >> > ->> >> > Renseigne la durée de renouvellement (chaîne de caractères) +> [!api] > +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/serviceInfos +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex: IP-1.2.3.4 (chaîne de caractères) + +**Service** ^*^ + +- **automatic** +Active le renouvellement automatique du service (booléen)) + +- **deleteAtExpiration** +Active la suppression du service lors de l'expiration (booléen) + +- **forced** +Force le renouvellement automatique (booléen) + +- **period** +Renseigne la durée de renouvellement (chaîne de caractères) + +/// ### Zones #### Lister les zones actives pour un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, ex. : IP-1.2.3.4 (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, ex. : IP-1.2.3.4 (chaîne de caractères) + +/// + #### Obtenir les détails d'une zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **name** * ->> > ->> >> Le nom de la zone demandée +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/zone/{name} > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**name** ^*^ + +Le nom de la zone demandée + +/// + #### Supprimer une zone Le service sera supprimé à la date d'expiration. -> [!faq] -> -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **name** * ->> > ->> >> Le nom de la zone à supprimer +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/terminate > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**name** ^*^ + +Le nom de la zone à supprimer + +/// + #### Annuler la suppression d'une zone -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **name** * ->> > ->> >> Le nom de la zone a supprimer +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/zone/{name}/cancelTermination > +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**name** ^*^ + +Le nom de la zone a supprimer + +/// + ## Protocole HTTP Accéder aux éléments relatifs au protocole HTTP (frontend, ferme, etc.). @@ -408,2779 +602,2563 @@ Accéder aux éléments relatifs au protocole HTTP (frontend, ferme, etc.). #### Lister les fermes HTTP attachées à un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** ->> > ->> >> Le nom de la zone (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm > -#### Ajouter une nouvelle ferme HTTP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** * ->> > ->> >> Le nom de la zone (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> le nom que vous souhaitez attribuer à votre ferme (chaîne de caractères) ->> > ->> > **balance** ->> >> ->> >> La méthode de répartition de charge de votre ferme (valeur) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) ->> > ->> > **stickiness** ->> > ->> >> Le type de persistence de connexion à utiliser pour votre ferme (valeur) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser sur votre ferme (sonde HTTP) ->> >> > ->> >> > - **forceSsl** ->> >> > ->> >> >> L'activation du SSL est forcée pour la sonde (booléen) ->> >> > ->> >> > - **interval** ->> >> > ->> >> >> L'intervalle en secondes entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) ->> >> > ->> >> > - **match** ->> >> > ->> >> >> La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (value) [contains, default, internal, matches, status] ->> >> > ->> >> > - **negate** ->> >> > ->> >> >> Le comportement de l'opérateur 'match' est inversé (booléen) ->> >> > ->> >> > - **method** ->> >> > ->> >> >> La méthode HTTP utilisée en type 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) [HEAD, GET, OPTIONS, internal] ->> >> > ->> >> > - **pattern** ->> >> > ->> >> >> Le format de la réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) ->> >> > ->> >> > - **port** ->> >> > ->> >> >> Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> Le type de la sonde ; son fonctionnement (valeur) [HTTP, interne, MySQL, OCO, PgSQL, SMTP, TCP] ->> >> > ->> >> > - **url** ->> >> > ->> >> >> L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le type est ignoré si ce paramètre est défini (chaîne de caractères) -> +
Paramètres :
-#### Obtenir les détails d'une ferme HTTP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Modifier les propriétés d'une ferme HTTP +**zone** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) ->> > ->> > **BackendHttp** * ->> > ->> >> - **displayName** ->> >> > ->> >> > Le nom de la ferme (chaîne de caractères) ->> >> ->> >> - **balance** ->> >> > ->> >> > Le type de répartition de charge (valeur) ->> >> ->> >> - **port** ->> >> > ->> >> > Le port d'écoute de la ferme (nombre, 1..65000) ->> >> ->> >> - **probe** ->> >> > ->> >> > Le type de sonde à utiliser (sonde HTTP) ->> >> ->> >> - **stickiness** ->> >> > ->> >> > Le type de persistence de connexion (valeur) -> +Le nom de la zone (chaîne de caractères) -#### Supprimer une ferme HTTP +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} ->> > ->> -> -> Paramètres : +#### Ajouter une nouvelle ferme HTTP à un service Load Balancer OVHcloud + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm > -### Serveurs HTTP +/// details | -#### Lister les serveurs liés à la ferme HTTP +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme HTTP (nombre) ->> > ->> > **cookie** ->> > ->> >> Filtrer les valeurs par cookie (chaîne de caractères) ->> > ->> > **address** ->> > ->> >> Filtrer les valeurs par adresse IPv4 (IPv4) ->> > ->> > **status** ->> > ->> >> Filtrer les valeurs par statut du serveur (valeur) -> +**serviceName** ^*^ -#### Ajouter un serveur à une ferme HTTP +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** * ->> > ->> >> L'adresse IPv4 de votre serveur (IPv4) ->> > ->> > **backup** ->> > ->> >> Si votre serveur est configuré comme serveur de secours (booléen) ->> > ->> > **chain** ->> > ->> >> La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> > ->> > **cookie** ->> > ->> >> La valeur de votre cookie (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom donné à votre serveur (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser (valeur) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> La version de proxyProtocol à utiliser, ->> >> voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) ->> > ->> > **ssl** * ->> > ->> >> Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> > ->> > **weight** * ->> > ->> >> Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) ->> > ->> > **status** * ->> > ->> >> Si votre serveur est activé ou non (booléen) -> +**zone** ^*^ -#### Obtenir les détails d'un serveur lié à une ferme HTTP +Le nom de la zone (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +**displayName** -#### Modifier les propriétés d'un serveur HTTP +le nom que vous souhaitez attribuer à votre ferme (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre server-link (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendHttpServer** * ->> > ->> >> - **backup** ->> >> > ->> >> > Si votre serveur est configuré comme serveur de secours (booléen) ->> >> ->> >> - **chain** ->> >> > ->> >> > La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> >> ->> >> - **cookie** ->> >> > ->> >> > La valeur de votre cookie (chaîne de caractères) ->> >> ->> >> - **displayName** ->> >> > ->> >> > Le nom de votre serveur (chaîne de caractères) ->> >> ->> >> - **port** ->> >> > ->> >> > Le port d'écoute de votre serveur (nombre, 1..65535) ->> >> ->> >> - **probe** ->> >> > ->> >> > Le type de sonde à utiliser (valeur) ->> >> ->> >> - **proxyProtocolVersion** ->> >> > ->> >> > La version de proxyProtocol à utiliser, ->> >> > voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> >> ->> >> - **status** ->> >> > ->> >> > Si votre serveur est activé ou non (booléen) ->> >> ->> >> - **weight** ->> >> > ->> >> > Le poids de votre serveur pour votre ferme (nombre) -> +**balance** -#### Supprimer un serveur d'une ferme HTTP +La méthode de répartition de charge de votre ferme (valeur) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +**port** -### Frontends HTTP +Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) -#### Lister les frontends HTTP attachés à un service Load Balancer OVHcloud +**stickiness** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme HTTP à laquelle le frontend HTTP est lié (nombre) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, par exemple: all (chaîne de caractères) -> +Le type de persistence de connexion à utiliser pour votre ferme (valeur) -#### Ajouter un frontend HTTP à un service Load Balancer OVHcloud +**probe** -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **allowedSource** ->> > ->> >> La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) ->> >> ->> >> NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet ->> > ->> > **dedicatedIpfo** ->> > ->> >> La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme HTTP par défaut pour votre frontend (nombre) ->> > ->> > **defaultSslId** ->> > ->> >> L'identifiant du certificat SSL par défaut (nombre) ->> > ->> > **disabled** ->> > ->> >> Si votre frontend HTTP est désactivé ou activé (booléen) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre frontend HTTP (chaîne de caractères) ->> > ->> > **hsts** ->> > ->> >> Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) ->> > ->> > **httpHeader** ->> > ->> >> L'entête *http* personnalisé à ajouter (chaîne de caractères) ->> > ->> > **port** * ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **redirectLocation** ->> > ->> >> L'URL de redirection *http* (chaîne de caractères) ->> > ->> > **ssl** ->> > ->> >> Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +Le type de sonde à utiliser sur votre ferme (sonde HTTP) -### Obtenir les détails d'un frontend HTTP +- **forceSsl** +L'activation du SSL est forcée pour la sonde (booléen) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend HTTP (nombre) -> +- **interval** +L'intervalle en secondes entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) -#### Modifier les propriétés d'un frontend HTTP +- **match** +La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (value) [contains, default, internal, matches, status] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend HTTP (nombre) ->> > ->> > **FrontendHttp** * ->> > ->> >> - **allowedSource** ->> >> > ->> >> > La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4[]) ->> >> > ->> >> > NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet ->> >> ->> >> - **dedicatedIpfo** ->> >> > ->> >> > La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> > ->> >> > L'identifiant du certificat SSL par défaut (nombre) ->> >> ->> >> - **disabled** ->> >> > ->> >> > Si votre frontend HTTP est désactivé ou activé (booléen) ->> >> ->> >> - **displayName** ->> >> > ->> >> > Le nom de votre frontend HTTP (chaîne de caractères) ->> >> ->> >> - **hsts** ->> >> > ->> >> > Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) ->> >> ->> >> - **httpHeader** ->> >> > ->> >> > L'en-tête *http* personnalisé à ajouter (chaîne de caractères) ->> >> ->> >> - **ssl** ->> >> > ->> >> > Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) -> +- **negate** +Le comportement de l'opérateur 'match' est inversé (booléen) -#### Supprimer un frontend HTTP +- **method** +La méthode HTTP utilisée en type 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) [HEAD, GET, OPTIONS, internal] -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend (nombre) -> +- **pattern** +Le format de la réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) -### Routes HTTP +- **port** +Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) -Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. +- **type** +Le type de la sonde ; son fonctionnement (valeur) [HTTP, interne, MySQL, OCO, PgSQL, SMTP, TCP] -#### Lister les routes HTTP attachées à un service Load Balancer +- **url** +L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le type est ignoré si ce paramètre est défini (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Paramètres : +/// + +#### Obtenir les détails d'une ferme HTTP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant d'un frontend HTTP (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -#### Ajouter une nouvelle route HTTP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **action** * ->> > ->> >> L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) ->> >> ->> >> - **status** ->> >> ->> >> > Le code de retour HTTP attendu (nombre) ->> >> ->> >> - **target** ->> >> ->> >> > L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> ->> >> - **type** ->> >> ->> >> > L'action de votre route (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre route (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) ->> > ->> > **weight** ->> > ->> >> La priorité de votre route. (nombre) [0 - 255] -> +
Paramètres :
-#### Obtenir les détails d'une route HTTP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Modifier les propriétés d'une route HTTP +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) ->> > ->> > **routeHttp** * ->> > ->> >> **action** * ->> >> ->> >> > L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) ->> >> > ->> >> > - **status** ->> >> > ->> >> >> Le code de retour HTTP attendu (nombre) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> L'action de votre route (chaîne de caractères) ->> >> ->> >> **displayName** ->> >> ->> >> > Le nom de votre route (chaîne de caractères) ->> >> ->> >> **frontendId** ->> >> ->> >> > L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) ->> >> ->> >> **weight** ->> >> ->> >> > La priorité de votre route. (nombre) [0 - 255] -> +L'identifiant de votre ferme HTTP (nombre) -#### Supprimer une route HTTP +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} ->> > ->> -> -> Paramètres : +#### Modifier les propriétés d'une ferme HTTP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId} > -### Règles de routage +/// details | -#### Lister les règles de routages attachées à une route HTTP +
Paramètres :
-> [!faq] +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme HTTP (nombre) + +**BackendHttp** ^*^ + +- **displayName** +Le nom de la ferme (chaîne de caractères) + +- **balance** +Le type de répartition de charge (valeur) + +- **port** +Le port d'écoute de la ferme (nombre, 1..65000) + +- **probe** +Le type de sonde à utiliser (sonde HTTP) + +- **stickiness** +Le type de persistence de connexion (valeur) + +/// + +#### Supprimer une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme HTTP (nombre) + +/// + +### Serveurs HTTP + +#### Lister les serveurs liés à la ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme HTTP (nombre) + +**cookie** + +Filtrer les valeurs par cookie (chaîne de caractères) + +**address** + +Filtrer les valeurs par adresse IPv4 (IPv4) + +**status** + +Filtrer les valeurs par statut du serveur (valeur) + +/// + +#### Ajouter un serveur à une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** ^*^ + +L'adresse IPv4 de votre serveur (IPv4) + +**backup** + +Si votre serveur est configuré comme serveur de secours (booléen) + +**chain** + +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +**cookie** + +La valeur de votre cookie (chaîne de caractères) + +**displayName** + +Le nom donné à votre serveur (chaîne de caractères) + +**port** + +Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) + +**probe** + +Le type de sonde à utiliser (valeur) + +**proxyProtocolVersion** + +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) + +**ssl** ^*^ + +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +**weight** ^*^ + +Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) + +**status** ^*^ + +Si votre serveur est activé ou non (booléen) + +/// + +#### Obtenir les détails d'un serveur lié à une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'un serveur HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre server-link (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendHttpServer** ^*^ + +- **backup** +Si votre serveur est configuré comme serveur de secours (booléen) + +- **chain** +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +- **cookie** +La valeur de votre cookie (chaîne de caractères) + +- **displayName** +Le nom de votre serveur (chaîne de caractères) + +- **port** +Le port d'écoute de votre serveur (nombre, 1..65535) + +- **probe** +Le type de sonde à utiliser (valeur) + +- **proxyProtocolVersion** +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) + +- **ssl** +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +- **status** +Si votre serveur est activé ou non (booléen) + +- **weight** +Le poids de votre serveur pour votre ferme (nombre) + +/// + +#### Supprimer un serveur d'une ferme HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Frontends HTTP + +#### Lister les frontends HTTP attachés à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**defaultFarmId** + +L'identifiant de la ferme HTTP à laquelle le frontend HTTP est lié (nombre) + +**port** + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** + +Le nom de votre zone, par exemple: all (chaîne de caractères) + +/// + +#### Ajouter un frontend HTTP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**allowedSource** + +La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) + +NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet + +**dedicatedIpfo** + +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +**defaultFarmId** + +L'identifiant de la ferme HTTP par défaut pour votre frontend (nombre) + +**defaultSslId** + +L'identifiant du certificat SSL par défaut (nombre) + +**disabled** + +Si votre frontend HTTP est désactivé ou activé (booléen) + +**displayName** + +Le nom de votre frontend HTTP (chaîne de caractères) + +**hsts** + +Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) + +**httpHeader** + +L'entête *http* personnalisé à ajouter (chaîne de caractères) + +**port** ^*^ + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**redirectLocation** + +L'URL de redirection *http* (chaîne de caractères) + +**ssl** + +Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +### Obtenir les détails d'un frontend HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend HTTP (nombre) + +/// + +#### Modifier les propriétés d'un frontend HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend HTTP (nombre) + +**FrontendHttp** ^*^ + +- **allowedSource** +La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4[]) + +NB: le filtrage s'effectue au niveau du Load Balancer, donc si le Load Balancer ainsi que les serveurs ne sont pas dans un vRack, vos serveurs sont directement accessibles depuis Internet + +- **dedicatedIpfo** +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +- **defaultSslId** +L'identifiant du certificat SSL par défaut (nombre) + +- **disabled** +Si votre frontend HTTP est désactivé ou activé (booléen) + +- **displayName** +Le nom de votre frontend HTTP (chaîne de caractères) + +- **hsts** +Si le support du *https strict, HTTP Strict Transport Security* est activé ou désactivé (booléen) + +- **httpHeader** +L'en-tête *http* personnalisé à ajouter (chaîne de caractères) + +- **ssl** +Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) + +/// + +#### Supprimer un frontend HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend (nombre) + +/// + +### Routes HTTP + +Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. + +#### Lister les routes HTTP attachées à un service Load Balancer + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** + +L'identifiant d'un frontend HTTP (nombre) + +/// + +#### Ajouter une nouvelle route HTTP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**action** ^*^ + +L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) + +- **status** +Le code de retour HTTP attendu (nombre) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +**displayName** + +Le nom de votre route (chaîne de caractères) + +**frontendId** + +L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) + +**weight** + +La priorité de votre route. (nombre) [0 - 255] +/// + +#### Obtenir les détails d'une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +#### Modifier les propriétés d'une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +**routeHttp** ^*^ + +- **action** ^*^ +L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) + +- **status** +Le code de retour HTTP attendu (nombre) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +- **displayName** +Le nom de votre route (chaîne de caractères) + +- **frontendId** +L'identifiant du frontend HTTP pour lequel votre route est appliquée (nombre) + +- **weight** +La priorité de votre route. (nombre) [0 - 255] +/// + +#### Supprimer une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +### Règles de routage + +#### Lister les règles de routages attachées à une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +/// + +#### Ajouter les règles de routages attachées à une route HTTP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**field** ^*^ + +Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) + +**match** ^*^ + +L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +Le comportement de l'opérateur :code:`match` est inversé (booléen) + +**pattern** + +Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) + +**subField** + +Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) + +/// + +#### Obtenir les détails d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +#### Modifier les propriétés d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +**RouteRule** ^*^ + +- **field** +Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) + +- **match** +L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +Si l'opérateur "match" est inversé ou non (booléen) + +- **pattern** +La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) + +- **subField** +Le nom du sous-champ si applicable (chaîne de caractères) + +/// + +#### Supprimer une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route HTTP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +## Protocole TCP + +Accéder aux éléments relatifs au protocole TCP (frontend, ferme, etc.). + +### Fermes TCP + +#### Lister les fermes TCP attachées à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**zone** + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Ajouter une nouvelle ferme TCP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**balance** + +La méthode de répartition de charge de votre ferme (valeur) + +**displayName** + +Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) + +**port** + +Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) + +**probe** + +Le type de sonde à utiliser sur votre ferme (sonde HTTP) + +- **forceSsl** +L'activation du SSL est forcée pour la sonde (booléen) + +- **interval** +L'intervalle (en secondes) entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) + +- **match** +La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (valeur) (contains, default, internal, matches, status) + +- **negate** +Le comportement de l'opérateur :code:`match` est inversé (booléen) + +- **method** +La méthode HTTP utilisée en :code:`type` 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) (HEAD, GET, OPTIONS, internal) + +- **pattern** +réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) + +- **port** +Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) + +- **type** +Le type de la sonde ; son fonctionnement (valeur) (HTTP, interne, MySQL, OCO, PgSQL, SMTP ou TCP) + +- **url** +L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le :code:`type` est ignoré si ce paramètre est défini (chaîne de caractères) + +**stickiness** + +Le type de persistence de connexion à utiliser pour votre ferme (valeur) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Obtenir les détails d'une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendTcp** ^*^ + +- **balance** +Le type de répartition de charge (valeur) + +- **displayName** +Le nom de la ferme (chaîne de caractères) + +- **port** +Le port d'écoute de la ferme (nombre, 1..65000) + +- **probe** +Le type de sonde à utiliser (sonde TCP) + +- **stickiness** +Le type de persistence de connexion (valeur) + +/// + +#### Supprimer une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Serveurs TCP + +#### Lister les serveurs liés à la ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**cookie** + +Filtrer les valeurs par cookie (chaîne de caractères) + +**address** + +Filtrer les valeurs par adresse IPv4 (IPv4) + +**status** + +Filtrer les valeurs par statut du serveur (valeur) + +/// + +#### Ajouter un serveur à une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** ^*^ + +L'adresse IPv4 de votre serveur (IPv4) + +**backup** + +Si votre serveur est configuré comme serveur de secours (booléen) + +**chain** + +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +**displayName** + +Le nom donné à votre serveur (chaîne de caractères) + +**port** + +Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) + +**probe** + +Le type de sonde à utiliser (valeur) + +**proxyProtocolVersion** + +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) + +**ssl** ^*^ + +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +**weight** ^*^ + +Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) + +**status** ^*^ + +Si votre serveur est activé ou non (booléen) + +/// + +#### Obtenir les détails d'un serveur lié à une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'un serveur TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre server-link (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendTcpServer** ^*^ + +- **backup** +Si votre serveur est configuré comme serveur de secours (booléen) + +- **chain** +La valeur du certificat SSL intermédiaire (chaîne de caractères) + +- **displayName** +Le nom de votre serveur (chaîne de caractères) + +- **port** +Le port d'écoute de votre serveur (nombre, 1..65535) + +- **probe** +Le type de sonde à utiliser (valeur) + +- **proxyProtocolVersion** +La version de proxyProtocol à utiliser, + +voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Valeur ) + +- **ssl** +Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) + +- **status** +Si votre serveur est activé ou non (booléen) + +- **weight** +Le poids de votre serveur pour votre ferme (nombre) + +/// + +#### Supprimer un serveur d'une ferme TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Frontends TCP + +#### Lister les frontends TCP attachés à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**defaultFarmId** + +L'identifiant de la ferme TCP à laquelle le frontend TCP est lié (nombre) + +**port** + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Ajouter un frontend TCP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**allowedSource** + +La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) + +**dedicatedIpfo** + +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +**defaultFarmId** + +L'identifiant de la ferme TCP par défaut pour votre frontend (nombre) + +**defaultSslId** + +L'identifiant du certificat SSL par défaut (nombre) + +**disabled** + +Si votre frontend TCP est désactivé ou activé (booléen) + +**displayName** + +Le nom de votre frontend TCP (chaîne de caractères) + +**port** ^*^ + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**ssl** + +Si les requêtes envoyées à la ferme TCP doivent être chiffrées avec SSL ou non (booléen) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Obtenir les détails d'un frontend TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend TCP (nombre) + +/// + +#### Modifier les propriétés d'un frontend TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend TCP (nombre) + +**FrontendTcp** ^*^ + +- **allowedSource** +La liste des adresses IP clientes qui ont accès au Load Balancer (IPv4[]) + +- **dedicatedIpfo** +La liste des adresses IP des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +- **defaultSslId** +L'identifiant du certificat SSL par défaut (nombre) + +- **disabled** +Si votre frontend HTTP est désactivé ou activé (booléen) + +- **displayName** +Le nom de votre frontend HTTP (chaîne de caractères) + +- **ssl** +Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) + +/// + +#### Supprimer un frontend TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend (nombre) + +/// + +### Routes TCP + +Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. + +#### Lister les routes TCP attachées à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** + +L'identifiant d'un frontend TCP (nombre) + +/// + +#### Ajouter une nouvelle route TCP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**action** ^*^ + +L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +**displayName** + +Le nom de votre route (chaîne de caractères) + +**frontendId** + +L'identifiant du frontend TCP pour lequel votre route est appliquée (nombre) + +**weight** + +La priorité de votre route. (nombre) [0 - 255] +/// + +#### Obtenir les détails d'une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +#### Modifier les propriétés d'une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +**routeTcp** ^*^ + +- **action** +L'action à réaliser (routeTcpAction) + +- **target** +L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) + +- **type** +L'action de votre route (chaîne de caractères) + +- **displayName** +Le nom de votre route (chaîne de caractères) + +- **frontendId** +Le frontend TCP pour lequel votre route est appliquée (nombre) + +- **weight** +La priorité de votre route (nombre) [0 - 255] +/// + +#### Supprimer une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route (nombre) + +/// + +### Règles de routage + +#### Lister les règles de routages attachées à une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +/// + +#### Ajouter les règles de routages attachées à une route TCP + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**field** ^*^ + +Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) + +**match** ^*^ + +L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) + +**negate** + +Le comportement de l'opérateur :code:`match` est inversé (booléen) + +**pattern** + +Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) + +**subField** + +Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) + +/// + +#### Obtenir les détails d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +#### Modifier les propriétés d'une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +**RouteRule** ^*^ + +- **field** +Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) + +- **match** +L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) + +- **negate** +Si l'opérateur "match" est inversé ou non (booléen) + +- **pattern** +La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) + +- **subField** +Le nom du sous-champ si applicable (chaîne de caractères) + +/// + +#### Supprimer une règle de routage + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**routeId** ^*^ + +L'identifiant de votre route TCP (nombre) + +**ruleId** ^*^ + +L'identifiant de votre règle de routage HTTP (nombre) + +/// + +## Protocole UDP + +Accéder aux éléments relatifs au protocole UDP (frontend, ferme, etc.). + +### Fermes UDP + +#### Lister les fermes UDP attachées à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**zone** + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Ajouter une nouvelle ferme UDP à un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**displayName** + +Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) + +**port** + +Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) + +**zone** ^*^ + +Le nom de votre zone, par exemple : all (chaîne de caractères) + +/// + +#### Obtenir les détails d'une ferme UDP + +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'une ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendUdp** ^*^ + +- **displayName** +Le nom de la ferme (chaîne de caractères) + +- **port** +Le port d'écoute de la ferme (nombre, 1..65000) + +/// + +#### Supprimer une ferme UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} > -#### Ajouter les règles de routages attachées à une route HTTP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **field** * ->> > ->> >> Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) ->> > ->> > **match** * ->> > ->> >> L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> Le comportement de l'opérateur :code:`match` est inversé (booléen) ->> > ->> > **pattern** ->> > ->> >> Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) ->> > ->> > **subField** ->> > ->> >> Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) -> +
Paramètres :
-#### Obtenir les détails d'une règle de routage +**serviceName** ^*^ -> [!faq] -> -> Service : +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +### Serveurs UDP + +#### Lister les serveurs liés à la ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** + +Filtrer les valeurs par adresse IPv4 (IPv4) + +**status** + +Filtrer les valeurs par statut du serveur (valeur) + +/// + +#### Ajouter un serveur à une ferme UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server > -#### Modifier les propriétés d'une règle de routage +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) ->> >> ->> >> - **match** ->> >> ->> >> > L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > Si l'opérateur "match" est inversé ou non (booléen) ->> >> ->> >> - **pattern** ->> >> ->> >> > La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) ->> >> ->> >> - **subField** ->> >> ->> >> > Le nom du sous-champ si applicable (chaîne de caractères) -> +
Paramètres :
-#### Supprimer une règle de routage +**serviceName** ^*^ -> [!faq] -> -> Service : +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**address** ^*^ + +L'adresse IPv4 de votre serveur (IPv4) + +**displayName** + +Le nom donné à votre serveur (chaîne de caractères) + +**port** + +Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) + +**status** ^*^ + +Si votre serveur est activé ou non (booléen) + +/// + +#### Obtenir les détails d'un serveur lié à une ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/http/route/{routeId}/rule/{ruleId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +/// + +#### Modifier les propriétés d'un serveur UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route HTTP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -## Protocole TCP +/// details | -Accéder aux éléments relatifs au protocole TCP (frontend, ferme, etc.). +
Paramètres :
-### Fermes TCP +**serviceName** ^*^ -#### Lister les fermes TCP attachées à un service Load Balancer OVHcloud +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : +**serverId** ^*^ + +L'identifiant de votre serveur (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme (nombre) + +**BackendUdpServer** ^*^ + +- **displayName** +Le nom de votre serveur (chaîne de caractères) + +- **port** +Le port d'écoute de votre serveur (nombre, 1..65535) + +- **status** +Si votre serveur est activé ou non (booléen) + +/// + +#### Supprimer un serveur d'une ferme UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**serverId** ^*^ + +L'identifiant de votre serveur UDP (nombre) + +**farmId** ^*^ + +L'identifiant de votre ferme UDP (nombre) + +/// + +### Frontends UDP + +#### Lister les frontends UDP attachés à un service Load Balancer OVHcloud + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend > -#### Ajouter une nouvelle ferme TCP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **balance** ->> > ->> >> La méthode de répartition de charge de votre ferme (valeur) ->> > ->> > **displayName** ->> > ->> >> Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser sur votre ferme (sonde HTTP) ->> >> ->> >> - **forceSsl** ->> >> ->> >> > L'activation du SSL est forcée pour la sonde (booléen) ->> >> ->> >> - **interval** ->> >> ->> >> > L'intervalle (en secondes) entre chaque test de la sonde. Doit être supérieur à 30. 30 par défaut (nombre) ->> >> ->> >> - **match** ->> >> ->> >> > La méthode de correspondance utilisée. 'default' utilise le comportement standard de HAProxy. 'status' n'est supporté que pour les sondes HTTP (valeur) (contains, default, internal, matches, status) ->> >> ->> >> - **negate** ->> >> ->> >> > Le comportement de l'opérateur :code:`match` est inversé (booléen) ->> >> ->> >> - **method** ->> >> ->> >> > La méthode HTTP utilisée en :code:`type` 'http'. 'HEAD' peut économiser de la bande passante. 'GET' par défaut (valeur) (HEAD, GET, OPTIONS, internal) ->> >> ->> >> - **pattern** ->> >> ->> >> > réponse du serveur quand "UP". Vide pour 'default', liste de statuts séparés par des virgules pour 'status', texte pour 'contains', expression régulière pour 'matches' (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port que la sonde doit utiliser pour tester les serveurs attachés à votre ferme. Ignoré pour les sondes 'oco'. Si non-défini, le port de la ferme est utilisé (nombre) ->> >> ->> >> - **type** ->> >> ->> >> > Le type de la sonde ; son fonctionnement (valeur) (HTTP, interne, MySQL, OCO, PgSQL, SMTP ou TCP) ->> >> ->> >> - **url** ->> >> ->> >> > L'adresse à utiliser par la sonde pour les sondes de type HTTP. Le :code:`type` est ignoré si ce paramètre est défini (chaîne de caractères) ->> >> ->> > **stickiness** ->> > ->> >> Le type de persistence de connexion à utiliser pour votre ferme (valeur) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +
Paramètres :
-#### Obtenir les détails d'une ferme TCP +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**defaultFarmId** + +L'identifiant de la ferme UDP à laquelle le frontend UDP est lié (nombre) + +**port** + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** + +Le nom de votre zone, par exemple : all (chaîne de caractères) -> [!faq] +/// + +#### Ajouter un frontend UDP à un service Load Balancer OVHcloud + +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**dedicatedIpfo** + +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +**defaultFarmId** ^*^ + +L'identifiant de la ferme UDP par défaut pour votre frontend (nombre) + +**disabled** + +Si votre frontend UDP est désactivé ou activé (booléen) + +**displayName** + +Le nom de votre frontend UDP (chaîne de caractères) + +**port** ^*^ + +Le port d'écoute de votre frontend (nombre, 1..65535) + +**zone** ^*^ + +Le nom de votre zone, ex: all (chaîne de caractères) + +/// + +#### Obtenir les détails d'un frontend UDP + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend UDP (nombre) + +/// + +#### Modifier les propriétés d'un frontend UDP + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Modifier les propriétés d'une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendTcp** * ->> > ->> >> - **balance** ->> >> ->> >> > Le type de répartition de charge (valeur) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de la ferme (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de la ferme (nombre, 1..65000) ->> >> ->> >> - **probe** ->> >> ->> >> > Le type de sonde à utiliser (sonde TCP) ->> >> ->> >> - **stickiness** ->> >> ->> >> > Le type de persistence de connexion (valeur) +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**frontendId** ^*^ + +L'identifiant de votre frontend UDP (nombre) + +**FrontendUdp** ^*^ + +- **dedicatedIpfo** +La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) + +- **disabled** +Si votre frontend UDP est désactivé ou activé (booléen) + +- **displayName** +Le nom de votre frontend UDP (chaîne de caractères) + +/// + +#### Supprimer un frontend UDP + +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} > -#### Supprimer une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] +**frontendId** ^*^ + +L'identifiant de votre frontend UDP (nombre) + +/// + +## Autres fonctionnalités + +### Additional IP + +#### Lister les Additional IPs routées sur un service Load Balancer OVHcloud + +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover +> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// + +### État du service + +#### Obtenir l'état des instances d'un service Load Balancer OVHcloud + +> [!api] > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId} ->> > ->> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState > -> Paramètres : + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// + +#### Lister les IPs de sortie utilisées par OVHcloud pour le NAT + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp > -### Serveurs TCP +/// details | -#### Lister les serveurs liés à la ferme TCP +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **cookie** ->> > ->> >> Filtrer les valeurs par cookie (chaîne de caractères) ->> > ->> > **address** ->> > ->> >> Filtrer les valeurs par adresse IPv4 (IPv4) ->> > ->> > **status** ->> > ->> >> Filtrer les valeurs par statut du serveur (valeur) +#### Appliquer les modifications d'un service Load Balancer OVHcloud + +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh > -#### Ajouter un serveur à une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +/// + +### Certificats SSL + +#### Lister les certificats SSL d'un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** * ->> > ->> >> L'adresse IPv4 de votre serveur (IPv4) ->> > ->> > **backup** ->> > ->> >> Si votre serveur est configuré comme serveur de secours (booléen) ->> > ->> > **chain** ->> > ->> >> La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom donné à votre serveur (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) ->> > ->> > **probe** ->> > ->> >> Le type de sonde à utiliser (valeur) ->> > ->> > **proxyProtocolVersion** ->> > ->> >> La version de proxyProtocol à utiliser, ->> >> voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (valeur) ->> > ->> > **ssl** * ->> > ->> >> Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> > ->> > **weight** * ->> > ->> >> Le poids de votre serveur pour votre ferme. Un serveur à poids élevé reçoit plus de requêtes (nombre) ->> > ->> > **status** * ->> > ->> >> Si votre serveur est activé ou non (booléen) +> [!api] +> +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl > -#### Obtenir les détails d'un serveur lié à une ferme TCP +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**fingerprint** + +Liste l'empreinte du certificat SSL (chaîne de caractères) + +**serial** + +Liste le numéro d'identification du certificat SSL (chaîne de caractères) + +**type** + +Type de certificat SSL (valeur) + +/// + +#### Ajouter un nouvel objet SSL -> [!faq] +> [!api] > -> Service : +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl > ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> + +/// details | + +
Paramètres :
+ +**serviceName** ^*^ + +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) + +**certificate** ^*^ + +Ajout du certificat SSL (chaîne de caractères) + +**chain** + +Ajout du certificat SSL intermédiaire (chaîne de caractères) + +**key** ^*^ + +Ajout de la clé privée (chaîne de caractères) + +/// + +#### Obtenir les détails d'un objet SSL + +> [!api] > -> Paramètres : +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> > -#### Modifier les propriétés d'un serveur TCP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre server-link (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendTcpServer** * ->> > ->> >> - **backup** ->> >> ->> >> > Si votre serveur est configuré comme serveur de secours (booléen) ->> >> ->> >> - **chain** ->> >> ->> >> > La valeur du certificat SSL intermédiaire (chaîne de caractères) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre serveur (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de votre serveur (nombre, 1..65535) ->> >> ->> >> - **probe** ->> >> ->> >> > Le type de sonde à utiliser (valeur) ->> >> ->> >> - **proxyProtocolVersion** ->> >> ->> >> > La version de proxyProtocol à utiliser, ->> >> > voir http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt (Valeur >> ) ->> >> ->> >> - **ssl** ->> >> ->> >> > Si les requêtes envoyées à vos serveurs doivent être chiffrées avec SSL (booléen) ->> >> ->> >> - **status** ->> >> ->> >> > Si votre serveur est activé ou non (booléen) ->> >> ->> >> - **weight** ->> >> ->> >> > Le poids de votre serveur pour votre ferme (nombre) -> +
Paramètres :
-#### Supprimer un serveur d'une ferme TCP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### Frontends TCP +**id** ^*^ -#### Lister les frontends TCP attachés à un service Load Balancer OVHcloud +L'identifiant de votre certificat SSL (nombre) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme TCP à laquelle le frontend TCP est lié (nombre) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +/// -#### Ajouter un frontend TCP à un service Load Balancer OVHcloud +#### Supprimer un objet SSL -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **allowedSource** ->> > ->> >> La liste des adresses IPs clientes qui ont accès au Load Balancer (IPv4) ->> > ->> > **dedicatedIpfo** ->> > ->> >> La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme TCP par défaut pour votre frontend (nombre) ->> > ->> > **defaultSslId** ->> > ->> >> L'identifiant du certificat SSL par défaut (nombre) ->> > ->> > **disabled** ->> > ->> >> Si votre frontend TCP est désactivé ou activé (booléen) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre frontend TCP (chaîne de caractères) ->> > ->> > **port** * ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **ssl** ->> > ->> >> Si les requêtes envoyées à la ferme TCP doivent être chiffrées avec SSL ou non (booléen) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) +> [!api] +> +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} > -#### Obtenir les détails d'un frontend TCP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> >> ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> >> ->> >> L'identifiant de votre frontend TCP (nombre) ->> +
Paramètres :
-#### Modifier les propriétés d'un frontend TCP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend TCP (nombre) ->> > ->> > **FrontendTcp** * ->> > ->> >> - **allowedSource** ->> >> ->> >> > La liste des adresses IP clientes qui ont accès au Load Balancer (IPv4[]) ->> >> ->> >> - **dedicatedIpfo** ->> >> ->> >> > La liste des adresses IP des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> >> ->> >> - **defaultSslId** ->> >> ->> >> > L'identifiant du certificat SSL par défaut (nombre) ->> >> ->> >> - **disabled** ->> >> ->> >> > Si votre frontend HTTP est désactivé ou activé (booléen) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre frontend HTTP (chaîne de caractères) ->> >> ->> >> - **ssl** ->> >> ->> >> > Si les requêtes envoyées à la ferme HTTP doivent être chiffrées avec SSL ou non (booléen) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Supprimer un frontend TCP +**id** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend (nombre) -> +L'identifiant de votre certificat SSL (nombre) -### Routes TCP +/// -Les routes sont évaluées une par une, en testant leurs règles de routage. La première route validant toutes ses règles voit son action exécutée, et arrête l'évaluation des routes restantes. L'ordre d'exécution est défini par le type et le poids de la route. +### Tâches -#### Lister les routes TCP attachées à un service Load Balancer OVHcloud +#### Lister les tâches en cours pour un service Load Balancer OVHcloud -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant d'un frontend TCP (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task > -#### Ajouter une nouvelle route TCP à un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **action** * ->> > ->> >> L'action déclenchée quand toutes les règles de votre route sont validées (RouteHttpAction) ->> >> ->> >> - **target** ->> >> ->> >> > L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> ->> >> - **type** ->> >> ->> >> > L'action de votre route (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre route (chaîne de caractères) ->> > ->> > **frontendId** ->> > ->> >> L'identifiant du frontend TCP pour lequel votre route est appliquée (nombre) ->> > ->> > **weight** ->> > ->> >> La priorité de votre route. (nombre) [0 - 255] -> +
Paramètres :
-#### Obtenir les détails d'une route TCP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Modifier les propriétés d'une route TCP +**action** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) ->> > ->> > **routeTcp** * ->> > ->> >> - **action** ->> >> ->> >> > L'action à réaliser (routeTcpAction) ->> >> > ->> >> > - **target** ->> >> > ->> >> >> L'identifiant de la ferme, ou le modèle pour l'URL (chaîne de caractères) ->> >> > ->> >> > - **type** ->> >> > ->> >> >> L'action de votre route (chaîne de caractères) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre route (chaîne de caractères) ->> >> ->> >> - **frontendId** ->> >> ->> >> > Le frontend TCP pour lequel votre route est appliquée (nombre) ->> >> ->> >> - **weight** ->> >> ->> >> > La priorité de votre route (nombre) [0 - 255] -> +Consultation des tâches disponibles (valeurs) -#### Supprimer une route TCP +/// -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId} ->> > ->> -> -> Paramètres : +#### Obtenir les détails d'une tâche + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} > -### Règles de routage +/// details | -#### Lister les règles de routages attachées à une route TCP +
Paramètres :
-> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) -> +**serviceName** ^*^ -#### Ajouter les règles de routages attachées à une route TCP +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **field** * ->> > ->> >> Le nom du champ à tester avec l'opérateur "match" (chaîne de caractères) ->> > ->> > **match** * ->> > ->> >> L'opérateur de comparaison (valeur) (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> > ->> > **negate** ->> > ->> >> Le comportement de l'opérateur :code:`match` est inversé (booléen) ->> > ->> > **pattern** ->> > ->> >> Le schéma ou l'expression régulière utilisée par l'opérateur "match" (Regex / Chaîne de caractères) ->> > ->> > **subField** ->> > ->> >> Le nom du sous-champ, si applicable. Peut être un cookie ou un nom d'en-tête, par exemple (chaîne de caractères) -> +**id** ^*^ -#### Obtenir les détails d'une règle de routage +L'identifiant de votre tâche (nombre) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : +/// + +### Contact + +#### Initier un changement de contact + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact > -#### Modifier les propriétés d'une règle de routage +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) ->> > ->> > **RouteRule** * ->> > ->> >> - **field** ->> >> ->> >> > Le nom du champ à tester via l'opérateur "match" (chaîne de caractères) ->> >> ->> >> - **match** ->> >> ->> >> > L'opérateur de comparaison à utiliser (contains, endsWith, exists, in, internal, is, matches, startsWith) ->> >> ->> >> - **negate** ->> >> ->> >> > Si l'opérateur "match" est inversé ou non (booléen) ->> >> ->> >> - **pattern** ->> >> ->> >> > La valeur ou l'expression régulière à utiliser avec l'opérateur "match" (Regex / Chaîne de caractères) ->> >> ->> >> - **subField** ->> >> ->> >> > Le nom du sous-champ si applicable (chaîne de caractères) -> +
Paramètres :
-#### Supprimer une règle de routage +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/tcp/route/{routeId}/rule/{ruleId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **routeId** * ->> > ->> >> L'identifiant de votre route TCP (nombre) ->> > ->> > **ruleId** * ->> > ->> >> L'identifiant de votre règle de routage HTTP (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -## Protocole UDP +**contactAdmin** -Accéder aux éléments relatifs au protocole UDP (frontend, ferme, etc.). +L'identifiant client OVHcloud à configurer pour le contact administrateur de ce service (chaîne de caractères) -### Fermes UDP +**contactBilling** -#### Lister les fermes UDP attachées à un service Load Balancer OVHcloud +L'identifiant client OVHcloud à configurer pour le contact facturation de ce service (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +**contactTech** -#### Ajouter une nouvelle ferme UDP à un service Load Balancer OVHcloud +L'identifiant client OVHcloud à configurer pour le contact technique de ce service (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm ->> > ->> -> -> Paramètres : +/// + +> [!primary] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom que vous souhaitez donner à votre ferme (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre ferme. Hérité du frontend si non-défini (nombre, 1..65535) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, par exemple : all (chaîne de caractères) +> Pour plus d'informations sur la gestion des contacts OVHcloud, consultez le guide « [Gérer les contacts de ses services](/pages/account_and_service_management/account_information/managing_contacts) ». > -#### Obtenir les détails d'une ferme UDP +### vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Paramètres : +#### Description des réseaux privés attachés au load balancer + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network > -#### Modifier les propriétés d'une ferme UDP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendUdp** * ->> > ->> >> - **displayName** ->> >> ->> >> > Le nom de la ferme (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de la ferme (nombre, 1..65000) -> +
Paramètres :
-#### Supprimer une ferme UDP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### Serveurs UDP +**subnet** -#### Lister les serveurs liés à la ferme UDP +Permet de filtrer selon le réseau utilisé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** ->> > ->> >> Filtrer les valeurs par adresse IPv4 (IPv4) ->> > ->> > **status** ->> > ->> >> Filtrer les valeurs par statut du serveur (valeur) -> +**vlan** -#### Ajouter un serveur à une ferme UDP +Permet de filtrer selon le vlan utilisé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **address** * ->> > ->> >> L'adresse IPv4 de votre serveur (IPv4) ->> > ->> > **displayName** ->> > ->> >> Le nom donné à votre serveur (chaîne de caractères) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre serveur. Hérité de votre ferme si non-défini (nombre, 1..65535) ->> > ->> > **status** * ->> > ->> >> Si votre serveur est activé ou non (booléen) -> +/// -#### Obtenir les détails d'un serveur lié à une ferme UDP +#### Ajouter un réseau privé dans le vRack -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network > -#### Modifier les propriétés d'un serveur UDP +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme (nombre) ->> > ->> > **BackendUdpServer** * ->> > ->> >> - **displayName** ->> >> ->> >> > Le nom de votre serveur (chaîne de caractères) ->> >> ->> >> - **port** ->> >> ->> >> > Le port d'écoute de votre serveur (nombre, 1..65535) ->> >> ->> >> - **status** ->> >> ->> >> > Si votre serveur est activé ou non (booléen) -> +
Paramètres :
-#### Supprimer un serveur d'une ferme UDP +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/farm/{farmId}/server/{serverId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **serverId** * ->> > ->> >> L'identifiant de votre serveur UDP (nombre) ->> > ->> > **farmId** * ->> > ->> >> L'identifiant de votre ferme UDP (nombre) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### Frontends UDP +**displayName** -#### Lister les frontends UDP attachés à un service Load Balancer OVHcloud +Le nom que vous souhaitez attribuer au réseau (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **defaultFarmId** ->> > ->> >> L'identifiant de la ferme UDP à laquelle le frontend UDP est lié (nombre) ->> > ->> > **port** ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** ->> > ->> >> Le nom de votre zone, par exemple : all (chaîne de caractères) -> +**farmId** -#### Ajouter un frontend UDP à un service Load Balancer OVHcloud +Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/udp/frontend ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **dedicatedIpfo** ->> > ->> >> La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> > ->> > **defaultFarmId** * ->> > ->> >> L'identifiant de la ferme UDP par défaut pour votre frontend (nombre) ->> > ->> > **disabled** ->> > ->> >> Si votre frontend UDP est désactivé ou activé (booléen) ->> > ->> > **displayName** ->> > ->> >> Le nom de votre frontend UDP (chaîne de caractères) ->> > ->> > **port** * ->> > ->> >> Le port d'écoute de votre frontend (nombre, 1..65535) ->> > ->> > **zone** * ->> > ->> >> Le nom de votre zone, ex: all (chaîne de caractères) -> +**natIp** -#### Obtenir les détails d'un frontend UDP +Un bloc d'IP réservé au load balancer pour joindre les serveurs -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend UDP (nombre) -> +**subnet** -#### Modifier les propriétés d'un frontend UDP +Le bloc d'IP du réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend UDP (nombre) ->> > ->> > **FrontendUdp** * ->> > ->> >> - **dedicatedIpfo** ->> >> ->> >> > La liste des adresses IPs des serveurs distants auxquels votre Load Balancer est connecté (IPv4[]) ->> >> ->> >> - **disabled** ->> >> ->> >> > Si votre frontend UDP est désactivé ou activé (booléen) ->> >> ->> >> - **displayName** ->> >> ->> >> > Le nom de votre frontend UDP (chaîne de caractères) -> +**vlan** -#### Supprimer un frontend UDP +Vlan du réseau privé dans le vRack. 0 si le réseau privé n'est pas dans un vlan -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/udp/frontend/{frontendId} ->> > ->> -> -> Paramètres : +/// + +#### Récupérer un réseau privé + +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **frontendId** * ->> > ->> >> L'identifiant de votre frontend UDP (nombre) +> @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -## Autres fonctionnalités +/// details | -### Additional IP +
Paramètres :
-#### Lister les Additional IPs routées sur un service Load Balancer OVHcloud +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/failover ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -### État du service +**vrackNetworkId** ^*^ -#### Obtenir l'état des instances d'un service Load Balancer OVHcloud +L'identifiant du réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/instancesState ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> +/// -#### Lister les IPs de sortie utilisées par OVHcloud pour le NAT +#### Modifier un réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/natIp ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) +> @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -#### Appliquer les modifications d'un service Load Balancer OVHcloud +/// details | -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/refresh ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> +
Paramètres :
-### Certificats SSL +**serviceName** ^*^ -#### Lister les certificats SSL d'un service Load Balancer OVHcloud +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **fingerprint** ->> > ->> >> Liste l'empreinte du certificat SSL (chaîne de caractères) ->> > ->> > **serial** ->> > ->> >> Liste le numéro d'identification du certificat SSL (chaîne de caractères) ->> > ->> > **type** ->> > ->> >> Type de certificat SSL (valeur) -> +**vrackNetworkId** ^*^ -#### Ajouter un nouvel objet SSL +L'identifiant du réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/ssl ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **certificate** * ->> > ->> >> Ajout du certificat SSL (chaîne de caractères) ->> > ->> > **chain** ->> > ->> >> Ajout du certificat SSL intermédiaire (chaîne de caractères) ->> > ->> > **key** * ->> > ->> >> Ajout de la clé privée (chaîne de caractères) -> +/// -#### Obtenir les détails d'un objet SSL +#### Supprimer un réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **id** * ->> > ->> >> L'identifiant de votre certificat SSL (nombre) +> @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} > -#### Supprimer un objet SSL - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/ssl/{id} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **id** * ->> > ->> >> L'identifiant de votre certificat SSL (nombre) -> +/// details | -### Tâches +
Paramètres :
-#### Lister les tâches en cours pour un service Load Balancer OVHcloud +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **action** * ->> > ->> >> Consultation des tâches disponibles (valeurs) -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Obtenir les détails d'une tâche +**vrackNetworkId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/task/{id} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **id** * ->> > ->> >> L'identifiant de votre tâche (nombre) -> +L'identifiant du réseau privé -### Contact +/// -#### Initier un changement de contact +#### Modifier la liste des fermes attachées à un réseau privé -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/changeContact ->> > ->> -> -> Paramètres : +> [!api] > ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **contactAdmin** ->> > ->> >> L'identifiant client OVHcloud à configurer pour le contact administrateur de ce service (chaîne de caractères) ->> > ->> > **contactBilling** ->> > ->> >> L'identifiant client OVHcloud à configurer pour le contact facturation de ce service (chaîne de caractères) ->> > ->> > **contactTech** ->> > ->> >> L'identifiant client OVHcloud à configurer pour le contact technique de ce service (chaîne de caractères) +> @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId > -> [!primary] -> -> Pour plus d'informations sur la gestion des contacts OVHcloud, consultez le guide « [Gérer les contacts de ses services](/pages/account_and_service_management/account_information/managing_contacts) ». -> +/// details | -### vRack +
Paramètres :
-#### Description des réseaux privés attachés au load balancer +**serviceName** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **subnet** ->> > ->> >> Permet de filtrer selon le réseau utilisé ->> > ->> > **vlan** ->> > ->> >> Permet de filtrer selon le vlan utilisé -> +L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) -#### Ajouter un réseau privé dans le vRack +**vrackNetworkId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **displayName** ->> > ->> >> Le nom que vous souhaitez attribuer au réseau (chaîne de caractères) ->> > ->> > **farmId** ->> > ->> >> Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé ->> > ->> > **natIp** ->> > ->> >> Un bloc d'IP réservé au load balancer pour joindre les serveurs ->> > ->> > **subnet** ->> > ->> >> Le bloc d'IP du réseau privé ->> > ->> > **vlan** ->> > ->> >> Vlan du réseau privé dans le vRack. 0 si le réseau privé n'est pas dans un vlan -> - -#### Récupérer, modifier ou supprimer un réseau privé - -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing GET /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing PUT /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > @api {v1} /ipLoadbalancing DELETE /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId} ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **vrackNetworkId** * ->> > ->> >> L'identifiant du réseau privé -> +L'identifiant du réseau privé -#### Modifier la liste des fermes attachées à un réseau privé +**farmId** ^*^ -> [!faq] -> -> Service : -> ->> > [!api] ->> > ->> > @api {v1} /ipLoadbalancing POST /ipLoadbalancing/{serviceName}/vrack/network/{vrackNetworkId}/updateFarmId ->> > ->> -> -> Paramètres : -> ->> > **serviceName** * ->> > ->> >> L'identifiant de votre Load Balancer, par exemple : "loadbalancer-abcdef0123456789" (chaîne de caractères) ->> > ->> > **vrackNetworkId** * ->> > ->> >> L'identifiant du réseau privé ->> > ->> > **farmId** * ->> > ->> >> Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé. La valeur "null" supprime le vrack network id de toutes les fermes où il était configuré. -> +Tableau d'identifiant de fermes que vous souhaitez attacher à ce réseau privé. La valeur "null" supprime le vrack network id de toutes les fermes où il était configuré. + +/// ## Aller plus loin Échangez avec notre [communauté d'utilisateurs](/links/community). +