Global Load Balancer API (1.0.0)

Download OpenAPI specification:Download

API documentation for GreenNode Global Load Balancer (GLB)

GlobalListener

API for managing Global Listeners of a Global Load Balancer

Get all global listeners

Get all global listeners

Authorizations:
Authorization
path Parameters
glbid
required
string

glbid

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-listeners',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Create a global listener

Create a global listener

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

Request Body schema: application/json
allowedCidrs
required
string
description
string
globalPoolId
string
headers
string
name
required
string
port
required
integer
protocol
required
string
timeoutClient
required
integer
timeoutConnection
required
integer
timeoutMember
required
integer

Responses

Request samples

Content type
application/json
{
  • "allowedCidrs": "string",
  • "description": "string",
  • "globalPoolId": "string",
  • "headers": "string",
  • "name": "string",
  • "port": 0,
  • "protocol": "string",
  • "timeoutClient": 0,
  • "timeoutConnection": 0,
  • "timeoutMember": 0
}

Get a global listener

Get a global listener

Authorizations:
Authorization
path Parameters
glbid
required
string

glbid

listenerid
required
string

listenerid

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-listeners/%7Blistenerid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Update a global listener

Update a global listener

Authorizations:
Authorization
path Parameters
glbid
required
string

glbid

listenerid
required
string

listenerid

Request Body schema: application/json
allowedCidrs
required
string
globalPoolId
required
string
headers
string
timeoutClient
required
integer
timeoutConnection
required
integer
timeoutMember
required
integer

Responses

Request samples

Content type
application/json
{
  • "allowedCidrs": "string",
  • "globalPoolId": "string",
  • "headers": "string",
  • "timeoutClient": 0,
  • "timeoutConnection": 0,
  • "timeoutMember": 0
}

Delete a global listener

Delete a global listener

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

listenerid
required
string

Listener ID

Responses

Request samples

const request = require('request');

const options = {
  method: 'DELETE',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-listeners/%7Blistenerid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

GlobalLoadBalancer

API for managing Global Load Balancers

Get global load balancers

Get global load balancers

Authorizations:
Authorization

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Create a global load balancer

Create a global load balancer

Authorizations:
Authorization
Request Body schema: application/json
description
string
object (CreateGlobalListenerRequest)
object (CreateGlobalPoolRequest)
name
required
string
package
required
string
paymentFlow
required
string
Enum: "automated" "gateway"
type
required
string

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "globalListener": {
    },
  • "globalPool": {
    },
  • "name": "string",
  • "package": "string",
  • "paymentFlow": "automated",
  • "type": "string"
}

Get a global load balancer

Get a global load balancer

Authorizations:
Authorization
path Parameters
glbid
required
string

glbid

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Delete a global load balancer

Delete a global load balancer

Authorizations:
Authorization
path Parameters
glbid
required
string

glbid

Responses

Request samples

const request = require('request');

const options = {
  method: 'DELETE',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

GlobalPool

API for managing Global Pools of a Global Load Balancer

Get global pools

Get global pools

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-pools',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Create a global pool

Create a global pool

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

Request Body schema: application/json
algorithm
required
string
description
string
required
Array of objects (CreateGlobalPoolMemberRequest)
required
object (CreateGlobalPoolHealthRequest)
name
required
string
protocol
required
string
stickySession
boolean
tlsEnabled
boolean

Responses

Request samples

Content type
application/json
{
  • "algorithm": "string",
  • "description": "string",
  • "globalPoolMembers": [
    ],
  • "health": {
    },
  • "name": "string",
  • "protocol": "string",
  • "stickySession": true,
  • "tlsEnabled": true
}

Get a global pool

Get a global pool

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

poolid
required
string

Global Pool ID

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-pools/%7Bpoolid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Update a global pool

Update a global pool

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

poolid
required
string

Global Pool ID

Request Body schema: application/json
algorithm
required
string
required
object (UpdateGlobalPoolHealthRequest)
stickySession
boolean
tlsEnabled
boolean

Responses

Request samples

Content type
application/json
{
  • "algorithm": "string",
  • "health": {
    },
  • "stickySession": true,
  • "tlsEnabled": true
}

Delete a global pool

Delete a global pool

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

poolid
required
string

Global Pool ID

Responses

Request samples

const request = require('request');

const options = {
  method: 'DELETE',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-pools/%7Bpoolid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

GlobalPoolMember

API for managing members of a Global Pool

Get pool members

Get pool members

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

poolid
required
string

Global Pool ID

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-pools/%7Bpoolid%7D/pool-members',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Create a pool member

Create a pool member

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

poolid
required
string

Global Pool ID

Request Body schema: application/json
description
string
required
Array of objects (GlobalMemberRequest)
name
required
string
region
required
string
trafficDial
integer
type
required
string
vpcId
string

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "members": [
    ],
  • "name": "string",
  • "region": "string",
  • "trafficDial": 0,
  • "type": "string",
  • "vpcId": "string"
}

Patch pool members

Patch pool members

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

poolid
required
string

Global Pool ID

Request Body schema: application/json
required
Array of objects (ActionChangePoolMember)

Responses

Request samples

Content type
application/json
{
  • "bulkActions": [
    ]
}

Get a pool member

Get a pool member

Authorizations:
Authorization
path Parameters
glbid
required
string

glbid

poolid
required
string

poolid

poolmemberid
required
string

poolmemberid

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-pools/%7Bpoolid%7D/pool-members/%7Bpoolmemberid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Update a pool member

Update a pool member

Authorizations:
Authorization
path Parameters
glbid
required
string

Global load balancer ID

poolid
required
string

Global pool ID

poolmemberid
required
string

Global pool member ID

Request Body schema: application/json
required
Array of objects (GlobalMemberRequest)
trafficDial
integer

Responses

Request samples

Content type
application/json
{
  • "members": [
    ],
  • "trafficDial": 0
}

Delete a pool member

Delete a pool member

Authorizations:
Authorization
path Parameters
glbid
required
string

Global load balancer ID

poolid
required
string

Global pool ID

poolmemberid
required
string

Global pool member ID

Responses

Request samples

const request = require('request');

const options = {
  method: 'DELETE',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/global-pools/%7Bpoolid%7D/pool-members/%7Bpoolmemberid%7D',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Package

API for listing Global Load Balancer packages

Get packages

Get packages

Authorizations:
Authorization

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/packages',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

Region

API for listing supported regions

Get regions

Get regions

Authorizations:
Authorization

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/regions',
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});

UsageHistory

API for retrieving usage histories of a Global Load Balancer

Get usage histories

Retrieve the usage histories for a specific global load balancer

Authorizations:
Authorization
path Parameters
glbid
required
string

Global Load Balancer ID

query Parameters
from
required
string

Start time in Unix timestamp

to
required
string

End time in Unix timestamp

type
required
string

Usage type (e.g., connection_rate, domestic_traffic_total, non_domestic_traffic_total)

Responses

Request samples

const request = require('request');

const options = {
  method: 'GET',
  url: 'https://glb.api.vngcloud.vn/glb-controller/v1/global-load-balancers/%7Bglbid%7D/usage-histories',
  qs: {from: 'SOME_STRING_VALUE', to: 'SOME_STRING_VALUE', type: 'SOME_STRING_VALUE'},
  headers: {Authorization: 'REPLACE_KEY_VALUE'}
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});