Ingest your files into Unstructured from Google Drive.

The requirements are as follows.

  • A Google Cloud account.

  • The Google Drive API enabled in the account. Learn how.

  • Within the account, a Google Cloud service account and its related credentials.json key file or its contents in JSON format. Create a service account. Create credentials for a service account.

    To ensure maximum compatibility across Unstructured service offerings, you should give the service account key information to Unstructured as a single-line string that contains the contents of the downloaded service account key file (and not the service account key file itself). To print this single-line string without line breaks, suitable for copying, you can run one of the following commands from your Terminal or Command Prompt. In this command, replace <path-to-downloaded-key-file> with the path to the credentials.json key file that you downloaded by following the preceding instructions.

    • For macOS or Linux:

      tr -d '\n' < <path-to-downloaded-key-file>
      
    • For Windows:

      (Get-Content -Path "<path-to-downloaded-key-file>" -Raw).Replace("`r`n", "").Replace("`n", "")
      
  • A Google Drive folder.

  • Give the service account access to the folder. To do this, share the folder with the service account’s email address. Learn how. Learn more.

  • Get the folder’s ID. This is a part of the URL for your Google Drive folder represented in the following URL as {folder_id}: https://drive.google.com/drive/folders/{folder-id}.

To create the source connector:

  1. On the sidebar, click Connectors.
  2. Click Sources.
  3. Cick New or Create Connector.
  4. Give the connector some unique Name.
  5. In the Provider area, click Google Drive.
  6. Click Continue.
  7. Follow the on-screen instructions to fill in the fields as described later on this page.
  8. Click Save and Test.

Fill in the following fields:

  • Name (required): A unique name for this connector.
  • Drive ID (required): The target folder’s ID.
  • Extensions: A comma-separated list of any file extensions to be included in the ingestion process (such as .jpg,.pdf), if filtering is needed. The default is to include all files, if not otherwise specified.
  • Recursive: Check this box to also access files from all subfolders within the folder.
  • Account Key (required): The contents of the credentials.json key file for the target service account. These contents must be expressed as a single-line string without line breaks.