Lists a file's parents. Try it now or see an example.
Request
HTTP request
GET https://www.googleapis.com/drive/v2/files/fileId/parents
Parameters
Parameter name | Value | Description |
---|---|---|
Path parameters | ||
fileId |
string |
The ID of the file. |
Authorization
This request requires authorization with at least one of the following scopes:
Scope |
---|
https://www.googleapis.com/auth/drive |
https://www.googleapis.com/auth/drive.file |
https://www.googleapis.com/auth/drive.readonly |
https://www.googleapis.com/auth/drive.metadata.readonly |
https://www.googleapis.com/auth/drive.appdata |
https://www.googleapis.com/auth/drive.metadata |
https://www.googleapis.com/auth/drive.photos.readonly |
Some scopes are restricted and require a security assessment for your app to use them. For more information, see the authentication and authorization page.
Request body
Do not supply a request body with this method.
Response
If successful, this method returns a response body with the following structure:
{ "kind": "drive#parentList", "etag": etag, "selfLink": string, "items": [ parents Resource ] }
Property name | Value | Description | Notes |
---|---|---|---|
kind |
string |
This is always drive#parentList. | |
etag |
etag |
The ETag of the list. | |
selfLink |
string |
A link back to this list. | |
items[] |
list |
The list of parents. |
Examples
Note: The code examples available for this method do not represent all supported programming languages (see the client libraries page for a list of supported languages).
Java
Uses the Java client library.
import com.google.api.services.drive.Drive; import com.google.api.services.drive.model.ParentList; import com.google.api.services.drive.model.ParentReference; import java.io.IOException; // ... public class MyClass { // ... /** * Print a file's parents. * * @param service Drive API service instance. * @param fileId ID of the file to print parents for. */ private static void printParents(Drive service, String fileId) { try { ParentList parents = service.parents().list(fileId).execute(); for (ParentReference parent : parents.getItems()) { System.out.println("File Id: " + parent.getId()); } } catch (IOException e) { System.out.println("An error occurred: " + e); } } // ... }
.NET
Uses the .NET client library.
using Google.Apis.Drive.v2; using Google.Apis.Drive.v2.Data; // ... public class MyClass { // ... /// <summary> /// Print a file's parents. /// </summary> /// <param name="service">Drive API service instance.</param> /// <param name="fileId">ID of the file to print parents for</param> public static void PrintParents(DriveService service, String fileId) { ParentsResource.ListRequest request = service.Parents.List(fileId); try { ParentList parents = request.Execute(); foreach (ParentReference parent in parents.Items) { Console.WriteLine("File Id: " + parent.Id); } } catch (Exception e) { Console.WriteLine("An error occurred: " + e.Message); } } // ... }
PHP
Uses the PHP client library.
/** * Print a file's parents. * * @param Google_Service_Drive $service Drive API service instance. * @param String $fileId ID of the file to print parents for. */ function printParents($service, $fileId) { try { $parents = $service->parents->listParents($fileId); foreach ($parents->getItems() as $parent) { print 'File Id: ' . $parent->getId(); } } catch (Exception $e) { print "An error occurred: " . $e->getMessage(); } }
Python
Uses the Python client library.
from apiclient import errors # ... def print_parents(service, file_id): """Print a file's parents. Args: service: Drive API service instance. file_id: ID of the file to print parents for. """ try: parents = service.parents().list(fileId=file_id).execute() for parent in parents['items']: print 'File Id: %s' % parent['id'] except errors.HttpError, error: print 'An error occurred: %s' % error
JavaScript
Uses the JavaScript client library.
/** * Print a file's parents. * * @param {String} fileId ID of the file to insert. */ function printParents(fileId) { var request = gapi.client.drive.parents.list({ 'fileId': fileId }); request.execute(function(resp) { for (parent in resp.items) { console.log('File Id: ' + resp.items[parent].id); } }); }
Go
Uses the Go client library.
import ( "google.golang.org/drive/v2" "fmt" ) // PrintParents displays the parents of a given file func PrintParents(d *drive.Service, fileId string) error { r, err := d.Parents.List(fileId).Do() if err != nil { fmt.Printf("An error occurred: %v\n", err) return err } for _, p := range r.Items { fmt.Printf("Folder with ID: %v", p.Id) } return nil }
Objective-C
Uses the Objective-C client library.
#import "GTLDrive.h" // ... + (void)printFilesInFolderWithService:(GTLServiceDrive *)service fileId:(NSString *)fileId { GTLQueryDrive *query = [GTLQueryDrive queryForParentsListWithFileId:fileId]; // queryTicket can be used to track the status of the request. GTLServiceTicket *queryTicket = [service executeQuery:query completionHandler:^(GTLServiceTicket *ticket, GTLDriveParentList *parents, NSError *error) { if (error == nil) { for (GTLDriveParentReference *parent in parents) { NSLog(@"File Id: %@", parent.identifier); } } else { NSLog(@"An error occurred: %@", error); } }]; } // ...
Try it!
Use the APIs Explorer below to call this method on live data and see the response.