---
title: Google Drive
slug: connectors/google-drive
docTags: 
createdAt: 2026-06-09T16:29:37.298Z
---

Google Drive is a cloud storage service that enables users to store, share, and collaborate on files online.

Google Drive is a cloud-based storage service that allows users to store, share, and collaborate on files and folders. The Google Drive connector for Swimlane Turbine enables seamless integration with Google Drive, allowing users to automate file management tasks such as creating, copying, and deleting files and folders. This integration enhances security workflows by enabling efficient data handling and collaboration, reducing manual effort, and ensuring timely access to critical information.

## Google Cloud Platform and Google Admin Provisioning

### Prerequisites

Before you can use the Google Drive connector for Turbine, you'll need to set up authentication with Google Drive. This requires the following:

- OAuth2 Client Credentials authentication using the following parameters:
  - Client ID: Unique identifier for your application.
  - Client Secret: Secret key associated with your client ID.
  - Refresh Token: Token used to obtain new access tokens.
- Service Account Authentication using the following parameter:
  - Credentials: JSON file containing the service account credentials.

## GCP Project Creation:

1. Log in to GCP Console here: [https://console.cloud.google.com/](https://console.cloud.google.com/)
2. Navigate to this link to create a new project: [https://console.cloud.google.com/projectcreate](https://console.cloud.google.com/projectcreate)
3. Name your project and click **Create**. We recommend specific and recognizable project names.

Navigate to your projects, and select your new project.

### Enabling Individual APIs:

You will need to navigate to these links and enable the following APIs:

Google Drive API:
[https://console.cloud.google.com/apis/library/drive.googleapis.com](https://console.cloud.google.com/apis/library/drive.googleapis.com)

This will bring up the individual API Dashboard when successfully enabled. Continue through the links provided below until all are enabled. If the links become deprecated, make sure you use the explicit names provided

Google Sheets API:
[https://console.cloud.google.com/apis/library/sheets.googleapis.com](https://console.cloud.google.com/apis/library/sheets.googleapis.com)

After this, navigate back to the APIs and Services Dashboard and verify that all APIs are listed, either by using the filter or looking at the list.

If any APIs are missing, go back and enable them.

### Configuring a Service Account:

Google Workspace connector requires a Google service account to authenticate.

1. Open [https://console.developers.google.com/iam-admin/serviceaccounts](https://console.developers.google.com/iam-admin/serviceaccounts)
2. Select the appropriate project
3. Click **+ CREATE NEW SERVICE ACCOUNT**
4. Assign a name for the service account and add a description, click **CREATE AND CONTINUE**
5. Click the **Select a Role** dropdown and type “Owner” in the filter. Choose **Owner** and click **Continue**
6. For the menu specifying *Grant users access to this service account (optional)* you may select **Users** or **Skip** and click **Done**. This is not required for the connector
7. Click on the newly created service account email
8. Navigate to the **KEYS** menu
9. Click **ADD KEY**, select **CREATE NEW KEY**, select **JSON** format, and click **CREATE**. Make sure you download the .json file presented. This file will be needed when configuring the asset in Swimlane
10. Navigate to the **Details** menu at the top of the screen. Copy down the **Unique ID** to be used in the Setting API Scopes step below

### Delegating Domain-Wide Authority (Recommended)

In order to support accessing multiple user accounts, the domain-wide authority must be enabled before creating a service account. Choosing not to delegate domain-wide authority will heavily limit the scope of what this connector can do. If the connector will only operate against a single account, the next section (Setting API Scopes) can be skipped.

### Setting API Scopes:

After creating a service account, the necessary API scopes required to be authorized must be set.

1. From [https://admin.google.com](https://admin.google.com/), navigate to **Security > API Controls** and then click **Manage Domain Wide Delegation** at the bottom of the window.
2. Click **Add new**
3. In the **Client ID** field, enter the **Unique ID** from the service account **Details** menu
4. Enter the following CSV value into the **OAuth Scopes (comma-delimited)** input:
   `https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/spreadsheets`
5. Click **Authorize**

## Asset Setup:

### Prerequisites:

- `.json` file downloaded when the Service Account Key was created

### Asset Configuration:

Credentials:

The contents of the JSON credentials key file downloaded when creating a service account must be base64-encoded when creating the Swimlane Google Workspace asset.

For Linux and Mac:

`$ cat <path_to_credentials.json> | base64`

For Windows using Powershell:

`[convert]::ToBase64String((Get-Content -path "your_file_path" -Encoding byte))`

Now copy the Base64 encoded string and paste it into the Service Account JSON field.

Delegate Account:

The delegate account value is used to determine which account to operate when running actions. *This value should be the email address for the **target account*** (the mailbox you are trying to read/write).

Some actions provide an optional input to override the asset value.

In most - if not all cases an Admin account of the Google Workspace should be used. It should not be the service account email.

Customer ID:

The unique ID for the customer's Google Workspace account. As an account administrator, you can also use the my\_customer alias to represent your account's customer ID. The customer ID is also returned as part of the user resource.

In order to get this value, navigate to [https://admin.google.com](https://admin.google.com). Then go to **Account - Account Settings**, and you will find it listed.

### OAuth 2.0

To configure OAuth 2.0 for the Swimlane Google Workspace Connector, follow these steps:

1. Navigate to the [Google Cloud Console](https://console.cloud.google.com/).
2. Select your project from the top menu.
3. In the left sidebar, select "APIs & Services" > "Credentials."
4. Click the "+ CREATE CREDENTIALS" button and select "OAuth 2.0 Client ID."
5. Under "Application type," select "Web application."
6. Enter a name for the OAuth 2.0 client.
7. Click "Create." A dialog with your client ID and client secret will appear.
8. Click "OK" to close the dialog.
9. Next to the OAuth 2.0 client you just created, click on the pencil icon to edit the client.
10. Under "Scopes for Google APIs," add the necessary scopes that are required for your connector (as specified in the "Setting API Scopes" section of this README).
11. Click "Save."

Your OAuth 2.0 client is now configured and ready to be used with the Swimlane Google Workspace Connector.

Once this is configured, you need to provide the refresh token in the asset. If you don't know how to achieve this, Swimlane will provide you with a script that will help you get the refresh token.

### Limitations when NOT using a Delegated Account:

While service accounts can perform many of the same actions as regular user accounts, they have some limitations when it comes to interacting with user data. In particular, a service account with its own Gmail setup may not be able to interact with user data in the same way a regular user would. For example, it might not be able to access a user's emails, contacts, or Google Drive files.

## Capabilities

- Add a Sub-Sheet to a Google Sheet.
- Copy File
- Copy Folder
- Create a new Folder
- Create a new Shared Drive
- Create a New Spreadsheet
- Delete File
- List Files
- Upload File

## Additional Documentation

- [Google Drive Connector Documentation](https://docs.swimlane.com/connectors/google-drive)
- [Google Drive API Documentation](https://developers.google.com/drive/api/reference/rest/v3)

# Configurations

## Google Drive OAuth2 Authentication

Authenticates using OAuth2 Credentials

### Configuration Parameters

| **Parameter**  | **Description**                                                                                                                   | **Type** | **Required** |
| -------------- | --------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
| client\_id     | The client ID for the OAuth 2.0 application.                                                                                      | string   | Required     |
| client\_secret | The client secret for the OAuth 2.0 application.                                                                                  | string   | Required     |
| refresh\_token | OAuth 2.0 refresh token used to obtain new access tokens. If using a refresh token, you must also provide a client ID and secret. | string   | Required     |
| http\_proxy    | The HTTP proxy to use for outbound HTTP requests.                                                                                 | string   | Optional     |
| verify\_ssl    | Verify SSL                                                                                                                        | boolean  | Optional     |

## Google Drive Service Account Authentication

Authenticates using Google Service Account

### Configuration Parameters

| **Parameter**     | **Description**                                                                                                                                                        | **Type** | **Required** |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
| credentials       | Base64-encoded contents from Service Account JSON credentials file. See README for setup instructions                                                                  | string   | Required     |
| delegate\_account | Account to execute integrations under. If not specified, the integration will run as a service account. Using a Service Account will introduce limitations. See Readme | string   | Optional     |
| http\_proxy       | The HTTP proxy to use for outbound HTTP requests.                                                                                                                      | string   | Optional     |
| verify\_ssl       | Verify SSL                                                                                                                                                             | boolean  | Optional     |

# Actions

## Add Sub-Sheet

Create a new sub-sheet within an existing Google Sheet using the specified sub-sheet name and parent sheet ID.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name** | **Type** | **Required** | **Description**      |
| ----------------- | -------- | ------------ | -------------------- |
| `sub_sheet_name`  | string   | Required     | Name of the resource |
| `parent_sheet_id` | string   | Required     | Unique identifier    |
| `row_count`       | number   | Optional     | Count value          |
| `column_count`    | number   | Optional     | Count value          |

### Input Example

`{"sub_sheet_name":"Test Sheet","parent_sheet_id":"16BAnI3nrQ7aBYlu9QbhzY4xBUtVhmfhc59vthpavenk","row_count":1024,"column_count":26}`

### Output

| **Parameter**                                         | **Type** | **Description**                                          |
| ----------------------------------------------------- | -------- | -------------------------------------------------------- |
| `status_code`                                         | number   | HTTP status code of the response                         |
| `reason`                                              | string   | Response reason phrase                                   |
| `response`                                            | object   | Output field: response                                   |
| `response.spreadsheetId`                              | string   | Unique identifier                                        |
| `response.replies`                                    | array    | Output field: response.replies                           |
| `response.replies.addSheet`                           | object   | Output field: response.replies.addSheet                  |
| `response.replies.addSheet.properties`                | object   | Output field: response.replies.addSheet.properties       |
| `response.replies.addSheet.properties.sheetId`        | number   | Unique identifier                                        |
| `response.replies.addSheet.properties.title`          | string   | Output field: response.replies.addSheet.properties.title |
| `response.replies.addSheet.properties.index`          | number   | Output field: response.replies.addSheet.properties.index |
| `response.replies.addSheet.properties.sheetType`      | string   | Type of the resource                                     |
| `response.replies.addSheet.properties.gridProperties` | object   | Unique identifier                                        |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"spreadsheetId":"1hJ9-Zpo9vmRbB29QeqU0AZsoeeJAfwd7S4AuIsOc5pc","replies":[{}]}}`

## Copy File

Create a duplicate of a specified file in Google Drive using the provided File ID.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name**       | **Type** | **Required** | **Description**      |
| ----------------------- | -------- | ------------ | -------------------- |
| `file_id`               | string   | Required     | Unique identifier    |
| `destination_folder_id` | string   | Optional     | Unique identifier    |
| `new_file_name`         | string   | Optional     | Name of the resource |

### Input Example

`{"file_id":"1-3R9tZkeyyr5BIIBhhiH1WzkDetoNBgP","destination_folder_id":"1-3R9tZkeyyr5BIIBhhiH1WzkDetoNBgP","new_file_name":"New File"}`

### Output

| **Parameter**       | **Type** | **Description**                  |
| ------------------- | -------- | -------------------------------- |
| `status_code`       | number   | HTTP status code of the response |
| `reason`            | string   | Response reason phrase           |
| `response`          | object   | Output field: response           |
| `response.kind`     | string   | Output field: response.kind      |
| `response.id`       | string   | Unique identifier                |
| `response.name`     | string   | Name of the resource             |
| `response.mimeType` | string   | Type of the resource             |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"kind":"drive#file","id":"1SJphv4CeY8fIXxf5ugKOI9Dn-xTCgeWIMVw0MFdnqRI","name":"XYZTEST","mimeType":"application/vnd.google-apps.spreadsheet"}}`

## Copy Folder

Create a duplicate of a specified folder in Google Drive using source and destination folder IDs.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name**       | **Type** | **Required** | **Description**      |
| ----------------------- | -------- | ------------ | -------------------- |
| `source_folder_id`      | string   | Required     | Unique identifier    |
| `destination_folder_id` | string   | Required     | Unique identifier    |
| `new_folder_name`       | string   | Optional     | Name of the resource |

### Input Example

`{"source_folder_id":"1-3R9tZkeyyr5BIIBhhiH1WzkDetoNBgP","destination_folder_id":"1-3R9tZkeyyr5BIIBhhiH1WzkDetoNBgP","new_folder_name":"New File"}`

### Output

| **Parameter**      | **Type** | **Description**                      |
| ------------------ | -------- | ------------------------------------ |
| `status_code`      | number   | HTTP status code of the response     |
| `reason`           | string   | Response reason phrase               |
| `response`         | object   | Output field: response               |
| `response.success` | boolean  | Whether the operation was successful |
| `response.id`      | string   | Unique identifier                    |
| `response.name`    | string   | Name of the resource                 |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"success":true,"id":"1WO7f9zBQdKdgYvopxaX7Eq4XTLTh10bw","name":"XYZ"}}`

## Create Folder

Create a new folder in Google Drive using the specified name.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name**  | **Type** | **Required** | **Description**      |
| ------------------ | -------- | ------------ | -------------------- |
| `name`             | string   | Required     | Name of the resource |
| `parent_folder_id` | string   | Optional     | Unique identifier    |

### Input Example

`{"name":"My Folder","parent_folder_id":"1-3R9tZkeyyr5BIIBhhiH1WzkDetoNBgP"}`

### Output

| **Parameter**       | **Type** | **Description**                  |
| ------------------- | -------- | -------------------------------- |
| `status_code`       | number   | HTTP status code of the response |
| `reason`            | string   | Response reason phrase           |
| `response`          | object   | Output field: response           |
| `response.kind`     | string   | Output field: response.kind      |
| `response.id`       | string   | Unique identifier                |
| `response.name`     | string   | Name of the resource             |
| `response.mimeType` | string   | Type of the resource             |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"kind":"drive#file","id":"11c2qfMTYNyzJGHBN13ouxXdXt6L4nIeD","name":"Test","mimeType":"application/vnd.google-apps.folder"}}`

## Create Shared Drive

Initiate the creation of a new shared drive in Google Drive using the specified name.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name**                                        | **Type** | **Required** | **Description**                                                                                                                                                                                                                                                |
| -------------------------------------------------------- | -------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                                   | string   | Required     | The name of this shared drive.                                                                                                                                                                                                                                 |
| `hidden`                                                 | boolean  | Optional     | Whether the shared drive is hidden from default view.                                                                                                                                                                                                          |
| `restrictions`                                           | object   | Optional     | Parameter for Create Shared Drive                                                                                                                                                                                                                              |
| `restrictions.copyRequiresWriterPermission`              | boolean  | Optional     | Whether the options to copy, print, or download files inside this shared drive, should be disabled for readers and commenters. When this restriction is set to true, it will override the similarly named field to true for any file inside this shared drive. |
| `restrictions.domainUsersOnly`                           | boolean  | Optional     | Whether access to this shared drive and items inside this shared drive is restricted to users of the domain to which this shared drive belongs. This restriction may be overridden by other sharing policies controlled outside of this shared drive.          |
| `restrictions.driveMembersOnly`                          | boolean  | Optional     | Whether access to items inside this shared drive is restricted to its members.                                                                                                                                                                                 |
| `restrictions.adminManagedRestrictions`                  | boolean  | Optional     | Whether administrative privileges on this shared drive are required to modify restrictions.                                                                                                                                                                    |
| `restrictions.sharingFoldersRequiresOrganizerPermission` | boolean  | Optional     | If true, only users with the organizer role can share folders. If false, users with either the organizer role or the file organizer role can share folders.                                                                                                    |

### Input Example

`{"name":"TEST DRIVE","hidden":false,"restrictions":{"copyRequiresWriterPermission":true,"domainUsersOnly":true,"driveMembersOnly":true,"adminManagedRestrictions":true,"sharingFoldersRequiresOrganizerPermission":true}}`

### Output

| **Parameter**   | **Type** | **Description**                  |
| --------------- | -------- | -------------------------------- |
| `status_code`   | number   | HTTP status code of the response |
| `reason`        | string   | Response reason phrase           |
| `response`      | object   | Output field: response           |
| `response.kind` | string   | Output field: response.kind      |
| `response.id`   | string   | Unique identifier                |
| `response.name` | string   | Name of the resource             |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"kind":"drive#file","id":"1fLz_aqbblWSkHkgBXiHBpw58W10fyDCE","name":"TEST DRIVE"}}`

## Create Spreadsheet

Generate a new Google Sheet in Google Drive using the specified name.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name**  | **Type** | **Required** | **Description**      |
| ------------------ | -------- | ------------ | -------------------- |
| `name`             | string   | Required     | Name of the resource |
| `parent_folder_id` | string   | Optional     | Unique identifier    |

### Input Example

`{"name":"Test Sheet","parent_folder_id":"1-3R9tZkeyyr5BIIBhhiH1WzkDetoNBgP"}`

### Output

| **Parameter**       | **Type** | **Description**                  |
| ------------------- | -------- | -------------------------------- |
| `status_code`       | number   | HTTP status code of the response |
| `reason`            | string   | Response reason phrase           |
| `response`          | object   | Output field: response           |
| `response.kind`     | string   | Output field: response.kind      |
| `response.id`       | string   | Unique identifier                |
| `response.name`     | string   | Name of the resource             |
| `response.mimeType` | string   | Type of the resource             |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"kind":"drive#file","id":"1hJ9-Zpo9vmRbB29QeqU0AZsoeeJAfwd7S4AuIsOc5pc","name":"Test Sheet","mimeType":"application/vnd.google-apps.spreadsheet"}}`

## Delete File

Permanently remove a file from Google Drive using the specified unique File ID.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name** | **Type** | **Required** | **Description**   |
| ----------------- | -------- | ------------ | ----------------- |
| `file_id`         | string   | Required     | Unique identifier |

### Input Example

`{"file_id":"1-3R9tZkeyyr5BIIBhhiH1WzkDetoNBgP"}`

### Output

| **Parameter**      | **Type** | **Description**                      |
| ------------------ | -------- | ------------------------------------ |
| `status_code`      | number   | HTTP status code of the response     |
| `reason`           | string   | Response reason phrase               |
| `response`         | object   | Output field: response               |
| `response.success` | boolean  | Whether the operation was successful |
| `response.id`      | string   | Unique identifier                    |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"success":true,"id":"1sV7-zQ-JIV4kpNcOUg_c3WYkinR9lqzw"}}`

## List Files

Retrieve a list of files from Google Drive using specified search criteria defined in the 'Query' parameter.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name**           | **Type** | **Required** | **Description**                                                                                                                                                                                                                                                                                                                                                      |
| --------------------------- | -------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `corpora`                   | string   | Optional     | Bodies of items (files/documents) to which the query applies. Supported bodies are 'user', 'domain', 'drive', and 'allDrives'. Prefer 'user' or 'drive' to 'allDrives' for efficiency. By default, corpora is set to 'user'. However, this can change depending on the filter set through the 'q' parameter.                                                         |
| `driveId`                   | string   | Optional     | ID of the shared drive to search.                                                                                                                                                                                                                                                                                                                                    |
| `includeItemsFromAllDrives` | boolean  | Optional     | Whether both My Drive and shared drive items should be included in results.                                                                                                                                                                                                                                                                                          |
| `orderBy`                   | string   | Optional     | Order ByA comma-separated list of sort keys. Valid keys are 'createdTime', 'folder', 'modifiedByMeTime', 'modifiedTime', 'name', 'name\_natural', 'quotaBytesUsed', 'recency', 'sharedWithMeTime', 'starred', and 'viewedByMeTime'. Each key sorts ascending by default, but can be reversed with the 'desc' modifier. Example usage: folder,modifiedTime desc,name. |
| `pageSize`                  | number   | Optional     | The maximum number of files to return per page. Partial or empty result pages are possible even before the end of the files list has been reached.                                                                                                                                                                                                                   |
| `pageToken`                 | string   | Optional     | The token for continuing a previous list request on the next page. This should be set to the value of 'nextPageToken' from the previous response.                                                                                                                                                                                                                    |
| `spaces`                    | string   | Optional     | A comma-separated list of spaces to query within the corpora. Supported values are 'drive' and 'appDataFolder'.                                                                                                                                                                                                                                                      |
| `supportsAllDrives`         | boolean  | Optional     | Whether the requesting application supports both My Drives and shared drives.                                                                                                                                                                                                                                                                                        |
| `q`                         | string   | Required     | A query for filtering the file results.                                                                                                                                                                                                                                                                                                                              |
| `includePermissionsForView` | string   | Optional     | Specifies which additional view's permissions to include in the response. Only 'published' is supported.                                                                                                                                                                                                                                                             |
| `includeLabels`             | string   | Optional     | A comma-separated list of IDs of labels to include in the labelInfo part of the response.                                                                                                                                                                                                                                                                            |

### Input Example

`{"corpora":"user","driveId":"0AA4TgyrgB_svUk9PBS","includeItemsFromAllDrives":false,"orderBy":"folder,modifiedTime desc,name","pageSize":1000,"pageToken":"kjandckamldskm","spaces":"drive","supportsAllDrives":false,"q":"\"root\" in parents and trashed=false","includePermissionsForView":"published","includeLabels":"label1"}`

### Output

| **Parameter**               | **Type** | **Description**                         |
| --------------------------- | -------- | --------------------------------------- |
| `status_code`               | number   | HTTP status code of the response        |
| `reason`                    | string   | Response reason phrase                  |
| `response`                  | object   | Output field: response                  |
| `response.nextPageToken`    | string   | Output field: response.nextPageToken    |
| `response.kind`             | string   | Output field: response.kind             |
| `response.incompleteSearch` | boolean  | Output field: response.incompleteSearch |
| `response.files`            | array    | Output field: response.files            |
| `response.files.kind`       | string   | Output field: response.files.kind       |
| `response.files.mimeType`   | string   | Type of the resource                    |
| `response.files.id`         | string   | Unique identifier                       |
| `response.files.name`       | string   | Name of the resource                    |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"nextPageToken":"~!!~AI9FV7R9nU3fTONFbvXN9UMFq-lYjd0xtId_0E1yX0CeU76zXaKDuSx1LwV2JY5j2rLkJVMWXdh-...","kind":"drive#fileList","incompleteSearch":false,"files":[{}]}}`

## Upload File

Upload a specified attachment to Google Drive, requiring the attachment as input.

### Endpoint

- **Method:** `GET`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**           |
| ------------------------- | -------- | ------------ | ------------------------- |
| `attachments`             | array    | Required     | File to be uploaded       |
| `attachments.file`        | string   | Optional     | Parameter for Upload File |
| `attachments.file_name`   | string   | Optional     | Name of the resource      |
| `attachments.description` | string   | Optional     | Parameter for Upload File |
| `file_name`               | string   | Optional     | Name of the resource      |
| `mime_type`               | string   | Optional     | Type of the resource      |
| `parent_folder_id`        | string   | Optional     | Unique identifier         |

### Input Example

`{"file_name":"7dbc0541-a8de-42a9-b7fa-e264c05f981e.txt","mime_type":"text/plain","parent_folder_id":[{"id":"drive_folder_id"}]}`

### Output

| **Parameter**       | **Type** | **Description**                  |
| ------------------- | -------- | -------------------------------- |
| `status_code`       | number   | HTTP status code of the response |
| `reason`            | string   | Response reason phrase           |
| `response`          | object   | Output field: response           |
| `response.kind`     | string   | Output field: response.kind      |
| `response.id`       | string   | Unique identifier                |
| `response.name`     | string   | Name of the resource             |
| `response.mimeType` | string   | Type of the resource             |

### Output Example

`{"status_code":200,"response_headers":null,"reason":"OK","response":{"kind":"drive#file","id":"1fLz_aqbblWSkHkgBXiHBpw58W10fyDCE","name":"test.jpg","mimeType":"*/*"}}`

# Response Headers

| **Header**   | **Description**                                       | **Example**                   |
| ------------ | ----------------------------------------------------- | ----------------------------- |
| Content-Type | The media type of the resource                        | application/json              |
| Date         | The date and time at which the message was originated | Thu, 01 Jan 2024 00:00:00 GMT |
