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/#/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/#/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/#/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/#/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/#/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/#/definitions/WebappSrcProtoModelLabMessage"
266          },
267          "type": "array"
268        }
269      },
270      "type": "object"
271    },
272    "WebappSrcProtoModelScheduleInfoMessage": {
273      "properties": {
274        "build_storage_type": {
275          "format": "int64",
276          "type": "string"
277        },
278        "build_target": {
279          "type": "string"
280        },
281        "device": {
282          "items": {
283            "type": "string"
284          },
285          "type": "array"
286        },
287        "device_pab_account_id": {
288          "type": "string"
289        },
290        "gsi_branch": {
291          "type": "string"
292        },
293        "gsi_build_target": {
294          "type": "string"
295        },
296        "gsi_pab_account_id": {
297          "type": "string"
298        },
299        "gsi_storage_type": {
300          "format": "int64",
301          "type": "string"
302        },
303        "gsi_vendor_version": {
304          "type": "string"
305        },
306        "has_bootloader_img": {
307          "type": "boolean"
308        },
309        "has_radio_img": {
310          "type": "boolean"
311        },
312        "image_package_repo_base": {
313          "type": "string"
314        },
315        "manifest_branch": {
316          "type": "string"
317        },
318        "name": {
319          "type": "string"
320        },
321        "owner": {
322          "items": {
323            "type": "string"
324          },
325          "type": "array"
326        },
327        "param": {
328          "items": {
329            "type": "string"
330          },
331          "type": "array"
332        },
333        "period": {
334          "format": "int64",
335          "type": "string"
336        },
337        "priority": {
338          "type": "string"
339        },
340        "report_bucket": {
341          "items": {
342            "type": "string"
343          },
344          "type": "array"
345        },
346        "report_persistent_url": {
347          "items": {
348            "type": "string"
349          },
350          "type": "array"
351        },
352        "report_reference_url": {
353          "items": {
354            "type": "string"
355          },
356          "type": "array"
357        },
358        "report_spreadsheet_id": {
359          "items": {
360            "type": "string"
361          },
362          "type": "array"
363        },
364        "require_signed_device_build": {
365          "type": "boolean"
366        },
367        "required_device_equipment": {
368          "items": {
369            "type": "string"
370          },
371          "type": "array"
372        },
373        "required_host_equipment": {
374          "items": {
375            "type": "string"
376          },
377          "type": "array"
378        },
379        "retry_count": {
380          "format": "int64",
381          "type": "string"
382        },
383        "schedule": {
384          "type": "string"
385        },
386        "schedule_type": {
387          "type": "string"
388        },
389        "shards": {
390          "format": "int64",
391          "type": "string"
392        },
393        "test_branch": {
394          "type": "string"
395        },
396        "test_build_target": {
397          "type": "string"
398        },
399        "test_name": {
400          "type": "string"
401        },
402        "test_pab_account_id": {
403          "type": "string"
404        },
405        "test_storage_type": {
406          "format": "int64",
407          "type": "string"
408        },
409        "timestamp": {
410          "format": "date-time",
411          "type": "string"
412        }
413      },
414      "type": "object"
415    },
416    "WebappSrcProtoModelScheduleResponseMessage": {
417      "properties": {
418        "has_next": {
419          "type": "boolean"
420        },
421        "schedules": {
422          "description": "A message for representing an individual schedule entry.",
423          "items": {
424            "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
425          },
426          "type": "array"
427        }
428      },
429      "type": "object"
430    }
431  },
432  "host": "vtslab-schedule-prod.appspot.com",
433  "info": {
434    "description": "Endpoint API for schedule_info.",
435    "title": "schedule",
436    "version": "v1"
437  },
438  "paths": {
439    "/schedule/v1/clear": {
440      "post": {
441        "operationId": "ScheduleInfoApi_clear",
442        "parameters": [
443          {
444            "in": "body",
445            "name": "body",
446            "schema": {
447              "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
448            }
449          }
450        ],
451        "responses": {
452          "200": {
453            "description": "A successful response",
454            "schema": {
455              "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
456            }
457          }
458        }
459      }
460    },
461    "/schedule/v1/count": {
462      "post": {
463        "operationId": "ScheduleInfoApi_count",
464        "parameters": [
465          {
466            "in": "body",
467            "name": "body",
468            "schema": {
469              "$ref": "#/definitions/WebappSrcProtoModelCountRequestMessage"
470            }
471          }
472        ],
473        "responses": {
474          "200": {
475            "description": "A successful response",
476            "schema": {
477              "$ref": "#/definitions/WebappSrcProtoModelCountResponseMessage"
478            }
479          }
480        }
481      }
482    },
483    "/schedule/v1/get": {
484      "post": {
485        "operationId": "ScheduleInfoApi_get",
486        "parameters": [
487          {
488            "in": "body",
489            "name": "body",
490            "schema": {
491              "$ref": "#/definitions/WebappSrcProtoModelGetRequestMessage"
492            }
493          }
494        ],
495        "responses": {
496          "200": {
497            "description": "A successful response",
498            "schema": {
499              "$ref": "#/definitions/WebappSrcProtoModelScheduleResponseMessage"
500            }
501          }
502        }
503      }
504    },
505    "/schedule/v1/set": {
506      "post": {
507        "operationId": "ScheduleInfoApi_set",
508        "parameters": [
509          {
510            "in": "body",
511            "name": "body",
512            "schema": {
513              "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
514            }
515          }
516        ],
517        "responses": {
518          "200": {
519            "description": "A successful response",
520            "schema": {
521              "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
522            }
523          }
524        }
525      }
526    }
527  },
528  "produces": [
529    "application/json"
530  ],
531  "schemes": [
532    "https"
533  ],
534  "securityDefinitions": {
535    "google_id_token": {
536      "authorizationUrl": "",
537      "flow": "implicit",
538      "type": "oauth2",
539      "x-google-issuer": "https://accounts.google.com",
540      "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
541    }
542  },
543  "swagger": "2.0",
544  "x-google-api-name": "schedule"
545}