Connect to Propel
Learn how to connect Propel to Retool.
You can connect to Propel using Retool's GraphQL integration and make it available as a resource. Once complete, you can write queries to interact with the Propel API.
Requirements
All users for Retool organizations on Free or Team plans have global Edit permissions and can add, edit, and remove resources. If your organization manages user permissions for resources, you must be a member of a group with Edit all permissions.
To create your Propel resource, you need:
- GraphQL connection details.
- A valid API key.
- A Propel account.
- A Propel Application.
- A Propel Data Source, Data Pool, and Metric. To connect your data to Propel, see the Propel Docs.
Propel uses Bearer tokens and OAuth 2.0. You must provide an API key or access token for Retool to authorize requests. Refer to the Propel documentation on authenticating requests to learn how to obtain an API key or access token.
If Propel is behind a firewall, you must also allow access from Retool's IP addresses. Add these IP addresses to your firewall's allowlist before you create the resource.
1. Create a new resource
Sign in to your Retool organization and navigate to the Resources tab. Click Create new, then select Resource.
Retool can connect to almost any API or database, and has built-in integrations for popular data sources. Select the GraphQL integration.
2. Configure the resource
Provide the necessary details to configure the resource so Retool can connect to Propel. Not all settings are required but refer to the Propel documentation to learn what is needed.
General
These settings configure the name and location of the resource within Retool.
Name
The name to use for the resource (e.g., Propel).
Folder
The folder in which to save the resource.
Description
A brief description of the resource (e.g., Propel data).
Credentials
These settings configure how Retool connects to Propel.
Base URL
The base URL for the Propel API. This must be an absolute URL. Use https://api.us-east-2.propeldata.com/graphql
.
URL parameters
Key-value pairs to include as URL parameters with Propel API requests. No additional URL parameters are required.
Headers
Key-value pairs to include as headers with Propel API requests. Propel uses Bearer (token) authentication which includes your API key or token as a header value. Include the following key-value pairs:
Key | Value |
---|---|
Authorization | Bearer access_token |
Body
Key-value pairs to include in the body of Propel API requests. No additional body values are required.
Cookies
Cookies to include with Propel API requests. No cookies are required.
Forward all cookies
Whether to forward all cookies. This is useful if you have dynamic cookie names.
Authentication
The method of authentication to use with Propel. Select OAuth 2.0.
To provide the OAuth 2.0 settings, you need to create a Propel Application for Retool if you haven't already. Log into your Propel Account, click Applications in the left hand menu, and click create Application. Make sure to:
- Name your application. You can use "Retool" since you'll query the API from Retool.
- Give the application scopes. The scopes determine what the Application and the API credentials can do in the Propel API. Select the METRIC_QUERY and METRIC_STATS scopes to be able to query Metric data and stats.
After you have your Client ID and secret, enter the following data in Retool.
Setting | Value |
---|---|
Client Credentials Flow | Selected |
Access Token URL | https://auth.us-east-2.propeldata.com/oauth2/token |
Client ID | The Client ID of the Propel Application |
Client Secret | The Client Secret of the Propel Application |
Scopes | metric:query metric:stats |
If the Create Resource button is disabled and indicates that An Auth URL is required, deselect the Use Client Credentials Flow and enter the following URL in the Auth URL field: https://auth.us-east-2.propeldata.com/oauth2/auth
.
Disable Introspection
Select this option as the Propel endpoint does not support introspection.
3. Save the resource
Click Test Connection to verify that Retool can connect to Propel. If the test fails, check the resource settings and try again. Testing a connection only checks whether Retool can successfully connect to the resource. It cannot check whether the provided credentials have sufficient privileges or can perform every supported action.
Click Create resource to complete the setup. You can then click either Create an app to immediately start building a Retool app or Back to resources to return to the list of resources.
Wrap up
Your Propel resource is now ready to use. You write queries using GraphQL schema.
To verify you can successfully interact with Propel, write a test query to retrieve some data. This example from the Propel docs retrieves a counter metric that aggregates sales from an individual salesperson. You can replace the metric name with others that might exist in your account.
query CounterExample1 (
$timeRange: RelativeTimeRange,
$salesperson: String!
) {
sales: metricByName (uniqueName: "sales") {
counter ({
timeRange: { relative: $timeRange }
filters: [{
column: "Salesperson"
operator: EQUALS
value: $salesperson
}]
}) {
value
}
}
}
Updated 13 days ago