1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4//
5// Constants definitions
6
7#include "google_apis/gaia/gaia_constants.h"
8
9namespace GaiaConstants {
10
11// Gaia uses this for accounting where login is coming from.
12const char kChromeOSSource[] = "chromeos";
13const char kChromeSource[] = "ChromiumBrowser";
14
15// Service name for Gaia.  Used to convert to cookie auth.
16const char kGaiaService[] = "gaia";
17// Service name for Picasa API. API is used to get user's image.
18const char kPicasaService[] = "lh2";
19
20// Service/scope names for sync.
21const char kSyncService[] = "chromiumsync";
22
23// Service name for remoting.
24const char kRemotingService[] = "chromoting";
25
26// OAuth scopes.
27const char kOAuth1LoginScope[] = "https://www.google.com/accounts/OAuthLogin";
28const char kOAuthWrapBridgeUserInfoScope[] =
29    "https://www.googleapis.com/auth/userinfo.email";
30
31// Service/scope names for device management (cloud-based policy) server.
32const char kDeviceManagementServiceOAuth[] =
33    "https://www.googleapis.com/auth/chromeosdevicemanagement";
34
35// OAuth2 scope for access to all Google APIs.
36const char kAnyApiOAuth2Scope[] = "https://www.googleapis.com/auth/any-api";
37
38// OAuth2 scope for access to Chrome sync APIs
39const char kChromeSyncOAuth2Scope[] =
40    "https://www.googleapis.com/auth/chromesync";
41// OAuth2 scope for access to the Chrome Sync APIs for managed profiles.
42const char kChromeSyncSupervisedOAuth2Scope[] =
43    "https://www.googleapis.com/auth/chromesync_playpen";
44// OAuth2 scope for access to Google Talk APIs (XMPP).
45const char kGoogleTalkOAuth2Scope[] =
46    "https://www.googleapis.com/auth/googletalk";
47
48const char kGoogleUserInfoEmail[] =
49    "https://www.googleapis.com/auth/userinfo.email";
50const char kGoogleUserInfoProfile[] =
51    "https://www.googleapis.com/auth/userinfo.profile";
52
53 // Used to mint uber auth tokens when needed.
54const char kGaiaSid[] = "sid";
55const char kGaiaLsid[] = "lsid";
56const char kGaiaOAuthToken[] = "oauthToken";
57const char kGaiaOAuthSecret[] = "oauthSecret";
58const char kGaiaOAuthDuration[] = "3600";
59const char kGaiaOAuth2LoginRefreshToken[] = "oauth2LoginRefreshToken";
60
61// Used to construct a channel ID for push messaging.
62const char kObfuscatedGaiaId[] = "obfuscatedGaiaId";
63
64// Used to build ClientOAuth requests.  These are the names of keys used when
65// building base::DictionaryValue that represent the json data that makes up
66// the ClientOAuth endpoint protocol.  The comment above each constant explains
67// what value is associated with that key.
68
69// Canonical email of the account to sign in.
70const char kClientOAuthEmailKey[] = "email";
71
72}  // namespace GaiaConstants
73