Gateway Service

Service to manage the configuration for Gateways.

Gateways

The Gateway service provides methods to manage gateway settings in TSB.

It provides methods to create and manage gateway 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 gateway configuration features.

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

CreateGroup

rpc CreateGroup (tetrateio.api.tsb.gateway.v2.CreateGatewayGroupRequest) returns (tetrateio.api.tsb.gateway.v2.Group)

Requires CreateGatewayGroup

Create a new gateway 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.gateway.v2.GetGatewayGroupRequest) returns (tetrateio.api.tsb.gateway.v2.Group)

Requires ReadGatewayGroup

Get the details of the given gateway group.

UpdateGroup

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

Requires WriteGatewayGroup

update the given gateway group.

ListGroups

rpc ListGroups (tetrateio.api.tsb.gateway.v2.ListGatewayGroupsRequest) returns (tetrateio.api.tsb.gateway.v2.ListGatewayGroupsResponse)

List all gateway groups that exist in the workspace.

DeleteGroup

rpc DeleteGroup (tetrateio.api.tsb.gateway.v2.DeleteGatewayGroupRequest) returns (google.protobuf.Empty)

Requires DeleteGatewayGroup

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

CreateIngressGateway

rpc CreateIngressGateway (tetrateio.api.tsb.gateway.v2.CreateIngressGatewayRequest) returns (tetrateio.api.tsb.gateway.v2.IngressGateway)

Requires CREATE

Create an Ingress Gateway object in the gateway group.

GetIngressGateway

rpc GetIngressGateway (tetrateio.api.tsb.gateway.v2.GetIngressGatewayRequest) returns (tetrateio.api.tsb.gateway.v2.IngressGateway)

Requires READ

Get the details of the given Ingress Gateway object.

UpdateIngressGateway

rpc UpdateIngressGateway (tetrateio.api.tsb.gateway.v2.IngressGateway) returns (tetrateio.api.tsb.gateway.v2.IngressGateway)

Requires WRITE

Modify the given Ingress Gateway object.

ListIngressGateways

rpc ListIngressGateways (tetrateio.api.tsb.gateway.v2.ListIngressGatewaysRequest) returns (tetrateio.api.tsb.gateway.v2.ListIngressGatewaysResponse)

List all Ingress Gateway objects in the gateway group.

DeleteIngressGateway

rpc DeleteIngressGateway (tetrateio.api.tsb.gateway.v2.DeleteIngressGatewayRequest) returns (google.protobuf.Empty)

Requires DELETE

Delete the given Ingress Gateway object.

CreateEgressGateway

rpc CreateEgressGateway (tetrateio.api.tsb.gateway.v2.CreateEgressGatewayRequest) returns (tetrateio.api.tsb.gateway.v2.EgressGateway)

Requires CREATE

Create an Egress Gateway object in the gateway group.

GetEgressGateway

rpc GetEgressGateway (tetrateio.api.tsb.gateway.v2.GetEgressGatewayRequest) returns (tetrateio.api.tsb.gateway.v2.EgressGateway)

Requires READ

Get the details of the given Egress Gateway object.

UpdateEgressGateway

rpc UpdateEgressGateway (tetrateio.api.tsb.gateway.v2.EgressGateway) returns (tetrateio.api.tsb.gateway.v2.EgressGateway)

Requires WRITE

Modify the given Egress Gateway object.

ListEgressGateways

rpc ListEgressGateways (tetrateio.api.tsb.gateway.v2.ListEgressGatewaysRequest) returns (tetrateio.api.tsb.gateway.v2.ListEgressGatewaysResponse)

List all Egress Gateway objects in the gateway group.

DeleteEgressGateway

rpc DeleteEgressGateway (tetrateio.api.tsb.gateway.v2.DeleteEgressGatewayRequest) returns (google.protobuf.Empty)

Requires DELETE

Delete the given Egress Gateway object.

CreateTier1Gateway

rpc CreateTier1Gateway (tetrateio.api.tsb.gateway.v2.CreateTier1GatewayRequest) returns (tetrateio.api.tsb.gateway.v2.Tier1Gateway)

Requires CREATE

Create a Tier1 Gateway object in the gateway group.

GetTier1Gateway

rpc GetTier1Gateway (tetrateio.api.tsb.gateway.v2.GetTier1GatewayRequest) returns (tetrateio.api.tsb.gateway.v2.Tier1Gateway)

Requires READ

get the details of the given Tier1 Gateway object.

UpdateTier1Gateway

rpc UpdateTier1Gateway (tetrateio.api.tsb.gateway.v2.Tier1Gateway) returns (tetrateio.api.tsb.gateway.v2.Tier1Gateway)

Requires WRITE

ListTier1Gateways

rpc ListTier1Gateways (tetrateio.api.tsb.gateway.v2.ListTier1GatewaysRequest) returns (tetrateio.api.tsb.gateway.v2.ListTier1GatewaysResponse)

List all Tier1 Gateway objects that have been created in the gateway group.

DeleteTier1Gateway

rpc DeleteTier1Gateway (tetrateio.api.tsb.gateway.v2.DeleteTier1GatewayRequest) returns (google.protobuf.Empty)

Requires DELETE

Delete the given Tier1 Gateway object.

CreateGateway

rpc CreateGateway (tetrateio.api.tsb.gateway.v2.CreateGatewayRequest) returns (tetrateio.api.tsb.gateway.v2.Gateway)

