OpenAPI Extensions
OpenAPI Extensions available to configure APIs.
OpenAPIExtension
Metadata describing an extension to the OpenAPI spec.
Field | Description | Validation Rule |
---|---|---|
name | string | – |
appliesTo | List of string | – |
required | bool | – |
OpenAPIExtensions
Available OpenAPI extensions to configure APi Gateway features in Service Bridge.
Field | Description | Validation Rule |
---|---|---|
x-tsb-service | string This service name will be used to generate all the routes for traffic coming to the associated paths. OpenAPI extension name: x-tsb-service<br/> Applies to: info, path<br/> Required: Required unless x-tsb-redirect is defined for the target paths. Example:
| – |
x-tsb-redirect | tetrateio.api.tsb.gateway.v2.Redirect OpenAPI extension name: x-tsb-redirect<br/> Applies to: path<br/> Required: false Example:
| – |
x-tsb-tls | tetrateio.api.tsb.gateway.v2.ServerTLSSettings OpenAPI extension name: x-tsb-redirect<br/> Applies to: server<br/> Required: false Example:
| – |
x-tsb-cors | tetrateio.api.tsb.gateway.v2.CorsPolicy OpenAPI extension name: x-tsb-cors<br/> Applies to: server<br/> Required: false Example:
| – |
x-tsb-authentication | tetrateio.api.tsb.auth.v2.Authentication OpenAPI extension name: x-tsb-authentication<br/> Applies to: server<br/> Required: Required if Authorization is based on JWT tokens. Example:
| – |
x-tsb-external-authorization | tetrateio.api.tsb.auth.v2.Authorization.ExternalAuthzBackend OpenAPI extension name: x-tsb-external-authorization<br/> Applies to: server<br/> Required: false Example:
| – |
x-tsb-jwt-authorization | tetrateio.api.tsb.application.v2.OpenAPIExtensions.JWTAuthz Note that if this is configured, the This can be applied at the server or path level. When applied at the server level, the authorization rules will be enforced for all paths in that server. OpenAPI extension name: x-tsb-jwt-authorization<br/> Applies to: server, path<br/> Required: false Example:
| – |
x-tsb-ratelimiting | tetrateio.api.tsb.gateway.v2.RateLimitSettings This can be applied at the server, path and operation level.
Each rate limit setting is independent of the other.
Top level fields such as OpenAPI extension name: x-tsb-ratelimiting<br/> Applies to: server, path, operation<br/> Required: false Example:
| – |
x-tsb-external-ratelimiting | tetrateio.api.tsb.gateway.v2.ExternalRateLimitServiceSettings OpenAPI extension name: x-tsb-external-ratelimiting<br/> Applies to: server, path, operation<br/> Required: false Example:
| – |
x-tsb-wasm-extensions | tetrateio.api.tsb.application.v2.OpenAPIWasmExtensionAttachment OpenAPI extension name: x-tsb-wasm-extensions<br/> Applies to: info<br/> Required: false Example:
| – |
JWTAuthz
Configures authorization rules based on the JWT token in an incoming request.
Field | Description | Validation Rule |
---|---|---|
claims | List of tetrateio.api.tsb.auth.v2.Subject.JWTClaims | – |
OpenAPIWasmExtensionAttachment
OpenAPIWasmExtensionAttachment defines the WASM extension attached in an OpenAPI specification including the name to identify the extension and also the specific configuration that will override the global extension configuration.
Field | Description | Validation Rule |
---|---|---|
name | string | string = { |
config | google.protobuf.Struct | – |