ファイルの作成と管理

このガイドでは、Google Drive API を使用して Google ドライブでファイルを作成および管理する方法について説明します。

ファイルを作成

メタデータやコンテンツを含まないファイルをドライブに作成するには、パラメータを指定せずに files.create メソッドを使用します。ファイルには、kinddrive.file)、idname(「Untitled」)、mimeTypeapplication/octet-stream)が割り当てられます。uploadType は必須としてマークされていますが、デフォルトは media であるため、実際に指定する必要はありません。

ドライブのファイル制限の詳細については、ファイルとフォルダの制限をご覧ください。

メタデータのみのファイルを作成する

メタデータのみのファイルにはコンテンツが含まれていません。メタデータは、ファイルを説明するデータ(namemimeTypecreatedTime など)です。name などのフィールドはユーザーに依存せず、各ユーザーで同じように表示されますが、viewedByMeTime などのフィールドにはユーザー固有の値が含まれます。

メタデータのみのファイルの例としては、MIME タイプが application/vnd.google-apps.folder のフォルダがあります。詳細については、フォルダを作成しデータを入力するをご覧ください。別の例として、MIME タイプが application/vnd.google-apps.shortcut のドライブ上の別のファイルを指すショートカットがあります。詳しくは、ドライブ ファイルへのショートカットを作成するをご覧ください。

サムネイル画像を管理する

サムネイルは、ユーザーがドライブのファイルを識別するのに役立ちます。ドライブでは、一般的なファイル形式のサムネイルを自動的に生成できます。また、アプリで生成したサムネイル画像を提供することもできます。詳しくは、サムネイルをアップロードするをご覧ください。

既存のファイルをコピーする

ファイルをコピーし、リクエストされた更新を適用するには、files.copy メソッドを使用します。コピーする fileId を見つけるには、files.list メソッドを使用します。

呼び出しを承認するには、適切な Drive API スコープを使用する必要があります。ドライブのスコープについて詳しくは、Google Drive API のスコープを選択するをご覧ください。

制限事項と考慮事項

ファイルのコピーを準備する際は、次の制限事項と考慮事項に注意してください。

  • 権限

    • files リソースの DownloadRestrictionsMetadata オブジェクトは、ファイルをコピーできるユーザーを決定します。詳しくは、他のユーザーがファイルをダウンロード、印刷、コピーできないようにするをご覧ください。
    • capabilities.canCopy フィールド リソースは、ユーザーがファイルをコピーできるかどうかを決定します。詳細については、ファイルの機能についてをご覧ください。
    • コピーを作成したユーザーが、コピーされたファイルの所有者になります。ソースファイルの他の共有設定は複製されません。コピーが共有フォルダ内に作成された場合、そのフォルダの権限が継承されます。
    • コピーされたファイルの所有権が変更され、コピー元のファイルの共有設定がコピーに継承されないことがあります。これらの設定をリセットする必要がある場合があります。
  • ファイル管理:

    • サードパーティのショートカットなど、コピーできないファイルもあります。
    • ファイルをコピーできるのは 1 つの親フォルダのみです。複数の親を指定することはできません。parents フィールドが指定されていない場合、ファイルは検出可能な親をソースファイルから継承します。
    • フォルダはファイルの一種ですが、フォルダをコピーすることはできません。代わりに、移行先フォルダを作成し、既存のファイルの parents フィールドを移行先フォルダに設定します。その後、元のソースフォルダを削除できます。
    • 新しいファイル名が指定されていない限り、files.copy メソッドは元のファイルと同じ名前のファイルを生成します。
    • files.copy を過度に使用すると、ドライブ API の割り当て上限を超える可能性があります。詳細については、使用制限をご覧ください。

以下に、次の手順をいくつかご紹介します。