blob: 0f69d6298a564b22c5c0427f70167629f5041143 [file] [log] [blame]
Yoshi Automation Botb6971b02020-11-26 17:16:03 -08001{
Anthonios Partheniou10f4b672021-04-13 14:47:53 -04002 "auth": {
3 "oauth2": {
4 "scopes": {
5 "https://www.googleapis.com/auth/cloud-platform": {
6 "description": "See, edit, configure, and delete your Google Cloud Platform data"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -08007 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -04008 "https://www.googleapis.com/auth/compute": {
9 "description": "View and manage your Google Compute Engine resources"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080010 }
11 }
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080012 }
13 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040014 "basePath": "",
15 "baseUrl": "https://oslogin.googleapis.com/",
16 "batchPath": "batch",
17 "canonicalName": "Cloud OS Login",
18 "description": "You can use OS Login to manage access to your VM instances using IAM roles.",
19 "discoveryVersion": "v1",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080020 "documentationLink": "https://cloud.google.com/compute/docs/oslogin/",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040021 "fullyEncodeReservedExpansion": true,
22 "icons": {
23 "x16": "http://www.google.com/images/icons/product/search-16.gif",
24 "x32": "http://www.google.com/images/icons/product/search-32.gif"
25 },
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080026 "id": "oslogin:v1",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040027 "kind": "discovery#restDescription",
28 "mtlsRootUrl": "https://oslogin.mtls.googleapis.com/",
29 "name": "oslogin",
30 "ownerDomain": "google.com",
31 "ownerName": "Google",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080032 "parameters": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040033 "$.xgafv": {
34 "description": "V1 error format.",
35 "enum": [
36 "1",
37 "2"
38 ],
39 "enumDescriptions": [
40 "v1 error format",
41 "v2 error format"
42 ],
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080043 "location": "query",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040044 "type": "string"
45 },
46 "access_token": {
47 "description": "OAuth access token.",
48 "location": "query",
49 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080050 },
51 "alt": {
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080052 "default": "json",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040053 "description": "Data format for response.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080054 "enum": [
55 "json",
56 "media",
57 "proto"
58 ],
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080059 "enumDescriptions": [
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040060 "Responses with Content-Type of application/json",
61 "Media download with context-dependent Content-Type",
62 "Responses with Content-Type of application/x-protobuf"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080063 ],
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080064 "location": "query",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040065 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080066 },
67 "callback": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040068 "description": "JSONP",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080069 "location": "query",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040070 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080071 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040072 "fields": {
73 "description": "Selector specifying which fields to include in a partial response.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080074 "location": "query",
75 "type": "string"
76 },
77 "key": {
78 "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
79 "location": "query",
80 "type": "string"
81 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040082 "oauth_token": {
83 "description": "OAuth 2.0 token for the current user.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080084 "location": "query",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080085 "type": "string"
86 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040087 "prettyPrint": {
88 "default": "true",
89 "description": "Returns response with indentations and line breaks.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -080090 "location": "query",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -040091 "type": "boolean"
92 },
93 "quotaUser": {
94 "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
95 "location": "query",
96 "type": "string"
97 },
98 "uploadType": {
99 "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
100 "location": "query",
101 "type": "string"
102 },
103 "upload_protocol": {
104 "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
105 "location": "query",
106 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800107 }
108 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400109 "protocol": "rest",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800110 "resources": {
111 "users": {
112 "methods": {
113 "getLoginProfile": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400114 "description": "Retrieves the profile information used for logging in to a virtual machine on Google Compute Engine.",
115 "flatPath": "v1/users/{usersId}/loginProfile",
116 "httpMethod": "GET",
117 "id": "oslogin.users.getLoginProfile",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800118 "parameterOrder": [
119 "name"
120 ],
121 "parameters": {
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800122 "name": {
123 "description": "Required. The unique ID for the user in format `users/{user}`.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800124 "location": "path",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400125 "pattern": "^users/[^/]+$",
126 "required": true,
127 "type": "string"
128 },
129 "projectId": {
130 "description": "The project ID of the Google Cloud Platform project.",
131 "location": "query",
132 "type": "string"
133 },
134 "systemId": {
135 "description": "A system ID for filtering the results of the request.",
136 "location": "query",
137 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800138 }
139 },
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800140 "path": "v1/{+name}/loginProfile",
141 "response": {
142 "$ref": "LoginProfile"
143 },
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800144 "scopes": [
145 "https://www.googleapis.com/auth/cloud-platform",
146 "https://www.googleapis.com/auth/compute"
147 ]
148 },
149 "importSshPublicKey": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400150 "description": "Adds an SSH public key and returns the profile information. Default POSIX account information is set when no username and UID exist as part of the login profile.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800151 "flatPath": "v1/users/{usersId}:importSshPublicKey",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400152 "httpMethod": "POST",
153 "id": "oslogin.users.importSshPublicKey",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800154 "parameterOrder": [
155 "parent"
156 ],
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800157 "parameters": {
158 "parent": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400159 "description": "Required. The unique ID for the user in format `users/{user}`.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800160 "location": "path",
161 "pattern": "^users/[^/]+$",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800162 "required": true,
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400163 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800164 },
165 "projectId": {
166 "description": "The project ID of the Google Cloud Platform project.",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400167 "location": "query",
168 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800169 }
170 },
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800171 "path": "v1/{+parent}:importSshPublicKey",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800172 "request": {
173 "$ref": "SshPublicKey"
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400174 },
175 "response": {
176 "$ref": "ImportSshPublicKeyResponse"
177 },
178 "scopes": [
179 "https://www.googleapis.com/auth/cloud-platform",
180 "https://www.googleapis.com/auth/compute"
181 ]
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800182 }
183 },
184 "resources": {
185 "projects": {
186 "methods": {
187 "delete": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400188 "description": "Deletes a POSIX account.",
189 "flatPath": "v1/users/{usersId}/projects/{projectsId}",
190 "httpMethod": "DELETE",
191 "id": "oslogin.users.projects.delete",
192 "parameterOrder": [
193 "name"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800194 ],
195 "parameters": {
196 "name": {
197 "description": "Required. A reference to the POSIX account to update. POSIX accounts are identified by the project ID they are associated with. A reference to the POSIX account is in format `users/{user}/projects/{project}`.",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400198 "location": "path",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800199 "pattern": "^users/[^/]+/projects/[^/]+$",
200 "required": true,
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800201 "type": "string"
202 }
203 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400204 "path": "v1/{+name}",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800205 "response": {
206 "$ref": "Empty"
207 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400208 "scopes": [
209 "https://www.googleapis.com/auth/cloud-platform",
210 "https://www.googleapis.com/auth/compute"
211 ]
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800212 }
213 }
214 },
215 "sshPublicKeys": {
216 "methods": {
217 "delete": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400218 "description": "Deletes an SSH public key.",
219 "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}",
220 "httpMethod": "DELETE",
221 "id": "oslogin.users.sshPublicKeys.delete",
222 "parameterOrder": [
223 "name"
224 ],
225 "parameters": {
226 "name": {
227 "description": "Required. The fingerprint of the public key to update. Public keys are identified by their SHA-256 fingerprint. The fingerprint of the public key is in format `users/{user}/sshPublicKeys/{fingerprint}`.",
228 "location": "path",
229 "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
230 "required": true,
231 "type": "string"
232 }
233 },
234 "path": "v1/{+name}",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800235 "response": {
236 "$ref": "Empty"
237 },
238 "scopes": [
239 "https://www.googleapis.com/auth/cloud-platform",
240 "https://www.googleapis.com/auth/compute"
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400241 ]
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800242 },
243 "get": {
244 "description": "Retrieves an SSH public key.",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400245 "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}",
246 "httpMethod": "GET",
247 "id": "oslogin.users.sshPublicKeys.get",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800248 "parameterOrder": [
249 "name"
250 ],
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400251 "parameters": {
252 "name": {
253 "description": "Required. The fingerprint of the public key to retrieve. Public keys are identified by their SHA-256 fingerprint. The fingerprint of the public key is in format `users/{user}/sshPublicKeys/{fingerprint}`.",
254 "location": "path",
255 "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
256 "required": true,
257 "type": "string"
258 }
259 },
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800260 "path": "v1/{+name}",
261 "response": {
262 "$ref": "SshPublicKey"
263 },
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800264 "scopes": [
265 "https://www.googleapis.com/auth/cloud-platform",
266 "https://www.googleapis.com/auth/compute"
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400267 ]
268 },
269 "patch": {
270 "description": "Updates an SSH public key and returns the profile information. This method supports patch semantics.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800271 "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400272 "httpMethod": "PATCH",
273 "id": "oslogin.users.sshPublicKeys.patch",
274 "parameterOrder": [
275 "name"
276 ],
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800277 "parameters": {
278 "name": {
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400279 "description": "Required. The fingerprint of the public key to update. Public keys are identified by their SHA-256 fingerprint. The fingerprint of the public key is in format `users/{user}/sshPublicKeys/{fingerprint}`.",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800280 "location": "path",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400281 "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800282 "required": true,
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400283 "type": "string"
284 },
285 "updateMask": {
286 "description": "Mask to control which fields get updated. Updates all if not present.",
287 "format": "google-fieldmask",
288 "location": "query",
289 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800290 }
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400291 },
292 "path": "v1/{+name}",
293 "request": {
294 "$ref": "SshPublicKey"
295 },
296 "response": {
297 "$ref": "SshPublicKey"
298 },
299 "scopes": [
300 "https://www.googleapis.com/auth/cloud-platform",
301 "https://www.googleapis.com/auth/compute"
302 ]
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800303 }
304 }
305 }
306 }
307 }
308 },
yoshi-code-bot108b8192021-05-23 03:48:02 -0700309 "revision": "20210514",
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800310 "rootUrl": "https://oslogin.googleapis.com/",
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400311 "schemas": {
312 "Empty": {
313 "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.",
314 "id": "Empty",
315 "properties": {},
316 "type": "object"
317 },
318 "ImportSshPublicKeyResponse": {
319 "description": "A response message for importing an SSH public key.",
320 "id": "ImportSshPublicKeyResponse",
321 "properties": {
322 "details": {
323 "description": "Detailed information about import results.",
324 "type": "string"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800325 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400326 "loginProfile": {
327 "$ref": "LoginProfile",
328 "description": "The login profile information for the user."
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800329 }
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400330 },
331 "type": "object"
332 },
333 "LoginProfile": {
334 "description": "The user profile information used for logging in to a virtual machine on Google Compute Engine.",
335 "id": "LoginProfile",
336 "properties": {
337 "name": {
338 "description": "Required. A unique user ID.",
339 "type": "string"
340 },
341 "posixAccounts": {
342 "description": "The list of POSIX accounts associated with the user.",
343 "items": {
344 "$ref": "PosixAccount"
345 },
346 "type": "array"
347 },
348 "sshPublicKeys": {
349 "additionalProperties": {
350 "$ref": "SshPublicKey"
351 },
352 "description": "A map from SSH public key fingerprint to the associated key object.",
353 "type": "object"
354 }
355 },
356 "type": "object"
357 },
358 "PosixAccount": {
359 "description": "The POSIX account information associated with a Google account.",
360 "id": "PosixAccount",
361 "properties": {
362 "accountId": {
363 "description": "Output only. A POSIX account identifier.",
364 "readOnly": true,
365 "type": "string"
366 },
367 "gecos": {
368 "description": "The GECOS (user information) entry for this account.",
369 "type": "string"
370 },
371 "gid": {
372 "description": "The default group ID.",
373 "format": "int64",
374 "type": "string"
375 },
376 "homeDirectory": {
377 "description": "The path to the home directory for this account.",
378 "type": "string"
379 },
380 "name": {
381 "description": "Output only. The canonical resource name.",
382 "readOnly": true,
383 "type": "string"
384 },
385 "operatingSystemType": {
386 "description": "The operating system type where this account applies.",
387 "enum": [
388 "OPERATING_SYSTEM_TYPE_UNSPECIFIED",
389 "LINUX",
390 "WINDOWS"
391 ],
392 "enumDescriptions": [
393 "The operating system type associated with the user account information is unspecified.",
394 "Linux user account information.",
395 "Windows user account information."
396 ],
397 "type": "string"
398 },
399 "primary": {
400 "description": "Only one POSIX account can be marked as primary.",
401 "type": "boolean"
402 },
403 "shell": {
404 "description": "The path to the logic shell for this account.",
405 "type": "string"
406 },
407 "systemId": {
408 "description": "System identifier for which account the username or uid applies to. By default, the empty value is used.",
409 "type": "string"
410 },
411 "uid": {
412 "description": "The user ID.",
413 "format": "int64",
414 "type": "string"
415 },
416 "username": {
417 "description": "The username of the POSIX account.",
418 "type": "string"
419 }
420 },
421 "type": "object"
422 },
423 "SshPublicKey": {
424 "description": "The SSH public key information associated with a Google account.",
425 "id": "SshPublicKey",
426 "properties": {
427 "expirationTimeUsec": {
428 "description": "An expiration time in microseconds since epoch.",
429 "format": "int64",
430 "type": "string"
431 },
432 "fingerprint": {
433 "description": "Output only. The SHA-256 fingerprint of the SSH public key.",
434 "readOnly": true,
435 "type": "string"
436 },
437 "key": {
438 "description": "Public key text in SSH format, defined by RFC4253 section 6.6.",
439 "type": "string"
440 },
441 "name": {
442 "description": "Output only. The canonical resource name.",
443 "readOnly": true,
444 "type": "string"
445 }
446 },
447 "type": "object"
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800448 }
449 },
Anthonios Partheniou10f4b672021-04-13 14:47:53 -0400450 "servicePath": "",
451 "title": "Cloud OS Login API",
452 "version": "v1",
453 "version_module": true
454}