Web server section - Intergraph Smart 3D Web API - Update 2 - Installation & Upgrade - Hexagon

Intergraph Smart 3D Web APIs Installation and Configuration

ft:locale
en-US
Product
Intergraph Smart 3D Web API
Subproduct
Smart 3D Web APIs
Search by Category
Installation & Upgrade
Smart 3D Version
14

This section represents the information needed to deploy the API in IIS.

Each API must use a separate application pool.

Example section using Smart API Manager as the authorization server

"WebServers": [

{

"WebServerType": "Plant",

"MachineName": "IN-ACME108477",

"IisConfigurationSettings": {

"WebSiteName": "Smart 3D Web API",

"HttpPort": "9000",

"IsHttpsEnabled": true,

"HttpsPort": "44311",

"CertificateSubject": "*.acme.com",

"ApplicationName": "WebApi",

"ApplicationPool": "PlantAppPool",

"OverrideBaseURL": true

},

"SamRegistrationSettings": {

"ServiceManagerUrl": "https://in-s3dwebatp.acme.com/sam/oauth",

"WebServiceRegistration": {

"BaseUri": "https://in-acme108477.acme.com:44311/WebApi/",

"Prefix": "s3d/v1",

"ServiceId": "8B517F3A-84EF-4536-AADE-04F622D14A3D"

}

},

"CorsSettings": {

"AllowedOrigins": "*",

"AllowedMethods": "GET,PATCH,PUT,POST,DELETE",

"AllowedHeaders": "*",

"ExposedHeaders": "",

"AllowCredentials": false,

"PreflightMaxAge": 600

},

"FlattenedMetadata": {

"AllowedClients": "255386E6-24B4-4DA4-ACCB-DE255BFAAF04,A4BBE198-3E6C-4BA7-863A-3E815D0CCBCB,0oa5sc4dtgUZkYPz40x7"

}

},

{

"WebServerType": "Admin",

"MachineName": "IN-ACME108477",

"IisConfigurationSettings": {

"WebSiteName": "Smart 3D Admin Web API",

"HttpPort": "8080",

"IsHttpsEnabled": true,

"HttpsPort": "44323",

"CertificateSubject": "*.acme.com",

"ApplicationName": "AdminWebAPI",

"ApplicationPool": "AdminAppPool",

"OverrideBaseURL": true

},

"SamRegistrationSettings": {

"ServiceManagerUrl": "https://in-s3dwebatp.acme.com/okta/oauth",

"WebServiceRegistration": {

"BaseUri": "https://in-acme108477.acme.com:44323/AdminWebAPI/",

"Prefix": "s3dadmin/v1",

"ServiceId": "8E123A04-727D-4A06-889C-0771D9AB8CD9"

}

},

"CorsSettings": {

"AllowedOrigins": "*",

"AllowedMethods": "GET,PATCH,PUT,POST,DELETE",

"AllowedHeaders": "*",

"ExposedHeaders": "",

"AllowCredentials": false,

"PreflightMaxAge": 600

},

"FlattenedMetadata": {

"AllowedClients": "255386E6-24B4-4DA4-ACCB-DE255BFAAF04,A4BBE198-3E6C-4BA7-863A-3E815D0CCBCB,0oa5sc4dtgUZkYPz40x7"

}

}

]

Example section using Okta as the authorization server

"WebServers": [

{

"WebServerType": "Plant",

"MachineName": "IN-ACME108477",

"IisConfigurationSettings": {

"WebSiteName": "Smart 3D Web API",

"HttpPort": "9000",

"IsHttpsEnabled": true,

"HttpsPort": "44311",

"CertificateSubject": "*.ingrnet.com",

"ApplicationName": "WebApi",

"ApplicationPool": "PlantAppPool",

"OverrideBaseURL": true

},

"SamRegistrationSettings": {

"ServiceManagerUrl": https://in-s3dwebatp.acme.com/sam/oauth,

"WebServiceRegistration": {

"BaseUri": https://in-ali108477.acme.com:44311/WebApi/,

"Prefix": "s3d/v1",

"ServiceId": "8B517F3A-84EF-4536-AADE-04F622D14A3D"

}

},

"CorsSettings": {

"AllowedOrigins": "*",

"AllowedMethods": "GET,PATCH,PUT,POST,DELETE",

"AllowedHeaders": "*",

"ExposedHeaders": "",

"AllowCredentials": false,

"PreflightMaxAge": 600

},

"FlattenedMetadata": {

"AllowedClients": "255386E6-24B4-4DA4-ACCB-DE255BFAAF04,A4BBE198-3E6C-4BA7-863A-3E815D0CCBCB,0oa5sc4dtgUZkYPz40x7"

}

},

{

"WebServerType": "Admin",

"MachineName": "IN-ALI108477",

"IisConfigurationSettings": {

"WebSiteName": "Smart 3D Admin Web API",

"HttpPort": "8080",

"IsHttpsEnabled": true,

"HttpsPort": "44323",

"CertificateSubject": "localhost",

"ApplicationName": "AdminWebAPI",

"ApplicationPool": "AdminAppPool",

"OverrideBaseURL": true

},

"SamRegistrationSettings": {

"ServiceManagerUrl": https://in-s3dwebatp.ingrnet.com/sam/oauth,

"WebServiceRegistration": {

"BaseUri": https://localhost:44323/AdminWebAPI/,

"Prefix": "s3dadmin/v1",

"ServiceId": "8E123A04-727D-4A06-889C-0771D9AB8CD9"

}

},

"CorsSettings": {

"AllowedOrigins": "*",

"AllowedMethods": "GET,PATCH,PUT,POST,DELETE",

"AllowedHeaders": "*",

"ExposedHeaders": "",

"AllowCredentials": false,

"PreflightMaxAge": 600

},

"FlattenedMetadata": {

"AllowedClients": "255386E6-24B4-4DA4-ACCB-DE255BFAAF04,A4BBE198-3E6C-4BA7-863A-3E815D0CCBCB,0oa5sc4dtgUZkYPz40x7"

}

}

]

Description

The WebServers section includes the web server information for each web API. There is a separate sub-section for each API, even if both APIs use the same web server.

Web server information

  • WebServerType - The API that the web server is for, either Plant or Admin.

  • MachineName - The name of the machine.

  • IisConfigurationSettings - The IIS information for the site.

    • WebSiteName - The name of the website for the API.

      HttpPort - The port that services will use to connect to the website if HTTPS is not used. By default, this is port 80.

    • IsHttpsEnabled - Indicates whether the site uses HTTPS (true) or not (false).

    • HttpsPort - The port that services will use to connect to the website if HTTPS is used. By default, this is port 443.

    • CertificateSubject - The domain covered by the site security certificate.

    • ApplicationName - The name of the application used to run the API.

    • ApplicationPool - A unique name for the application pool used to run the API.

      Each API must use a separate application pool.

Authorization server information

The WebServers > SamRegistrationSettings sub-section indicates whether the API uses Smart API Manager as the authorization server and, if so, the information necessary for connecting to and registering with the authorization server.

  • ServiceManagerUrl - The URL for the authorization server.

  • WebServiceRegistration - The information needed to register the API with API the authorization server:

    • BaseUri - The base URI for the service.

    • Prefix - The prefix for web services, added to the end of the base URI.

    • ServiceId - The ID of the service to use for authorization. The ID must be in GUID format.