1{ 2 "basePath": "/_ah/api", 3 "consumes": [ 4 "application/json" 5 ], 6 "definitions": { 7 "WebappSrcProtoModelBuildInfoMessage": { 8 "properties": { 9 "artifact_type": { 10 "type": "string" 11 }, 12 "artifacts": { 13 "items": { 14 "type": "string" 15 }, 16 "type": "array" 17 }, 18 "build_id": { 19 "type": "string" 20 }, 21 "build_target": { 22 "type": "string" 23 }, 24 "build_type": { 25 "type": "string" 26 }, 27 "manifest_branch": { 28 "type": "string" 29 }, 30 "signed": { 31 "type": "boolean" 32 } 33 }, 34 "type": "object" 35 }, 36 "WebappSrcProtoModelBuildResponseMessage": { 37 "properties": { 38 "builds": { 39 "description": "A message for representing an individual build entry.", 40 "items": { 41 "$ref": "#/definitions/#/definitions/#/definitions/WebappSrcProtoModelBuildInfoMessage" 42 }, 43 "type": "array" 44 }, 45 "has_next": { 46 "type": "boolean" 47 } 48 }, 49 "type": "object" 50 }, 51 "WebappSrcProtoModelCountRequestMessage": { 52 "properties": { 53 "filter": { 54 "type": "string" 55 } 56 }, 57 "type": "object" 58 }, 59 "WebappSrcProtoModelCountResponseMessage": { 60 "properties": { 61 "count": { 62 "format": "int64", 63 "type": "string" 64 } 65 }, 66 "type": "object" 67 }, 68 "WebappSrcProtoModelDefaultResponse": { 69 "properties": { 70 "return_code": { 71 "enum": [ 72 "SUCCESS", 73 "FAIL" 74 ], 75 "type": "string" 76 } 77 }, 78 "type": "object" 79 }, 80 "WebappSrcProtoModelDeviceInfoMessage": { 81 "properties": { 82 "product": { 83 "type": "string" 84 }, 85 "scheduling_status": { 86 "format": "int64", 87 "type": "string" 88 }, 89 "serial": { 90 "type": "string" 91 }, 92 "status": { 93 "format": "int64", 94 "type": "string" 95 } 96 }, 97 "type": "object" 98 }, 99 "WebappSrcProtoModelDeviceResponseMessage": { 100 "properties": { 101 "devices": { 102 "description": "A message for representing an individual host's device entry.", 103 "items": { 104 "$ref": "#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage" 105 }, 106 "type": "array" 107 }, 108 "has_next": { 109 "type": "boolean" 110 } 111 }, 112 "type": "object" 113 }, 114 "WebappSrcProtoModelGetRequestMessage": { 115 "properties": { 116 "direction": { 117 "type": "string" 118 }, 119 "filter": { 120 "type": "string" 121 }, 122 "offset": { 123 "format": "int64", 124 "type": "string" 125 }, 126 "size": { 127 "format": "int64", 128 "type": "string" 129 }, 130 "sort": { 131 "type": "string" 132 } 133 }, 134 "type": "object" 135 }, 136 "WebappSrcProtoModelHostInfoMessage": { 137 "properties": { 138 "devices": { 139 "description": "A message for representing an individual host's device entry.", 140 "items": { 141 "$ref": "#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage" 142 }, 143 "type": "array" 144 }, 145 "hostname": { 146 "type": "string" 147 } 148 }, 149 "type": "object" 150 }, 151 "WebappSrcProtoModelLabDeviceInfoMessage": { 152 "properties": { 153 "device_equipment": { 154 "items": { 155 "type": "string" 156 }, 157 "type": "array" 158 }, 159 "product": { 160 "type": "string" 161 }, 162 "serial": { 163 "type": "string" 164 } 165 }, 166 "type": "object" 167 }, 168 "WebappSrcProtoModelLabHostInfoMessage": { 169 "properties": { 170 "device": { 171 "description": "A message for representing an individual lab host's device entry.", 172 "items": { 173 "$ref": "#/definitions/WebappSrcProtoModelLabDeviceInfoMessage" 174 }, 175 "type": "array" 176 }, 177 "host_equipment": { 178 "items": { 179 "type": "string" 180 }, 181 "type": "array" 182 }, 183 "hostname": { 184 "type": "string" 185 }, 186 "ip": { 187 "type": "string" 188 }, 189 "script": { 190 "type": "string" 191 }, 192 "vtslab_version": { 193 "type": "string" 194 } 195 }, 196 "type": "object" 197 }, 198 "WebappSrcProtoModelLabInfoMessage": { 199 "properties": { 200 "admin": { 201 "items": { 202 "type": "string" 203 }, 204 "type": "array" 205 }, 206 "host": { 207 "description": "A message for representing an individual lab's host entry.", 208 "items": { 209 "$ref": "#/definitions/WebappSrcProtoModelLabHostInfoMessage" 210 }, 211 "type": "array" 212 }, 213 "name": { 214 "type": "string" 215 }, 216 "owner": { 217 "type": "string" 218 } 219 }, 220 "type": "object" 221 }, 222 "WebappSrcProtoModelLabMessage": { 223 "properties": { 224 "admin": { 225 "items": { 226 "type": "string" 227 }, 228 "type": "array" 229 }, 230 "devices": { 231 "type": "string" 232 }, 233 "host_equipment": { 234 "items": { 235 "type": "string" 236 }, 237 "type": "array" 238 }, 239 "hostname": { 240 "type": "string" 241 }, 242 "ip": { 243 "type": "string" 244 }, 245 "name": { 246 "type": "string" 247 }, 248 "owner": { 249 "type": "string" 250 }, 251 "vtslab_version": { 252 "type": "string" 253 } 254 }, 255 "type": "object" 256 }, 257 "WebappSrcProtoModelLabResponseMessage": { 258 "properties": { 259 "has_next": { 260 "type": "boolean" 261 }, 262 "labs": { 263 "description": "A model for representing a LabModel entity.", 264 "items": { 265 "$ref": "#/definitions/WebappSrcProtoModelLabMessage" 266 }, 267 "type": "array" 268 } 269 }, 270 "type": "object" 271 } 272 }, 273 "host": "vtslab-schedule-prod.appspot.com", 274 "info": { 275 "description": "Endpoint API for lab_info.", 276 "title": "lab", 277 "version": "v1" 278 }, 279 "paths": { 280 "/lab/v1/clear": { 281 "post": { 282 "operationId": "LabInfoApi_clear", 283 "parameters": [ 284 { 285 "in": "body", 286 "name": "body", 287 "schema": { 288 "$ref": "#/definitions/WebappSrcProtoModelLabInfoMessage" 289 } 290 } 291 ], 292 "responses": { 293 "200": { 294 "description": "A successful response", 295 "schema": { 296 "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse" 297 } 298 } 299 } 300 } 301 }, 302 "/lab/v1/count": { 303 "post": { 304 "operationId": "LabInfoApi_count", 305 "parameters": [ 306 { 307 "in": "body", 308 "name": "body", 309 "schema": { 310 "$ref": "#/definitions/WebappSrcProtoModelCountRequestMessage" 311 } 312 } 313 ], 314 "responses": { 315 "200": { 316 "description": "A successful response", 317 "schema": { 318 "$ref": "#/definitions/WebappSrcProtoModelCountResponseMessage" 319 } 320 } 321 } 322 } 323 }, 324 "/lab/v1/get": { 325 "post": { 326 "operationId": "LabInfoApi_get", 327 "parameters": [ 328 { 329 "in": "body", 330 "name": "body", 331 "schema": { 332 "$ref": "#/definitions/WebappSrcProtoModelGetRequestMessage" 333 } 334 } 335 ], 336 "responses": { 337 "200": { 338 "description": "A successful response", 339 "schema": { 340 "$ref": "#/definitions/WebappSrcProtoModelLabResponseMessage" 341 } 342 } 343 } 344 } 345 }, 346 "/lab/v1/set": { 347 "post": { 348 "operationId": "LabInfoApi_set", 349 "parameters": [ 350 { 351 "in": "body", 352 "name": "body", 353 "schema": { 354 "$ref": "#/definitions/WebappSrcProtoModelLabInfoMessage" 355 } 356 } 357 ], 358 "responses": { 359 "200": { 360 "description": "A successful response", 361 "schema": { 362 "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse" 363 } 364 } 365 } 366 } 367 }, 368 "/lab/v1/set_version": { 369 "post": { 370 "operationId": "LabInfoApi_setVersion", 371 "parameters": [ 372 { 373 "in": "body", 374 "name": "body", 375 "schema": { 376 "$ref": "#/definitions/WebappSrcProtoModelLabHostInfoMessage" 377 } 378 } 379 ], 380 "responses": { 381 "200": { 382 "description": "A successful response", 383 "schema": { 384 "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse" 385 } 386 } 387 } 388 } 389 } 390 }, 391 "produces": [ 392 "application/json" 393 ], 394 "schemes": [ 395 "https" 396 ], 397 "securityDefinitions": { 398 "google_id_token": { 399 "authorizationUrl": "", 400 "flow": "implicit", 401 "type": "oauth2", 402 "x-google-issuer": "https://accounts.google.com", 403 "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs" 404 } 405 }, 406 "swagger": "2.0", 407 "x-google-api-name": "lab" 408}