вроде все делаю по https://developers.google.com/drive/api/v3/reference/permissions/create
залогинен под владельцем googlesheets-файла, fileId выдираю из url (открытого в браузере гугл-шита) между "https://docs.google.com/spreadsheets/d/"; и следующим слэшем("/"), access_token живой....
код
```1c
    inUserType = "user"; inUserRole = "reader";
    //inUserEmail = "<мыло юзера, которому надо дать права на просмотр>";
    //SheetsId = "<выдранный из урла гуглшита ИД файла>";
    SslПараметр = Новый ЗащищенноеСоединениеOpenSSL( неопределено, неопределено );
    Соединение = Новый HTTPСоединение(СерверГугл, , , , , 10 , SslПараметр );
    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Authorization", "Bearer " + inAccessToken);
    HTTPЗапрос = Новый HTTPЗапрос("/drive/v3/files/"+SheetsId+"/permissions?field=*", Заголовки);
    ТелоЗапроса = Новый Структура; ТелоЗапроса.Вставить("kind","drive#permission");
    ТелоЗапроса.Вставить("type",inUserType); ТелоЗапроса.Вставить("role",inUserRole);
    ТелоЗапроса.Вставить("emailAddress",inUserEmail); // мыло юзера, которому надо дать права на просмотр
    НастройкиСериализации = Новый НастройкиСериализацииJSON;
    НастройкиСериализации.ВариантЗаписиДаты = ВариантЗаписиДатыJSON.ЛокальнаяДатаСоСмещением;
    НастройкиСериализации.ФорматСериализацииДаты = ФорматДатыJSON.ISO;
    ЗаписьJSON = Новый ЗаписьJSON; ЗаписьJSON.УстановитьСтроку();
    ЗаписатьJSON(ЗаписьJSON, ТелоЗапроса, НастройкиСериализации);
    СтрJSON = ЗаписьJSON.Закрыть();
    HTTPЗапрос.УстановитьТелоИзСтроки( СтрJSON , КодировкаТекста.UTF8 );
    //HTTPОтвет = Соединение.ОтправитьДляОбработки( HTTPЗапрос ); // так тоже пробовал - с тем же результатом
    HTTPОтвет = Соединение.ВызватьHTTPМетод( "POST" , HTTPЗапрос );
    СтрокаОтвет = HTTPОтвет.ПолучитьТелоКакСтроку();
    Если HTTPОтвет.КодСостояния >299 Тогда Сообщить("Ошибка создания новых прав доступа (код состояния = "
    + HTTPОтвет.КодСостояния + "):" + Символы.ВК + СтрокаОтвет) КонецЕсли;
```

результат удручает:
результатОшибка создания новых прав доступа (код состояния = 400):
{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "badContent",
    "message": "Unsupported content with type: application/octet-stream"
   }
  ],
  "code": 400,
  "message": "Unsupported content with type: application/octet-stream"
}
}

******* помощи прошу!..
ну или киньте куском работающего кода, плз, на эту тему

заранее благодарю.
---
решилось еще тогда - а сейчас глянул в свои темы нечаянно - и в эту, и подумал, что может пригодиться кому-нибудь ещё: суть в том, что api google drive в отдельных случаях может тупо не понять. что формат данных в сообщении - это дефолтный json. потому (и в любом случае - по правилам хорошего тона) необходимо явно указать:

```1c
    Заголовки.Вставить( "Content-Type", "application/json" );
```
---
решилось еще тогда - а сейчас глянул в свои темы нечаянно - и в эту, и подумал, что может пригодиться кому-нибудь ещё: суть в том, что api google drive в отдельных случаях может тупо не понять. что формат данных в сообщении - это дефолтный json. потому (и в любом случае - по правилам хорошего тона) необходимо явно указать:

```1c
    Заголовки.Вставить( "Content-Type", "application/json" );
```
---
используем /v4/spreadsheets/
работает без указания

```1c
    Заголовки.Вставить( "Content-Type", "application/json" );
```