API Management 10.4 | Using API Gateway | API Gateway Administration | General Configuration | Configuring Extended Settings
 
Configuring Extended Settings
You must have the API Gateway's manage user administration functional privilege assigned to configure the extended settings.
You can configure advanced parameter settings in the Extended settings section. These parameters affect the operation of your server. You must not change these settings unless requested to do so by Software AG Global Support. You can configure the watt parameter settings in this section.
* To configure the extended settings
1. Expand the menu options icon , in the title bar, and select Administration.
2. Select General > Extended settings.
3. Click Show and hide keys. This displays all the configurable parameters.
4. You can configure any of the following parameters in the Extended keys section by providing the required values. The configured values are listed under Extended settings at the top of the page.
Parameter and Description
allowExceedMaxWindowSize
Provide the value true to exceed the maximum window size configured and false to avoid exceeding the maximum window size.
The default value is true.
apiDocumentsRestrictedExtension
Specify a list of restricted file extensions to prevent users from uploading files with those extensions as the input document to API. For example, a file with the .exe file extension could contain executable code that run on demand when it is downloaded. If files with the .exe file extension are restricted, users cannot upload a file with the .exe extension in API Gateway.
By default, several standard file extensions are blocked, including any file extensions that are treated as executable files by Windows Explorer. The file extensions blocked by default are:
*.bat - Batch file
*.bin - Binary file
*.dll - Windows dynamic link library
*.exe - Executable program
apiDocumentsUploadSizeLimitInMB
Provide a value (in MB) to restrict the size of the document that can be uploaded as the input document to API. It is important to set this to a reasonable limit, but not too large to avoid uploading files that are too large and can slow down the system.
Default value is 5.
apig_MENConfiguration_tickInterval
Provide a value to specify the time interval (in seconds) between each interval processor iteration. This must be an evenly divisible fraction of the smallest policy interval, which is one minute.
Default value is 15.
If you have configured the result window size in elastic search, specify the configured value to fetch results accordingly.
apig_rest_service_redirect
Provide the value true to redirect the incoming service requests to one of the following directives that API Gateway supports in addition to the /gateway directive:
*/ws
*/mediator
The default value is false.
apig_schemaValidationPoolSize
Provide a value that specifies the schema validation pool size.
The default value is 10.
apiGroupingPossibleValues
Specifies the groups that the APIs would be grouped under.
The default groups provided are Finance Banking and Insurance,Sales and Ordering,Search,Transportation and Warehousing
You can delete or add new groups that the APIs can be grouped under.
apiKeyExpirationPeriod
Specifies the length of time that the API key is valid. The key expires after the set number of minutes, hours, days, months, or years. If a value is not specified, then the API key never expires. The expiration date is computed as follows:
*When a new application is created: Expiration date = The time when an application is created + The value specified in the apiKeyExpirationPeriod parameter.
*When an API access key is regenerated: Expiration date = The current time of the application in the system + The value specified in the apiKeyExpirationPeriod parameter.
apiKeyHeader
Provide the header value from which API Gateway receives the API key.
The default value is x-Gateway-APIKey
apiMaturityStatePossibleValues
Specify the API maturity state values that can be set for an API.
The default values provided are Beta, Deprecated, Experimental, Production, Test.
backupSharedFileLocation
Provide the file location where the data backup file has to be archived.
If no path is provided the archive the backup file is archived in the temp folder of the system.
customCertificateHeader
Specifies the header name of the request header in which the client certificate can be passed. API Gateway checks for the existence of this header and fetches the certificate and identifies the application.
The default value is X-Client-Cert.
The certificate passed in the header should be Base64Encoded or the certificate chain passed in the header should be Base64Encoded .pem format.
decodeAllDelimitersInURI
The default value is false.
When set to false the URI in the request is not decoded.
When set to trueit overrides the limiters and decodes the complete path to get a meaningful URI.
defaultEncoding
Specify the default encoding format.
The default value is UTF-8.
defaultLanguage
Specifies the display language for the user interface of API Gateway. You can change the display language to your preferred language at any time.
The default value is en.
enableHotdeploy
This parameter is used to enable hot deploy function in API Gateway.
The default value is true, which means the hot deployment functionality is enabled.
You can change the value to false if you want to disable hot deployment.
Note: Enabling or disabling hot deploy requires a browser refresh to reflect the changed UI behavior to ongoing user sessions.
esScrollTimeout
Provide a value that specifies the time out interval for fetching the result that is greater than maxWindowSize.
Default value is the time, in milliseconds, required to fetch the records specified in maxWindowSize.
events.collectionPool.maxThreads
Provide a value that specifies the maximum number of threads to be used for event data collection. This value must be greater than or equal to the value of events.CollectionPool.minThreads.
Default value is 8.
events.collectionPool.minThreads
Provide a value that specifies the minimum number of threads to be used for event data collection. Specifying more threads means that API Gateway can collect more data faster, but it increases the usage of system resources, which could result in slower service execution.
Default value is 1.
events.collectionQueue.size
Provide a value that specifies the size of the collection work queue to be used during event data collection. This queue is used only when there are not enough collection pool threads to process all the data. For example, if event.CollectionPool.maxThreads is set to 10 and the 10 threads are not sufficient for processing all the data, then the unprocessed data is put into the collection work queue. If the queue capacity is reached, then any additional data is lost.
Default value is 10000 items of data allowed in the queue.
Specifying a large queue and a small collection pool minimizes CPU usage and operating system resources, but this can lead to low throughput which causes delays in data collection. Using a small collection work queue generally requires larger collection pool sizes, which keeps CPUs busier. This avoids the delay but may encounter unacceptable scheduling overhead, which also decreases service execution.
events.reportingPool.maxThreads
Provide a value that specifies the maximum number of threads to be used for event data reporting. This value must be greater than or equal to the value of events.ReportingPool.minThreads.
Default value is 4.
events.reportingPool.minThreads
Provide a value that specifies the minimum number of threads to be used for event data reporting. Specifying more threads means that API Gateway can send more events to the event destination faster, but it also increases the usage of system resources, which could result in slower service execution.
Default value is 2.
events.reportingQueue.size
Provide a value that specifies the size of the reporting work queue to be used during event data reporting. This queue is used only when there are not enough reporting pool threads to process all the data to be reported. For example, if events.ReportingPool.maxThreads is set to 10, and the 10 threads are not sufficient for processing all the data, then the unprocessed data is put into the reporting work queue. If the queue capacity is reached, then any additional data is lost.
Default value is 5000 items of data allowed in the queue.
Specifying a large queue and a small reporting pool minimizes CPU usage and operating system resources, but this can lead to low throughput which causes delays in data reporting. Using a small reporting work queue generally requires larger reporting pool sizes, which keeps CPUs busier. This avoids the delay but may encounter unacceptable scheduling overhead, which also decreases service execution
forwardInternalAPIsRequest
This parameter is required in the case of a paired gateway deployment scenario using an Advanced Edition license at DMZ.
The default value is false.
Provide the value true to forward the incoming requests to internal APIs that are deployed in the green zone.
Following are the internal APIs and their URIs for which this parameter is required and its value must be set to true:
*getOAuthToken - /pub/apigateway/oauth2/getAccessToken
*OAuth Authorization - /pub/apigateway/oauth2/authorize
*getOpenIdToken - /pub/apigateway/openid/getOpenIDToken
*openIDCallbackService - /pub/apigateway/openid/openIDCallback
*getJWTToken - /pub/apigateway/jwt/getJsonWebToken
invokeESB_asUser
Provide a User. This user then can run all IS services in API Gateway.
If Run as User is included in the Invoke webMethods IS service policy then that value overrides the User provided here.
If no value is set is either of the places the authenticated user can run the IS service.
maxAllowedZipFileSize
Provide a value to specify the maximum zip file size allowed.
The default value is 100000000.
maxBackupsLimit
Provide a value to specify the maximum number of backups that are archived.
The default value is 10. If you do not provide any value the infinite number of archives can be stored.
maxWindowSize
Provide a value to set the result window size that specifies the number of records per query.
Default value is 10000.
paginationPossibleValues
Specifies the list of possible values of the pagination size, that is, number of items listed per page.
The default values displayed for pagination options are 10,20,30,40,50. For example, if you select 20, then 20 items are displayed per page.
For example, if you change the values to 5,10,15,20,25 then pagination options displayed are 5, 10, 15, 20 and 25. So now when you select 15, the items displayed per page would be 15.
On modifying the value, you have to logout and re-login for the changes to reflect.
pg_Active_OpenID_Provider
Specifies the unique identifier (ID) of an active OpenID Provider.
pg_Cache_autoScalerRunInterval
Specifies the run interval in minutes for the autoScaler thread.
The default value is 60 minutes.
pg_Cache_averageObjectSize
This setting is used to convert cache size from object count to bytes.
The default value is 64.
Software AG recommends you not to modify this value.
pg_Cache_boundedCacheResizeRunInterval
Specifies the run interval in minutes for the boundedCacheResize thread.
The default value is 30 minutes.
pg_Cache_maxCacheSize
Specifies the maximum cache size. This is set for an unbounded cache.
The default value is 1048576
pg_Cache_minCachePercent
Specifies the minimum cache percent computed from the minimum cache size. If the computed value goes below this value it resets to this value.
The default value is 20.
pg_Cache_minCacheSize
Specifies the minimum cache size in terms of number of objects. If the cache size is lesser than this value, it resets to this value.
The default value is 1024.
pg_Cache_statisticsProcessorRunInterval
Specifies the run interval in minutes for the statisticsProcessor thread.
The default value is 15 minutes.
pg_JWT_isHTTPS
Provide a value to specify the transport protocol over which the JSON Web Tokens (JWTs) are granted authorization.
Available values are:
*true. Sets the transport protocol HTTPS. This is set by default.
*false. Sets the transport protocol HTTP.
pg_oauth2_isHTTPS
Provide a value to specify the transport protocol over which the OAuth 2.0 access tokens are granted authorization.
Available values are:
*true. Sets the transport protocol HTTPS. This is set by default.
*false. Sets the transport protocol HTTP.
pg_OpenID_isHTTPS
Provide a value to specify the transport protocol over which the OpenID (ID) tokens are granted authorization.
Available values are:
*true. Sets the transport protocol HTTPS. This is set by default.
*false. Sets the transport protocol HTTP.
pg_xslt_disableDoctypeDeclarations
Disables the xslt doc type declarations.
The default value is true.
pg_xslt_enableDOM
Provide the value true to enable DOM parsing.
The value false disables the DOM parsing and enables other parsers
pg_xslt_enableSecureProcessing
Provide the value false to disable the use of extensions by default.
The default value is true.
pg.3pSnmpSender.sendDelay
This is an internal parameter. Do not modify.
pg.cs.snmpTarget.base64Encoded
This is an internal parameter. Do not modify.
pg.cs.snmpTarget.connTimeout
Specify the number of milliseconds before an inactive connection to the SNMP target server is closed. If set to 0, the socket remains open indefinitely.
pg.cs.snmpTarget.maxRequestSize
Specify the maximum size (in bytes) for SNMP traps.
The default value is 10485760.
pg.cs.snmpTarget.retries
Specify the number of times to resend SNMP traps upon failure.
The default value is 1.
This parameter works with pg.cs.snmpTarget.sendTimeOut to determine the delay in re-sending SNMP traps to malfunctioning SNMP servers (that is, it retries*sendTimeOut). This means that if the retries parameter is set to 3, and the sendTimeOut parameter is set to 500 milliseconds, there is a 1.5 second delay before the thread sending the alert is available to send another event. Malfunctioning event destinations could delay the amount of time it takes API Gateway to report events, or it could cause discarded events when the queue reaches its maximum level.
pg.cs.snmpTarget.sendTimeOut
Specify the time (in milliseconds) to wait before the SNMP trap times out because the server destination is not responding.
This value schedules a timer that resends an SNMP event that has not yet completed when it expires. You must set a timeout value that ensures that the trap is sent to the SNMP server within the time frame. This parameter does not abort an event that is in progress. Set this parameter higher than the default when sending traps with large payloads. The default value is 500.
This parameter works with pg.cs.snmpTarget.retries to determine the delay in resending SNMP traps to malfunctioning SNMP servers (that is, it retries *sendTimeOut). This means that if the retries parameter is set to 3, and the sendTimeOut parameter is set to 500 milliseconds, there is a 1.5 second delay before the thread sending the alert is available to send another event. Malfunctioning event destinations could delay the amount of time it takes API Gateway to report events, or it could cause discarded events when the queue reaches its maximum level.
pg.endpoint.connectionTimeout
Specifies the time interval (in seconds) after which an HTTP connection attempt times out. Default: 30 seconds.
This is a global property that applies to the endpoints of all APIs. If you prefer to specify a connection timeout for the endpoints of an API individually, set the HTTP Connection Timeout parameter in the API's Routing Protocols processing step, which would then take precedence over pg.endpoint.connectionTimeout.
The precedence of the Connection Timeout configuration is as follows:
a. If you specify a value for the Connection timeout field in routing endpoint alias, then the Connection timeout value specified in the Endpoint alias section takes precedence over the timeout values defined at the API level and the global level.
b. If you specify a value 0 for the Connection timeout field in routing endpoint alias, then API Gateway uses the value specified in the Connection timeout field in the routing protocol processing step of an API. The Read Timeout value specified at an API level takes precedence over the global configuration.
c. If you specify a value 0 or do not specify a value for the Connection timeout field in the routing protocol processing step at the API level or specify a value 0 at an alias level, then API Gateway uses the value specified in this pg.endpoint.connectionTimeout property.
d. If you do not specify any value for pg.endpoint.connectionTimeout, then API Gateway uses the default value of 30 seconds.
pg.endpoint.readTimeout
Specifies the time interval (in seconds) after which a socket read attempt times out. Default value: 30 seconds.
This is a global property that applies to all APIs. If you prefer to specify a read timeout for APIs individually, set the Read Timeout field in the API's's Routing Protocols processing step, which would then take precedence over pg.endpoint.readTimeout.
The precedence of the Read Timeout configuration is as follows:
a. If you specify a value for the Read timeout field in routing endpoint alias, then the Read timeout value specified in the Endpoint alias section takes precedence over the timeout values defined at the API level and the global level.
b. If you specify a value 0 for the Read timeout field in routing endpoint alias, then API Gateway uses the value specified in the Read Timeout field in the routing protocol processing step of an API. The Read Timeout value specified at an API level takes precedence over the global configuration.
c. If you specify a value 0 or do not specify a value for the Read timeout field in the routing protocol processing step at the API level or specify a value 0 at an alias level, then API Gateway uses the value specified in this pg.endpoint.readTimeout property.
d. If you do not specify any value for pg.endpoint.readTimeout, then API Gateway uses the default value of 30 seconds.
pg.lb.failoverOnDowntimeErrorOnly
Specify API Gateway's behavior for load-balanced endpoints. The default value is true, which means that API Gateway fails over only if the service fault is a downtime error. If the parameter is set to false, then in a load-balanced routing scenario, if a service fault is encountered in the response coming from endpoint 1, then API Gateway immediately tries the next configured endpoint. There is no distinction on the type of fault present in the response from endpoint 1.
pg.snmp.communityTarget.base64Encoded
Specify whether to use a third-party SNMPv1 community-based connection.
If set to true, the community name must be the Base64 value.
The default value is false.
pg.snmp.communityTarget.maxRequestSize
Specifies the maximum size (in bytes) for SNMP traps.
The default value is 65535.
pg.snmp.communityTarget.retries
Specify the number of times to resend SNMP traps upon failure.
The default value is 1.
This parameter works with pg.snmp.communityTarget.sendTimeOut to determine the delay in re-sending SNMP traps to malfunctioning SNMP servers (that is, it retries *sendTimeOut). This means that if the retries parameter is set to 3, and the sendTimeOut parameter is set to 500 milliseconds, there is a 1.5 second delay before the thread sending the alert is available to send another event. Malfunctioning event destinations could delay the amount of time it takes API Gateway to report events, or it could cause discarded events when the queue reaches its maximum level.
pg.snmp.communityTarget.sendTimeOut
Specify the time (in milliseconds) to wait before the SNMP trap times out because the server destination is not responding. This value schedules a timer that resends an SNMP event that has not yet completed when it expires. You must set a timeout value that ensures that the trap is sent to the SNMP server within the time frame. This parameter does not abort an event that is in progress. Set this parameter higher than the default when sending traps with large payloads.
The default value is 500.
This parameter works with pg.snmp.communityTarget.retries to determine the delay in re-sending SNMP traps to non-responsive SNMP servers (that is, it retries *sendTimeOut). This means that if the retries parameter is set to 3, and the sendTimeOut parameter is set to 500 milliseconds, there is a 1.5 second delay before the thread sending the alert is available to send another event. Malfunctioning event destinations could delay the amount of time it takes API Gateway to report events, or it could cause discarded events when the queue reaches its maximum level.
pg.snmp.customTarget.connTimeout
Specify the number of milliseconds before an inactive connection to the third-party SNMP server is closed. If set to 0, the socket remains open indefinitely.
pg.snmp.userTarget.maxRequestSize
Specify the maximum size (in bytes) for SNMP traps.
The default value is 65535.
pg.snmp.userTarget.retries
Specify the number of times to resend SNMP traps upon failure.
The default value is 1.
This parameter works with pg.snmp.userTarget.sendTimeOut to determine the delay in re-sending SNMP traps to malfunctioning SNMP servers (that is, it retries *sendTimeOut). This means that if the retries parameter is set to 3, and the sendTimeOut parameter is set to 500 milliseconds, there is a 1.5 second delay before the thread sending the alert is available to send another event. Malfunctioning event destinations could delay the amount of time it takes API Gateway to report events, or it could cause discarded events when the queue reaches its maximum level.
pg.snmp.userTarget.sendTimeOut
Specifies the time (in milliseconds) to wait before the SNMP trap times out because the server destination is not responding. This value schedules a timer that resends an SNMP event that has not yet completed when it expires. You must set a timeout value that ensures that the trap is sent to the SNMP server within the time frame. This parameter does not abort an event that is in progress. Set this parameter higher than the default when sending traps with large payloads.
The default value is 500.
This parameter works with pg.snmp.userTarget.retries to determine the delay in resending SNMP traps to malfunctioning SNMP servers (that is, it retries *sendTimeOut). This means that if the retries parameter is set to 3, and the sendTimeOut parameter is set to 500 milliseconds, there is a 1.5 second delay before the thread sending the alert is available to send another event. Malfunctioning event destinations could delay the amount of time it takes API Gateway to report events, or it could cause discarded events when the queue reaches its maximum level.
pg.uddiClient.publish.maxThreads
Specify the maximum allowed number of threads to publish the performance metrics data to CentraSite.
The default value is 2.
pg.uddiClient.uddiClientTimeout
Specify the number of milliseconds that can elapse before not publishing performance metrics to an unavailable API Gateway instance.
The default value is 5000.
pgmen.quotaSurvival.addLostIntervals
Specifies if the lost intervals from the recovered quota should be added.
pgmen.quotaSurvival.interval
Specifies the number of seconds that elapses before the quota survival processor task runs.
portClusteringEnabled
Provide the value true to enable port configuration synchronization across API Gateway cluster nodes.
The default value is true. Providing the value as false disables port configuration synchronization across API Gateway cluster nodes.
Note: Restart all the cluster nodes, when you change this parameter, for the changes to take effect.
retainResponseStatus
Specifies whether the native service status has to be modified before sending it to client.
The default value is false, which specifies that if the outbound authentication-custom credentials or delegate incoming credentials are configured with incorrect credentials the native service status is changed before sending it to client.
If this value is set to true, it specifies that the status received from the native service is sent without modifying it.
saveAuditlogsWithPayload
Specifies whether the audit logs have to be saved along with payload.
The default value is true, which specifies that the audit logs have to saved with payload.
The value false specifies that audit logs are not saved with payload.
sendClientRequestURI
The default value is false.
Decodes the URI that comes in a request to API Gateway without changing the path of the URL before sending it out to the native service.
When the value is set to true the URI is sent as is without decoding. It encodes the unicode character contained in the request.
setDefaultContentType
Specifies that default content type is set.
The default value is true
strictResourceMatching
Specifies the resource matching criteria.
The default value is true, which specifies that API Gateway uses the strict resource matching criteria and does and the matching fails if it encounters any other characters than that are specified.
If the value is set to false, it specifies that API Gateway matches the best resource instead of using the strict resource matching criteria.
transformerPoolSize
Provide the transformer pool size.
5. You can configure the watt parameters in the Watt keys section by providing the required values.
The configured watt keys are listed under Watt settings below the Extended keys at the top of the page.
Note: If you modify the watt parameters in one API Gateway instance they do not get synchronized across other nodes in a cluster setup. You have to manually modify them in the other instances.
6. Click Save.

Copyright © 2015- 2019 | Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, USA, and/or its subsidiaries and/or its affiliates and/or their licensors.
Innovation Release