Configure and test the generic HTTP integration for SAP HTTP APIs

Prev Next
This content is currently unavailable in German. You are viewing the default (English) version.

Prerequisites

  • Integration Server deployed and registered on the platform that can connect to the SAP HTTP API

  • SAP data available via standard HTTP calls

  • Asset Settings access on RealityPlatform

  • Json schema file of the HTTP API (optional, but recommended)


Configuration steps

This guide will describe how to configure the generic HTTP integration to retrieve data in a RealityAsset.

The main steps in order to configure the HTTP integration are the following :

  1. Register the HTTP data source on RealityPlatform

  2. Link the integration to an Asset Type

  3. Send a test query in order to validate the connection to the API


Special Considerations for Systems Without Direct Connectors

While this guide uses SAP as a reference example, the same approach applies to any system that does not have a direct connector but can expose its data over HTTP.

In such cases, it is common practice to use an HTTP wrapper (or API gateway) that exposes the system’s data through standard HTTP calls. Many enterprise platforms — including SAP products — offer built-in or add-on capabilities for this, but any equivalent solution can be used.

Integration requirements:

  • Token-based authentication must be supported.

  • GET requests are preferred for retrieving data, though other HTTP verbs and authentication methods will be supported in the future.

Best practice:
It is strongly recommended to generate a JSON schema file describing the HTTP API.
This makes integration configuration straightforward by clearly defining available endpoints, data structures, and field names.


Register the HTTP data source on the Integration Server

  1. Add the new data source

  2. Select the HTTP type

  3. Fill up the required parameters to establish the connection

HTTP data source parameters

{
  "type": "HTTP",
  "name": "Example HTTP Data Source",
  "baseUrl": "https://example.com",
  "allowInsecure": false,
  "paths": [
    {
      "name": "examplePath",
      "path": "/api/example",
      "method": "GET",
      "responseCode": 200,
      "requestParameters": [
        {
          "param1": "value1",
          "param2": "value2"
        }
      ],
      "responseSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        }
      }
    }
  ],
  "authBearerToken": "exampleBearerToken",
  "authBasic": "exampleBasicAuth",
  "schemaFile": "exampleSchemaFile",
  "customAuthenticationHeader": {
    "Custom-Header": "HeaderValue"
  }
}

baseUrl

The base URL of the HTTP data source.

allowInsecure

Allow integration server to query web servers with invalid or self signed certificates.

paths

An array of Path objects containing path information for the data source.

Example request body
{
  "name": "examplePath",
  "path": "/api/example",
  "method": "GET",
  "responseCode": 200,
  "requestParameters": [
    {
      "param1": "value1",
      "param2": "value2"
    }
  ],
  "responseSchema": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    }
  }
}

authBearerToken (Optional)

The bearer token for authentication, if applicable.

authBasic (Optional)

The basic authentication information, if applicable.

schemaFile (Optional)

The schema file associated with the data source, if applicable.

customAuthenticationHeader (Optional)

A custom authentication header as a record of key-value pairs, if applicable.

Info

  • If a schema file is available, it should be made available to the integration service and the path should be in the “schemaFile” configuration parameter. The easiest way to achieve this is to store the file into the Integration Service internal filesystem and simply supply the relative path in the configuration.

  • If a schema file is not available, it is possible to describe it in the “paths” configuration parameter.

Warning

Please note that a data source cannot have both a “paths” description and a “schemaFile”.

Linking Asset Type Properties with HTTP

Before linking, make sure you have:

  • An existing Asset Type with a property to hold the required HTTP parameter values (e.g., Asset ID). It must be a “Short text” property type.

  • An Integration Server configured with an HTTP data source and queries.

To link an Asset Type property to HTTP:

  1. In Asset Settings → Asset Types, open the Asset Type you want to link.

  2. In the Integration Links panel (right side), click Create Integration Link.

  3. Enter a link name and select the Integration Server configured for AWS IOT SiteWise.

  4. Choose the appropriate data source

  5. Choose the desired query:
    -Get AWS SiteWise Asset attributes values
    Retrieves the attributes of the asset.

    Parameters:

    • AssetId

  6. For each required parameter (e.g., id), select the Asset Type property that should provide its value (e.g., Id).

  7. Click Save to create the link.

When this Asset Type is assigned to assets, the linked property values will automatically be passed through HTTP when running the integration.

image-20250516-161704.png

Send a test query to validate connectivity between RealityPlatform and HTTP data source

  1. On the Asset Type Settings page, click on the play button next to the integration link that is targeting the HTTP data source. This will open the test query menu.

image-20250516-161820.png

  1. Enter a valid parameter under the Parameters configuration and click on Test query to see the result. If no parameters are needed for the HTTP, the request will be executed automatically and the result will be displayed.

Note

  • The values entered here are only for testing purposes. They are not saved to the Asset Type or linked assets. This test simulates what RealityTwin will do when an asset is created, assigned this Asset Type, and the corresponding property (e.g., id) is filled in. Use any valid parameter to validate connectivity.

image-20250516-162050.png