How to Connect DBeaver to ApprovalMax via a JDBC Driver
The CData API Driver for JDBC implements JDBC standards that enable third-party tools to interoperate, from wizards in IDEs to business intelligence tools. This article shows how to connect to ApprovalMax data with wizards in DBeaver and browse data in the DBeaver GUI.
Create a JDBC Data Source for ApprovalMax Data
Follow the steps below to load the driver JAR in DBeaver.
- Open the DBeaver application and, in the "Database" menu, select the "Driver Manager" option. Click "New" to open the "Create new driver" form.
- In the Settings tab:
- Set Driver Name to a user-friendly name for the driver (e.g. CData API Driver for JDBC).
- Set Class Name to the class name for the JDBC driver: cdata.jdbc.api.APIDriver.
- Set URL Template to jdbc:api:.
- In the Libraries tab, click "Add File," navigate to the "lib" folder in the installation directory (C:\Program Files\CData\CData API Driver for JDBC XXXX\) and select the JAR file (cdata.jdbc.API.jar).
Create a Connection to ApprovalMax Data
Follow the steps below to add credentials and other required connection properties.
- In the "Database" menu, click "New Database Connection."
- In the "Connect to a database" wizard that results, select the driver you just created (e.g. CData API Driver for JDBC) and click "Next >."
- On the Main tab of the configuration wizard, set the JDBC URL, using the required connection properties:
Start by setting the Profile connection property to the location of the ApprovalMax Profile on disk (e.g. C:\profiles\ApprovalMax.apip). Next, set the ProfileSettings connection property to the connection string for ApprovalMax (see below).
ApprovalMax API Profile Settings
To authenticate to ApprovalMax and connect to your own data or to allow other users to connect to their data, the ApprovalMax Public API requires the OAuth 2.0 authorization code flow.
First, you will need to register an OAuth application with ApprovalMax. Sign in to the ApprovalMax Developer Portal (https://developer.approvalmax.com/applications) and create a new application. Your OAuth application will be assigned a Client ID and a Client Secret, and you must register at least one Redirect URI (Callback URL).
A Premium ApprovalMax subscription (or active trial) is required to use the Public API.
After setting the following connection properties, you are ready to connect:
- AuthScheme: Set this to OAuth.
- InitiateOAuth: Set this to GETANDREFRESH. You can use InitiateOAuth to manage the process to obtain the OAuthAccessToken.
- OAuthClientId: Set this to the Client ID that is shown in your application settings on the ApprovalMax Developer Portal.
- OAuthClientSecret: Set this to the Client Secret that is shown in your application settings on the ApprovalMax Developer Portal.
- CallbackURL: Set this to the Redirect URI that is registered in your application settings.
- Scope: (Optional) Override the default OAuth scopes. The default value openid offline_access https://www.approvalmax.com/scopes/public_api/read grants read-only access to all tables in this profile and enables refresh tokens. Use the principle of least privilege when narrowing this scope.
The OAuth Authorization URL is https://identity.approvalmax.com/connect/authorize and the Token URL is https://identity.approvalmax.com/connect/token. Both authorization_code and refresh_token grant types are supported.
Built-in Connection String Designer
For assistance in constructing the JDBC URL, use the connection string designer built into the ApprovalMax JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.
java -jar cdata.jdbc.api.jarFill in the connection properties and copy the connection string to the clipboard.
Below is a typical connection string:
jdbc:api:Profile=C:\profiles\ApprovalMax.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=your_callback_url;
- Click "Test Connection ..." to ensure you have configured the connection properly.
- Click "Finish."
Query ApprovalMax Data
You can now query information from the tables exposed by the connection: Right-click a Table and then click View Table. The data is available on the Data tab.