MicroStrategy ONE

Connect to Marketo Using JDBC

Connecting to Marketo using JDBC is only supported on MicroStrategy ONE Update 11 or earlier. If you are using MicroStrategy ONE Update 12 or later, see Connect to Marketo Using ODBC.

Marketo is a marketing automation platform that enables management personalized multi-channel programs and campaigns to demonstrate prospects and customer trends.

The Marketo JDBC driver supports standard SQL-92 syntax and functions, but is limited in write back and performance. MicroStrategy will support in-memory data import and choose to process data on our side.

  • Data Retrieve Mode: JDBC Call Only
  • Data Import supported: Select Tables, Free Form SQL, Query Builder (In-memory)

JDBC Connection URL

MicroStrategy ships the Marketo JDBC driver to connect Marketo as a data source with the following connection methods, you can find them on the data source dialog when importing data.

  • OAuth 2.0 authentication with standard Client credentials:

    JDBC;DRIVER={com.simba.marketo.jdbc42.CLJDBCDriver};URL={jdbc:marketo://;Host=@host;Auth_Type=OAuth 2.0; Auth_Client_ID=@client_ID;Auth_Client_Secret=@client_secret }

  • Access Token:

    JDBC;DRIVER={com.simba.marketo.jdbc42.CLJDBCDriver};URL={jdbc:marketo://;Host=@hostname;Auth_Type=OAuth 2.0;Auth_AccessToken=@token}

See How to Get Marketo Connection String Parameters for steps to acquire the correct parameters.

Marketo has an API limit of 10,000 requests per day.

JDBC Schema Tables

Marketo stores data in structures which do not follow the rules of traditional tables and columns. The JDBC maps Marketo data into its designed relational schema 'Marketo' with 17 fixed schema tables. The mapping method is complicated, so lower performance is expected when querying tables with large amounts of data.

Configure Marketo Using JDBC on Web and Workstation

See Create and Edit Data Sources for steps to create a new data source and connection.

  1. Choose Add Data > New Data.
  2. Find the Marketo connector from the data source list.

  3. Click the connector.
  4. Choose Select Tables, Type a Query, or Build a Query to import data.

    It is recommended to use Select Tables to reduce joins on the driver side for best performance.

  5. In the Data Source interface, select DSN-less Data Source and choose Marketo for both Database and Version. Use one of the following methods to configure the DSN-less connection:

    For the host name, use the Identity URL without the identity path. For example, if the Identity URL is https://0644-CCJ-768.mktorest.com/identity, the host name is https://0644-CCJ-768.mktorest.com.

    • Standard Access: Enter the required fields Host Name, Client ID, and Client Secret.

      For Standard authentication, remove https:// from the host name. For example, 0644-CCJ-768.mktorest.com.

    • Access Token: Enter the required fields Host Name and Access Token.
    • Edit the Connection String: Click Show connection string and select Edit connection string. Enter the connection information of the JDBC connection string to connect.

      Ignore Driver. Type any character in the User and Password fields, as they will not be used in the connection.

  6. Click OK.
  7. Click on the new Data Source to connect.

In-Memory Data Import

After creating and connecting to the Marketo data source, you can retrieve data through JDBC and then publish a cube for dashboards, reports, and documents.

The examples below are using the Select Tables import option.

  1. Click your Marketo data source and select the tables you would like to import.
  2. Click Prepare Data.
  3. Click Finish.

  4. Select Import as an In-memory Dataset Mode to publish a cube.

How to Get Marketo Connection String Parameters

The Simba Marketo JDBC Driver supports OAuth 2.0 data source workflow authenticated by client credentials or Access Token.

Obtain Client Credentials

Marketo's REST APIs are authenticated with two-legged OAuth 2.0. Client IDs and Client Secrets are provided by user defined custom services.

  1. Log into your Marketo user account.
  2. Navigate to Admin > Integration > LaunchPoint.

  3. Click View Details to see the Client ID and Client Secret.

Get Access Token Using Client ID and Client Secret

The access token and refresh token are generated by sending a GET request via the Postman app. You can download the Postman app.

  1. Navigate to Admin > Web Services > REST API in your Marketo account and copy the Identity URL.

  2. In Postman, in the GET request field, enter the URL below replacing:
    • <identityURL> with your Marketo Identity URL
    • <Client ID> with the Client ID for your service
    • <Client Secret> with the Client Secret for your service

    https://<identityURL>/oauth/token?grant_type=client_credentials&client_id=<Client ID>&client_secret=<Client Secret>

  3. Click Send.

    The Expires In value is returned in seconds. A new access token will need to be generated after the allotted time.

Additional Resources

For additional information on Marketo configuration, see the links below:

Marketo Introduction

Marketo Authentication