RegisterTargets
Bind one or more backend services to a Cloud Load Balancer listener or layer-7 forwarding rule. Before that, you need to create a related CLB layer-4 listener or layer-7 forwarding rule. For Layer-4 listeners (TCP/UDP), only specify the listener ID. For layer-7 (HTTP/HTTPS) listeners, forwarding rules must be specified through LocationId or Domain+Url.
Wire call
Converge Cloud is RPC over HTTP. There is one path — / — and the action travels in the X-TC-Action header. The /clb/RegisterTargets path used in the OpenAPI document is a documentation convenience so each action is addressable; it is not a route on the server.
curl -sS https://clb.api3.convergecloud.com/ \
-H 'Authorization: TC3-HMAC-SHA256 Credential=<SecretId>/<YYYY-MM-DD>/clb/tc3_request, SignedHeaders=content-type;host;x-tc-action, Signature=<sig>' \
-H 'Content-Type: application/json; charset=utf-8' \
-H 'Host: clb.api3.convergecloud.com' \
-H 'X-TC-Action: RegisterTargets' \
-H 'X-TC-Version: 2018-03-17' \
-H 'X-TC-Timestamp: <unix-seconds>' \
-H 'X-TC-Region: luzon' \
-d '{"LoadBalancerId":"<LoadBalancerId>","ListenerId":"<ListenerId>","Targets":"<Targets>"}'Request parameters
| Field | Type | Required | Description |
|---|---|---|---|
| LoadBalancerId | string | Yes | CLB instance ID |
| ListenerId | string | Yes | CLB listener ID |
| Targets | Target[] | Yes | List of real servers to be bound. Array length limit: 20. |
| LocationId | string | No | Specifies the forwarding rule ID, which can be obtained through the DescribeListeners API. you must provide this parameter or either Domain or Url when binding a backend service to a layer-7 forwarding rule. |
| Domain | string | No | Target forwarding rule domain name. This parameter does not take effect if LocationId is specified. |
| Url | string | No | Target forwarding rule URL. This parameter does not take effect if LocationId is specified. |
Response
Fields are returned inside the Response envelope. Converge Cloud answers HTTP 200 for errors as well as successes, so read Response.Error rather than the status code — and test for the presence of that object, because Code is occasionally the empty string.
| Field | Type | Description |
|---|---|---|
| RequestId | string | The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. |
{
"Response": {
// action-specific fields,
"RequestId": "…"
}
}{
"Response": {
"Error": { "Code": "…", "Message": "…" },
"RequestId": "…"
}
}Try it
What failure looks like
Example error responses for this action. Match on Code.
{
"Response": {
"Error": {
"Code": "InvalidParameter",
"Message": "LoadBalancer not exist"
},
"RequestId": "66aa8c98-d884-c2fb-551f-851d955dd9fa"
}
}