Ce guide contient des tâches liées à la gestion des Drive partagés, comme la création de Drive partagés et la gestion des membres et des autorisations, à l'aide de l'API Google Drive.
Si vous souhaitez spécifier les champs à renvoyer dans la réponse, vous pouvez définir le paramètre système fields avec n'importe quelle méthode de la ressource drives. Si vous ne spécifiez pas le paramètre fields, le serveur renvoie un ensemble de champs par défaut spécifiques à la méthode. Par exemple, la méthode list ne renvoie que les champs kind, id et name pour chaque lecteur partagé. Pour en savoir plus, consultez Renvoyer des champs spécifiques.
Pour en savoir plus sur les limites applicables aux dossiers dans les Drive partagés, consultez Limites applicables aux dossiers dans les Drive partagés.
Créer un Drive partagé
Pour créer un Drive partagé, utilisez la méthode create sur la ressource drives avec le paramètre requestId.
Le paramètre requestId identifie la tentative logique de création idempotente d'un Drive partagé. Si la requête expire ou renvoie une erreur de backend indéterminée, la même requête peut être répétée sans créer de doublons. Le requestId et le corps de la requête doivent rester identiques.
L'exemple de code suivant montre comment créer un lecteur partagé :
Java
Python
Node.js
PHP
.NET
Les appels à la méthode create sont idempotents.
Si le Drive partagé a été créé lors d'une requête précédente ou en raison d'une nouvelle tentative, la méthode renvoie une instance de la ressource drives. Parfois, par exemple après une longue période ou si le corps de la requête a changé, une erreur 409 peut être renvoyée, indiquant que le requestId doit être supprimé.
Obtenir un Drive partagé
Pour obtenir les métadonnées d'un Drive partagé, utilisez la méthode get sur la ressource drives avec le paramètre de chemin d'accès driveId. Si vous ne connaissez pas l'ID du Drive, vous pouvez lister tous les Drives partagés à l'aide de la méthode list.
La méthode get renvoie un Drive partagé sous la forme d'une instance de ressource drives.
Pour envoyer la requête en tant qu'administrateur de domaine, définissez le paramètre de requête useDomainAdminAccess sur true. Pour en savoir plus, consultez Gérer les Drive partagés en tant qu'administrateur de domaine.
Lister les Drive partagés
Pour lister les Drive partagés d'un utilisateur, utilisez la méthode list sur la ressource drives. La méthode renvoie une liste de Drives partagés.
Transmettez les paramètres de requête suivants pour personnaliser la pagination ou filtrer les Drive partagés :
pageSize: nombre maximal de lecteurs partagés à renvoyer par page.pageToken: jeton de page reçu d'un appel de liste précédent. Fournissez ce jeton pour récupérer la page suivante.q: chaîne de requête pour rechercher des lecteurs partagés. Pour en savoir plus, consultez Rechercher des Drive partagés.useDomainAdminAccess: défini surtruepour émettre la requête en tant qu'administrateur de domaine afin de renvoyer tous les lecteurs partagés du domaine dans lequel le demandeur est administrateur. Pour en savoir plus, consultez Gérer les Drive partagés en tant qu'administrateur de domaine.
Modifier un Drive partagé
Pour mettre à jour les métadonnées d'un Drive partagé, utilisez la méthode update sur la ressource drives avec le paramètre de chemin d'accès driveId.
La méthode renvoie un Drive partagé en tant qu'instance d'une ressource drives.
Pour envoyer la requête en tant qu'administrateur de domaine, définissez le paramètre de requête useDomainAdminAccess sur true. Pour en savoir plus, consultez Gérer les Drive partagés en tant qu'administrateur de domaine.
Masquer et afficher un Drive partagé
Pour masquer un Drive partagé dans la vue par défaut, utilisez la méthode hide sur la ressource drives avec le paramètre driveId.
Lorsqu'un Drive partagé est masqué, Drive marque la ressource du Drive partagé comme hidden=true. Les Drive partagés masqués n'apparaissent pas dans l'interface utilisateur de Drive ni dans la liste des fichiers renvoyés.
Pour rétablir la vue par défaut d'un Drive partagé, utilisez la méthode unhide sur la ressource drives avec le paramètre driveId.
Les deux méthodes renvoient un Drive partagé en tant qu'instance d'une ressource drives.
Supprimer un Drive partagé
Pour supprimer définitivement un Drive partagé, utilisez la méthode delete sur la ressource drives avec le paramètre driveId.
Avant de supprimer un Drive partagé, vous devez placer tout son contenu dans la corbeille ou le supprimer. L'utilisateur doit également disposer de l'autorisation role=organizer sur le dossier du Drive partagé. Pour en savoir plus, consultez Placer des fichiers et des dossiers dans la corbeille ou les supprimer.
Transmettez les paramètres de requête suivants pour filtrer les Drive partagés :
useDomainAdminAccess: défini surtruepour émettre la requête en tant qu'administrateur de domaine afin de renvoyer tous les lecteurs partagés du domaine dans lequel le demandeur est administrateur. Pour en savoir plus, consultez Gérer les Drive partagés en tant qu'administrateur de domaine.allowItemDeletion: définissez la valeur surtruepour supprimer les éléments du Drive partagé. Disponible uniquement lorsqueuseDomainAdminAccessest également défini surtrue.
Ajouter ou supprimer des membres d'un Drive partagé
Ajoutez ou supprimez des membres d'un Drive partagé à l'aide de la ressource permissions.
Pour ajouter un membre, créez l'autorisation sur le Drive partagé. Les méthodes d'autorisation peuvent également être utilisées sur des fichiers individuels d'un Drive partagé pour accorder des droits supplémentaires aux membres ou permettre aux non-membres de collaborer sur des éléments spécifiques.
Pour en savoir plus et obtenir des exemples de code, consultez Partager des fichiers, des dossiers et des Drive.
Gérer les Drive partagés en tant qu'administrateur de domaine
Appliquez le paramètre useDomainAdminAccess avec les ressources drives et permissions pour gérer les Drive partagés dans une organisation.
Les utilisateurs qui appellent ces méthodes avec useDomainAdminAccess=true doivent disposer du droit d'administrateur Drive and Docs.
Les administrateurs peuvent rechercher des Drive partagés ou mettre à jour les autorisations des Drive partagés appartenant à leur organisation, quelle que soit leur appartenance à un Drive partagé donné.
Lorsque vous utilisez des comptes de service, vous devrez peut-être emprunter l'identité d'un administrateur authentifié à l'aide de l'emprunt d'identité de compte de service. Notez que les comptes de service n'appartiennent pas à votre domaine Google Workspace, contrairement aux comptes utilisateur. Si vous partagez des éléments Google Workspace, tels que des documents ou des événements, avec l'ensemble de votre domaine Google Workspace, ces éléments ne sont pas partagés avec les comptes de service. Pour en savoir plus, consultez la présentation des comptes de service.
Récupérer un Drive partagé sans organisateur
L'exemple de code suivant montre comment récupérer des lecteurs partagés qui n'ont plus d'organisateur.
Java
Python
Node.js
PHP
.NET
Empêcher les utilisateurs de télécharger, d'imprimer ou de copier votre fichier
Vous pouvez limiter la façon dont les utilisateurs peuvent télécharger, imprimer et copier des fichiers dans les Drives partagés.
Pour déterminer si l'utilisateur peut modifier les restrictions de téléchargement appliquées par l'organisateur d'un Drive partagé, cochez le champ booléen capabilities.canChangeDownloadRestriction. Si capabilities.canChangeDownloadRestriction est défini sur true, des restrictions de téléchargement peuvent être appliquées au Drive partagé. Pour en savoir plus, consultez Comprendre les fonctionnalités des fichiers.
La ressource drives contient une collection de champs booléens restrictions permettant d'indiquer si une action peut être effectuée sur un Drive partagé.
Les restrictions s'appliquent à un Drive partagé ou aux éléments qu'il contient.
Les restrictions peuvent être définies à l'aide de la méthode drives.update.
Pour appliquer des restrictions de téléchargement à un Drive partagé, un administrateur de Drive partagé peut définir le champ restrictions.downloadRestriction de la ressource drives à l'aide de l'objet DownloadRestriction.
Si vous définissez le champ booléen restrictedForReaders sur true, vous indiquez que le téléchargement et la copie sont restreints pour les lecteurs. Si vous définissez le champ booléen restrictedForWriters sur true, vous déclarez que le téléchargement et la copie sont restreints pour les rédacteurs. Notez que si le champ restrictedForWriters est défini sur true, le téléchargement et la copie sont également limités pour les lecteurs. De même, définir restrictedForWriters sur true et restrictedForReaders sur false revient à définir restrictedForWriters et restrictedForReaders sur true.
Rétrocompatibilité.
Avec l'introduction de l'objet DownloadRestriction, la fonctionnalité du champ booléen restrictions.copyRequiresWriterPermission a été mise à jour.
Si vous définissez restrictions.copyRequiresWriterPermission sur true, le champ booléen restrictedForReaders de l'objet DownloadRestriction est défini sur true pour indiquer que le téléchargement et la copie sont restreints pour les lecteurs.
Si vous définissez le champ copyRequiresWriterPermission sur false, les champs restrictedForWriters et restrictedForReaders sont également définis sur false. Cela signifie que les paramètres de restriction de téléchargement ou de copie sont supprimés pour tous les utilisateurs.
Champs qui contrôlent les fonctionnalités de téléchargement, d'impression et de copie
Le tableau suivant liste les champs de ressources drives qui affectent les fonctionnalités de téléchargement, d'impression et de copie :
| Champ | Description | Version |
|---|---|---|
capabilities.canCopy |
Indique si l'utilisateur actuel peut copier des fichiers dans un Drive partagé. | v2 et v3 |
capabilities.canDownload |
Indique si l'utilisateur actuel peut télécharger des fichiers dans un Drive partagé. | v2 et v3 |
capabilities.canChangeCopyRequiresWriterPermission |
Indique si l'utilisateur actuel peut modifier la restriction copyRequiresWriterPermission d'un Drive partagé. |
v2 et v3 |
capabilities.canResetDriveRestrictions |
Indique si l'utilisateur actuel peut rétablir les restrictions par défaut du Drive partagé. | v2 et v3 |
capabilities.canChangeDownloadRestriction |
Indique si l'utilisateur actuel peut modifier la restriction de téléchargement d'un Drive partagé. | v3 uniquement |
restrictions.copyRequiresWriterPermission |
Indique si les options permettant de copier, d'imprimer ou de télécharger des fichiers dans un Drive partagé sont désactivées pour les lecteurs et les commentateurs. Lorsque true, le champ du même nom est défini sur true pour tous les fichiers de ce Drive partagé. |
v2 et v3 |
restrictions.downloadRestriction |
Les restrictions de téléchargement appliquées par les administrateurs du Drive partagé. | v3 uniquement |
Limites applicables aux dossiers
Les dossiers des Drive partagés sont soumis à certaines limites de stockage. Pour en savoir plus, consultez Limites des Drive partagés dans Google Drive.
Nombre maximal d'éléments
Chaque Drive partagé d'un utilisateur est limité à 500 000 éléments, y compris les fichiers, les dossiers et les raccourcis.
Une fois la limite atteinte, le Drive partagé ne peut plus accepter d'éléments. Pour recommencer à recevoir des fichiers, les utilisateurs doivent supprimer définitivement des éléments du Drive partagé. Notez que les éléments de la corbeille sont comptabilisés dans la limite, mais pas ceux qui ont été supprimés définitivement. Pour en savoir plus, consultez Placer des fichiers et des dossiers dans la corbeille ou les supprimer.
Limite de profondeur des dossiers
Un dossier dans un Drive partagé ne peut pas contenir plus de 100 niveaux de dossiers imbriqués. Cela signifie qu'un dossier enfant ne peut pas être stocké dans un dossier dont la profondeur est supérieure à 99 niveaux. Cette limitation ne s'applique qu'aux dossiers enfants.
Si vous essayez d'ajouter plus de 100 niveaux de dossiers, vous recevrez un code d'état HTTP teamDriveHierarchyTooDeep.