Requires CREATE

Create a Gateway object in the gateway group.

GetGateway

rpc GetGateway (tetrateio.api.tsb.gateway.v2.GetGatewayRequest) returns (tetrateio.api.tsb.gateway.v2.Gateway)

Requires READ

Get the details of the given Gateway object.

UpdateGateway

rpc UpdateGateway (tetrateio.api.tsb.gateway.v2.Gateway) returns (tetrateio.api.tsb.gateway.v2.Gateway)

Requires WRITE

Modify the given Gateway object.

ListGateways

rpc ListGateways (tetrateio.api.tsb.gateway.v2.ListGatewaysRequest) returns (tetrateio.api.tsb.gateway.v2.ListGatewaysResponse)

List all Gateway objects in the gateway group.

DeleteGateway

rpc DeleteGateway (tetrateio.api.tsb.gateway.v2.DeleteGatewayRequest) returns (google.protobuf.Empty)

Requires DELETE

Delete the given Gateway object.

CreateEgressGatewayRequest

Request to create a EgressGateway.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the EgressGateway will be created.

string = {
  min_len: 1
}

name

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

string = {
  min_len: 1
}

egressGateway

tetrateio.api.tsb.gateway.v2.EgressGateway
REQUIRED
Details of the EgressGateway to be created.

message = {
  required: true
}

CreateGatewayGroupRequest

Request to create a Gateway 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.gateway.v2.Group
REQUIRED
Details of the Group to be created.

message = {
  required: true
}

CreateGatewayRequest

Request to create a Gateway.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the Gateway will be created.

string = {
  min_len: 1
}

name

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

string = {
  min_len: 1
}

gateway

tetrateio.api.tsb.gateway.v2.Gateway
REQUIRED
Details of the Gateway to be created.

message = {
  required: true
}

CreateIngressGatewayRequest

Request to create a IngressGateway.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the IngressGateway will be created.

string = {
  min_len: 1
}

name

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

string = {
  min_len: 1
}

ingressGateway

tetrateio.api.tsb.gateway.v2.IngressGateway
REQUIRED
Details of the IngressGateway to be created.

message = {
  required: true
}

CreateTier1GatewayRequest

Request to create a Tier1Gateway.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource where the Tier1Gateway will be created.

string = {
  min_len: 1
}

name

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

string = {
  min_len: 1
}

tier1Gateway

tetrateio.api.tsb.gateway.v2.Tier1Gateway
REQUIRED
Details of the Tier1Gateway to be created.

message = {
  required: true
}

DeleteEgressGatewayRequest

Request to delete a EgressGateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the EgressGateway.

string = {
  min_len: 1
}

DeleteGatewayGroupRequest

Request to delete a Gateway 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.

DeleteGatewayRequest

Request to delete a Gateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Gateway.

string = {
  min_len: 1
}

DeleteIngressGatewayRequest

Request to delete a IngressGateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the IngressGateway.

string = {
  min_len: 1
}

DeleteTier1GatewayRequest

Request to delete a Tier1Gateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Tier1Gateway.

string = {
  min_len: 1
}

GetEgressGatewayRequest

Request to retrieve a EgressGateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the EgressGateway.

string = {
  min_len: 1
}

GetGatewayGroupRequest

Request to retrieve a Gateway Group.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Group.

string = {
  min_len: 1
}

GetGatewayRequest

Request to retrieve a Gateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Gateway.

string = {
  min_len: 1
}

GetIngressGatewayRequest

Request to retrieve a IngressGateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the IngressGateway.

string = {
  min_len: 1
}

GetTier1GatewayRequest

Request to retrieve a Tier1Gateway.

Field Description Validation Rule

fqn

string
REQUIRED
Fully-qualified name of the Tier1Gateway.

string = {
  min_len: 1
}

ListEgressGatewaysRequest

Request to list EgressGateways.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list EgressGateways from.

string = {
  min_len: 1
}

ListEgressGatewaysResponse

Lost of all Egress Gateway objects in the gateway group.

Field Description Validation Rule

egressGateways

List of tetrateio.api.tsb.gateway.v2.EgressGateway

ListGatewayGroupsRequest

Request to list Gateway Groups.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list Groups from.

string = {
  min_len: 1
}

ListGatewayGroupsResponse

List of all gateway groups in the workspace.

Field Description Validation Rule

groups

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

ListGatewaysRequest

Request to list Gateways.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list Gateways from.

string = {
  min_len: 1
}

ListGatewaysResponse

List of all Gateway objects in the gateway group.

Field Description Validation Rule

gateways

List of tetrateio.api.tsb.gateway.v2.Gateway
List of all Gateway objects.

ListIngressGatewaysRequest

Request to list IngressGateways.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list IngressGateways from.

string = {
  min_len: 1
}

ListIngressGatewaysResponse

List of all Ingress Gateway objects in the gateway group.

Field Description Validation Rule

ingressGateways

List of tetrateio.api.tsb.gateway.v2.IngressGateway

ListTier1GatewaysRequest

Request to list Tier1Gateways.

Field Description Validation Rule

parent

string
REQUIRED
Parent resource to list Tier1Gateways from.

string = {
  min_len: 1
}

ListTier1GatewaysResponse

List of all Tier1 Gateway objects in the gateway group.

Field Description Validation Rule

tier1Gateways

List of tetrateio.api.tsb.gateway.v2.Tier1Gateway