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 a persistence provider in ThingWorx
- Set up an InfluxDB Cloud account compatible with ThingWorx
- Set up PTC ThingWorx
- Use the InfluxDB 1.x compatibility API on InfluxDB Cloud
Set up an InfluxDB Cloud account compatible with ThingWorx
-
Sign up for a Cloud account, and do the following when signing up:
- Select an AWS or Google region to store your data. To deploy on Azure region, see use PTC Cloud.
- Select a Usage-based plan by entering credit card information.
-
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.
-
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.
-
Create a DBRP mapping for your bucket by sending an HTTP
POST
request to the/api/v2/dbrps/
InfluxDB API endpoint.curl --request POST "${influxdb-cloud-url}/api/v2/dbrps" \ --header 'Content-Type: application/json' \ --header "Authorization: Token ${INFLUX_API_TOKEN}" \ --data-raw "{ \"bucketID\": \"${INFLUX_BUCKET_ID}\", \"orgID\": \"${INFLUX_ORG_ID}\", \"database\": \"${INFLUX_BUCKET}\", \"retention_policy\": \"${INFLUX_RETENTION_PERIOD}\", \"default\": true }"
Replace the following:
INFLUX_BUCKET_ID
: your InfluxDB bucket ID, created in step 2INFLUX_API_TOKEN
: your InfluxDB API token, created in step 3INFLUX_ORG_ID
: your InfluxDB organization IDINFLUX_BUCKET
: your InfluxDB bucket name (thingworx
), created in step 2INFLUX_RETENTION_PERIOD
: your InfluxDB retention period, typicallyautogen
-
(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
-
If you haven’t already, start at step 4 in Using InfluxDB as the Persistence Provider. (Steps 1-3 are covered in Set up an InfluxDB Cloud account compatible with ThingWorx.)
-
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.
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.