Мне нужно экспортировать некоторые данные в Google Spreadsheet. У меня настроен и работает API, я использую API laravel -google-sheet для чтения и обновления существующей электронной таблицы. Я действительно могу читать и обновлять данные или добавлять новые листы следующим образом:
public function export(Request $request){
$user = Socialite::driver('google')->stateless()->user();
$title = "Test";
$values1 = [
['id', 'name', 'mail'],
['1', 'name1', 'mail1'],
['2', 'name1', 'mail2'],
['3', 'name3', 'mail33']
];
$token = [
'access_token' => $user->token,
'refresh_token' => $user->refreshToken,
'expires_in' => $user->expiresIn
];
$values = Sheets::setAccessToken($token)->spreadsheet('1VBkkUZkA79901CVssP1uwLF1oE9d69S502x9X_R0kw4')->sheet('Sheet1')->all();
Sheets::spreadsheet('1VBkkUZkA79901CVssP1uwLF1oE9d69S502x9X_R0kw4')->addSheet($title);
Sheets::sheet($title)->update($values1);
}
В этом коде я добавляю новый лист и вставляю данные, но мне нужно вручную передать идентификатор электронной таблицы, а также поделиться им из документов Google в мои учетные данные API. Проблема в том, что если у меня есть одна таблица для каждого пользователя, все экспортированные данные будут видны и другим пользователям. Я пробовал создать такую таблицу:
Sheets::spreadsheet();
Но это не помогло. Можно ли создавать электронные таблицы программно и как это сделать?