Запрос списка пользователей Google Directory API завершился ошибкой 400

Я пытаюсь получить успешный ответ при выполнении запроса от https://developers.google.com/admin-sdk/directory/v1/reference/users/list?apix_params=%7B%22customer%22%3A%22my_customer%22%7D. Я получаю 400 Invalid Input ответ.

С клиентской библиотекой (https://www.npmjs.com/package/googleapis, v47 ), при звонке:

google.admin('directory_v1')
  .users.list({
     auth: oAuth2Client,
     customer: 'my_customer',
     orderBy: 'email',
     maxResults: 500,
     pageToken: null
  }).then(...);

, Я получаю объект Request в обработчике успеха вместо действительного ответа (ответ, который должен иметь форму, описанную в нижней части https://developers.google.com/admin-sdk/directory/v1/reference/users/list).

Что я делаю неправильно?


person Kinko    schedule 02.03.2020    source источник


Ответы (1)


Оказывается, проблема заключалась в процессе аутентификации с использованием google-auth-library. Я прибег к примерно такому:

const {google} = require('googleapis');

const oAuthClient = await google.auth.getClient({keyFile: ..., scopes: [...]});
oAuthClient.credentials = await new google.auth.JWT(...).authorizeAsync();

const {data} = await google
  .admin({version: 'directory_v1', auth: oAuthClient})
  .users
  .list({
     customer: 'my_customer'
  });
person Kinko    schedule 04.03.2020
comment
@Chadd Он отображается в библиотеке аутентификации github.com/googleapis/google-auth-library-nodejs/blob/master/. - person Kinko; 24.03.2020
comment
У меня аналогичная проблема, так как я использую учетную запись службы. Но, кажется, не могу найти причину. Я также разместил вопрос: stackoverflow.com/questions/61717611/ - person sakib11; 11.05.2020