DropBox Connector
Documentation
Version: 1
Documentation

Reading DropBox data in SQL Server using ZappySys Data Gateway


This section covers steps for setting up DropBox Connector in the ZappySys Data Gateway data source (based on API Driver) to read DropBox data in SQL Server:

Create Data Source in ZappySys Data Gateway based on API Driver

  1. Download and install ZappySys ODBC PowerPack.

  2. Search for gateway in start menu and Open ZappySys Data Gateway:
    Open ZappySys Data Gateway

  3. Go to Users Tab to add our first Gateway user. Click Add; we will give it a name tdsuser and enter password you like to give. Check Admin option and click OK to save. We will use these details later when we create linked server:
    ZappySys Data Gateway - Add User

  4. Now we are ready to add a data source. Click Add, give data source a name (Copy this name somewhere, we will need it later) and then select Native - ZappySys API Driver. Finally, click OK. And it will create the Data Set for it and open the ZS driver UI.

    DropboxDSN

    ZappySys Data Gateway - Add Data Source

  5. When the Configuration window appears give your data source a name if you haven't done that already, then select "DropBox" from the list of Popular Connectors. If "DropBox" 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:

    DropboxDSN
    DropBox
    ODBC DSN Template Selection

  6. 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.

    Steps how to get and use DropBox credentials : User Account [OAuth]

    To use OAuth authentication, firstly, you need to create OAuth application:

    1. Log into your DropBox account.
    2. Go to DropBox My Apps.
    3. Then press Create app button to create a new app: My OAuth apps in Dropbox
    4. Once a new page opens, select Scoped access option: Create OAuth app to get Dropbox REST API data
    5. Next, select Full Dropbox to access all files and folders or App folder to access specific folder's files and folders option.
    6. Continue by giving your app a name.
    7. Then check I agree to Dropbox API Terms and Conditions checkbox.
    8. Click Create app button.
    9. Once a new page opens, click Enable additional teams and Enable additional users buttons: Configure OAuth app in Dropbox
    10. Then copy App key and App secret and copy paste them into your favorite text editor (you will need them later).
    11. Proceed by setting a Redirect URI and clicking Add button.

      NOTE: If you don't have a working Redirect URI, you can use https://zappysys.com/oauth (it's safe).

    12. Then click on Permissions tab and select application scopes: Set OAuth app permissions in Dropbox
    13. Select all Individual Scopes and Team Scopes if you want to manage team data.
    14. Click Submit button.
    15. Now go to SSIS package or ODBC data source and in User Account authentication set these parameters:
    1. For ClientId field use App key value.
    2. For ClientSecret field use App secret value.
    3. For ReturnUrl field use Redirect URI value.
  7. Done! Now you are ready to use Dropbox Connector!
NOTE: If you are planning to use your current data connection/token for automated processes, we recommend that you use a generic account for token generation when the login box appears (e.g. sales_automation@mycompany.com instead of bob_smith@mycompany.com). When you use a personal account which is tied to a specific employee profile and that employee leaves the company, the token may become invalid and any automated processes using that token will fail. Another potentially unwanted effect of using a personal token is incorrect logging; the API calls (e.g. Read, Edit, Delete, Upload) made with that token will record the specific user as performing the calls instead of an automated process.

Fill in all required parameters and set optional parameters if needed:

