Клиентская библиотека API Google для .NET использует файлы client_secrets.json для хранения client_id , client_secret и других параметров OAuth 2.0.
 Файл client_secrets.json — это файл в формате JSON, содержащий идентификатор клиента, секрет клиента и другие параметры OAuth 2.0. Вот пример файла client_secrets.json для веб-приложения:
{
  "web": {
    "client_id": "asdfjasdljfasdkjf",
    "client_secret": "1912308409123890",
    "redirect_uris": ["https://www.example.com/oauth2callback"],
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token"
  }
} Вот пример файла client_secrets.json для установленного приложения:
{
  "installed": {
    "client_id": "837647042410-75ifg...usercontent.com",
    "client_secret":"asdlkfjaskd",
    "redirect_uris": ["http://localhost"],
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "token_uri": "https://accounts.google.com/o/oauth2/token"
  }
}Формат определяет один из двух типов идентификаторов клиентов:
-  web: веб-приложение.
-  installed: Установленное приложение.
 web и installed подобъекты имеют следующие обязательные элементы:
-  client_id(строка): идентификатор клиента.
-  client_secret(строка): секрет клиента.
Все остальные члены этого файла являются необязательными, и клиентская библиотека .NET их не использует.
Мотивация
 Традиционно поставщики конечных точек OAuth 2.0 ожидали, что те, кто использует их услуги, скопируют и вставят идентификатор клиента и секрет клиента со страницы регистрации в рабочий код. Этот метод подвержен ошибкам и дает неполное представление об информации, необходимой для работы OAuth 2.0. (OAuth 2.0 также требует знания всех конечных точек и настройки URI перенаправления.) Если поставщики услуг предоставляют загружаемые файлы client_secrets.json , а клиентские библиотеки готовы использовать эти файлы, то реализация OAuth 2.0 будет проще и менее подвержена ошибкам.