创建一个Spreadsheet API v4

时间:2016-06-15 21:27:30

标签: google-api-php-client

我正在尝试创建一个新的电子表格,我现在可以在API的第4版中理解这一点,但我没有看到详细说明如何在PHP文档中创建表单的任何内容。我得到了:

$client->setApplicationName("Test");
$client->setScopes(['https://www.googleapis.com/auth/sheets']);
$service = new Google_Service_Sheets($client);

$service->spreadsheets->create();

但它希望参数1是Google_Service_Sheets_Spreadsheet的一个实例,而且我不确定应该提供什么。

2 个答案:

答案 0 :(得分:4)

弄清楚了。工作表是在服务帐户下创建的,而不是主帐户。必须使用Drive API添加与主帐户共享的权限:

$client->setScopes(
        ['https://www.googleapis.com/auth/spreadsheets',
        'https://www.googleapis.com/auth/drive']);
$service = new Google_Service_Sheets($client);
$drive = new Google_Service_Drive($client);

$ss = $service->spreadsheets->create(new Google_Service_Sheets_Spreadsheet());
$newPermission = new Google_Service_Drive_Permission();
$newPermission->setEmailAddress("awestover89@gmail.com");
$newPermission->setType('user');
$newPermission->setRole('writer');
$optParams = array('sendNotificationEmail' => false);
$drive->permissions->create($ss->spreadsheetId,$newPermission,$optParams);

答案 1 :(得分:0)

您可以使用RestedBox通过API(包括查询)来访问Google表格和本地电子表格数据。