Причина ошибки «Файл не найден» заключается в том, что вы пытаетесь получить доступ к файлу, расположенному на Team Drive, но не указываете в дополнительных параметрах, что ваш код знает, как обрабатывать различия между Google Drive и Team диски.
Вы установили этот параметр, но задаете его в метаданных, связанных с файлом, который вы вставляете / копируете, а не в качестве необязательного параметра для Drive API.
Таким образом, для устранения ошибки «Файл не найден» необходимо изменить определение метаданных:
var newFile = {
title: "Learner Guide - test",
description: "New student learner guide",
mimetype: 'application/vnd.google-apps.file',
supportsTeamDrives: true,
kind: "drive#user",
includeTeamDriveItems: true
};
к метаданным и параметрам:
const newFile = {
title: "Learner Guide - test",
description: "New student learner guide",
};
const options = {
supportsTeamDrives: true,
includeTeamDriveItems: true
};
Я не уверен, что вы пытались сделать, предоставив mimetype в качестве универсального файла (вы должны позволить Drive API выводить это для операции Copy
), или почему вы пытаетесь установить параметр kind
, который обычно является только для чтения описанием содержимого ответа API.
С этим изменением вы передаете необязательные параметры в качестве последнего вызова метода клиентской библиотеки:
var newDocc = Drive.Files.copy(newFile, learnerDoc.getId());
становится
var newDocc = Drive.Files.copy(newFile, learnerDoc.getId(), options);
Связанные чтения: