OLD | NEW |
(Empty) | |
| 1 // Copyright 2014 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 // Definitions for CryptAuth API calls. |
| 6 // Generated from server definitions. Do not edit. |
| 7 syntax = "proto2"; |
| 8 |
| 9 package cryptauth; |
| 10 |
| 11 option optimize_for = LITE_RUNTIME; |
| 12 |
| 13 // Device information provided to external clients that need to sync device |
| 14 // state. |
| 15 message ExternalDeviceInfo { |
| 16 // A cryptographic public key associated with the device. |
| 17 optional bytes public_key = 1; |
| 18 |
| 19 // A user friendly (human readable) name for this device. |
| 20 optional string friendly_device_name = 2; |
| 21 |
| 22 // If available, the device's bluetooth MAC address |
| 23 optional string bluetooth_address = 3; |
| 24 |
| 25 // Whether or not this device can be used as an unlock key |
| 26 optional bool unlock_key = 4; |
| 27 |
| 28 // Whether or not this device can be unlocked |
| 29 optional bool unlockable = 5; |
| 30 } |
| 31 |
| 32 // Request for a list of devices that could be used as Unlock Keys, optionally |
| 33 // requesting a callback over bluetooth (for proximity detection). |
| 34 message FindEligibleUnlockDevicesRequest { |
| 35 // A bluetooth MAC address to be contacted if a device that may be eligible |
| 36 // for unlock is nearby. If set, a message will be pushed to all eligible |
| 37 // unlock devices requesting that they contact the specified MAC address. If |
| 38 // this field is left unset, no callback will be made, and no message will be |
| 39 // pushed to the user's devices. |
| 40 optional string callback_bluetooth_address = 2; |
| 41 |
| 42 // Identifies what kind of resource this is. Value: the fixed string |
| 43 // <code>"cryptauth#findEligibleUnlockDevicesRequest"</code>. |
| 44 optional string kind = 3; |
| 45 } |
| 46 |
| 47 // Response containing a list of devices that could be made Unlock Keys |
| 48 message FindEligibleUnlockDevicesResponse { |
| 49 // Devices that could be made Unlock Keys (even if they aren't enabled yet) |
| 50 repeated ExternalDeviceInfo eligible_devices = 1; |
| 51 |
| 52 // Devices that cannot be made unlock keys, and reasons for this. This list |
| 53 // will not contain any non-gms core devices, even though these are also not |
| 54 // eligible to be unlock keys. |
| 55 repeated IneligibleDevice ineligible_devices = 2; |
| 56 |
| 57 // Identifies what kind of resource this is. Value: the fixed string |
| 58 // <code>"cryptauth#findEligibleUnlockDevicesResponse"</code>. |
| 59 optional string kind = 3; |
| 60 } |
| 61 |
| 62 // Request to complete a device enrollment. |
| 63 message FinishEnrollmentRequest { |
| 64 // The enrollment session identifer from the <code>setup</code> response. |
| 65 optional bytes enrollment_session_id = 2; |
| 66 |
| 67 // An encrypted payload containing enrollment information for the device. |
| 68 optional bytes enrollment_message = 3; |
| 69 |
| 70 // A Diffie-Hellman public key for the device, to complete the key exchange. |
| 71 optional bytes device_ephemeral_key = 4; |
| 72 } |
| 73 |
| 74 // Response indicating whether a device enrollment completed successfully. |
| 75 message FinishEnrollmentResponse { |
| 76 // Status should be OK if the request was successful. |
| 77 optional string status = 1; |
| 78 |
| 79 // A detailed error message if there was a failure. |
| 80 optional string error_message = 2; |
| 81 |
| 82 // Identifies what kind of resource this is. Value: the fixed string |
| 83 // <code>"cryptauth#finishEnrollmentResponse"</code>. |
| 84 optional string kind = 5; |
| 85 } |
| 86 |
| 87 // Used to request devices that have a specific feature. |
| 88 message GetDevicesForFeatureRequest { |
| 89 // Requests those devices that support the specified DeviceFeature |
| 90 optional string device_feature = 2; |
| 91 } |
| 92 |
| 93 // Devices that have a certain feature, as returned by the GetDevicesForFeature |
| 94 // RPC. |
| 95 message GetDevicesForFeatureResponse { |
| 96 // A (possibly empty) list of devices supporting the requested feature. |
| 97 repeated ExternalDeviceInfo result_sets = 1; |
| 98 |
| 99 // Identifies what kind of resource this is. Value: the fixed string |
| 100 // <code>"cryptauth#getDevicesForFeatureResponse"</code>. |
| 101 optional string kind = 2; |
| 102 } |
| 103 |
| 104 // Request for a listing of a user's own devices |
| 105 message GetMyDevicesRequest { |
| 106 // Return only devices that can act as EasyUnlock keys. |
| 107 optional bool approved_for_unlock_required = 2; |
| 108 |
| 109 // Identifies what kind of resource this is. Value: the fixed string |
| 110 // <code>"cryptauth#getMyDevicesRequest"</code>. |
| 111 optional string kind = 3; |
| 112 } |
| 113 |
| 114 // Response containing a listing of the users device's |
| 115 message GetMyDevicesResponse { |
| 116 // A listing of all sync-able devices |
| 117 repeated ExternalDeviceInfo devices = 1; |
| 118 |
| 119 // Identifies what kind of resource this is. Value: the fixed string |
| 120 // <code>"cryptauth#getMyDevicesResponse"</code>. |
| 121 optional string kind = 2; |
| 122 } |
| 123 |
| 124 // A device that the server thinks is not eligible to be an unlock key, and the |
| 125 // reason for this. |
| 126 message IneligibleDevice { |
| 127 // The device that is not eligible to be an unlock key. |
| 128 optional ExternalDeviceInfo device = 1; |
| 129 |
| 130 // The reasons why the server thinks it is not an unlock key. NOTE: for now, |
| 131 // this list of reasons will contain exactly one element. It is a repeated |
| 132 // field because, in principle, there can be more than one reason that makes a |
| 133 // device not eligible to be an unlock key, and we want to be able to add |
| 134 // multiple reasons in the future. |
| 135 repeated string reasons = 2; |
| 136 } |
| 137 |
| 138 // Requests to send a "tickle" requesting to sync all of a user's devices now |
| 139 message SendDeviceSyncTickleRequest { |
| 140 // Identifies what kind of resource this is. Value: the fixed string |
| 141 // <code>"cryptauth#sendDeviceSyncTickleRequest"</code>. |
| 142 optional string kind = 2; |
| 143 } |
| 144 |
| 145 // Contains information needed to begin a device enrollment. |
| 146 message SetupEnrollmentInfo { |
| 147 // Type of protocol this setup information was requested for |
| 148 optional string type = 1; |
| 149 |
| 150 // A session identifier to be used for this enrollment session. |
| 151 optional bytes enrollment_session_id = 2; |
| 152 |
| 153 // A Diffie-Hellman public key used to perform a key exchange during |
| 154 // enrollment. |
| 155 optional bytes server_ephemeral_key = 3; |
| 156 } |
| 157 |
| 158 // Requests information needed to begin a device enrollment. |
| 159 message SetupEnrollmentRequest { |
| 160 // Deprecated. See <code>application_id</code> |
| 161 optional string origin = 2; |
| 162 |
| 163 // Type(s) of protocol supported by this enrolling device (e.g. "gcmV1") |
| 164 repeated string types = 3; |
| 165 |
| 166 // Indicates whether a legacy crypto suite must be used with this device. |
| 167 optional bool use_legacy_crypto = 4; |
| 168 |
| 169 // A URL describing which application facets this enrollment can be used (see |
| 170 // http://go/appid). |
| 171 optional string application_id = 5; |
| 172 } |
| 173 |
| 174 // Contains information needed to begin a device enrollment. |
| 175 message SetupEnrollmentResponse { |
| 176 // Should return OK if the request was well formed. |
| 177 optional string status = 1; |
| 178 |
| 179 // Information for each of the requested protocol <code>type</code>s. |
| 180 repeated SetupEnrollmentInfo infos = 2; |
| 181 |
| 182 // Identifies what kind of resource this is. Value: the fixed string |
| 183 // <code>"cryptauth#setupEnrollmentResponse"</code>. |
| 184 optional string kind = 3; |
| 185 } |
| 186 |
| 187 // Used to enable or disable EasyUnlock features on a specified device, and also |
| 188 // causes other devices to sync the new EasyUnlock state. |
| 189 message ToggleEasyUnlockRequest { |
| 190 // If true, Easy Unlock will be enabled for the device with public key equal |
| 191 // to public_key. Otherwise, it will be disabled for that device. |
| 192 optional bool enable = 1; |
| 193 |
| 194 // Encoded public key of the device to enable/disable (here you must use the |
| 195 // same exact encoding that was sent during device enrollment). |
| 196 optional bytes public_key = 2; |
| 197 |
| 198 // If true, EasyUnlock enabled state will be set to the value of "enable" for |
| 199 // all of a user's devices. This is the same as calling the toggle RPC for |
| 200 // every device. However, this removes the need for calling GetMyDevices, so |
| 201 // it reduces network overhead. If this field is set "public_key" must not be |
| 202 // set. NOTE: the case enable=true is not yet supported, so this option can |
| 203 // only disable EasyUnlock for all devices. |
| 204 optional bool apply_to_all = 3; |
| 205 |
| 206 // Identifies what kind of resource this is. Value: the fixed string |
| 207 // <code>"cryptauth#toggleEasyUnlockRequest"</code>. |
| 208 optional string kind = 4; |
| 209 } |
OLD | NEW |