curl --request GET \
--url https://api.cloudglue.dev/v1/data-connectors/{id}/files \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cloudglue.dev/v1/data-connectors/{id}/files"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cloudglue.dev/v1/data-connectors/{id}/files', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cloudglue.dev/v1/data-connectors/{id}/files",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.cloudglue.dev/v1/data-connectors/{id}/files"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.cloudglue.dev/v1/data-connectors/{id}/files")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cloudglue.dev/v1/data-connectors/{id}/files")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"object": "data_connector_file",
"type": "file",
"uri": "<string>",
"name": "<string>",
"mime_type": "<string>",
"size_bytes": 123,
"created_at": 123,
"metadata": {
"folder_id": "<string>",
"path": "<string>",
"prefix": "<string>"
},
"thumbnail_url": "<string>"
}
],
"has_more": true,
"next_page_token": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}List Data Connector Files
Browse files available in a connected data source. Returns URIs compatible with Cloudglue’s file import system, and per-file provider metadata (see the metadata field) so you can inspect participants, hosts, durations, and AI summaries before importing. Supports pagination and filtering: from/to and title_search are shared filters honored by every connector that can (see each parameter’s support matrix); parameters a connector can’t honor are silently ignored. When filters are applied, a page may contain fewer than limit items — even zero — while has_more is still true: continue paginating until next_page_token is null rather than stopping at the first short or empty page.
curl --request GET \
--url https://api.cloudglue.dev/v1/data-connectors/{id}/files \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cloudglue.dev/v1/data-connectors/{id}/files"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cloudglue.dev/v1/data-connectors/{id}/files', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cloudglue.dev/v1/data-connectors/{id}/files",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.cloudglue.dev/v1/data-connectors/{id}/files"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.cloudglue.dev/v1/data-connectors/{id}/files")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cloudglue.dev/v1/data-connectors/{id}/files")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"object": "data_connector_file",
"type": "file",
"uri": "<string>",
"name": "<string>",
"mime_type": "<string>",
"size_bytes": 123,
"created_at": 123,
"metadata": {
"folder_id": "<string>",
"path": "<string>",
"prefix": "<string>"
},
"thumbnail_url": "<string>"
}
],
"has_more": true,
"next_page_token": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The ID of the data connector
Query Parameters
Maximum number of files to return (1-100)
1 <= x <= 100Opaque cursor for pagination. Use the next_page_token from a previous response. Tokens are only valid with the same filter parameters they were issued under.
Start date for filtering (YYYY-MM-DD, inclusive UTC day bound). Native for Zoom and Gong (call start; both default to a 6-month lookback when omitted), Grain and Recall (recording start/created time), iconik (asset date_created), and Google Drive (createdTime); matched while listing for Dropbox (client_modified). Ignored for S3/GCS.
End date for filtering (YYYY-MM-DD, inclusive UTC day bound). Same per-connector support as from. Ignored for S3/GCS.
Google Drive folder ID to list contents of. Applies to Google Drive connectors only.
Dropbox folder path to list contents of (default: root). Applies to Dropbox connectors only.
Dropbox only: 'true' lists the whole subtree under path (or the whole account when no path is given) instead of its direct children. Ignored by every other connector. Built for bulk metadata imports; interactive browsing should stay non-recursive.
true, false Bucket name. Required for S3 and GCS connectors.
Key prefix filter. Applies to S3 and GCS connectors only.
Case-insensitive title filter. Native for Grain (title_search), Google Drive (name contains), and iconik (full-text title search); matched while listing for Zoom (topic), Gong (call title), and Dropbox (filename). Ignored for Recall (no title is available when listing) and S3/GCS.
Team filter. Applies to Grain connectors only. See the Grain documentation for more details.
Meeting type filter. Applies to Grain connectors only. See the Grain documentation for more details.
Response
A list of files and folders
Object type, always 'list'
list Array of file and folder objects
Show child attributes
Show child attributes
Whether more results are available
Opaque cursor to pass as page_token for the next page. Null when there are no more results.