Creating a Route Table

Function

This API is used to create a route table. A route table is the basis for an enterprise router to send and receive packets. It contains attachment associations, propagations, and routes.

URI

POST /v3/{project_id}/enterprise-router/{er_id}/route-tables

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID

er_id

Yes

String

Enterprise router ID

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Client-Token

No

String

Idempotence identifier

Minimum: 1

Maximum: 64

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

route_table

No

CreateRouteTable object

Route table

Table 4 CreateRouteTable

Parameter

Mandatory

Type

Description

name

Yes

String

Route table name.The value can contain 1 to 64 characters, including letters, digits, underscores (_), hyphens (-), and periods (.).

Minimum: 1

Maximum: 64

description

No

String

Supplementary information about the route table

Minimum: 0

Maximum: 255

bgp_options

No

BgpOptions object

BGP route selection parameters. This parameter is not supported for now.

tags

No

Array of Tag objects

Tag information

Table 5 BgpOptions

Parameter

Mandatory

Type

Description

load_balancing_as_path_ignore

No

Boolean

BGP option to specify that AS-Path attributes are not compared during load balancing. This parameter is not supported for now.

load_balancing_as_path_relax

No

Boolean

BGP option to specify that AS-Path attributes with the same length are not compared during load balancing. This parameter is not supported for now.

Table 6 Tag

Parameter

Mandatory

Type

Description

key

No

String

Tag key. The value contain up to 128 characters (36 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@).

Minimum: 1

Maximum: 128

value

No

String

Tag value. The value contain up to 128 characters in API (43 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@).

Minimum: 0

Maximum: 128

Response Parameters

Status code: 202

Table 7 Response header parameters

Parameter

Type

Description

X-Client-Token

-

Idempotence identifier

Table 8 Response body parameters

Parameter

Type

Description

route_table

RouteTable object

Route table

request_id

String

Request ID

Table 9 RouteTable

Parameter

Type

Description

id

String

Route table ID

name

String

Route table name

description

String

Supplementary information

is_default_association

Boolean

Whether the route table is the default association route table.

Default: false

is_default_propagation

Boolean

Whether the route table is the default propagation route table.

state

String

Route table status. The value can be pending, available, deleting, deleted, or failed.

tags

Array of Tag objects

Tag

bgp_options

BgpOptions object

BGP route selection parameters. This parameter is not supported for now.

created_at

String

Creation time in the format YYYY-MM-DDTHH:mm:ss.sssZ

updated_at

String

Update time in the format YYYY-MM-DDTHH:mm:ss.sssZ

Table 10 Tag

Parameter

Type

Description

key

String

Tag key. The value contain up to 128 characters (36 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@).

Minimum: 1

Maximum: 128

value

String

Tag value. The value contain up to 128 characters in API (43 characters on the console), including uppercase letters, lowercase letters, digits, hyphens (-), underscores (_), and at signs (@).

Minimum: 0

Maximum: 128

Table 11 BgpOptions

Parameter

Type

Description

load_balancing_as_path_ignore

Boolean

BGP option to specify that AS-Path attributes are not compared during load balancing. This parameter is not supported for now.

load_balancing_as_path_relax

Boolean

BGP option to specify that AS-Path attributes with the same length are not compared during load balancing. This parameter is not supported for now.

Example Requests

Creating a route table

POST https://{erouter_endpoint}/v3/08d5a9564a704afda6039ae2babbef3c/enterprise-router/915a14a6-867b-4af7-83d1-70efceb146f0/route-tables

{
  "route_table" : {
    "name" : "my-route-table",
    "tags" : [ {
      "key" : "key",
      "value" : "value"
    } ]
  }
}

Example Responses

Status code: 202

Accepted

{
  "route_table" : {
    "id" : "4ab54142-7c92-48ad-8288-77727a231052",
    "name" : "my-route-table",
    "is_default_association" : false,
    "is_default_propagation" : false,
    "state" : "pending",
    "created_at" : "2020-03-11T15:13:31Z",
    "updated_at" : "2020-03-11T15:13:31Z",
    "tags" : [ {
      "key" : "key",
      "value" : "value"
    } ]
  },
  "request_id" : "915a14a6-867b-4af7-83d1-70efceb146f9"
}

Status Codes

Status Code

Description

202

Accepted

Error Codes

See Error Codes.