DropboxDSN
DropBox
User Account [OAuth]
https://api.dropboxapi.com/2/
Required Parameters
UseCustomApp Fill-in the parameter...
ReturnUrl Fill-in the parameter...
Optional Parameters
ClientId
ClientSecret
Scope
RetryMode RetryWhenStatusCodeMatch
RetryStatusCodeList 429
RetryCountMax 5
RetryMultiplyWaitTime True
ODBC DSN Oauth Connection Configuration

  • Once the data source has been configured, you can preview data. Select the Preview tab and use settings similar to the following to preview data:
    ODBC ZappySys Data Source Preview

  • Click OK to finish creating the data source.

  • Read data in SQL Server

    1. First, let's open SQL Server Management Studio, create a new Linked Server, and start configuring it:

      SSMS SQL Server Configure Linked Server
    2. Then click on Security option and configure username we created in ZappySys Data Gateway in one of the previous steps:
      SSMS SQL Server Configure Linked Server User Name

    3. Optional step. Under the Server Options, Enable RPC and RPC Out and Disable Promotion of Distributed Transactions(MSDTC).

      RPC and MSDTC Settings

      You need to enable RPC Out if you plan to use EXEC(...) AT [LINKED_SERVER_TO_DROPBOX_IN_DATA_GATEWAY] rather than OPENQUERY.
      If don't enabled it, you will encounter the Server 'LINKED_SERVER_TO_DROPBOX_IN_DATA_GATEWAY' is not configured for RPC error.

      Query Example:

      EXEC('SELECT * from Products') AT [LINKED_SERVER_TO_DROPBOX_IN_DATA_GATEWAY]


      If you plan to use 'INSERT INTO...EXEC(....) AT [LINKED_SERVER_TO_DROPBOX_IN_DATA_GATEWAY]' in that case you need to Disable Promotion of Distributed Transactions(MSDTC).
      If don't disabled it, you will encounter the The operation could not be performed because OLE DB provider "SQLNCLI11" for linked server "MY_LINKED_SERVER_NAME" was unable to begin a distributed transaction. error.

      Query Example:

      INSERT INTO dbo.Products
      EXEC('SELECT * FROM Products') AT [LINKED_SERVER_TO_DROPBOX_IN_DATA_GATEWAY]

    4. Finally, open a new query and execute a query we saved in one of the previous steps:

      SELECT * FROM OPENQUERY([LINKED_SERVER_TO_DROPBOX_IN_DATA_GATEWAY], 'SELECT * FROM Products')
      Execute query at Linked Server to ZappySys Data Gateway in SSMS

      SELECT * FROM OPENQUERY([LINKED_SERVER_TO_DROPBOX_IN_DATA_GATEWAY], 'SELECT * FROM Products')

    DropBox Connector Examples

    The ZappySys API Driver is a user-friendly interface designed to facilitate the seamless integration of various applications with the DropBox API. With its intuitive design and robust functionality, the ZappySys API Driver simplifies the process of configuring specific API endpoints to efficiently read or write data from DropBox.

    Click here to find more DropBox Connector examples designed for seamless integration with the ZappySys API ODBC Driver under ODBC Data Source (36/64) or ZappySys Data Gateway, enhancing your ability to connect and interact with Prebuilt Connectors effectively.

    Consume Data inside your App / Programming Language

    Once you know how to load data from DropBox Connector, you can click on one of the below links to learn the steps how to consume data inside your App / Programming Language from DropBox Connector.

    ODBC inside ETL / Reporting / BI Tools

    ODBC inside Programming Languages

    Key features of the ZappySys API Driver include:

    The API ODBC driver facilitates the reading and writing of data from numerous popular online services (refer to the complete list here) using familiar SQL language without learning complexity of REST API calls. The driver allows querying nested structure and output as a flat table. You can also create your own ODBC / Data Gateway API connector file and use it with this driver.

    1. Intuitive Configuration: The interface is designed to be user-friendly, enabling users to easily set up the specific API endpoints within DropBox without requiring extensive technical expertise or programming knowledge.

    2. Customizable Endpoint Setup: Users can conveniently configure the API endpoint settings, including the HTTP request method, endpoint URL, and any necessary parameters, to precisely target the desired data within DropBox.

    3. Data Manipulation Capabilities: The ZappySys API Driver allows for seamless data retrieval and writing, enabling users to fetch data from DropBox and perform various data manipulation operations as needed, all through an intuitive and straightforward interface.

    4. Secure Authentication Integration: The driver provides secure authentication integration, allowing users to securely connect to the DropBox API by inputting the necessary authentication credentials, such as API tokens or other authentication keys.

    5. Error Handling Support: The interface is equipped with comprehensive error handling support, ensuring that any errors or exceptions encountered during the data retrieval or writing process are efficiently managed and appropriately communicated to users for prompt resolution.

    6. Data Visualization and Reporting: The ZappySys API Driver facilitates the seamless processing and presentation of the retrieved data from DropBox, enabling users to generate comprehensive reports and visualizations for further analysis and decision-making purposes.

    Overall, the ZappySys API Driver serves as a powerful tool for streamlining the integration of applications with DropBox, providing users with a convenient and efficient way to access and manage data, all through a user-friendly and intuitive interface.