API Gateway Administration
API Gateway provides the capability to API definitions to administer various functions of the API Gateway.
API Gateway provides the following REST API and the resources to manage API Gateway configuration:
GET/rest/apigateway/quiescemode : Retrieves the quiesce mode setting in
API Gateway.
PUT/rest/apigateway/quiescemode : Enables or disables the quiesce mode in
API Gateway.
Quiesce mode has two block types -
designtime and
all. Quiesce mode for
designtime blocks all the design time API requests to API Gateway server and returns the 503 status code except the GET HTTP method as well as few white-listed APIs like the search API and this API. Quiesce mode for the block type all is an extension of Integration server's Quiesce mode with the addition of flushing of API Gateway in-memory data such as performance metrics, license metrics, and subscription quota to the configured data store. For details about quiesce mode, see
Quiesce Mode.
POST/rest/apigateway/shutdown : Shuts down the
API Gateway server.
If the property bounce is set as true, the server would be restarted.
The option parameter specifies whether to shutdown API Gateway server immediately or after all client sessions are ended. A value of force would restart the server immediately and the value drain would wait for a maximum period of time for all the client sessions to end before shutdown.
The property quiesce specifies the quiesce mode for all in API Gateway. A value of true would first flush the API Gateway in memory data like performance metrics, license metrics, and subscription quota to data store before shutdown of the server. Next, when API Gateway is restarted either manually or using bounce parameter, Integration Server starts in Quiesce mode. The default value is false.
GET/rest/apigateway/rule : Retrieves list of all configured rules in
API Gateway.
POST/rest/apigateway/rule : Creates a conditional rule in
API Gateway. The API request body must contain the payload for the rule.
GET/rest/apigateway/rule/{ruleId} : Retrieves the details of a configured rule in
API Gateway.
PUT/rest/apigateway/rule/{ruleId} : Updates the details of a specified configured rule in
API Gateway. The API request body must contain the payload for the updated rule.
DELETE/rest/apigateway/rule/{ruleId} : Deletes the specified rule in
API Gateway.
PUT/rest/apigateway/rule/{ruleId}/activate : Activate a rule. This request does not require any request body.
PUT/rest/apigateway/rule/{ruleId}/deactivate : Deactivates a rule. This request does not require any request body.
GET/rest/apigateway/is/truststore : Retrieves all available truststores from
API Gateway.
POST/rest/apigateway/is/truststore : Creates a truststore in
API Gateway.
GET/rest/apigateway/is/truststore/{truststoreName} : Retrieves an existing truststore matching the given name from
API Gateway.
POST/rest/apigateway/is/truststore/{truststoreName} : Updates an existing truststore in
API Gateway.
DELETE/rest/apigateway/is/truststore/{truststoreName} : Deletes an existing truststore in
API Gateway.
GET/rest/apigateway/licenseUsageDetails: Retrieves the detailed usage information for the transaction based license. The retrieved information contains the maximum number of invocations that is allowed for the current month, the total number of invocations used, and the remaining number of invocations available for the month.
GET/rest/apigateway/is/proxyBypass : Retrieves a list of all host lists for which outbound proxy servers are skipped. Note that the proxyBypass Id is always
proxyBypass.
POST/rest/apigateway/is/proxyBypass : Updates the proxyBypassAddresses to bypass the outbound proxy servers. The API request body must contain the payload. In the proxyBypassAddresses field, type the fully qualified host and domain name of each server to which you want the Integration Server to issue requests directly. Type the host name and the domain name exactly as they appear in the URLs the server uses. To enter multiple names, separate each with commas. You can use the asterisk (*) to identify several servers with similar names. The asterisk matches any number of characters. For example, if you want to bypass requests made to localhost, www.yahoo.com, home.microsoft.com, and all hosts whose names begin with NYC, you would type:
localhost,www.yahoo.com,home.microsoft.com, NYC*.*.
PUT/rest/apigateway/is/proxyBypass : Creates the proxyBypassAddresses to bypass the outbound proxy servers.
GET/rest/apigateway/portalGateways : Retrieves API Portal configurations available in
API Gateway.
POST/rest/apigateway/portalGateways : Creates API Portal configuration in
API Gateway.
GET/rest/apigateway/portalGateways/{portalGatewayId} : Retrieves an API Portal configuration in
API Gateway.
PUT/rest/apigateway/portalGateways/{portalGatewayId} : Updates the API Portal configuration in
API Gateway.
DELETE/rest/apigateway/portalGateways/{portalGatewayId} : Deletes the API Portal configuration in
API Gateway.
GET/rest/apigateway/portalGateways/communities: Retrieves the details about communities in API Portal. An API can be published from
API Gateway to any of the communities available in API Portal.
GET/rest/apigateway/portalGateways/packages: Retrieves the details of the published packages that the API is part of.
GET/rest/apigateway/licenseNotificationCriteria : Retrieves the existing transaction based license notification criteria as a response. Transaction based license notification criteria are like a usage checkpoint and whenever usage reaches that checkpoint, a notification is generated.
POST/rest/apigateway/licenseNotificationCriteria : Creates the transaction based license notification criteria to monitor the
API Gateway usage. This notification criteria has the permitted invocations per month defined in the license file. If you want to get notified when usage reaches a limit before it breaches the license limit, then you have to add a notification criteria by mentioning the usage point so that a notification is generated when usage reaches the specified limit.
PUT/rest/apigateway/licenseNotificationCriteria : Updates the existing transaction based license notification criteria in
API Gateway.
GET/rest/apigateway/licenseNotificationCriteria/{notificationCriteriaId} : Retrieves the transaction based license notification criteria based on the specified ID.
DELETE/rest/apigateway/licenseNotificationCriteria/{notificationCriteriaId} : Deletes the transaction based license notification criteria based on the specified ID.
GET/rest/apigateway/is/jmsTriggers : Retrieves a list of all JMS triggers in
API Gateway.
PUT/rest/apigateway/is/jmsTriggers : Updates the JMS trigger in
API Gateway.
GET/rest/apigateway/is/jmsTriggers/{jmsTriggerId} : Retrieves the specified JMS trigger in
API Gateway.
PUT/rest/apigateway/is/jmsTriggers/{jmsTriggerId}/enable : Enables the specified JMS trigger in
API Gateway.
PUT/rest/apigateway/is/jmsTriggers/{jmsTriggerId}/disable : Disables the specified JMS trigger in
API Gateway.
GET/rest/apigateway/is/jndi: Retrieves a list of all JNDI configurations in
API Gateway.
POST/rest/apigateway/is/jndi: Creates a JNDI configuration in
API Gateway. The API request body must contain the payload for the JNDI configuration.
PUT/rest/apigateway/is/jndi: Updates the JNDI configuration in
API Gateway.
GET/rest/apigateway/is/jndi/{jndiId}: Retrieves the specified JNDI configuration in
API Gateway.
DELETE/rest/apigateway/is/jndi/{jndiId}: Deletes the specified JNDI configuration in
API Gateway.
GET/rest/apigateway/is/jndi/{jndiId}/test: Tests the given JNDI configuration in
API Gateway.
GET/rest/apigateway/is/jndi/template: Retrieves a list of all JNDI templates in
API Gateway.
GET/rest/apigateway/is/keystore : Retrieves all keystores available in
API Gateway.
POST/rest/apigateway/is/keystore : Creates a keystore in
API Gateway.
GET/rest/apigateway/is/keystore/{keyStoreName} : Retrieves the keystore matching the name specified in
API Gateway.
POST/rest/apigateway/is/keystore/{keyStoreName} : Updates an already existing keystore in
API Gateway.
DELETE/rest/apigateway/is/keystore/{keyStoreName} : Deletes the keystore matching the name specified in
API Gateway.
GET/rest/apigateway/is/kerberos : Retrieves the configured Kerberos settings from
API Gateway.
PUT/rest/apigateway/is/kerberos : Persists the configured Kerberos settings in
API Gateway.
GET/rest/apigateway/apitransactions/archives : Retrieves the details of existing archive files and response of this method would be the list of archive file names. You can select one of the archive file names returned by this method and use the POST /apitransactions/archives/{fileName} method to restore.
POST/rest/apigateway/apitransactions/archives : Archives the runtime events and metrics. You can additionally scope the archive data using input parameter filters. This method returns the job id as the response which is used to know the status of the job.
POST/rest/apigateway/apitransactions/archives/{fileName} : Restores the runtime data of the archive file that is specified. This method returns the job id as a response to track the status further.
GET/rest/apigateway/approvals/{approvalId} : Retrieves an approval request based on the approvalId.
DELETE/rest/apigateway/approvals/{approvalId} : Deletes an approval request based on the approvalId.
GET/rest/apigateway/approvals : Retrieves all approval requests pending for the user.
PUT/rest/apigateway/approvals/{approvalId}/{action} : Creates an approval request for the specified action.
GET/rest/apigateway/apitransactions/typedefinitions : Retrieves the list of runtime event types. The available event types are transactionalEvents, monitorEvents, errorEvents, performanceMetrics, threatProtectionEvents, lifecycleEvents, and policyViolationEvents. You can use these eventType to scope the archive or purge operation.
GET/rest/apigateway/is/jmsConnections : Retrieves a list of all the JMS connections in
API Gateway.
POST/rest/apigateway/is/jmsConnections : Creates a JMS connection in
API Gateway. The API request body must contain the payload for the JMS connection.
PUT/rest/apigateway/is/jmsConnections : Updates the JMS connections in
API Gateway.
GET/rest/apigateway/is/jmsConnections/{jmsConnId} : Retrieves the specified JMS connection in
API Gateway.
DELETE/rest/apigateway/is/jmsConnections/{jmsConnId} : Deletes the JMS connection based on the JMS connection ID that is specified in the path.
PUT/rest/apigateway/is/jmsConnections/{jmsConnId}/enable : Enables the specified JMS connection in
API Gateway.
PUT/rest/apigateway/is/jmsConnections/{jmsConnId}/disable : Disables the specified JMS connection in
API Gateway.
GET/rest/apigateway/licenseNotifications : Retrieves the latest notification issued for a transaction based license.
GET/rest/apigateway/approvalConfigurations: Retrieves a list of available approval configurations in
API Gateway.
POST/rest/apigateway/approvalConfigurations: Creates an approval configuration in
API Gateway.
GET/rest/apigateway/approvalConfigurations/{id}: Retrieves the details of a specified approval configuration in
API Gateway.
PUT/rest/apigateway/approvalConfigurations/{id}: Updates the details of a specified approval configuration in
API Gateway.
DELETE/rest/apigateway/approvalConfigurations/{id}: Deletes the specified approval configuration in
API Gateway.
POST/rest/apigateway/migration: Triggers a migration action and immediately returns a 202 status code. The clean action clears the data from the
API Gateway Data store, the reindex action re-indexes the data from the source Elasticsearch to
API Gateway Data store, and the transform action transforms the re-indexed assets in the
API Gateway Data store to be compatible with the current
API Gateway version. The clean action should be invoked on target
API Gateway server prior to invoking the reindex API for core indices. The current status of the action can be retrieved using /migration/status API. A webhook event with the migration status also would be sent to the subscribed webhook clients.
GET/rest/apigateway/migration/status: Retrieves the current status of the migration action which is invoked in
API Gateway.
GET/rest/apigateway/masterPassword: Retrieves the master password properties in
API Gateway.
PUT/rest/apigateway/masterPassword/setExpiry: Updates the expiry interval of the master password in
API Gateway.
PUT/rest/apigateway/masterPassword/update: Updates the master password in
API Gateway. On successful update, all the old passwords available will be encrypted using this new master password.
PUT/rest/apigateway/masterPassword/reset: Resets the master password to the default value in
API Gateway. This should be performed when the master password is lost and after a successful reset, Software AG recommends to change the master password again to a secure value.
GET/rest/apigateway/is/outboundproxy : Retrieves the list of all available outbound proxy server aliases in
API Gateway.
POST/rest/apigateway/is/outboundproxy : Creates the outbound proxy server alias in
API Gateway.
PUT/rest/apigateway/is/outboundproxy : Updates the outbound proxy server alias in
API Gateway.
DELETE/rest/apigateway/is/outboundproxy/{outboundproxyAlias} : Deletes the specified outbound proxy server alias from
API Gateway.
PUT/rest/apigateway/is/outboundproxy/{outboundproxyAlias}/enable: Enables an already existing outbound proxy server alias in
API Gateway.
PUT/rest/apigateway/is/outboundproxy/{outboundproxyAlias}/disable: Disables an already existing outbound proxy server alias in
API Gateway.
GET/rest/apigateway/is/license : Retrieves the license details from
API Gateway.
PUT/rest/apigateway/is/license : Updates the license details in
API Gateway.
GET/rest/apigateway/logAggregation/downloadLogs : Downloads logs from different components used by
API Gateway, server configurations, and thread dumps.
GET/rest/apigateway/webhooks : Retrieves the list of all webhooks in
API Gateway.
POST/rest/apigateway/webhooks : Creates a webhook in
API Gateway. The API request body must contain the payload of the webhook that needs to be saved.
GET/rest/apigateway/webhooks/{id} : Retrieves the details of a webhook in
API Gateway.
PUT/rest/apigateway/webhooks/{id} : Updates the details of a specific webhook in
API Gateway. The API request body must contain the payload of the webhook that needs to be updated.
DELETE/rest/apigateway/webhooks/{id} : Deletes a webhook resource from
API Gateway.
GET/rest/apigateway/apitransactions/jobs/{jobId} : Retrieves the status of a specific job. This method returns the status and file name (in case of archive process) as a response.
GET/rest/apigateway/apitransactions/jobs : Retrieves a list of pending jobs. Every time you initiate archive, restore or purge process you get the job id as a response. You can use the specific job id to query the status of the initiated operation.
GET/rest/apigateway/configurations/loadBalancer: Retrieves information about the load balancer configured.
PUT/rest/apigateway/configurations/loadBalancer: Updates the load balancer configuration information.
GET/rest/apigateway/configurations/whiteListingIPs: Retrieves the details of the whitelisting IPs configuration in
API Gateway.
PUT/rest/apigateway/configurations/whiteListingIPs: Updates the details of the whitelisting IPs configuration in
API Gateway.
GET/rest/apigateway/configurations/settings: Retrieves the list of the extended settings watt properties from
API Gateway.
PUT/rest/apigateway/configurations/settings: Updates or creates a list of the extended settings and watt properties in
API Gateway.
GET/rest/apigateway/configurations/apiCallBackSettings: Retrieves the API callback processor settings from
API Gateway.
PUT/rest/apigateway/configurations/apiCallBackSettings: Updates or creates API callback processor settings in
API Gateway. The user should have Manage general administration configurations privilege to update the API callback processor settings.
GET/rest/apigateway/configurations/errorProcessing: Retrieves the configured error template and the value of the property sendNativeProviderFault, which enables the server to forward the native error as it is.
PUT/rest/apigateway/configurations/errorProcessing: Updates the default error template with any custom templates and the value of the property sendNativeProviderFault.
GET/rest/apigateway/configurations/keystore: Retrieves the details of the default keystore, truststore and alias settings in
API Gateway.
PUT/rest/apigateway/configurations/keystore: Updates the details of the default keystore, truststore and alias configurations in
API Gateway.
GET/rest/apigateway/configurations/gatewayDestinationConfig: Retrieves the details of the
API Gateway destination.
API Gateway can publish events and performance metrics data. By default, error events, lifecycle events, policy violation event, and performance data are published to
API Gateway.
PUT/rest/apigateway/configurations/gatewayDestinationConfig: Updates the details of the
API Gateway destination in
API Gateway.
GET/rest/apigateway/configurations/auditlogDestinationConfig: Retrieves the details of the Audit Log destination in
API Gateway. Audit log captures the API runtime invocations performed in
API Gateway. The audit log data is written to a file or a database based on the configurations. Transactions events are written to the audit log only when the Audit Log is selected as a destination in Log Invocation policy.
PUT/rest/apigateway/configurations/auditlogDestinationConfig: Updates the details of the Audit Log destination in
API Gateway.
GET/rest/apigateway/configurations/centraSiteDestinationCommunicationConfig : Retrieves the communication details of the
CentraSite destination in
API Gateway.
API Gateway can publish events and metrics to the configured
CentraSite destination.
PUT/rest/apigateway/configurations/centraSiteDestinationCommunicationConfig : Updates the communication details of the
CentraSite destination in
API Gateway.
GET/rest/apigateway/configurations/centraSiteDestinationSNMPConfig : Retrieves the SNMP details of the
CentraSite destination in
API Gateway.
API Gateway can publish events and metrics to the configured
CentraSite destination.
PUT/rest/apigateway/configurations/centraSiteDestinationSNMPConfig : Updates the SNMP details of the
CentraSite destination in
API Gateway.
GET/rest/apigateway/configurations/jdbcDestinationConfig: Retrieves details of the Database destination in
API Gateway.
API Gateway can publish events and metrics to the configured database.
PUT/rest/apigateway/configurations/jdbcDestinationConfig: Updates the details of the database destination in
API Gateway.
GET/rest/apigateway/configurations/desDestinationConfig: Retrieves details of the Digital Events destination in
API Gateway. Digital Event Services (DES) enables
API Gateway to communicate by exchanging digital events. Digital events are typed and serialized data structures that are used to convey or record information about the execution of a runtime.
PUT/rest/apigateway/configurations/desDestinationConfig: Updates the details of the Digital Events destination in
API Gateway.
GET/rest/apigateway/configurations/elasticsearchDestinationConfig: Retrieves details of the Elasticsearch destination in
API Gateway.
API Gateway can publish events and metrics to the configured Elasticsearch destination.
PUT/rest/apigateway/configurations/elasticsearchDestinationConfig: Updates the details of the Elasticsearch destination in
API Gateway.
GET/rest/apigateway/configurations/snmpDestinationConfig: Retrieves details of the SNMP destination in
API Gateway.
API Gateway can publish events and metrics to the configured third party SNMP destination.
PUT/rest/apigateway/configurations/snmpDestinationConfig: Updates the details of the SNMP destination in
API Gateway.
GET/rest/apigateway/configurations/emailDestinationConfig: Retrieves details of the Email destination in
API Gateway.
API Gateway can send alerts to the email ID specified either in the Log Invocation, Monitor Performance, Monitor Level Agreement or Traffic Optimization policies through the configured Email destination.
PUT/rest/apigateway/configurations/emailDestinationConfig: Updates the details of the Email destination in
API Gateway.
GET/rest/apigateway/configurations/apiPortalDestinationConfig: Retrieves details of the API Portal destination configuration.
API Gateway can publish events and performance metrics data. By default, error events, lifecycle events, policy violation event, and performance data are published to API Portal.
PUT/rest/apigateway/configurations/apiPortalDestinationConfig: Updates the details of the API Portal destination in
API Gateway.
GET/rest/apigateway/configurations/cache: Retrieves the cache configuration in
API Gateway.
PUT/rest/apigateway/configurations/cache: Updates the cache configuration in
API Gateway.
GET/rest/apigateway/configurations/customContentTypes: Retrieves the configured custom content types in
API Gateway. Custom content types can be defined for base types XML,JSON and Text. These Custom types can be then used for payload processing in policies like Content based routing,Identify and access and Conditional error processing.
PUT/rest/apigateway/configurations/customContentTypes: Updates the configured custom content types in
API Gateway. The response is a set of key/value pair where key indicates the custom content type and value indicates the base type. The value can be application/xml or application/json or text/xml.
GET/rest/apigateway/configurations/ldapConfig: Retrieves the LDAP configuration settings configured in
API Gateway.
PUT/rest/apigateway/configurations/ldapConfig: Updates the LDAP configuration settings configured in
API Gateway.
GET/rest/apigateway/configurations/passwordRestrictions: Retrieves the password restrictions settings configured in
API Gateway.
PUT/rest/apigateway/configurations/passwordRestrictions: Saves the password restrictions settings configured in
API Gateway.
GET/rest/apigateway/configurations/passwordExpiry: Retrieves the password expiry settings configured in
API Gateway.
PUT/rest/apigateway/configurations/passwordExpiry: Saves the password expiry settings configured in
API Gateway.
GET/rest/apigateway/configurations/denyByIPForFailedAuthConfig: Retrieves the configuration of global IP access setting for authentication based restrictions in
API Gateway.
PUT/rest/apigateway/configurations/denyByIPForFailedAuthConfig: Saves the global IP access setting for authentication based restriction settings in
API Gateway.
GET/rest/apigateway/configurations/accountLockSettings: Retrieves the account lock settings configured in
API Gateway.
PUT/rest/apigateway/configurations/accountLockSettings: Saves the account lock expiry settings configured in
API Gateway.
GET/rest/apigateway/configurations/logConfig: Retrieves the log settings of various components used by
API Gateway.
PUT/rest/apigateway/configurations/logConfig: Updates the details of the log configuration in
API Gateway.
POST/rest/apigateway/assets/owner: Changes ownership of
API Gateway assets.
POST/rest/apigateway/assets/team: Changes the team of
API Gateway asset.
GET/rest/apigateway/urlaliases: Retrieves all URL Aliases or a URL Alias with a particular ID in
API Gateway (if the query parameter alias is provided).
POST/rest/apigateway/urlaliases: Creates a new URL alias in
API Gateway.
PUT/rest/apigateway/urlaliases: Updates an existing URL alias in
API Gateway.
DELETE/rest/apigateway/urlaliases: Deletes a URL alias in
API Gateway.
GET/rest/apigateway/is/cluster : Retrieves the configured cluster settings from
API Gateway.
PUT/rest/apigateway/is/cluster : Updates the cluster settings in
API Gateway.
GET/rest/apigateway/is/webServiceEndpoints : Retrieves list of all Webservice endpoints in
API Gateway.
POST/rest/apigateway/is/webServiceEndpoints : Creates a Webservice endpoint in
API Gateway. The API request body must contain the payload for the Webservice endpoint.
PUT/rest/apigateway/is/webServiceEndpoints : Updates the Webservice endpoint in
API Gateway.
GET/rest/apigateway/is/webServiceEndpoints/{webServiceEndpointId} : Retrieves the specified Webservice endpoint in
API Gateway.
DELETE/rest/apigateway/is/webServiceEndpoints/{webServiceEndpointId} : Deletes the specified Webservice endpoint in
API Gateway.
GET/rest/apigateway/apitransactions: Retrieves the API transactions data. The data to be downloaded is filtered based on the input parameters. The user should be part of API-Gateway-Administrators group or should have Manage purge and restore runtime events privilege to perform this operation.
DELETE/rest/apigateway/apitransactions: Purges the API transactions data and the data to be purged is filtered based on the input parameters. This method returns the job id as response and the job id is used to track the job status.
GET/rest/apigateway/configurations/jsonWebToken: Retrieves the details of the
API Gateway JSON Web Token (JWT) configuration.
API Gateway can generate a JWT itself or validate the JWT generated by a trusted third party server. JWT is a JSON-based open standard (RFC 7519) means of representing a set of information to be securely transmitted between two parties. A set of information is the set of claims (claim set) represented by the JWT. A claim set consists of zero or more claims represented by the name-value pairs, where the names are strings and the values are arbitrary JSON values.
PUT/rest/apigateway/configurations/jsonWebToken: Updates the details of the JWT configuration in
API Gateway.
For details about the REST API, see the APIGatewayAdministration.json at SAGInstallDir/IntegrationServer/instances/default/packages/WmAPIGateway/resources/apigatewayservices.