Shared Web Server Object
The Shared Web Server object details the configuration settings for a Runtime's Shared Web Server. It includes various fields to specify security, performance, and connectivity attributes. The configuration can be managed using GET and UPDATE operations, and the data can be represented in XML or JSON formats.
XML object: SharedWebServer
<xs:element name="SharedWebServer" type="SharedWebServer"/>
<xs:complexType name="SharedWebServer">
<xs:complexContent>
<xs:extension base="BaseType">
<xs:sequence>
<xs:element name="atomId" type="xs:string"/>
<xs:element name="generalSettings" type="SharedWebServerGeneral"/>
<xs:element name="cloudTennantGeneral" type="SharedWebServerCloudTennantGeneral"/>
<xs:element name="userManagement" type="SharedWebServerUserManagement"/>
<xs:element name="corsConfiguration" type="SharedWebServerCors"/>
</xs:sequence>
<xs:attribute name="shouldRestartPlugin" type="xs:boolean" default="false" maxOccurs="1"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
| Field | Type | Description |
|---|---|---|
atomId | string | The ID of the Runtime that is hosting the Shared Web Server. |
generalSettings | object | This field is used for Cloud and Atom or Runtime cluster. For Cloud Attachment, use cloudTennantGeneral. Connection and authentication settings for this container. |
cloudTennantGeneral | object | This field is used for the cloud Attachement. |
userManagement | object | User credentials and access configuration. Applicable only if the apiType is set to Intermediate or Advanced. |
corsConfiguration | object | Defines rules for handling incoming CORS requests. It is present only if the apiType is set to Advanced. |
shouldRestartPlugin | boolean | Specifies whether the Shared Web Server plugin should be restarted. If set to false, the settings will be saved, but will not be applied until the plugin is restarted. |
General Setting: Runtime, Cloud, Molecule
XML object: SharedWebServerGeneral
<xs:complexType name="SharedWebServerGeneral">
<xs:sequence>
<xs:element name="apiType" type="xs:string"/>
<xs:element name="authentication" type="SharedWebServerAuthentication"/>
<xs:element name="overrideUrl" type="xs:boolean"/>
<xs:element name="baseUrl" type="xs:string"/>
<xs:element name="examineForwardHeaders" type="xs:boolean" minOccurs="0"/>
<xs:element name="externalHost" type="xs:string"/>
<xs:element name="internalHost" type="xs:string"/>
<xs:element name="listenerPorts" type="ListenerPortConfiguration"/>
<xs:element name="maxNumberOfThreads" type="xs:int" minOccurs="0"/>
<xs:element name="protectedHeaders" type="SharedWebServerProtectedHeaders"/>
<xs:element name="sslCertificate" type="xs:string"/>
</xs:sequence>
</xs:complexType>
| Field | Type | Description |
|---|---|---|
apiType | string | Basic - User management is disabled. Client certificates and Custom authentication cannot be used, and API Service/Proxy components cannot be used. Intermediate - User management is enabled at the individual process level. API Service/Proxy components cannot be used. Advanced- API Service/Proxy components are enabled. User management is enabled at the API Service component level. This is the default for new accounts for which the API Management feature is enabled. |
authentication | string | Specifies the structure and components required to configure the authentication for a Shared Web Server. For more information, refer to (Authentication)[#Authentication]. |
overrideUrl | boolean | Set to true if you are behind a load balancer or a firewall and need to use the load balancer or firewall address in the API URLs displayed on API Management screens. |
baseUrl | string | Can be modified only when the overrideUrl is true. If overrideUrl is set to false, on a container that supports multiple authentication types baseUrl will use the port number of the listener with defaultPort field set to true. |
listenerPorts | type | Listening port configuration for the Shared Web Server. For more information, refer to Listeners Port. |
examine Forward Headers | boolean | If set to true, the server will examine forwarded headers and extract external host information for response/callback purposes. |
externalHost | string | The hostname will be used in the URL when accessing your APIs from outside your company's firewall or through a load balancer. |
internalHost | string | On multi-homed boxes, it provides the network interface to which the Shared Web Server is bound. It defaults to the host name. |
maxNumberOfThreads | integer | The maximum number of handler threads that the listen process spawns. Other requests are queued. The default is 250. |
protectedHeaders | array | The protected header values in web service requests are not passed as dynamic document properties to the Shared Web Server listener process execution. For more information, refer to Protected Headers. |
The sample response body for the General Setting:
{
"@type": "SharedWebServer",
"atomId": "8f4c9283-695e-4c9b-963e-b66805832f68",
"generalSettings": {
"@type": "SharedWebServerGeneral",
"apiType": "INTERMEDIATE",
"authentication": {
"@type": "SharedWebServerAuthentication",
"authType": "BASIC",
"cacheAuthorizationCredentials": false
},
"overrideUrl": false,
"baseUrl": "http://cloudAtmSWS:9090",
"examineForwardHeaders": false,
"externalHost": "",
"internalHost": "",
"listenerPorts": {
"@type": "ListenerPortConfiguration",
"port": [
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 8080,
"ssl": true,
"authType": "CLIENT_CERT",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
},
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9090,
"ssl": false,
"authType": "BASIC",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
}
]
},
"maxNumberOfThreads": 250,
"protectedHeaders": {
"@type": "SharedWebServerProtectedHeaders"
},
"sslCertificate": ""
}
Cloud Tennant General
This section is used to configure Shared Web Server options for cloud tenants (Atom in the cloud). Cloud tenants can only change apiType and authType.
XML object: SharedWebServerCloudTennantGeneral
<xs:complexType name="SharedWebServerCloudTennantGeneral">
<xs:sequence>
<xs:element name="apiType" type="xs:string"/>
<xs:element name="baseUrl" type="xs:string"/>
<xs:element name="authType" type="xs:string"/>
<xs:element name="listenerPorts" type="ListenerPortConfiguration"/>
</xs:sequence>
</xs:complexType>
| Field | Type | Description |
|---|---|---|
apiType | string | Basic - User management is disabled. Client certificates and Custom authentication cannot be used, and API Service/Proxy components cannot be used. Intermediate - User management is enabled at the individual process level. API Service/Proxy components cannot be used. Advanced- API Service/Proxy components are enabled. User management is enabled at the API Service component level. This is the default for new accounts for which the API Management feature is enabled. |
baseUrl | string | Read-only field for the cloud tenant. The baseUrl depends on the authentication method selected for the atom in the cloud. |
authType | string | The authType must correspond to the authType specified for one of the listenerPorts configured on the cloud. To find out what options are configured, execute a GET request.The response includes all listener ports and their authentication type in the listenerPort field.The authtype options are None, Basic, Client Certificate, Client Certificate Header, Custom, and Gateway values. |
listenerPorts | type | Read only fields. Returns the list of listener ports configured on the cloud that the Atom is set up on.For more information, refer to Listeners Port. |
The sample response body for the Cloud Tennant General:
{
"@type": "SharedWebServer",
"atomId": "fb9e636c-f49f-4d8d-a92e-c47e69fed077",
"cloudTennantGeneral": {
"@type": "SharedWebServerCloudTennantGeneral",
"apiType": "ADVANCED",
"baseUrl": "http://dev_cloud:9090",
"authType": "BASIC",
"listenerPorts": {
"@type": "ListenerPortConfiguration",
"port": [
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9090,
"ssl": false,
"authType": "BASIC",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
},
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9140,
"ssl": false,
"authType": "BASIC",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
},
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9660,
"ssl": false,
"authType": "GATEWAY_BOOMITOKEN",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
}
]
}
}
Authentication
XML object: SharedWebServerAuthentication
<xs:complexType name="SharedWebServerAuthentication">
<xs:sequence>
<xs:element name="authType" type="xs:string"/>
<xs:element name="clientCertificateHeaderName" type="xs:string"/>
<xs:element name="loginModuleClassName" type="xs:string"/>
<xs:element name="cacheAuthorizationCredentials" type="xs:boolean"/>
<xs:element name="cacheAuthenticationTimeout" type="xs:long"/>
<xs:element name="loginModuleOptions" type="SharedWebServerLoginModuleConfiguration"/>
</xs:sequence>
</xs:complexType>
| Field | Type | Description |
|---|---|---|
authType | string | The authType of the authentication must correspond to one of the authType specified in the listener port. The possible values are as follows. NONE. BASIC. CLIENT_CERT. CLIENT_CERT_HEADER. CUSTOM. EXTERNAL_DELEGATE. GATEWAY_BOOMITOKEN. When set to CUSTOM, the following fields are available. cacheAuthenticationTimeout. loginModuleClassName. cacheAuthorizationCredentials. When set to CLIENT_CERT_HEADER, the following fields are available. clientCertificateHeaderName. |
clientCertificateHeaderName | string | The name of the header in which the certificate resides. This field is required if any of the listener ports is using CLIENT_CERT_HEADER authentication. |
loginModuleClassName | string | The JAAS LoginModule is used for authentication. JAAS (Java Authentication and Authorization Service) loginModuleClassName of the external authentication source that you are using. This field is required if any of the listeners is using the CUSTOM authentication type. |
cacheAuthorizationCredentials | boolean | If true, the authentication credentials are stored in the cache. It will not be stored in the cache if set to false. This field is used only if any listeners are configured with CUSTOM auth type. |
cacheAuthenticationTimeout | long | The amount of time for which credentials will be stored in the cache. This field is used only if any listeners are configured with CUSTOM auth type. |
Listeners Port
XML object: SharedWebServerPort
<xs:complexType name="SharedWebServerPort">
<xs:sequence>
<xs:element name="enablePort" type="xs:boolean"/>
<xs:element name="port" type="xs:int"/>
<xs:element name="ssl" type="xs:boolean"/>
<xs:element name="authType" type="xs:string"/>
<xs:element name="externalPort" type="xs:int"/>
<xs:element name="externalSSL" type="xs:boolean"/>
<xs:element name="defaultPort" type="xs:boolean"/>
<xs:element name="baseUrlForRequest" type="xs:string"/>
</xs:sequence>
</xs:complexType>
| Field | Type | Description |
|---|---|---|
enablePort | boolean | When the enable port is set to true, the port will be active. |
port | integer | HTTP port number for this listener. Valid numbers are in the range from 1 to 65535. For Atom and Cloud, the port field is mandatory. |
ssl | boolean | If selected, the port is an SSL (HTTPS) port. |
authType | string | The possible values are as follows. NONE. BASIC. CLIENT_CERT. CLIENT_CERT_HEADER. CUSTOM. EXTERNAL_DELEGATE. GATEWAY_BOOMITOKEN. |
externalPort | integer | If the externalPort value is non-zero in any of the listenerPorts, the externalHost field in generalSettings should be specified. |
externalSSL | boolean | When esternalSSL is set to true, the external port becomes an SSL (HTTPS) port. These external SSL ports can be redirected to an internal non-SSL port. |
defaultPort | boolean | The defaultPort is used to select a port to access Swagger Visualization Portal. This field is used only for containers that support multiple authentication modes, i.e., Cloud and Runtime. |
baseUrlForRequest | string | The baseURL for API requests is on this port. If the externalHost and externalPort are not specified, the baseUrlForRequest will be set to the hostname of the Atom followed by the port number (For example, http://atom2:9090). |
User Management
Manage or query users and their access rights to the APIs accessible on the Shared Web Server.
User management is available only if apiTpe is set to Intermediate, Basic, or Advanced.
XML object: SharedWebServerUserManagement
<xs:complexType name="SharedWebServerUserManagement">
<xs:sequence>
<xs:element name="enableAPIMInternalRoles" type="xs:boolean"/>
<xs:element name="users" type="SharedWebServerUser" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
| Field | Type | Description |
|---|---|---|
enableAPIMInternalRoles | boolean | Manages internal roles through the Internal Roles Management, which is available only when the apiType is Advanced. Note: Internal roles is a deprecated functionality and is only available in accounts that were previously using it. |
users | array | A list of users for this Shared Web Server. |
username | string | A web service user's unique username. The format is any string, cannot be blank, cannot have spaces or special characters. |
usingIPFilters | boolean | Enables IP filtering. Allows blocking or allowing access based on specified IP address patterns. |
useAPIFiltering | boolean | This allows access to API Service components linked to specific processes deployed on the selected Atom or environment. It is available when the apiType is Advanced. |
UseProcessFiltering | boolean | This allows access to specific web service listener processes deployed on the selected Atom or environment. It is available when the API Type is set to Intermediate. |
The sample response body for the User Management:
"userManagement": {
"@type": "SharedWebServerUserManagement",
"enableAPIMInternalRoles": false,
"users": [
{
"@type": "SharedWebServerUser",
"roleAssociations": [],
"username": "boomi-internal",
"usingIPFilters": false,
"usingComponentFilters": false
}
]
},
CorsConfiguration
The CORS Configuration defines rules for handling incoming CORS requests. This can only be updated if the apiType is Advanced.
XML object: SharedWebServerCORSOrigin
<xs:complexType name="SharedWebServerCORSOrigin">
<xs:sequence>
<xs:element type="xs:int" name="ports" minOccurs="0" maxOccurs="unbounded"/>
<xs:element type="xs:string" name="allowRequestHeaders" minOccurs="0" maxOccurs="unbounded"/>
<xs:element type="xs:string" name="allowResponseHeaders" minOccurs="0" maxOccurs="unbounded"/>
<xs:element type="xs:string" name="allowMethods" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="EnableHTTPRequestHandling" type="xs:boolean" default="false" maxOccurs="1"/>
<xs:element name="EnableHTTPSRequestHandling" type="xs:boolean" default="false" maxOccurs="1"/>
<xs:element name="allowCredentials" type="xs:boolean" default="false" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="domain" type="xs:string" use="required" />
<xs:attribute name="cacheTimeout" type="xs:long" />
</xs:complexType>
| Field | Type | Description |
|---|---|---|
ports | array | A list of ports allowed for requests coming from the chosen source. If empty, default ports (80 for HTTP and 443 for HTTPS) are permitted. |
allowed Methods | array | A lists of HTTP methods allowed in the requests from this origin. |
allowed Request Headers | array | A list of headers allowed in requests from this origin. |
exposed Response Headers | array | A list of headers included in the responses from this origin. |
SharedWebServerCORS
| Field | Type | Description |
|---|---|---|
origins | array | A list of origins for matching cross-server requests. The wildcard character is permitted. The origins will be matched in the order specified in the list. The lone wildcard character denotes any domain and if used, should be last in the list. |
The sample response body for the CorsConfugration:
"corsConfiguration": {
"@type": "SharedWebServerCors",
"origins": [
{
"@type": "SharedWebServerCORSOrigin",
"ports": [
9091
],
"allowRequestHeaders": [
"global"
],
"allowResponseHeaders": [
"hii"
],
"allowMethods": [
"boomi"
],
"EnableHTTPRequestHandling": false,
"EnableHTTPSRequestHandling": false,
"allowCredentials": true,
"domain": "jp",
"cacheTimeout": 5
},
{
"@type": "SharedWebServerCORSOrigin",
"ports": [
8080
],
"allowRequestHeaders": [],
"allowResponseHeaders": [],
"allowMethods": [],
"EnableHTTPRequestHandling": false,
"EnableHTTPSRequestHandling": false,
"allowCredentials": false,
"domain": "jad",
"cacheTimeout": 4
}
]
}
Supported Operations
GET UPDATE
Notes:
- The UPDATE operation updates a Shared Web Server object based on the supplied Runtime ID.
- You must have the Runtime Management privilege to perform the UPDATE operation. You cannot update shared Web Server information if you have the Runtime Management Read Access privilege.
GET Operation
Endpoint
This endpoint retrieves the details of a Shared Web Server configuration for this atom/cloud ID by its unique ID. The response can be in either XML or JSON format based on the client's request.
Send an HTTP GET request to the following URL:
https://api.boomi.com/api/rest/v1/{accountId}/SharedWebServer/{id}
Where {accountId} is the account id of the Atom or Cloud owner who wants to GET the Shared Web Server configuration.
XML response:
<SharedWebServer>
<atomId>ea19beb4-3f9f-407e-b019-ac508c0aa73b</atomId>
<generalSettings>
<apiType>ADVANCED</apiType>
<authentication>
<authType>CUSTOM</authType>
<loginModuleClassName>as</loginModuleClassName>
<cacheAuthorizationCredentials>false</cacheAuthorizationCredentials>
<loginModuleOptions/>
<cacheAuthenticationTimeout>0</cacheAuthenticationTimeout>
</authentication>
<overrideUrl>false</overrideUrl>
<baseUrl>http://dd:9090</baseUrl>
<examineForwardHeaders>false</examineForwardHeaders>
<externalHost>dd</externalHost>
<internalHost></internalHost>
<listenerPorts>
<port>
<enablePort>true</enablePort>
<port>9090</port>
<ssl>false</ssl>
<authType>CUSTOM</authType>
<externalPort>0</externalPort>
<externalSSL>false</externalSSL>
<defaultPort>true</defaultPort>
<baseUrlForRequest>http://dd:9090</baseUrlForRequest>
</port>
<port>
<enablePort>true</enablePort>
<port>9091</port>
<ssl>false</ssl>
<authType>BASIC</authType>
<externalPort>10</externalPort>
<externalSSL>false</externalSSL>
<defaultPort>false</defaultPort>
<baseUrlForRequest>http://dd:10</baseUrlForRequest>
</port>
</listenerPorts>
<maxNumberOfThreads>250</maxNumberOfThreads>
<protectedHeaders/>
<sslCertificate></sslCertificate>
</generalSettings>
<userManagement>
<enableAPIMInternalRoles>false</enableAPIMInternalRoles>
<users>
<username>boomi-internal</username>
<roleAssociations/>
<usingIPFilters>false</usingIPFilters>
<usingComponentFilters>false</usingComponentFilters>
</users>
</userManagement>
<corsConfiguration>
<origins>
<domain>domain</domain>
<allowRequestHeaders/>
<allowResponseHeaders/>
<allowMethods/>
<EnableHTTPRequestHandling>false</EnableHTTPRequestHandling>
<EnableHTTPSRequestHandling>false</EnableHTTPSRequestHandling>
<allowCredentials>false</allowCredentials>
<cacheTimeout>53</cacheTimeout>
</origins>
</corsConfiguration>
</SharedWebServer>
For a JSON response, send the request with the following HTTP header: Accept: application/json.
JSON response:
{
"@type": "SharedWebServer",
"atomId": "ea19beb4-3f9f-407e-b019-ac508c0aa73b",
"generalSettings": {
"@type": "SharedWebServerGeneral",
"apiType": "ADVANCED",
"authentication": {
"@type": "SharedWebServerAuthentication",
"authType": "CUSTOM",
"loginModuleClassName": "as",
"cacheAuthorizationCredentials": false,
"loginModuleOptions": {
"@type": "SharedWebServerLoginModuleConfiguration"
},
"cacheAuthenticationTimeout": 0
},
"overrideUrl": false,
"baseUrl": "http://dd:9090",
"examineForwardHeaders": false,
"externalHost": "dd",
"internalHost": "",
"listenerPorts": {
"@type": "ListenerPortConfiguration",
"port": [
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9090,
"ssl": false,
"authType": "CUSTOM",
"externalPort": 0,
"externalSSL": false,
"defaultPort": true,
"baseUrlForRequest": "http://dd:9090"
},
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9091,
"ssl": false,
"authType": "BASIC",
"externalPort": 10,
"externalSSL": false,
"defaultPort": false,
"baseUrlForRequest": "http://dd:10"
}
]
},
"maxNumberOfThreads": 250,
"protectedHeaders": {
"@type": "SharedWebServerProtectedHeaders"
},
"sslCertificate": ""
},
"userManagement": {
"@type": "SharedWebServerUserManagement",
"enableAPIMInternalRoles": false,
"users": [
{
"@type": "SharedWebServerUser",
"roleAssociations": [],
"username": "boomi-internal",
"usingIPFilters": false,
"usingComponentFilters": false
}
]
},
"corsConfiguration": {
"@type": "SharedWebServerCors",
"origins": [
{
"@type": "SharedWebServerCORSOrigin",
"allowRequestHeaders": [],
"allowResponseHeaders": [],
"allowMethods": [],
"EnableHTTPRequestHandling": false,
"EnableHTTPSRequestHandling": false,
"allowCredentials": false,
"domain": "domain",
"cacheTimeout": 53
}
]
}
}
UPDATE Operation
Endpoint
This endpoint updates the configuration of a Shared Web Server identified by its unique id. The request body should contain the updated configuration details in either XML or JSON format. The response will reflect the updated configuration.
https://api.boomi.com/api/rest/v1/{accountId}/SharedWebServer/{id}
Where {accountId} is the account id of the Atom or Cloud owner who wants to update the Shared Web Server configuration.
Important: If you do not configure the Authentication Type, API Type and Ports, using the Shared Web Server object to update then it will fail. If you are the owner of a runtime, Runtime cluster, or Runtime cloud, you must update the API Type, Authentication Type, and HTTP Port or HTTPS Port through the Shared Web Server object for the API to succeed.
If you configured the Authentication Type and Ports, you can use the Shared Web Server object to update only the API Type of a Runtime.
This example updates maxThreads, the maximum number of handler threads that the listen process spawns, up to 100.
XML request:
The XML request body contains the new configuration details for the shared web server, structured within the <SharedWebServer> tag. This includes updates to general settings, user management, and CORS configuration.
<SharedWebServer>
<atomId>8f4c9283-695e-4c9b-963e-b66805832f68</atomId>
<generalSettings>
<apiType>INTERMEDIATE</apiType>
<authentication>
<authType>BASIC</authType>
<cacheAuthorizationCredentials>false</cacheAuthorizationCredentials>
</authentication>
<overrideUrl>false</overrideUrl>
<baseUrl>http://cloudAtmSWS:9090</baseUrl>
<examineForwardHeaders>false</examineForwardHeaders>
<externalHost></externalHost>
<internalHost></internalHost>
<listenerPorts>
<port>
<enablePort>true</enablePort>
<port>8080</port>
<ssl>true</ssl>
<authType>CLIENT_CERT</authType>
<externalPort>0</externalPort>
<externalSSL>false</externalSSL>
<defaultPort>false</defaultPort>
</port>
<port>
<enablePort>true</enablePort>
<port>9090</port>
<ssl>false</ssl>
<authType>BASIC</authType>
<externalPort>0</externalPort>
<externalSSL>false</externalSSL>
<defaultPort>false</defaultPort>
</port>
</listenerPorts>
<maxNumberOfThreads>250</maxNumberOfThreads>
<protectedHeaders/>
<sslCertificate></sslCertificate>
</generalSettings>
</SharedWebServer>
XML response:
The XML response confirms the updated configuration of the shared web server, encapsulated within the <SharedWebServer> tag. This includes all the newly set configuration details.
<SharedWebServer>
<atomId>8f4c9283-695e-4c9b-963e-b66805832f68</atomId>
<generalSettings>
<apiType>INTERMEDIATE</apiType>
<authentication>
<authType>BASIC</authType>
<cacheAuthorizationCredentials>false</cacheAuthorizationCredentials>
</authentication>
<overrideUrl>false</overrideUrl>
<baseUrl>http://cloudAtmSWS:9090</baseUrl>
<examineForwardHeaders>false</examineForwardHeaders>
<externalHost></externalHost>
<internalHost></internalHost>
<listenerPorts>
<port>
<enablePort>true</enablePort>
<port>8080</port>
<ssl>true</ssl>
<authType>CLIENT_CERT</authType>
<externalPort>0</externalPort>
<externalSSL>false</externalSSL>
<defaultPort>false</defaultPort>
</port>
<port>
<enablePort>true</enablePort>
<port>9090</port>
<ssl>false</ssl>
<authType>BASIC</authType>
<externalPort>0</externalPort>
<externalSSL>false</externalSSL>
<defaultPort>false</defaultPort>
</port>
</listenerPorts>
<maxNumberOfThreads>250</maxNumberOfThreads>
<protectedHeaders/>
<sslCertificate></sslCertificate>
</generalSettings>
</SharedWebServer>
JSON request:
{
"@type": "SharedWebServer",
"atomId": "8f4c9283-695e-4c9b-963e-b66805832f68",
"generalSettings": {
"@type": "SharedWebServerGeneral",
"apiType": "INTERMEDIATE",
"authentication": {
"@type": "SharedWebServerAuthentication",
"authType": "BASIC",
"cacheAuthorizationCredentials": false
},
"overrideUrl": false,
"baseUrl": "http://cloudAtmSWS:9090",
"examineForwardHeaders": false,
"externalHost": "",
"internalHost": "",
"listenerPorts": {
"@type": "ListenerPortConfiguration",
"port": [
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 8080,
"ssl": true,
"authType": "CLIENT_CERT",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
},
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9090,
"ssl": false,
"authType": "BASIC",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
}
]
},
"maxNumberOfThreads": 250,
"protectedHeaders": {
"@type": "SharedWebServerProtectedHeaders"
},
"sslCertificate": ""
},
"userManagement": {
"@type": "SharedWebServerUserManagement",
"enableAPIMInternalRoles": false,
"users": [
{
"@type": "SharedWebServerUser",
"roleAssociations": [],
"username": "boomi-internal",
"usingIPFilters": false,
"usingComponentFilters": false
}
]
}
}
JSON response:
The JSON response confirms the updated configuration of the shared web server. This response mirrors the JSON request structure.
{
"@type": "SharedWebServer",
"atomId": "8f4c9283-695e-4c9b-963e-b66805832f68",
"generalSettings": {
"@type": "SharedWebServerGeneral",
"apiType": "INTERMEDIATE",
"authentication": {
"@type": "SharedWebServerAuthentication",
"authType": "BASIC",
"cacheAuthorizationCredentials": false
},
"overrideUrl": false,
"baseUrl": "http://cloudAtmSWS:9090",
"examineForwardHeaders": false,
"externalHost": "",
"internalHost": "",
"listenerPorts": {
"@type": "ListenerPortConfiguration",
"port": [
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 8080,
"ssl": true,
"authType": "CLIENT_CERT",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
},
{
"@type": "SharedWebServerPort",
"enablePort": true,
"port": 9090,
"ssl": false,
"authType": "BASIC",
"externalPort": 0,
"externalSSL": false,
"defaultPort": false
}
]
},
"maxNumberOfThreads": 250,
"protectedHeaders": {
"@type": "SharedWebServerProtectedHeaders"
},
"sslCertificate": ""
},
"userManagement": {
"@type": "SharedWebServerUserManagement",
"enableAPIMInternalRoles": false,
"users": [
{
"@type": "SharedWebServerUser",
"roleAssociations": [],
"username": "boomi-internal",
"usingIPFilters": false,
"usingComponentFilters": false
}
]
}
}
HTTP Headers for JSON Request:
This HTTP header indicates that the request body is in JSON format. It informs the server to parse the incoming request as JSON.
Content-Type: application/json