Create traffic policy

Prev Next

Available in Classic and VPC

Create a traffic policy according to the specified conditions.

Request

The following describes the request format for the endpoint. The request format is as follows:

Method URI
POST /policies

Request headers

For headers common to all Global Traffic Manager policy APIs, see Policy API common headers.

Request syntax

The request syntax is as follows.

{
    "geoMapId": 0,
    "lbType": "lbType",
    "monitor": {
        "hostHeader": "header",
        "path": "/path",
        "period": 0,
        "port": 0,
        "protocol": "HTTP",
        "thresholdFail": 1,
        "thresholdNormal": 1
    },
    "name": "name",
    "resourceGroups": [
        {
            "active": [
                {
                    "content": "x.x.x.x",
                    "healthCheckRegionId": 1,
                    "type": "A"
                }
            ],
            "geoMapDetailId": 0,
            "sid": 0,
            "standby": [
                {
                    "content": "naver.com",
                    "healthCheckRegionId": 1,
                    "type": "CNAME"
                }
            ],
            "weighted": 0
        }
    ]
}

Request body

See PolicyRequest for the request body.

Request example

The following is a sample request.

curl --location --request POST 'https://globaltrafficmanager.apigw.ntruss.com/gtm/v1/policies' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
    "lbType": "ROUND_ROBIN",
    "monitor": {
        "hostHeader": "",
        "path": "/path",
        "period": 30,
        "port": 80,
        "protocol": "HTTP",
        "thresholdFail": 1,
        "thresholdNormal": 1
    },
    "name": "policy002",
    "resourceGroups": [
        {
            "active": [
                {
                    "content": "***.65.**.1",
                    "healthCheckRegionId": 1,
                    "type": "PUBLIC_IP"
                }
            ],
            "sid": null,
            "standby": [
                {
                    "content": "***.0.**.0",
                    "healthCheckRegionId": 1,
                    "type": "PUBLIC_IP"
                }
            ]
        }
    ]
}'

Response

The following describes the response format.

Response status codes

For response status codes common to NAVER Cloud Platform, see Ncloud API response status codes.

Response example

The following is a sample response.

****

Error code example

The following is a sample error code.

{
  "result": "FAIL",
  "error": {
    "errorCode": "05X000",
    "message": "Invalid value.<br>Hover your mouse over the displayed area to see the details in a tooltip.",
    "devMessage": "Invalid value.",
    "moreInfo": {
      "validationInfo": [
        {
          "fieldPath": "monitor.hostHeader",
          "msg": "hostHeader can't be entered unless the protocol is HTTP/HTTPS."
        },
        {
          "fieldPath": "geoMapId",
          "msg": "geoMapId can't be entered unless the load balancer type is Geo/CIDR."
        },
        {
          "fieldPath": "resourceGroups[0].geoMapDetailId",
          "msg": "geoMapDetailId can't be entered unless the load balancer type is Geo/CIDR."
        },
        {
          "fieldPath": "resourceGroups[0].sid",
          "msg": "sid can only be a minimum of 1 and a maximum of 9,223,372,036,854,775,807."
        },
        {
          "fieldPath": "resourceGroups[0].weighted",
          "msg": "weighted can't be entered unless the load balancer type is Weighted RR."
        }
      ],
      "timestamp": "2022-11-16T10:54:47.191+09:00"
    }
  }
}