How to integrate YouTube with SAP Crystal Reports

Integrate SAP Crystal Reports and YouTube
Integrate SAP Crystal Reports and YouTube

Learn how to quickly and efficiently connect YouTube with SAP Crystal Reports for smooth data access.

Read and write YouTube data effortlessly. Integrate, manage, and automate videos, playlists, channels, and analytics — almost no coding required. You can do it all using the high-performance YouTube ODBC Driver for SAP Crystal Reports (often referred to as the YouTube Connector). We'll walk you through the entire setup.

Ready to dive in? Download the product to jump right in, or follow the step-by-step guide below to see how it works.

Create data source using YouTube ODBC Driver

Step-by-step instructions

To get data from YouTube using SAP Crystal Reports, we first need to create an ODBC data source. We will later read this data in SAP Crystal Reports. Perform these steps:

  1. Download and install ODBC PowerPack (if you haven't already).

  2. Search for odbc and open the ODBC Data Sources (64-bit):

    Open ODBC Data Source
  3. Create a User data source (User DSN) based on the ZappySys API Driver driver:

    ZappySys API Driver
    Create new User DSN for ZappySys API Driver
    • Create and use a User DSN if the client application runs under a User Account. This is the ideal option at design time (e.g., when developing in Visual Studio). Use it for both types of applications (64-bit and 32-bit).
    • Create and use a System DSN if the client application runs under a System Account (e.g., as a Windows Service). This is usually the required option in a production environment. If your Windows Service is a 32-bit application, you must use the 32-bit ODBC Data Source Administrator to configure this
  4. When the Configuration window appears give your data source a name if you haven't done that already, then select "YouTube" from the list of Popular Connectors. If "YouTube" is not present in the list, then click "Search Online" and download it. Then set the path to the location where you downloaded it. Finally, click Continue >> to proceed with configuring the DSN:

    YoutubeDSN
    YouTube
    ODBC DSN Template Selection
  5. Now it's time to configure the Connection Manager. Select Authentication Type, e.g. Token Authentication. Then select API Base URL (in most cases, the default one is the right one). More info is available in the Authentication section.

    YouTube authentication
    This walkthrough will help you create an API Key which you will be able to use in all requests and authenticate accordingly.

    1. Go to Google API Console
    2. From the Project Dropdown (usually found at the top bar) click Select Project
    3. On Project Popup click CREATE PROJECT
    4. Once project is created you can click Select Project to switch the context (You can click on Notification link or Choose from Top Dropdown)
    5. Click ENABLE APIs AND SERVICES
    6. Now we need to Enable three APIs one by one (YouTube Data API, YouTube Analytics API, YouTube Reporting API).
    7. Search YouTube Data API. Select and click ENABLE
    8. Search YouTube Analytics API. Select and click ENABLE
    9. Search YouTube Reporting API. Select and click ENABLE
    10. Go to back to main screen of Google API Console
    11. Click OAuth Consent Screen Tab. Enter necessary details and Save.
    12. Click Credentials Tab
    13. Click CREATE CREDENTIALS (some where in topbar) and select API key option.
    14. In the popup, copy API Key from the field "Your API key", close this window, and use it in the UI configuration, "key" field
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to API Key [Http]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Finally, hit OK button:
    YoutubeDSN
    YouTube
    API Key [Http]
    https://youtube.googleapis.com/youtube/v3
    Required Parameters
    key Fill-in the parameter...
    Optional Parameters
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 403|429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ODBC DSN HTTP Connection Configuration
    YouTube authentication
    To register a custom app, perform the following steps (detailed steps found in the help link at the end)
    1. Go to Google API Console
    2. From the Project Dropdown (usually found at the top bar) click Select Project
    3. On Project Popup click CREATE PROJECT
    4. Once project is created you can click Select Project to switch the context (You can click on Notification link or Choose from Top Dropdown)
    5. Click ENABLE APIs AND SERVICES
    6. Now we need to Enable three APIs one by one (YouTube Data API, YouTube Analytics API, YouTube Reporting API).
    7. Search YouTube Data API. Select and click ENABLE
    8. Search YouTube Analytics API. Select and click ENABLE
    9. Search YouTube Reporting API. Select and click ENABLE
    10. Go to back to main screen of Google API Console
    11. Click OAuth Consent Screen Tab. Enter necessary details and Save.
    12. Click Credentials Tab
    13. Click CREATE CREDENTIALS (some where in topbar) and select OAuth Client ID option.
    14. When prompted Select Application Type as Desktop App and click Create to receive your ClientID and Secret. Later on you can use this information now to configure Connection.
    15. Go to OAuth Consent Screen tab. Under Publishing Status click PUBLISH APP to ensure your refresh token doesnt expire often. If you planning to use App for Private use then do not have to worry about Verification Status after Publish.
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to User Account [OAuth]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Press Generate Token button to generate the tokens.
    5. Finally, hit OK button:
    YoutubeDSN
    YouTube
    User Account [OAuth]
    https://youtube.googleapis.com/youtube/v3
    Required Parameters
    UseCustomApp Fill-in the parameter...
    Optional Parameters
    ClientId
    ClientSecret
    Scope https://www.googleapis.com/auth/youtube~https://www.googleapis.com/auth/youtube.readonly~https://www.googleapis.com/auth/youtubepartner~https://www.googleapis.com/auth/youtube.force-ssl~https://www.googleapis.com/auth/youtube.upload~https://www.googleapis.com/auth/youtubepartner-channel-audit~https://www.googleapis.com/auth/yt-analytics-monetary.readonly~https://www.googleapis.com/auth/yt-analytics.readonly
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 403|429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    Redirect URL (Only for Web App)
    ODBC DSN OAuth Connection Configuration
    YouTube authentication
    Use these steps to authenticate as service account rather than Google / GSuite User. Learn more about service account here

    Basically to call Google API as Service account we need to perform following steps listed in 3 sections (Detailed steps found in the help link at the end)

    Create Project

    First thing is create a Project so we can call Google API. Skip this section if you already have Project (Go to next section)
    1. Go to Google API Console
    2. From the Project Dropdown (usually found at the top bar) click Select Project
    3. On Project Popup click CREATE PROJECT
    4. Once project is created you can click Select Project to switch the context (You can click on Notification link or Choose from Top Dropdown)
    5. Click ENABLE APIs AND SERVICES
    6. Now we need to Enable three APIs one by one (YouTube Data API, YouTube Analytics API, YouTube Reporting API)
    7. Search YouTube Data API. Select and click ENABLE
    8. Search YouTube Analytics API. Select and click ENABLE
    9. Search YouTube Reporting API. Select and click ENABLE

    Create Service Account

    Once Project is created and APIs are enabled we can now create a service account under that project. Service account has its ID which looks like some email ID (not to confuse with Google /Gmail email ID)
    1. Go to Create Service Account
    2. From the Project Dropdown (usually found at the top bar) click Select Project
    3. Enter Service account name and Service account description
    4. For Role, do not select anything for now and Click Continue and then click Done. Next we will create Key.

    Create Key

    Once service account is created we need to create key file (i.e. credentials).
    1. In the Cloud Console, click the email address for the service account that you created.
    2. Click Keys.
    3. Click Add key, then click Create new key.
    4. Click Create and select P12 format. A P12 key file is downloaded to your computer. We will use this file in our API connection.
    5. Click Close.
    6. Now you may use downloaded *.p12 key file as secret file and Service Account Email as Client ID (e.g. some-service-account-name@your-project-id.iam.gserviceaccount.com ).

    Add Permission

    Now last thing is give read/write permission to Service Account. Basically you can create or open Google Sheet and add the Service Account as an editor to it as below.
    1. Copy the email address of your service account we created in previous step (its usually like this some-service-account-name@your-project-id.iam.gserviceaccount.com).
    2. Create or select an existing Google Sheet.
    3. Navigate to Sheet for which you like to give read/write access to Service Account.
    4. Click on the Share button in the top right, and add the email address of the service account as an editor. Here is how to share file(s) with specific people. Juse share with Service Account (use Service Account Email found on previous section)
    API Connection Manager configuration

    Just perform these simple steps to finish authentication configuration:

    1. Set Authentication Type to Service Account (Using *.json OR *.p12 key file) [OAuth]
    2. Optional step. Modify API Base URL if needed (in most cases default will work).
    3. Fill in all the required parameters and set optional parameters if needed.
    4. Finally, hit OK button:
    YoutubeDSN
    YouTube
    Service Account (Using *.json OR *.p12 key file) [OAuth]
    https://youtube.googleapis.com/youtube/v3
    Required Parameters
    Service Account Email Fill-in the parameter...
    Service Account Private Key Path (i.e. *.p12) Fill-in the parameter...
    Optional Parameters
    Scope https://www.googleapis.com/auth/youtube https://www.googleapis.com/auth/youtube.readonly https://www.googleapis.com/auth/youtubepartner https://www.googleapis.com/auth/youtube.force-ssl https://www.googleapis.com/auth/youtube.upload https://www.googleapis.com/auth/youtubepartner-channel-audit https://www.googleapis.com/auth/yt-analytics-monetary.readonly https://www.googleapis.com/auth/yt-analytics.readonly
    RetryMode RetryWhenStatusCodeMatch
    RetryStatusCodeList 403|429
    RetryCountMax 5
    RetryMultiplyWaitTime True
    ODBC DSN OAuth Connection Configuration

  6. Once the data source connection has been configured, it's time to configure the SQL query. Select the Preview tab and then click Query Builder button to configure the SQL query:

    ZappySys API Driver - YouTube
    Read and write YouTube data effortlessly. Integrate, manage, and automate videos, playlists, channels, and analytics — almost no coding required.
    YoutubeDSN
    Open Query Builder in API ODBC Driver to read and write data to REST API
  7. Start by selecting the Table or Endpoint you are interested in and then configure the parameters. This will generate a query that we will use in SAP Crystal Reports to retrieve data from YouTube. Hit OK button to use this query in the next step.

    SELECT * FROM MyVideos
    Configure table/endpoint parameters in ODBC data source based on API Driver
    Some parameters configured in this window will be passed to the YouTube API, e.g. filtering parameters. It means that filtering will be done on the server side (instead of the client side), enabling you to get only the meaningful data much faster.
  8. Now hit Preview Data button to preview the data using the generated SQL query. If you are satisfied with the result, use this query in SAP Crystal Reports:

    ZappySys API Driver - YouTube
    Read and write YouTube data effortlessly. Integrate, manage, and automate videos, playlists, channels, and analytics — almost no coding required.
    YoutubeDSN
    SELECT * FROM MyVideos
    API ODBC Driver-based data source data preview
    You can also access data quickly from the tables dropdown by selecting <Select table>.
    A WHERE clause, LIMIT keyword will be performed on the client side, meaning that the whole result set will be retrieved from the YouTube API first, and only then the filtering will be applied to the data. If possible, it is recommended to use parameters in Query Builder to filter the data on the server side (in YouTube servers).
  9. Click OK to finish creating the data source.

Video Tutorial

Read data in SAP Crystal Reports from the ODBC data source

  1. First of all, open SAP Crystal Reports and create the new Crystal Report.

    Create New Crystal Report
  2. And it will open the new data source selection window. Under ODBC(RDO) double click on the Make New Connection and Select the desired ODBC DSN, in our case we need to select YoutubeDSN which we created in upper section. And Click on Next.

    YoutubeDSN
    SAP Crystal Report - Select ODBC YoutubeDSN DSN

  3. Expand the Connection and under the data select the desired table(s) or view(s) and click Add > button and click on Next.

    YoutubeDSN
    YoutubeDSN
    SAP Crystal Report - Add ODBC YoutubeDSN DSN Tables
  4. Add the desired Fields to Display in the Reports. Here we are adding all fields and click on Finish.

    SAP Crystal Report - Add Display Fields
  5. That's it and you will be able to load the data in the Report.

    SAP Crystal Report - YoutubeDSN Data Output

Using ZappySys Driver Custom Views and Stored Procedure in SAP Crystal Report

You can create parameterized Stored Procedure and Virtual Tables on the same Data Source (ODBC DSN or Data Gateway Data Source). Please refer to this article for the same. You can create procedures to encapsulate custom logic and then only pass handful parameters rather than long SQL to execute your API call.

Using Custom Views in the SAP Crystal Report

After establishing the connection with YoutubeDSN Data Source you can use the custom view in SQL Crystal Report.
YoutubeDSN
YoutubeDSN
SAP Crystal Report - Custom Views

Using Custom Stored Procedure in the SAP Crystal Report

  1. First of all, create the custom stored procedure in the ZappySys Driver. Please refer to this article to create the custom stored procedure.
    ZappySys Driver Custom Stored Procedure
  2. After establishing the connection with YoutubeDSN Data Source you can use the custom Stored Procedure in SQL Crystal Report. Same way you can write custom queries also in the query box.
    YoutubeDSN
    SAP Crystal Report - Custom Views

Optional: Centralized data access via ZappySys Data Gateway

In some situations, you may need to provide YouTube data access to multiple users or services. Configuring the data source on a Data Gateway creates a single, centralized connection point for this purpose.

This configuration provides two primary advantages:

  • Centralized data access
    The data source is configured once on the gateway, eliminating the need to set it up individually on each user's machine or application. This significantly simplifies the management process.
  • Centralized access control
    Since all connections route through the gateway, access can be governed or revoked from a single location for all users.
Data Gateway
Local ODBC
data source
Simple configuration
Installation Single machine Per machine
Connectivity Local and remote Local only
Connections limit Limited by License Unlimited
Central data access
Central access control
More flexible cost

To achieve this, you must first create a data source in the Data Gateway (server-side) and then create an ODBC data source in SAP Crystal Reports (client-side) to connect to it.

Let's not wait and get going!

Create YouTube data source in the gateway

In this section we will create a data source for YouTube in the Data Gateway. Let's follow these steps to accomplish that:

  1. Search for gateway in the Windows Start Menu and open ZappySys Data Gateway Configuration:

    Open ZappySys Data Gateway Service Manager
  2. Go to the Users tab and follow these steps to add a Data Gateway user:

    • Click the Add button
    • In the Login field enter a username, e.g., john
    • Then enter a Password
    • Check the Is Administrator checkbox
    • Click OK to save
    Data Gateway - Add User
  3. Now we are ready to add a data source:

    • Click the Add button
    • Give the Data source a name (have it handy for later)
    • Then select Native - ZappySys API Driver
    • Finally, click OK
    YoutubeDSN
    ZappySys API Driver
    Data Gateway - Add data source
  4. When the ZappySys API Driver configuration window opens, go back to ODBC Data Source Administrator where you already have the YouTube ODBC data source created and configured, and follow these steps on how to Import data source configuration into the Gateway:

    • Open ODBC data source configuration and click Copy settings:
      ZappySys API Driver - Configuration [Version: 2.0.1.10418]
      ZappySys API Driver - YouTube
      Read and write YouTube data effortlessly. Integrate, manage, and automate videos, playlists, channels, and analytics — almost no coding required.
      YoutubeDSN
      Copy connection string for ODBC application
    • The window opens, telling us the connection string was successfully copied to the clipboard: Successful connection string copying for ODBC application
    • Then go to Data Gateway configuration and in data source configuration window click Load settings:

      YoutubeDSN
      ZappySys API Driver - Configuration [Version: 2.0.1.10418]
      ZappySys API Driver - YouTube
      Read and write YouTube data effortlessly. Integrate, manage, and automate videos, playlists, channels, and analytics — almost no coding required.
      YoutubeDSN
      Load configuration in ZappySys Data Gateway data source
    • Once a window opens, just paste the settings by pressing CTRL+V or by clicking right mouse button and then Paste option.
  5. Once done, go to the Network Settings tab and Add a firewall rule for inbound traffic:

    Data Gateway - Add firewall rule for inbound connections
    • This will initially allow all inbound traffic.
    • Click Edit IP filters to restrict access to specific IP addresses or ranges.
  6. Crucial Step: After creating or modifying the data source, you must:

    • Click the Save button to persist your changes.
    • Hit Yes when prompted to restart the Data Gateway service.

    This ensures all changes are properly applied:

    ZappySys Data Gateway - Save Changes
    Skipping this step may cause the new settings to fail, preventing you from connecting to the data source.

Create ODBC data source to connect to the gateway

In this part we will create an ODBC data source to connect to the ZappySys Data Gateway from SAP Crystal Reports. To achieve that, let's perform these steps:

  1. Search for odbc and open the ODBC Data Sources (64-bit):

    Open ODBC Data Source
  2. Create a User data source (User DSN) based on the ODBC Driver 17 for SQL Server driver:

    ODBC Driver 17 for SQL Server
    Create new User DSN for ODBC Driver 17 for SQL Server
    If you don't see the ODBC Driver 17 for SQL Server driver in the list, choose a similar version.
  3. Then set a Name for the data source (e.g. Gateway) and the address of the Data Gateway:

    ZappySysGatewayDSN
    localhost,5000
    ODBC driver for SQL Server - Setting hostname and port
    Make sure you separate the hostname and port with a comma, e.g. localhost,5000.
  4. Proceed with the authentication part:

    • Select SQL Server authentication
    • In the Login ID field enter the user name you created in the Data Gateway, e.g., john
    • Set Password to the one you configured in the Data Gateway
    ODBC driver for SQL Server - Selecting SQL Authentication
  5. Then set the default database property to YoutubeDSN (the one we used in the Data Gateway):

    YoutubeDSN
    YoutubeDSN
    ODBC driver for SQL Server - Selecting database
    Make sure to type the data source name manually or copy/paste it directly into the field. Using the dropdown might fail because the Trust server certificate option is not enabled yet (next step).
  6. Continue by checking the Trust server certificate option:

    ODBC driver for SQL Server - Trusting certificate
  7. Once you do that, test the connection:

    ODBC driver for SQL Server - Testing connection
  8. If the connection is successful, everything is good:

    ODBC driver for SQL Server - Testing connection succeeded
  9. Done!

We are ready to move to the final step. Let's do it!

Access data in SAP Crystal Reports via the gateway

Finally, we are ready to read data from YouTube in SAP Crystal Reports via the Data Gateway. Follow these final steps:

  1. Go back to SAP Crystal Reports.

  2. First of all, open SAP Crystal Reports and create the new Crystal Report.

    Create New Crystal Report
  3. And it will open the new data source selection window. Under ODBC(RDO) double click on the Make New Connection and Select the desired ODBC DSN, in our case we need to select ZappySysGatewayDSN which we created in upper section. And Click on Next.

    ZappySysGatewayDSN
    SAP Crystal Report - Select ODBC ZappySysGatewayDSN DSN

  4. Read the data the same way we discussed at the beginning of this article.

  5. That's it!

Now you can connect to YouTube data in SAP Crystal Reports via the Data Gateway.

If you are asked for authentication details, use Database authentication, SQL authentication or Basic authentication option and enter the credentials you used when configuring the Data Gateway, e.g. john and your password.

Supported YouTube Connector actions

Got a specific use case in mind? We've mapped out exactly how to perform a variety of essential YouTube operations directly in SAP Crystal Reports, so you don't have to figure out the setup from scratch. Check out the step-by-step guides below:

Conclusion

In this article we showed you how to connect to YouTube in SAP Crystal Reports and integrate data without writing complex code — all of this was powered by YouTube ODBC Driver.

Download ODBC PowerPack now or ping us via chat if you have any questions or are looking for a specific feature (you can also reach out to us by submitting a ticket):

Explore SAP Crystal Reports connectors

All
Big Data & NoSQL
Database
CRM & ERP
Marketing
Collaboration
Cloud Storage
Reporting
Commerce
API & Files

More YouTube integrations

All
Data Integration
Database
BI & Reporting
Productivity
Programming Languages
Automation & Scripting
ODBC applications