У меня есть таблица Google, которая используется как «Любой, у кого есть ссылка, может РЕДАКТИРОВАТЬ». Я хочу выполнить запрос PUT для редактирования этого документа с помощью API Google Sheets v4. В идеале я хочу сделать это, используя только ключ API, а не используя OAuth2, поскольку аутентификация в Google с использованием OAuth является проблемой для работы с Xamarin. Кроме того, это потребовало бы от пользователя ввода пароля каждый час, что нарушило бы удобство использования.
Предположительно, запросы на общедоступные данные можно отправлять, используя только ключ API в запросе, не требуя OAuth. Это работает для запросов GET, но я получаю ответ 401, когда делаю это для запроса PUT. (Это непреднамеренно не удалось для запросов GET раньше, что наводит меня на мысль, что это должно работать и для запросов PUT, если целевой документ общедоступен).
GET https://sheets.googleapis.com/v4/spreadsheets/{sheetId}/values/Sheet1%21A1%3AJ1?key={myKey} HTTP/1.1
... работает, но
PUT https://sheets.googleapis.com/v4/spreadsheets/{sheetId}/values/Sheet1%21A1%3AJ1?key={myKey} HTTP/1.1
... дает 401 Неавторизованный.
Кто-нибудь может пролить свет на то, должно ли это быть возможно, или как это обойти?