Traffic Service

Service to manage traffic settings.

Traffic

The Traffic service provides methods to manage traffic settings in TSB.

It provides methods to create and manage traffic groups within a workspace, allowing to create fine-grained groupings to configure a subset of the workspace namespaces. Access policies can be assigned at group level, providing a fine-grained access control to the traffic configuration features.

The Traffic service also provides methods to configure the different traffic settings that are allowed within each group.

CreateGroup

rpc CreateGroup (tetrateio.api.tsb.traffic.v2.CreateTrafficGroupRequest) returns (tetrateio.api.tsb.traffic.v2.Group)

Requires CREATE

Create a new traffic group in the given workspace.

Groups will by default configure all the namespaces owned by their workspace, unless explicitly configured. If a specific set of namespaces is set for the group, it must be a subset of the namespaces defined by its workspace.

GetGroup

rpc GetGroup (tetrateio.api.tsb.traffic.v2.GetTrafficGroupRequest) returns (tetrateio.api.tsb.traffic.v2.Group)

Requires READ

Get the details of the given traffic group.

UpdateGroup

rpc UpdateGroup (tetrateio.api.tsb.traffic.v2.Group) returns (tetrateio.api.tsb.traffic.v2.Group)

Requires WRITE

Modify the given traffic group.

ListGroups

rpc ListGroups (tetrateio.api.tsb.traffic.v2.ListTrafficGroupsRequest) returns (tetrateio.api.tsb.traffic.v2.ListTrafficGroupsResponse)

List all traffic groups in the given workspace.

DeleteGroup

rpc DeleteGroup (tetrateio.api.tsb.traffic.v2.DeleteTrafficGroupRequest) returns (google.protobuf.Empty)

Requires DELETE

Delete the given traffic group. Note that deleting resources in TSB is a recursive operation. Deleting a traffic group will delete all configuration objects that exist in it.

CreateSettings

rpc CreateSettings (tetrateio.api.tsb.traffic.v2.CreateTrafficSettingsRequest) returns (tetrateio.api.tsb.traffic.v2.TrafficSetting)

Requires CreateTrafficSetting

Create a settings object for the given traffic group.

GetSettings

rpc GetSettings (tetrateio.api.tsb.traffic.v2.GetTrafficSettingsRequest) returns (tetrateio.api.tsb.traffic.v2.TrafficSetting)

Requires ReadTrafficSetting

Get the details for the given settings object.

UpdateSettings

rpc UpdateSettings (tetrateio.api.tsb.traffic.v2.TrafficSetting) returns (tetrateio.api.tsb.traffic.v2.TrafficSetting)

Requires WriteTrafficSetting

Modify the given settings in the given traffic group.

ListSettings

rpc ListSettings (tetrateio.api.tsb.traffic.v2.ListTrafficSettingsRequest) returns (tetrateio.api.tsb.traffic.v2.ListTrafficSettingsResponse)

List all the settings objects that have been attached to the given traffic group.

DeleteSettings

rpc DeleteSettings (tetrateio.api.tsb.traffic.v2.DeleteTrafficSettingsRequest) returns (google.protobuf.Empty)

Requires DeleteTrafficSetting

Delete the given settings object from the traffic group.

CreateServiceRoute

rpc CreateServiceRoute (tetrateio.api.tsb.traffic.v2.CreateServiceRouteRequest) returns (tetrateio.api.tsb.traffic.v2.ServiceRoute)

Requires CREATE

Create a new service route in the given traffic group.

GetServiceRoute

rpc GetServiceRoute (tetrateio.api.tsb.traffic.v2.GetServiceRouteRequest) returns (tetrateio.api.tsb.traffic.v2.ServiceRoute)

Requires READ

Get the details of the given service route.

UpdateServiceRoute

rpc UpdateServiceRoute (tetrateio.api.tsb.traffic.v2.ServiceRoute) returns (tetrateio.api.tsb.traffic.v2.ServiceRoute)

Requires WRITE

Modify a service route.

ListServiceRoutes

rpc ListServiceRoutes (tetrateio.api.tsb.traffic.v2.ListServiceRoutesRequest) returns (tetrateio.api.tsb.traffic.v2.ListServiceRoutesResponse)

List all service routes that have been attached to the traffic group.

DeleteServiceRoute

rpc DeleteServiceRoute (tetrateio.api.tsb.traffic.v2.DeleteServiceRouteRequest) returns (google.protobuf.Empty)

Requires DELETE

Delete the given service route.

CreateServiceRouteRequest

Request to create a ServiceRoute.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the ServiceRoute will be created.

string = {
  min_len: 1
}

name

string
REQUIRED
The short name for the resource to be created.

string = {
  min_len: 1
}

serviceRoute

tetrateio.api.tsb.traffic.v2.ServiceRoute
REQUIRED
Details of the ServiceRoute to be created.

message = {
  required: true
}

CreateTrafficGroupRequest

Request to create a Traffic Group.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the Group will be created.

string = {
  min_len: 1
}

name

string
REQUIRED
The short name for the resource to be created.

string = {
  min_len: 1
}

group

tetrateio.api.tsb.traffic.v2.Group
REQUIRED
Details of the Group to be created.

message = {
  required: true
}

CreateTrafficSettingsRequest

Request to create a Traffic Settings.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the Traffic Settings will be created.

string = {
  min_len: 1
}

name

string
REQUIRED
The short name for the resource to be created.

string = {
  min_len: 1
}

settings

tetrateio.api.tsb.traffic.v2.TrafficSetting
REQUIRED
Details of the Traffic Settings to be created.

message = {
  required: true
}

DeleteServiceRouteRequest

Request to delete a ServiceRoute.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the ServiceRoute.

string = {
  min_len: 1
}

DeleteTrafficGroupRequest

Request to delete a Traffic Group.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Group.

string = {
  min_len: 1
}

force

bool
Force the deletion of the object even if deletion protection is enabled. If this is set, then the object and all its children will be deleted even if any of them has the deletion protection enabled.

DeleteTrafficSettingsRequest

Request to delete a Traffic Settings.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Traffic Settings.

string = {
  min_len: 1
}

GetServiceRouteRequest

Request to retrieve a ServiceRoute.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the ServiceRoute.

string = {
  min_len: 1
}

GetTrafficGroupRequest

Request to retrieve a Traffic Group.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Group.

string = {
  min_len: 1
}

GetTrafficSettingsRequest

Request to retrieve a Traffic Settings.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Traffic Settings.

string = {
  min_len: 1
}

ListServiceRoutesRequest

Request to list ServiceRoutes.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list ServiceRoutes from.

string = {
  min_len: 1
}

ListServiceRoutesResponse

List of all service routes defined in the traffic group.

Field Description Validation Rule

serviceRoutes

List of tetrateio.api.tsb.traffic.v2.ServiceRoute

ListTrafficGroupsRequest

Request to list Traffic Groups.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list Groups from.

string = {
  min_len: 1
}

ListTrafficGroupsResponse

List of all existing traffic groups in the workspace.

Field Description Validation Rule

groups

List of tetrateio.api.tsb.traffic.v2.Group

ListTrafficSettingsRequest

Request to list Traffic Settings.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list Traffic Settings from.

string = {
  min_len: 1
}

ListTrafficSettingsResponse

List of all existing traffic settings objects in the traffic group.

Field Description Validation Rule

settings

List of tetrateio.api.tsb.traffic.v2.TrafficSetting