Skip to main content
Feedback

Gateway category

The return and update details of API Gateways.

Supported operations

The Gateway category is supported in the following operations:

OperationQUERYMUTATION
All GatewaysSupported ✅Not supported ✗
Gateway by IDSupported ✅Not supported ✗
gatewayUpdateNot supported ✗Supported ✅

Query syntax

All Gateways

{gateways {Gateway}}

Gateway by ID

{gateway: gateway(id: ID!): Gateway}

Mutation syntax

gatewayUpdate

gatewayUpdate(gatewayInput: GatewayInput!):Gateway!

Input and return fields syntax

Mutation input syntax

input GatewayInput {
id: ID!
defaultApiExecutionSettings: DeployedApiExecutionSettingsInput
forwardProxy: ForwardProxyInput
}
input DeployedApiExecutionSettingsInput {
concurrency: Integer
retries: Integer
retryCases: [DeployedApiRetryCase!]
connectTimeout: Long
executionTimeout: Long
subscriptionCacheSize: Long
}

Return fields syntax

type Gateway {
id: ID!
name: String!
deleted: Boolean!
environments: [Environment]
defaultApiExecutionSettings: DeployedApiExecutionSettings
forwardProxy: ForwardProxy
externalUrl: String
externalHealthCheckPath: String
account: Account
gatewayType: GatewayType
version: Long
token: String
}

For more information on ForwardProxy, see Forward Proxy on Gateway category.

FieldTypeDescription
namestringThe name of the API Gateway.
idstringThe ID of the API Gateway.
deletedBooleanReturns a value of true if the API Gateway was deleted. Returns a value of false if the API Gateway is not deleted.
defaultApiExecutionSettingsDeployedApiExecutionSettingsRun settings for the API Gateway that control the load and run characteristics across all APIs on the API Gateway.
environmentsenvironmentEnvironments attached to the API Gateway.
forwardProxyForwardProxyForward proxy server settings for the API Gateway.
externalUrlstringThe URL that you use to access your API Gateway from outside your company's firewall.
externalHealthCheckPathstringThe path that you use to check your Gateway's health.
accountAccountAccount information for the Gateway: ID, name, and status.
gatewayTypeGatewayTypeThe type of Gateway. This is embedded for all Gravitee Gateways.
versionLongThe internal version of the Gateway.
tokenstringAuthentication token for the gateway.
type DeployedApiExecutionSettings {
concurrency: Integer!
retries: Integer!
retryCases: [DeployedApiRetryCase!]
connectTimeout: Long!
executionTimeout: Long!
subscriptionCacheSize: Long!
}
FieldTypeDescription
concurrencyintegerA value between 1 and 10000, with 100 used as the default, that specifies the number of concurrent calls that can be made on a single runtime node associated with the API Gateway. Number of requests processed by configuring concurrency setting is determined by the concurrency setting and the number of processors. For a single node runtime, the maximum number of concurrent requests allowed equals the number of CPUs/processors * 2 * concurrency value. For example, if a single node runtime has 12 CPUs and concurrency is set to 1 on the Deployed API, the back-end runtime will process 24 requests (12 * 2 * 1) at any point in time.
retriesintegerA value between 0 and 10, with 1 used as the default, that specifies the number of retries attempted by the API Gateway for a call before ending in an error, as configured in the retryCases value.
retryCasesDeployedApiRetryCaseIdentifies the retry cases. The default values for retryCases before the May 2021 release are:
CONNECT_TIMEOUT
CONNECTION_DROPPED
HOST_NOT_FOUND
HOST_ROUTING_ERROR
EXECUTION_TIMEOUT
The default values for retry cases after the May 2021 release are:
CONNECT_TIMEOUT
CONNECTION_DROPPED
HOST_NOT_FOUND
HOST_ROUTING_ERROR
connectTimeoutlongA value between 1 and 600 seconds (10 minutes). The default connection time-out value for API Gateways installed before the May 2021 release is 120 seconds.
The default connection timeout value for API Gateways installed after the May 2021 release is 10 seconds.
executionTimeoutlongA value between 1 and 315360000 seconds (10 years). The default run time-out for API Gateways installed before the May 2021 release is 315360000 seconds.
The default execution time-out for API Gateways installed after the May 2021 release is 120 seconds.
subscriptionCacheSizelongThe maximum number of entries in a subscription cache per API. Defaults to 1,000 entries (~32KB). Note that this is the maximum size.
enum DeployedApiRetryCase {
CONNECT_TIMEOUT
EXECUTION_TIMEOUT
HOST_ROUTING_ERROR
HOST_NOT_FOUND
CONNECTION_DROPPED
}
FieldDescription
CONNECT_TIMEOUTThe Connect Time-out exception is returned when the API Gateway is not able to establish a connection to the runtime or external host within the time as defined in the connectTimeout value.
EXECUTION_TIMEOUTReturns the Execution Time-out exception when a process runs for more time than the time defined in the executionTimeout value.
HOST_ROUTING_ERRORReturns the Host Routing Error when the runtime or remote host is not reachable.
HOST_NOT_FOUNDReturns the Host Not Found exception when the IP address of the runtime or external host could not be determined.
CONNECTION_DROPPEDReturns the Connection Dropped exception when the connection to the runtime or external host dropped unexpectedly.
type GatewayErrorCode {
genericErrorCode: GatewayGenericErrorCode
apiExecutionSettingsErrorCode: DeployedApiExecutionSettingsErrorCode
forwardProxyErrorCode: ForwardProxyErrorCode
}
enum GatewayGenericErrorCode {
GATEWAY_ID_EMPTY
GATEWAY_NOT_FOUND
NOTHING_TO_UPDATE
}
enum DeployedApiExecutionSettingsErrorCode {
CONCURRENCY_INVALID
RETRIES_INVALID
EXECUTION_TIMEOUT_INVALID
CONNECT_TIMEOUT_INVALID
DEPLOYMENT_NOT_ON_GATEWAY
SUBSCRIPTION_CACHE_SIZE_INVALID
}
FieldTypeDescription
genericErrorCodeGatewayGenericErrorCodeReturns a value of:
GATEWAY_ID_EMPTY
GATEWAY_NOT_FOUND
NOTHING_TO_UPDATE
apiExecutionSettingsErrorCodeDeployedApiExecutionSettingsErrorCodeIdentifies the type of the error associated with the update of the DeployedApiExecutionSettings on the Gateway.
forwardProxyErrorCodeForwardProxyErrorCodeIdentifies the type of error associated with an update of ForwardProxy on the Gateway.
type Account {
id: ID
name: String
status: AccountStatus
}

