Documentation

Use ThingWorx with InfluxDB Cloud

InfluxDB Cloud is a built-in component of ThingWorx on PTC Cloud in Azure. Therefore, PTC recommends using ThingWorx on PTC Cloud. Alternatively, use this guide to configure self-managed ThingWorx to use InfluxDB Cloud as a persistence provider.

To use InfluxDB Cloud as persistence provider in ThingWorx

  1. Set up an InfluxDB Cloud account compatible with ThingWorx
  2. Set up PTC ThingWorx
  3. Use the InfluxDB 1.x compatibility API on InfluxDB Cloud

Set up an InfluxDB Cloud account compatible with ThingWorx

  1. Sign up for a Cloud account, and do the following when signing up:

  2. Create a bucket with an infinite retention period (select Never for when to Delete Data), and then copy the new bucket ID and save for step 4.

    Tip: We recommend naming your bucket “thingworx”. In ThingWorx, this bucket name becomes the database name selected for the InfluxDB persistence provider configuration.

  3. Create an All-Access token in InfluxDB Cloud, and save the token string for step 4. To access this string in the UI, double-clicking the new token name, and copy the string at the top of the dialog.

  4. In terminal, create a DBRP mapping for your bucket by running the following command, replacing all parameters within the brackets (${}) below:

    curl --request POST "${influxdb-cloud-url}/api/v2/dbrps" \
    --header 'Content-Type: application/json' \
    --header "Authorization: Token ${token}" \
    --data-raw "{
        \"bucket_id\": \"${bucket_id}\",
        \"organization_id\": \"${org_id}\",
        \"database\": \"thingworx",
        \"retention_policy\": \"autogen\",
        \"default\": true
    }"
    
    • bucket_id created in step 2
    • token created in step 3
    • org-id in your URL (for example, if your URL includes: .../orgs/039ax0d07d962000, the org ID is 039ax0d07d962000)
    • database same as bucket name created in step 2
    • retention_policy is the retention period, typically “autogen”
  5. (Optional) We recommend creating a new Read/Write token with read/write access to the bucket that you set up in step 2. A read/write token is useful for non-admin users to access configuration settings in ThingWorx. Copy and save the new token string to set up PTC ThingWorx. (To do this, double-click the token in the UI, and copy the string at the top of the dialog.)

Set up PTC ThingWorx

  1. If you haven’t already, start at step 4 in Using InfluxDB as the Persistence Provider. (Steps 1-3 are covered being InfluxDB Cloud is already configured.)

  2. For the persistence provider configuration settings, enter the following values:

    • Connection URL: Your InfluxDB Cloud region URL
    • Database Schema: Database name in the DBRP mapping set up in step 4 above.
    • Username: Login email address for your InfluxDB Cloud account.
    • Password: Token string–either All-Access created in step 3 or Read/Write created in step 5.

ThingWorx API requests

ThingWorx uses the InfluxDB 1.x compatibility API to access the InfluxDB v2 API on InfluxDB Cloud. ThingWorx includes the InfluxDB persistence provider configuration settings that you set up for PTC ThingWorx in your API requests.

Deleting data: The InfluxDB v1 API in InfluxDB Cloud supports a subset of delete operations, namely DROP MEASUREMENT and DELETE statements. In some edge cases, deletes take longer to appear in query results from InfluxDB Cloud (than InfluxDB open source). To delete specific fields, delete data from ThingWorx directly in InfluxDB Cloud using the InfluxDB v2 API.


Select your region

Upgrade to InfluxDB Cloud or InfluxDB 2.0!

InfluxDB Cloud and InfluxDB OSS 2.0 ready for production.