enum AccountStatus {
TRIAL
ACTIVE
SUSPENDED
DELETED
UNLIMITED
}
FieldTypeDescription
idIDID of the account.
nameStringName of the account.
statusAccountStatusThe status of the account: trial, active, suspended, deleted, or unlimited.

GraphQL implementation

QUERY operation

The following example returns a list of API Gateways.

For a GraphQL request, send a request to https://platform.boomi.com/graphql with the following X-Account header: accountId

Request:

query{
gateways{
id
name
}
}

JSON response:

{
"data": {
"gateways": [
{
"id": "<xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx>",
"name": "Alpha"
},
{
"id": "<xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx>",
"name": "Beta"
}
]
}
}

The following example returns the details of a specific API Gateway.

For a GraphQL request, send a request to https://platform.boomi.com/graphql with the following X-Account header: accountId

Request:

query {
gateway(id:"<xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx>") {
id
name
deleted
defaultApiExecutionSettings {
concurrency
retries
connectTimeout
executionTimeout
retryCases
subscriptionCacheSize
}
}
}

JSON response:

{
"data": {
"gateway": {
"id": "<xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx>",
"name": "Alpha",
"deleted": false,
"defaultApiExecutionSettings": {
"concurrency": 100,
"retries": 1,
"connectTimeout": 120,
"executionTimeout": 315360000,
"retryCases": [
"CONNECT_TIMEOUT",
"EXECUTION_TIMEOUT",
"HOST_ROUTING_ERROR",
"HOST_NOT_FOUND",
"CONNECTION_DROPPED"
]
"subscriptionCacheSize": 1000
}
}
}
}

gatewayUpdate operation

The following example updates the execution settings on an API Gateway.

For a GraphQL request, send a request to https://platform.boomi.com/graphql with the following X-Account header: accountId

Request:

mutation gatewayUpdate($gatewayInput:GatewayInput!) {
gatewayUpdate(
gatewayInput:$gatewayInput
)
{
id
name
deleted
defaultApiExecutionSettings {
concurrency
retries
retryCases
connectTimeout
executionTimeout
}
}
}
{
"gatewayInput": {
"id": "<xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx>",
"defaultApiExecutionSettings": {
"concurrency": 50,
"connectTimeout": 10,
"executionTimeout": 240,
"retries": 2,
"retryCases": ["CONNECT_TIMEOUT"]
}
}
}

JSON response:

{
"data": {
"gatewayUpdate": {
"id": "<xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx>",
"name": "Alpha",
"deleted": false,
"defaultApiExecutionSettings": {
"concurrency": 50,
"retries": 2,
"retryCases": [
"CONNECT_TIMEOUT"
],
"connectTimeout": 10,
"executionTimeout": 240
}
}
}
}

Audit log usage

{
"QueryFilter" :
{
"expression" : {
"operator" : "and",
"nestedExpression" : [
{
"argument" : ["admin@boomi.com"],
"operator" : "EQUALS",
"property" : "userId"
},
{
"argument" : ["api-gateway_settings"],
"operator" : "EQUALS",
"property" : "type"
},
{
"argument" : ["2021-03-28T00:00:00Z","2021-03-29T23:59:59Z"],
"operator":"BETWEEN",
"property":"date"
}
]
}
}
}
On this Page