Created
August 4, 2017 09:06
-
-
Save littleq0903/780ae0c82ebdbba13c2d9743fad4dfae to your computer and use it in GitHub Desktop.
API
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{"swagger":"2.0","info":{"version":"v1","title":"Lego Unified API"},"host":"lego","schemes":["http"],"paths":{"/api/draco":{"get":{"tags":["Draco"],"summary":"Query jobs","description":"Paged results with defualt page size ($top) 50 with a maximum of 1000. Supports OData query options like...<br /><code>?<span class=\"text-primary\">$count</span>=<span class=\"text-danger\">true</span>&<span class=\"text-primary\">$skip</span>=<span class=\"text-danger\">10</span>&<span class=\"text-primary\">$top</span>=<span class=\"text-danger\">20</span>&<span class=\"text-primary\">$select</span>=<span class=\"text-danger\">Id,Type,Status</span>&<span class=\"text-primary\">$filter</span>=<span class=\"text-danger\">Status eq 'OnGoing' or Status eq 'Start'</span>&<span class=\"text-primary\">$orderby</span>=<span class=\"text-danger\">DateStart desc</span></code>","operationId":"Draco_GetJobs","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"$filter","in":"query","description":"Filters the results, based on a Boolean condition.","required":false,"type":"string"},{"name":"$select","in":"query","description":"Selects which properties to include in the response.","required":false,"type":"string"},{"name":"$orderby","in":"query","description":"Sorts the results.","required":false,"type":"string"},{"name":"$top","in":"query","description":"Returns only the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$skip","in":"query","description":"Skips the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$count","in":"query","description":"Includes a count of the matching results in the response.","required":false,"type":"boolean"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/System.Web.OData.PageResult[LegoPortal.Data.Draco.JobBasic]"}},"400":{"description":"Bad request"}},"deprecated":false},"post":{"tags":["Draco"],"summary":"Submit a new job","operationId":"Draco_PostJob","consumes":["application/x-www-form-urlencoded","application/json","text/json"],"produces":["application/json","text/json"],"parameters":[{"name":"job","in":"body","description":"JobNewDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobNewDTO"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/LegoPortal.Data.Draco.Job"}},"400":{"description":"Bad request"}},"deprecated":false}},"/api/draco/{guid}":{"get":{"tags":["Draco"],"summary":"Get a job","operationId":"Draco_GetJob","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Job.Id","required":true,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.Draco.Job"}},"404":{"description":"Not Found"}},"deprecated":false},"delete":{"tags":["Draco"],"summary":"Cancel a job","operationId":"Draco_DeleteJob","consumes":["application/x-www-form-urlencoded","application/json","text/json"],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Id","required":true,"type":"string"},{"name":"job","in":"body","description":"JobCancelDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobCancelDTO"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not Found"},"403":{"description":"Not Allowed"}},"deprecated":false},"patch":{"tags":["Draco"],"summary":"Edit/update a job","description":"Only updates Job.Note - this can be used for tags, validation status etc...","operationId":"Draco_PatchJob","consumes":["application/x-www-form-urlencoded","application/json","text/json"],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Id","required":true,"type":"string"},{"name":"job","in":"body","description":"JobUpdateDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobUpdateDTO"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not Found"},"400":{"description":"Bad request"}},"deprecated":false}},"/api/draco/beds":{"get":{"tags":["Draco"],"summary":"Gets Beds","operationId":"Draco_GetBeds","consumes":[],"produces":["application/json","text/json"],"responses":{"200":{"description":"OK","schema":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Draco.Bed"}}}},"deprecated":false}},"/api/draco/beds/release/{id}":{},"/api/draco/beds/reserve/{team}/{count}":{},"/api/draco/report/jobs":{},"/api/draco/test-types/{id}/setting/querylog":{},"/api/draco/xCache/CancelXCacheRequest":{},"/api/draco/xCache/FetchJob":{},"/api/draco/xCache/GetXCacheRequestTestStatus":{},"/api/draco/xCache/SubmitXCacheJob":{},"/api/draco/xCache/SubmitXCacheJobTest":{},"/api/polaris":{"get":{"tags":["Polaris"],"summary":"Query jobs","description":"Paged results with defualt page size ($top) 50 with a maximum of 1000. Supports OData query options like...<br /><code>?<span class=\"text-primary\">$count</span>=<span class=\"text-danger\">true</span>&<span class=\"text-primary\">$skip</span>=<span class=\"text-danger\">10</span>&<span class=\"text-primary\">$top</span>=<span class=\"text-danger\">20</span>&<span class=\"text-primary\">$select</span>=<span class=\"text-danger\">Id,Type,Status</span>&<span class=\"text-primary\">$filter</span>=<span class=\"text-danger\">Status eq 'OnGoing' or Status eq 'Start'</span>&<span class=\"text-primary\">$orderby</span>=<span class=\"text-danger\">DateStart desc</span></code>","operationId":"Polaris_GetJobs","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"$filter","in":"query","description":"Filters the results, based on a Boolean condition.","required":false,"type":"string"},{"name":"$select","in":"query","description":"Selects which properties to include in the response.","required":false,"type":"string"},{"name":"$orderby","in":"query","description":"Sorts the results.","required":false,"type":"string"},{"name":"$top","in":"query","description":"Returns only the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$skip","in":"query","description":"Skips the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$count","in":"query","description":"Includes a count of the matching results in the response.","required":false,"type":"boolean"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/System.Web.OData.PageResult[LegoPortal.Data.Polaris.JobBasic]"}},"400":{"description":"Bad request"}},"deprecated":false},"post":{"tags":["Polaris"],"summary":"Submit a new job","operationId":"Polaris_PostJob","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":["application/json","text/json"],"parameters":[{"name":"job","in":"body","description":"JobNewDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobNewDTO"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/LegoPortal.Data.Polaris.Job"},"examples":{"application/json":{"Id":"00000000-0000-0000-0000-000000000000","Name":"Example LegoSaaSV15 job","Type":"LegoSaaSV15","Priority":4,"User":"swagger","DateStart":"2017-08-04T02:05:46.3647371-07:00","DateEnd":"2017-08-04T02:05:46.3647371-07:00","Status":"Ready","Note":"Swagger example","MachineCount":1,"Origin":"Portal - Swagger","Tests":[{"Name":"Base","IsBase":true,"Settings":{"BuildLocation":"\\\\builds\\QDrops\\Indexserve\\4964323\\bd5678\\retail\\amd64\\app\\saas","GetCaptionXLAArguments":"-SaasQueryPlan -LargeQueryLog","MinBla":"5","PerfFlag":"logman","QPS":"2000","TestExecutionType":"QPSStep","TestQueryLogLocation":"https://cosmos09.osdinfra.net/cosmos/IndexServePlatform/local/Lego/PROD_2016-02-22_WebPrecision_Draco_23467_saaslego.tsv","WaitingMin":"7","WarmupQPS":"500","WarmupQueryLogLocation":"https://cosmos09.osdinfra.net/cosmos/IndexServePlatform/local/Lego/PROD_2016-02-22_WebPrecision_Draco_23467_saaswarmuplego.tsv"}},{"Name":"Exp1","IsBase":false,"Settings":{"BuildLocation":"\\\\builds\\QDrops\\Indexserve\\4964974\\06006c\\retail\\amd64\\app\\saas","GetCaptionXLAArguments":"-SaasQueryPlan -LargeQueryLog","MinBla":"5","PerfFlag":"logman","QPS":"2000","TestExecutionType":"QPSStep","TestQueryLogLocation":"https://cosmos09.osdinfra.net/cosmos/IndexServePlatform/local/Lego/PROD_2016-02-22_WebPrecision_Draco_23467_saaslego.tsv","WaitingMin":"7","WarmupQPS":"500","WarmupQueryLogLocation":"https://cosmos09.osdinfra.net/cosmos/IndexServePlatform/local/Lego/PROD_2016-02-22_WebPrecision_Draco_23467_saaswarmuplego.tsv"}}]}}},"400":{"description":"Bad request"}},"deprecated":false}},"/api/polaris/{guid}":{"get":{"tags":["Polaris"],"summary":"Get a job","operationId":"Polaris_GetJob","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Job.Id","required":true,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.Polaris.Job"}},"404":{"description":"Not Found"}},"deprecated":false},"delete":{"tags":["Polaris"],"summary":"Cancel a job","operationId":"Polaris_DeleteJob","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Id","required":true,"type":"string"},{"name":"job","in":"body","description":"JobCancelDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobCancelDTO"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not Found"},"403":{"description":"Not Allowed"}},"deprecated":false},"patch":{"tags":["Polaris"],"summary":"Edit/update a job","description":"Only updates Job.Note - this can be used for tags, validation status etc...","operationId":"Polaris_PatchJob","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Id","required":true,"type":"string"},{"name":"job","in":"body","description":"JobUpdateDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobUpdateDTO"}}],"responses":{"200":{"description":"OK"},"404":{"description":"Not Found"},"400":{"description":"Bad request"}},"deprecated":false}},"/api/polaris/Polaris/FetchJob":{},"/api/polaris/Polaris/SubmitJobResult":{},"/api/polaris/PolarisBox/FetchJob":{},"/api/polaris/PolarisBox/SubmitJobResult":{},"/api/polaris/PolarisTip/FetchJob":{},"/api/polaris/PolarisTip/SubmitJobResult":{},"/api/polaris/report/jobs":{},"/api/polaris/test-types/{id}/settings/{key}":{},"/api/polaris/test-types/list":{},"/api/qm/builds":{"get":{"tags":["QM"],"summary":"Query Builds","description":"Paged results with defualt page size ($top) 50 with a maximum of 1000. Supports OData query options like...<br /><code>?<span class=\"text-primary\">$count</span>=<span class=\"text-danger\">true</span>&<span class=\"text-primary\">$skip</span>=<span class=\"text-danger\">10</span>&<span class=\"text-primary\">$top</span>=<span class=\"text-danger\">20</span>&<span class=\"text-primary\">$select</span>=<span class=\"text-danger\">Id,Branch,Path,Date</span>&<span class=\"text-primary\">$filter</span>=<span class=\"text-danger\">Branch eq 'MSASG_IndexServe_master'</span>&<span class=\"text-primary\">$orderby</span>=<span class=\"text-danger\">Date desc</span></code>","operationId":"QM_GetBuilds","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"$filter","in":"query","description":"Filters the results, based on a Boolean condition.","required":false,"type":"string"},{"name":"$select","in":"query","description":"Selects which properties to include in the response.","required":false,"type":"string"},{"name":"$orderby","in":"query","description":"Sorts the results.","required":false,"type":"string"},{"name":"$top","in":"query","description":"Returns only the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$skip","in":"query","description":"Skips the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$count","in":"query","description":"Includes a count of the matching results in the response.","required":false,"type":"boolean"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/System.Web.OData.PageResult[LegoPortal.Data.QM.Build]"}},"400":{"description":"Bad Request"}},"deprecated":false},"post":{"tags":["QM"],"summary":"Submit a new build","operationId":"QM_PostBuild","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":[],"parameters":[{"name":"build","in":"body","description":"A new build","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Build"}}],"responses":{"201":{"description":"Created"},"400":{"description":"Bad Request"}},"deprecated":false}},"/api/qm/jobs":{"get":{"tags":["QM"],"summary":"Query Jobs","description":"Paged results with defualt page size ($top) 50 with a maximum of 1000. Supports OData query options like...<br /><code>?<span class=\"text-primary\">$count</span>=<span class=\"text-danger\">true</span>&<span class=\"text-primary\">$skip</span>=<span class=\"text-danger\">10</span>&<span class=\"text-primary\">$top</span>=<span class=\"text-danger\">20</span>&<span class=\"text-primary\">$select</span>=<span class=\"text-danger\">Guid,Name,Status</span>&<span class=\"text-primary\">$filter</span>=<span class=\"text-danger\">Status eq 'Finished'</span>&<span class=\"text-primary\">$orderby</span>=<span class=\"text-danger\">DateStart desc</span></code>","operationId":"QM_GetJobs","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"$filter","in":"query","description":"Filters the results, based on a Boolean condition.","required":false,"type":"string"},{"name":"$select","in":"query","description":"Selects which properties to include in the response.","required":false,"type":"string"},{"name":"$orderby","in":"query","description":"Sorts the results.","required":false,"type":"string"},{"name":"$top","in":"query","description":"Returns only the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$skip","in":"query","description":"Skips the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$count","in":"query","description":"Includes a count of the matching results in the response.","required":false,"type":"boolean"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/System.Web.OData.PageResult[LegoPortal.Data.QM.JobBasic]"}},"400":{"description":"Bad Request"}},"deprecated":false},"post":{"tags":["QM"],"summary":"Submit a new Job","operationId":"QM_PostJob","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":["application/json","text/json"],"parameters":[{"name":"job","in":"body","description":"JobNewDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.QM.JobNewDTO"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Job"}},"400":{"description":"Bad Request"}},"deprecated":false}},"/api/qm/jobs/{guid}":{"get":{"tags":["QM"],"summary":"Get a job","operationId":"QM_GetJob","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Job"}},"404":{"description":"Not Found"}},"deprecated":false},"post":{"tags":["QM"],"summary":"Start a waiting Job","operationId":"QM_PostJobStart","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"dependencySettings","in":"body","description":"Data Dependency Settings","required":true,"schema":{"type":"object","additionalProperties":{"type":"string"}}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Job"}},"403":{"description":"Not Allowed"},"404":{"description":"Not Found"}},"deprecated":false},"patch":{"tags":["QM"],"summary":"ForcePass a Job","operationId":"QM_PatchJobForcePass","consumes":[],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"user","in":"query","description":"User alias","required":false,"type":"string"}],"responses":{"200":{"description":"OK"},"403":{"description":"Not Allowed"},"404":{"description":"Not Found"}},"deprecated":false}},"/api/qm/jobs/{guid}/{id}":{"get":{"tags":["QM"],"summary":"Get Backend JobTest result","operationId":"QM_GetBackendJobResult","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"id","in":"path","description":"JobTest.Id","required":true,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.BackendJobResult"}},"404":{"description":"Not Found"}},"deprecated":false},"put":{"tags":["QM"],"summary":"Retry JobTest","operationId":"QM_PutJobTestRetry","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"id","in":"path","description":"JobTest.Id","required":true,"type":"integer","format":"int32"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Job"}},"403":{"description":"Not Allowed"},"404":{"description":"Not Found"}},"deprecated":false},"patch":{"tags":["QM"],"summary":"Update JobTest Info and QPass","operationId":"QM_PatchJobTestInfo","consumes":[],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"id","in":"path","description":"JobTest.Id","required":true,"type":"integer","format":"int32"},{"name":"info","in":"query","description":"New info","required":false,"type":"string"},{"name":"pass","in":"query","description":"New qpass","required":false,"type":"string"}],"responses":{"200":{"description":"OK"},"403":{"description":"Not Allowed"},"404":{"description":"Not Found"}},"deprecated":false}},"/api/qm/jobs/{guid}/{user}/{endstate}":{"delete":{"tags":["QM"],"summary":"Cancel a Job","operationId":"QM_DeleteJob","consumes":[],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"user","in":"path","description":"User alias","required":true,"type":"string"},{"name":"endstate","in":"path","description":"EndState - optional, the EndState to mark any running JobTests to eg Timedout","required":true,"type":"string"}],"responses":{"200":{"description":"OK"},"403":{"description":"Not Allowed"},"404":{"description":"Not Found"}},"deprecated":false}},"/api/qm/jobs/{guid}/{user}/backend":{"delete":{"tags":["QM"],"summary":"Cancel a Job's Backend jobs only (does not cancel the job in QM)","operationId":"QM_DeleteJobBackendOnly","consumes":[],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"user","in":"path","description":"User alias","required":true,"type":"string"}],"responses":{"200":{"description":"OK"},"404":{"description":"Not Found"}},"deprecated":false}},"/api/qm/jobs/backend/{guid}/{jobTestId}":{"patch":{"tags":["QM"],"summary":"Writeback message to JobTest backend service","operationId":"QM_PatchJobBackendMessage","consumes":[],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Job.Guid","required":true,"type":"string"},{"name":"jobTestId","in":"path","description":"JobTest.Id","required":true,"type":"integer","format":"int32"},{"name":"message","in":"query","description":"Message you want to write back","required":false,"type":"string"}],"responses":{"200":{"description":"OK"},"403":{"description":"Not Allowed"},"404":{"description":"Not Found"}},"deprecated":false}},"/api/qm/tasks":{"get":{"tags":["QM"],"summary":"Query Tasks","description":"Paged results with defualt page size ($top) 50 with a maximum of 1000. Supports OData query options like...<br /><code>?<span class=\"text-primary\">$count</span>=<span class=\"text-danger\">true</span>&<span class=\"text-primary\">$skip</span>=<span class=\"text-danger\">10</span>&<span class=\"text-primary\">$top</span>=<span class=\"text-danger\">20</span>&<span class=\"text-primary\">$select</span>=<span class=\"text-danger\">Guid,Schedule,Status</span>&<span class=\"text-primary\">$filter</span>=<span class=\"text-danger\">Status eq 'OnGoing'</span>&<span class=\"text-primary\">$orderby</span>=<span class=\"text-danger\">DateStart desc</span></code>","operationId":"QM_GetTasks","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"$filter","in":"query","description":"Filters the results, based on a Boolean condition.","required":false,"type":"string"},{"name":"$select","in":"query","description":"Selects which properties to include in the response.","required":false,"type":"string"},{"name":"$orderby","in":"query","description":"Sorts the results.","required":false,"type":"string"},{"name":"$top","in":"query","description":"Returns only the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$skip","in":"query","description":"Skips the first n results.","required":false,"type":"integer","format":"int32"},{"name":"$count","in":"query","description":"Includes a count of the matching results in the response.","required":false,"type":"boolean"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/System.Web.OData.PageResult[LegoPortal.Data.QM.TaskBasic]"}},"400":{"description":"Bad Request"}},"deprecated":false},"post":{"tags":["QM"],"summary":"Submit a new Task","operationId":"QM_PostTask","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":["application/json","text/json"],"parameters":[{"name":"task","in":"body","description":"TaskNewDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.QM.TaskNewDTO"}}],"responses":{"201":{"description":"Created","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Task"}},"400":{"description":"Bad Request"}},"deprecated":false}},"/api/qm/tasks/{guid}":{"get":{"tags":["QM"],"summary":"Get a Task","operationId":"QM_GetTask","consumes":[],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Task.Guid","required":true,"type":"string"}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Task"}},"404":{"description":"Not Found"}},"deprecated":false},"post":{"tags":["QM"],"summary":"Add new Jobs to existing Task","operationId":"QM_PostTaskAddJobs","consumes":["application/json","text/json","application/x-www-form-urlencoded"],"produces":["application/json","text/json"],"parameters":[{"name":"guid","in":"path","description":"Task.Guid","required":true,"type":"string"},{"name":"jobs","in":"body","description":"TaskAddJobsDTO model","required":true,"schema":{"$ref":"#/definitions/LegoPortal.Data.QM.TaskAddJobsDTO"}}],"responses":{"200":{"description":"OK","schema":{"$ref":"#/definitions/LegoPortal.Data.QM.Task"}},"400":{"description":"Bad Request"},"403":{"description":"Not Allowed"},"404":{"description":"Not Found"}},"deprecated":false}},"/api/qm/tasks/{guid}/{user}":{"delete":{"tags":["QM"],"summary":"Cancel a Task","operationId":"QM_DeleteTask","consumes":[],"produces":[],"parameters":[{"name":"guid","in":"path","description":"Task.Guid","required":true,"type":"string"},{"name":"user","in":"path","description":"User alias","required":true,"type":"string"}],"responses":{"200":{"description":"OK"},"404":{"description":"Not Found"},"403":{"description":"Not Allowed"}},"deprecated":false}}},"definitions":{"System.Web.OData.Query.ODataQueryOptions[LegoPortal.Data.Draco.JobBasic]":{"type":"object","properties":{"IfMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"IfNoneMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Request":{"$ref":"#/definitions/System.Object","readOnly":true},"RawValues":{"$ref":"#/definitions/System.Web.OData.Query.ODataRawQueryOptions","readOnly":true},"SelectExpand":{"$ref":"#/definitions/System.Web.OData.Query.SelectExpandQueryOption","readOnly":true},"Filter":{"$ref":"#/definitions/System.Web.OData.Query.FilterQueryOption","readOnly":true},"OrderBy":{"$ref":"#/definitions/System.Web.OData.Query.OrderByQueryOption","readOnly":true},"Skip":{"$ref":"#/definitions/System.Web.OData.Query.SkipQueryOption","readOnly":true},"Top":{"$ref":"#/definitions/System.Web.OData.Query.TopQueryOption","readOnly":true},"Count":{"$ref":"#/definitions/System.Web.OData.Query.CountQueryOption","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.ODataQueryValidator"}}},"System.Object":{"type":"object","properties":{}},"System.Web.OData.ODataQueryContext":{"type":"object","properties":{"Model":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmModel","readOnly":true},"ElementType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmType","readOnly":true},"NavigationSource":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmNavigationSource","readOnly":true},"ElementClrType":{"type":"string","readOnly":true},"Path":{"$ref":"#/definitions/System.Web.OData.Routing.ODataPath","readOnly":true}}},"System.Web.OData.Query.ODataRawQueryOptions":{"type":"object","properties":{"Filter":{"type":"string","readOnly":true},"OrderBy":{"type":"string","readOnly":true},"Top":{"type":"string","readOnly":true},"Skip":{"type":"string","readOnly":true},"Select":{"type":"string","readOnly":true},"Expand":{"type":"string","readOnly":true},"Count":{"type":"string","readOnly":true},"Format":{"type":"string","readOnly":true},"SkipToken":{"type":"string","readOnly":true},"DeltaToken":{"type":"string","readOnly":true}}},"System.Web.OData.Query.SelectExpandQueryOption":{"type":"object","properties":{"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"RawSelect":{"type":"string","readOnly":true},"RawExpand":{"type":"string","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.SelectExpandQueryValidator"},"SelectExpandClause":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.SelectExpandClause","readOnly":true},"LevelsMaxLiteralExpansionDepth":{"format":"int32","type":"integer"}}},"System.Web.OData.Query.FilterQueryOption":{"type":"object","properties":{"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.FilterQueryValidator"},"FilterClause":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.FilterClause","readOnly":true},"RawValue":{"type":"string","readOnly":true}}},"System.Web.OData.Query.OrderByQueryOption":{"type":"object","properties":{"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"OrderByNodes":{"type":"array","items":{"$ref":"#/definitions/System.Web.OData.Query.OrderByNode"},"readOnly":true},"RawValue":{"type":"string","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.OrderByQueryValidator"},"OrderByClause":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.OrderByClause","readOnly":true}}},"System.Web.OData.Query.SkipQueryOption":{"type":"object","properties":{"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"RawValue":{"type":"string","readOnly":true},"Value":{"format":"int32","type":"integer","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.SkipQueryValidator"}}},"System.Web.OData.Query.TopQueryOption":{"type":"object","properties":{"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"RawValue":{"type":"string","readOnly":true},"Value":{"format":"int32","type":"integer","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.TopQueryValidator"}}},"System.Web.OData.Query.CountQueryOption":{"type":"object","properties":{"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"RawValue":{"type":"string","readOnly":true},"Value":{"type":"boolean","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.CountQueryValidator"}}},"System.Web.OData.Query.Validators.ODataQueryValidator":{"type":"object","properties":{}},"Microsoft.OData.Edm.IEdmModel":{"type":"object","properties":{"SchemaElements":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmSchemaElement"},"readOnly":true},"VocabularyAnnotations":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Edm.Annotations.IEdmVocabularyAnnotation"},"readOnly":true},"ReferencedModels":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmModel"},"readOnly":true},"DeclaredNamespaces":{"type":"array","items":{"type":"string"},"readOnly":true},"DirectValueAnnotationsManager":{"$ref":"#/definitions/Microsoft.OData.Edm.Annotations.IEdmDirectValueAnnotationsManager","readOnly":true},"EntityContainer":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmEntityContainer","readOnly":true}}},"Microsoft.OData.Edm.IEdmType":{"type":"object","properties":{"TypeKind":{"enum":["None","Primitive","Entity","Complex","Collection","EntityReference","Enum","TypeDefinition"],"type":"string","readOnly":true}}},"Microsoft.OData.Edm.IEdmNavigationSource":{"type":"object","properties":{"NavigationPropertyBindings":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmNavigationPropertyBinding"},"readOnly":true},"Path":{"$ref":"#/definitions/Microsoft.OData.Edm.Expressions.IEdmPathExpression","readOnly":true},"Type":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmType","readOnly":true},"Name":{"type":"string","readOnly":true}}},"System.Web.OData.Routing.ODataPath":{"type":"object","properties":{"EdmType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmType","readOnly":true},"NavigationSource":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmNavigationSource","readOnly":true},"PathTemplate":{"type":"string","readOnly":true},"Segments":{"type":"array","items":{"$ref":"#/definitions/System.Web.OData.Routing.ODataPathSegment"},"readOnly":true}}},"System.Web.OData.Query.Validators.SelectExpandQueryValidator":{"type":"object","properties":{}},"Microsoft.OData.Core.UriParser.Semantic.SelectExpandClause":{"type":"object","properties":{"SelectedItems":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.SelectItem"},"readOnly":true},"AllSelected":{"type":"boolean","readOnly":true}}},"System.Web.OData.Query.Validators.FilterQueryValidator":{"type":"object","properties":{}},"Microsoft.OData.Core.UriParser.Semantic.FilterClause":{"type":"object","properties":{"Expression":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.SingleValueNode","readOnly":true},"RangeVariable":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.RangeVariable","readOnly":true},"ItemType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTypeReference","readOnly":true}}},"System.Web.OData.Query.OrderByNode":{"type":"object","properties":{"Direction":{"enum":["Ascending","Descending"],"type":"string","readOnly":true}}},"System.Web.OData.Query.Validators.OrderByQueryValidator":{"type":"object","properties":{}},"Microsoft.OData.Core.UriParser.Semantic.OrderByClause":{"type":"object","properties":{"ThenBy":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.OrderByClause","readOnly":true},"Expression":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.SingleValueNode","readOnly":true},"Direction":{"enum":["Ascending","Descending"],"type":"string","readOnly":true},"RangeVariable":{"$ref":"#/definitions/Microsoft.OData.Core.UriParser.Semantic.RangeVariable","readOnly":true},"ItemType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTypeReference","readOnly":true}}},"System.Web.OData.Query.Validators.SkipQueryValidator":{"type":"object","properties":{}},"System.Web.OData.Query.Validators.TopQueryValidator":{"type":"object","properties":{}},"System.Web.OData.Query.Validators.CountQueryValidator":{"type":"object","properties":{}},"Microsoft.OData.Edm.IEdmSchemaElement":{"type":"object","properties":{"SchemaElementKind":{"enum":["None","TypeDefinition","ValueTerm","Action","EntityContainer","Function"],"type":"string","readOnly":true},"Namespace":{"type":"string","readOnly":true},"Name":{"type":"string","readOnly":true}}},"Microsoft.OData.Edm.Annotations.IEdmVocabularyAnnotation":{"type":"object","properties":{"Qualifier":{"type":"string","readOnly":true},"Term":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTerm","readOnly":true},"Target":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmVocabularyAnnotatable","readOnly":true}}},"Microsoft.OData.Edm.Annotations.IEdmDirectValueAnnotationsManager":{"type":"object","properties":{}},"Microsoft.OData.Edm.IEdmEntityContainer":{"type":"object","properties":{"Elements":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmEntityContainerElement"},"readOnly":true},"SchemaElementKind":{"enum":["None","TypeDefinition","ValueTerm","Action","EntityContainer","Function"],"type":"string","readOnly":true},"Namespace":{"type":"string","readOnly":true},"Name":{"type":"string","readOnly":true}}},"Microsoft.OData.Edm.IEdmNavigationPropertyBinding":{"type":"object","properties":{"NavigationProperty":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmNavigationProperty","readOnly":true},"Target":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmNavigationSource","readOnly":true}}},"Microsoft.OData.Edm.Expressions.IEdmPathExpression":{"type":"object","properties":{"Path":{"type":"array","items":{"type":"string"},"readOnly":true},"ExpressionKind":{"enum":["None","BinaryConstant","BooleanConstant","DateTimeOffsetConstant","DecimalConstant","FloatingConstant","GuidConstant","IntegerConstant","StringConstant","DurationConstant","Null","Record","Collection","Path","ParameterReference","OperationReference","PropertyReference","ValueTermReference","EntitySetReference","EnumMemberReference","If","Cast","IsType","OperationApplication","LabeledExpressionReference","Labeled","PropertyPath","NavigationPropertyPath","DateConstant","TimeOfDayConstant","EnumMember"],"type":"string","readOnly":true}}},"System.Web.OData.Routing.ODataPathSegment":{"type":"object","properties":{"SegmentKind":{"type":"string","readOnly":true}}},"Microsoft.OData.Core.UriParser.Semantic.SelectItem":{"type":"object","properties":{}},"Microsoft.OData.Core.UriParser.Semantic.SingleValueNode":{"type":"object","properties":{"TypeReference":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTypeReference","readOnly":true},"Kind":{"enum":["None","Constant","Convert","NonentityRangeVariableReference","BinaryOperator","UnaryOperator","SingleValuePropertyAccess","CollectionPropertyAccess","SingleValueFunctionCall","Any","CollectionNavigationNode","SingleNavigationNode","SingleValueOpenPropertyAccess","SingleEntityCast","All","EntityCollectionCast","EntityRangeVariableReference","SingleEntityFunctionCall","CollectionFunctionCall","EntityCollectionFunctionCall","NamedFunctionParameter","ParameterAlias","EntitySet","KeyLookup","SearchTerm","CollectionOpenPropertyAccess","CollectionPropertyCast","SingleValueCast"],"type":"string","readOnly":true}}},"Microsoft.OData.Core.UriParser.Semantic.RangeVariable":{"type":"object","properties":{"Name":{"type":"string","readOnly":true},"TypeReference":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTypeReference","readOnly":true},"Kind":{"format":"int32","type":"integer","readOnly":true}}},"Microsoft.OData.Edm.IEdmTypeReference":{"type":"object","properties":{"IsNullable":{"type":"boolean","readOnly":true},"Definition":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmType","readOnly":true}}},"Microsoft.OData.Edm.IEdmTerm":{"type":"object","properties":{"TermKind":{"enum":["None","Type","Value"],"type":"string","readOnly":true},"SchemaElementKind":{"enum":["None","TypeDefinition","ValueTerm","Action","EntityContainer","Function"],"type":"string","readOnly":true},"Namespace":{"type":"string","readOnly":true},"Name":{"type":"string","readOnly":true}}},"Microsoft.OData.Edm.IEdmVocabularyAnnotatable":{"type":"object","properties":{}},"Microsoft.OData.Edm.IEdmEntityContainerElement":{"type":"object","properties":{"ContainerElementKind":{"enum":["None","EntitySet","ActionImport","FunctionImport","Singleton"],"type":"string","readOnly":true},"Container":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmEntityContainer","readOnly":true},"Name":{"type":"string","readOnly":true}}},"Microsoft.OData.Edm.IEdmNavigationProperty":{"type":"object","properties":{"Partner":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmNavigationProperty","readOnly":true},"OnDelete":{"enum":["None","Cascade"],"type":"string","readOnly":true},"ContainsTarget":{"type":"boolean","readOnly":true},"ReferentialConstraint":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmReferentialConstraint","readOnly":true},"PropertyKind":{"enum":["None","Structural","Navigation"],"type":"string","readOnly":true},"Type":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTypeReference","readOnly":true},"DeclaringType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmStructuredType","readOnly":true},"Name":{"type":"string","readOnly":true}}},"Microsoft.OData.Edm.IEdmReferentialConstraint":{"type":"object","properties":{"PropertyPairs":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Edm.EdmReferentialConstraintPropertyPair"},"readOnly":true}}},"Microsoft.OData.Edm.IEdmStructuredType":{"type":"object","properties":{"IsAbstract":{"type":"boolean","readOnly":true},"IsOpen":{"type":"boolean","readOnly":true},"BaseType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmStructuredType","readOnly":true},"DeclaredProperties":{"type":"array","items":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmProperty"},"readOnly":true},"TypeKind":{"enum":["None","Primitive","Entity","Complex","Collection","EntityReference","Enum","TypeDefinition"],"type":"string","readOnly":true}}},"Microsoft.OData.Edm.EdmReferentialConstraintPropertyPair":{"type":"object","properties":{"DependentProperty":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmStructuralProperty","readOnly":true},"PrincipalProperty":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmStructuralProperty","readOnly":true}}},"Microsoft.OData.Edm.IEdmProperty":{"type":"object","properties":{"PropertyKind":{"enum":["None","Structural","Navigation"],"type":"string","readOnly":true},"Type":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTypeReference","readOnly":true},"DeclaringType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmStructuredType","readOnly":true},"Name":{"type":"string","readOnly":true}}},"Microsoft.OData.Edm.IEdmStructuralProperty":{"type":"object","properties":{"DefaultValueString":{"type":"string","readOnly":true},"ConcurrencyMode":{"enum":["None","Fixed"],"type":"string","readOnly":true},"PropertyKind":{"enum":["None","Structural","Navigation"],"type":"string","readOnly":true},"Type":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmTypeReference","readOnly":true},"DeclaringType":{"$ref":"#/definitions/Microsoft.OData.Edm.IEdmStructuredType","readOnly":true},"Name":{"type":"string","readOnly":true}}},"System.Web.OData.PageResult[LegoPortal.Data.Draco.JobBasic]":{"type":"object","properties":{"Items":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobBasic"}},"NextPageLink":{"type":"string"},"Count":{"format":"int64","type":"integer"}}},"LegoPortal.Data.Draco.JobBasic":{"required":["Id","Name","Type","Priority","User","DateStart","DateEnd","Status","RunCount","Origin"],"type":"object","properties":{"Id":{"description":"Guid","type":"string"},"Name":{"description":"Name/label given by the Job.User","type":"string"},"Type":{"description":"TestType","type":"string"},"Priority":{"format":"int32","description":"Set by the Job.User = [1 to 4] (1 highest - 4 lowest)","type":"integer"},"User":{"description":"User who submitted this job (user alias)","type":"string"},"DateStart":{"format":"date-time","description":"DateTime submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime of last status change","type":"string"},"Status":{"description":"Job.Status = [Ready, OnGoing, Finished]","type":"string"},"Info":{"description":"Detailed info (inc. errors) returned from running the job","type":"string"},"Progress":{"description":"Job progress","type":"string"},"Note":{"description":"Any notes set by a user - also used for validation status from 3rd parties","type":"string"},"RunCount":{"format":"int32","description":"No. of runs requested for the job [1 to 3]","type":"integer"},"Bed":{"description":"The Bed that the job is run on","type":"string"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"Action":{"description":"Any Action flagged for this job (eg Cancel)","type":"string"}}},"LegoPortal.Data.Draco.JobNewDTO":{"required":["Name","Type","User","Origin"],"type":"object","properties":{"Name":{"description":"Name/label this Job","type":"string"},"Type":{"description":"TestTypeId","type":"string"},"Priority":{"format":"int32","description":"[1 to 4] (1 highest - 4 lowest)","maximum":4,"minimum":1,"type":"integer"},"User":{"description":"User/service alias who is submitting this job","type":"string"},"Note":{"description":"Any notes for the job eg tags, validation status from 3rd parties","type":"string"},"RunCount":{"format":"int32","description":"No. of machines assigned to run this job [1 to 3]","maximum":3,"minimum":1,"type":"integer"},"Bed":{"description":"Which Bed to run the job on (only valid for certain TestTypes)","type":"string"},"Origin":{"description":"Specifiy where this job is submitted from eg API PartnerX","type":"string"},"Tests":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobTestNewDTO"}}}},"LegoPortal.Data.Draco.JobTestNewDTO":{"required":["Name"],"type":"object","properties":{"Name":{"description":"JobTest.Name eg Base, Exp1","type":"string"},"QueryLog":{"description":"Query log name - will use TestType default if not given","type":"string"},"QpsStart":{"format":"int32","description":"Starting Warmup QPS - will use TestType default if not given","type":"integer"},"QpsEnd":{"format":"int32","description":"Ending Warmup QPS and test QP - will use TestType default if not givenS","type":"integer"},"QpsStep":{"format":"int32","description":"Increase Warmup QPS increment - will use TestType default if not given","type":"integer"},"QpsStepPeriod":{"format":"int32","description":"Increase Warmup QPS increment duration (sec) - will use TestType default if not given","type":"integer"},"TestDuration":{"format":"int32","description":"Total test duration (min) - includes Warmup time - will use TestType default if not given","type":"integer"},"BuildLocation":{"description":"Location of build for deloyment - will use existing build on the bed if not given","type":"string"},"Augmentation":{"description":"Any additional augmentation specified - will use TestType default if not given","type":"string"},"RestartService":{"format":"int32","type":"integer"},"TrafficSource":{"type":"string"}}},"LegoPortal.Data.Draco.Job":{"required":["Id","Name","Type","Priority","User","DateStart","DateEnd","Status","RunCount","Origin","Tests"],"type":"object","properties":{"Id":{"description":"Guid","type":"string"},"Name":{"description":"Name/label given by the Job.User","type":"string"},"Type":{"description":"TestType","type":"string"},"Priority":{"format":"int32","description":"Set by the Job.User = [1 to 4] (1 highest - 4 lowest)","type":"integer"},"User":{"description":"User who submitted this job (user alias)","type":"string"},"DateStart":{"format":"date-time","description":"DateTime submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime of last status change","type":"string"},"Status":{"description":"Job.Status = [Ready, OnGoing, Finished]","type":"string"},"Info":{"description":"Detailed info (inc. errors) returned from running the job","type":"string"},"Progress":{"description":"Job progress","type":"string"},"Note":{"description":"Any notes set by a user - also used for validation status from 3rd parties","type":"string"},"RunCount":{"format":"int32","description":"No. of runs requested for the job [1 to 3]","type":"integer"},"Bed":{"description":"The Bed that the job is run on","type":"string"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"Action":{"description":"Any Action flagged for this job (eg Cancel)","type":"string"},"Tests":{"description":"Every Job will have 1+ JobTest","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobTest"}}}},"LegoPortal.Data.Draco.JobTest":{"required":["Name","Status","Settings"],"type":"object","properties":{"Name":{"description":"JobTest.Name eg Base, Exp1","type":"string"},"DateStart":{"format":"date-time","description":"DateTime that this test has started","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime of last status change","type":"string"},"Status":{"description":"JobTest.Status = Lego.Data.Draco.JobTestStatus [enum]","type":"string"},"Settings":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobTestSettings","description":"JobTestSettings for this test"},"TestRuns":{"description":"Every JobTest will have 1+ JobTestRun","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobTestRun"}}}},"LegoPortal.Data.Draco.JobTestSettings":{"required":["QueryLog","QpsStart","QpsEnd","QpsStep","QpsStepPeriod","TestDuration"],"type":"object","properties":{"QueryLog":{"description":"Query log name","type":"string"},"QpsStart":{"format":"int32","description":"Starting Warmup QPS","maximum":100000,"minimum":0,"type":"integer"},"QpsEnd":{"format":"int32","description":"Ending Warmup QPS and test QPS","maximum":100000,"minimum":0,"type":"integer"},"QpsStep":{"format":"int32","description":"Increase Warmup QPS increment","maximum":100000,"minimum":0,"type":"integer"},"QpsStepPeriod":{"format":"int32","description":"Increase Warmup QPS increment duration (sec)","maximum":600000,"minimum":0,"type":"integer"},"TestDuration":{"format":"int32","description":"Total test duration (min) - includes Warmup time","maximum":1000,"minimum":15,"type":"integer"},"BuildLocation":{"description":"Location of build for deloyment is specified","type":"string"},"Augmentation":{"description":"Any additional augmentation specified","type":"string"},"TrafficSource":{"description":"Use URP or Recap","type":"string"},"RestartService":{"format":"int32","description":"RestartService","type":"integer"}}},"LegoPortal.Data.Draco.JobTestRun":{"required":["DateStart","DateEnd","QPass","QReason","TestRunResults"],"type":"object","properties":{"DateStart":{"format":"date-time","description":"DateTime when run has started","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime of last status change","type":"string"},"Error":{"description":"Any errors returned from running this TestRun","type":"string"},"QPass":{"description":"Whether this is a good run or not (QualificationPass)","type":"boolean"},"QReason":{"description":"List of counters and reasons why QPass failed","type":"object","additionalProperties":{"type":"string"}},"AvgHealthyPartitionSaas":{"type":"string"},"AvgHealthyPartitionRaas":{"type":"string"},"RowBalanceStatusSaas":{"type":"string"},"RowBalanceStatusRaas":{"type":"string"},"TestRunResults":{"description":"Every successful JobTestRun will have 1 JobTestRunResults","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobTestRunResult"}}}},"LegoPortal.Data.Draco.JobTestRunResult":{"required":["Name","Counters"],"type":"object","properties":{"Name":{"description":"JobTestRunResult.Name - 'Main' for main counterset","type":"string"},"Counters":{"description":"Dictionary<string, decimal?> eg {'CPU': 52.536323, 'RAM': 67.232132}","type":"object","additionalProperties":{"format":"double","type":"number"}}}},"LegoPortal.Data.Draco.JobUpdateDTO":{"required":["Note"],"type":"object","properties":{"Note":{"description":"Update the note for thie job eg tags, validation status from 3rd parties","type":"string"}}},"LegoPortal.Data.Draco.JobCancelDTO":{"required":["User"],"type":"object","properties":{"User":{"description":"User alias who is cancelling the job","type":"string"}}},"LegoPortal.Data.Draco.Bed":{"required":["Id","Tier","IsEnabled","MF_TC","MF_IS","SaaS","RaaS"],"type":"object","properties":{"Id":{"type":"string"},"Team":{"type":"string"},"JobGuid":{"type":"string"},"Tier":{"type":"string"},"IsEnabled":{"type":"boolean"},"MF_TC":{"type":"string"},"MF_IS":{"type":"string"},"BuildDomain":{"type":"string"},"Augmentation":{"type":"string"},"DataManager":{"type":"string"},"SaaS":{"$ref":"#/definitions/LegoPortal.Data.Draco.ServiceBed"},"RaaS":{"$ref":"#/definitions/LegoPortal.Data.Draco.ServiceBed"}}},"LegoPortal.Data.Draco.ServiceBed":{"required":["Status","IsHealthy","Service","PartitionColNum","ScaleUnits","Sku","CpuCores"],"type":"object","properties":{"Name":{"type":"string"},"Status":{"type":"string"},"IsHealthy":{"type":"boolean"},"Build":{"type":"string"},"Index":{"type":"string"},"Service":{"type":"string"},"PartitionColNum":{"format":"int32","type":"integer"},"ScaleUnits":{"type":"string"},"VEnv":{"type":"string"},"Sku":{"type":"string"},"CpuCores":{"type":"string"},"ScaleUnitList":{"type":"array","items":{"type":"string"},"readOnly":true}}},"LegoPortal.Data.Draco.TestTypeSettingUpdateDTO":{"required":["Value","User"],"type":"object","properties":{"Value":{"description":"Value for the setting","type":"string"},"User":{"description":"User or service that is updating the setting","type":"string"}}},"System.Web.OData.Query.ODataQueryOptions[LegoPortal.Data.Draco.JobReport]":{"type":"object","properties":{"IfMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"IfNoneMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Request":{"$ref":"#/definitions/System.Object","readOnly":true},"RawValues":{"$ref":"#/definitions/System.Web.OData.Query.ODataRawQueryOptions","readOnly":true},"SelectExpand":{"$ref":"#/definitions/System.Web.OData.Query.SelectExpandQueryOption","readOnly":true},"Filter":{"$ref":"#/definitions/System.Web.OData.Query.FilterQueryOption","readOnly":true},"OrderBy":{"$ref":"#/definitions/System.Web.OData.Query.OrderByQueryOption","readOnly":true},"Skip":{"$ref":"#/definitions/System.Web.OData.Query.SkipQueryOption","readOnly":true},"Top":{"$ref":"#/definitions/System.Web.OData.Query.TopQueryOption","readOnly":true},"Count":{"$ref":"#/definitions/System.Web.OData.Query.CountQueryOption","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.ODataQueryValidator"}}},"System.Web.OData.PageResult[LegoPortal.Data.Draco.JobReport]":{"type":"object","properties":{"Items":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Draco.JobReport"}},"NextPageLink":{"type":"string"},"Count":{"format":"int64","type":"integer"}}},"LegoPortal.Data.Draco.JobReport":{"required":["Id","Guid","Type","Name","User","Priority","JobStatus","RunCount","Origin","JobStart","JobEnd"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"Guid":{"description":"Public Id","type":"string"},"Type":{"description":"TestType","type":"string"},"Name":{"description":"Name/label given by the Job.User","type":"string"},"User":{"description":"User who submitted this job (user alias)","type":"string"},"Priority":{"format":"int32","description":"Set by the Job.User = [1 to 4] (1 highest - 4 lowest)","type":"integer"},"JobStatus":{"description":"Job Status = [Ready, OnGoing, Finished]","type":"string"},"RunCount":{"format":"int32","description":"No. of runs requested for the job [1 to 3]","type":"integer"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"JobStart":{"format":"date-time","description":"DateTime Job submitted","type":"string"},"JobEnd":{"format":"date-time","description":"DateTime of last Job status change","type":"string"},"Bed":{"description":"The Bed that the job is run on","type":"string"},"TestsTotal":{"format":"int32","description":"Total number of tests","type":"integer"},"TestsStart":{"format":"date-time","description":"Earliest start time of all the tests","type":"string"},"TestsEnd":{"format":"date-time","description":"Latest end time of all the tests","type":"string"},"TestsStatusFinish":{"format":"int32","description":"Total number of tests with Finish status","type":"integer"},"TestsStatusCancelled":{"format":"int32","description":"Total number of tests with Cancelled status","type":"integer"},"TestsStatusFailed":{"format":"int32","description":"Total number of tests with Failed status","type":"integer"},"RunsTotal":{"format":"int32","description":"Total number of runs","type":"integer"},"RunsStart":{"format":"date-time","description":"Earliest start time of all the runs","type":"string"},"RunsEnd":{"format":"date-time","description":"Latest end time of all the runs","type":"string"},"RunsQPassTrue":{"format":"int32","description":"Total number of runs with QPass true","type":"integer"},"RunsQPassFalse":{"format":"int32","description":"Total number of runs with QPass false","type":"integer"}}},"CacheEnvTestServices.TestJobRequest":{"type":"object","properties":{"m_base":{"$ref":"#/definitions/CacheEnvTestServices.SubTestParams"},"m_experiments":{"type":"array","items":{"$ref":"#/definitions/CacheEnvTestServices.SubTestParams"}},"m_suiteName":{"type":"string"},"m_desiredQPS":{"format":"int32","type":"integer"},"m_durationSec":{"format":"int32","type":"integer"},"m_maxQueries":{"format":"int32","type":"integer"},"m_resultComparisonOptions":{"$ref":"#/definitions/CacheEnvTestServices.ResultComparisonOptions"},"m_tcInstanceReservationToken":{"type":"string"},"m_warmupSettings":{"$ref":"#/definitions/CacheEnvTestServices.WarmupSettings"},"m_restartServices":{"type":"boolean"},"m_variants":{"type":"object","additionalProperties":{"type":"string"}},"m_sender":{"type":"string"},"m_debug":{"type":"boolean"}}},"CacheEnvTestServices.SubTestParams":{"type":"object","properties":{"m_machine":{"type":"string"},"m_machineFunction":{"type":"string"},"m_requestType":{"enum":["RequestTypeAqm","RequestTypeWebRequest"],"type":"string"},"m_augmentation":{"type":"string"},"m_queryAlterations":{"type":"array","items":{"$ref":"#/definitions/CacheEnvTestServices.QueryAlteration"}},"m_inputFileCopyTasks":{"type":"array","items":{"$ref":"#/definitions/CacheEnvTestServices.FileCopyTask"}}}},"CacheEnvTestServices.ResultComparisonOptions":{"type":"object","properties":{"m_positions":{"type":"array","items":{"format":"int32","type":"integer"}},"m_compareResultURLHashes":{"type":"boolean"}}},"CacheEnvTestServices.WarmupSettings":{"type":"object","properties":{"m_durationSec":{"format":"int32","type":"integer"},"m_desiredQPS":{"format":"int32","type":"integer"},"m_maxAttempts":{"format":"int32","type":"integer"},"m_maxFailedQueryRate":{"format":"double","type":"number"}}},"CacheEnvTestServices.QueryAlteration":{"type":"object","properties":{"m_condition":{"$ref":"#/definitions/CacheEnvTestServices.QueryAlterationCondition"},"m_variantsToSet":{"type":"object","additionalProperties":{"type":"string"}},"m_augmentation":{"type":"string"}}},"CacheEnvTestServices.FileCopyTask":{"type":"object","properties":{"m_source":{"type":"string"},"m_destination":{"type":"string"}}},"CacheEnvTestServices.QueryAlterationCondition":{"type":"object","properties":{"m_variants":{"type":"object","additionalProperties":{"type":"string"}}}},"System.Web.OData.Query.ODataQueryOptions[LegoPortal.Data.Polaris.JobBasic]":{"type":"object","properties":{"IfMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"IfNoneMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Request":{"$ref":"#/definitions/System.Object","readOnly":true},"RawValues":{"$ref":"#/definitions/System.Web.OData.Query.ODataRawQueryOptions","readOnly":true},"SelectExpand":{"$ref":"#/definitions/System.Web.OData.Query.SelectExpandQueryOption","readOnly":true},"Filter":{"$ref":"#/definitions/System.Web.OData.Query.FilterQueryOption","readOnly":true},"OrderBy":{"$ref":"#/definitions/System.Web.OData.Query.OrderByQueryOption","readOnly":true},"Skip":{"$ref":"#/definitions/System.Web.OData.Query.SkipQueryOption","readOnly":true},"Top":{"$ref":"#/definitions/System.Web.OData.Query.TopQueryOption","readOnly":true},"Count":{"$ref":"#/definitions/System.Web.OData.Query.CountQueryOption","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.ODataQueryValidator"}}},"System.Web.OData.PageResult[LegoPortal.Data.Polaris.JobBasic]":{"type":"object","properties":{"Items":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobBasic"}},"NextPageLink":{"type":"string"},"Count":{"format":"int64","type":"integer"}}},"LegoPortal.Data.Polaris.JobBasic":{"required":["Id","Name","Type","Priority","User","DateStart","DateEnd","Status","MachineCount","Origin"],"type":"object","properties":{"Id":{"description":"Guid","type":"string"},"Name":{"description":"Name/label given by the Job.User","type":"string"},"Type":{"description":"TestType","type":"string"},"Priority":{"format":"int32","description":"Set by the Job.User = [1 to 4] (1 highest - 4 lowest)","type":"integer"},"User":{"description":"User who submitted this job (user alias)","type":"string"},"DateStart":{"format":"date-time","description":"DateTime submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime of last status change","type":"string"},"Status":{"description":"Job.Status = [Ready, OnGoing, Finished]","type":"string"},"Error":{"description":"Any errors returned from running the job","type":"string"},"Note":{"description":"Any notes set by a user - also used for validation status from 3rd parties","type":"string"},"MachineCount":{"format":"int32","description":"No. of machines assigned to run this job [1 to 9]","type":"integer"},"QueueTimeout":{"format":"int32","description":"No. of minutes this job will stay in queue before it expires","type":"integer"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"SpecifiedMachine":{"description":"Specifiy which machine to run","type":"string"}}},"LegoPortal.Data.Polaris.JobNewDTO":{"required":["Name","Type","User","Origin"],"type":"object","properties":{"Name":{"description":"Name/label this Job","type":"string"},"Type":{"description":"TestTypeId","type":"string"},"Priority":{"format":"int32","description":"[1 to 4] (1 highest - 4 lowest)","maximum":4,"minimum":1,"type":"integer"},"User":{"description":"User/service alias who is submitting this job","type":"string"},"Note":{"description":"Any notes for the job eg tags, validation status from 3rd parties","type":"string"},"MachineCount":{"format":"int32","description":"No. of machines assigned to run this job [1 to 9]","maximum":9,"minimum":1,"type":"integer"},"QueueTimeout":{"format":"int32","description":"No. of minutes this job will stay in queue before it expires - omit for no time out","maximum":4320,"minimum":10,"type":"integer"},"RunTimeout":{"format":"int32","description":"No. of minutes each test in this job will run for before it times out - omit for default","maximum":4320,"minimum":60,"type":"integer"},"Origin":{"description":"Specifiy where this job is submitted from eg API PartnerX","type":"string"},"SpecifiedMachine":{"description":"Specifiy which machine to run","type":"string"},"Tests":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobTestNewDTO"}}},"example":{"Name":"Example LegoSaaSV15 job","Type":"LegoSaaSV15","Priority":4,"User":"swagger","Note":"Swagger example","MachineCount":1,"Origin":"Portal - Swagger","Tests":[{"Name":"Base","IsBase":true,"Settings":{"BuildLocation":"\\\\builds\\QDrops\\Indexserve\\4964323\\bd5678\\retail\\amd64\\app\\saas"}},{"Name":"Exp1","IsBase":false,"Settings":{"BuildLocation":"\\\\builds\\QDrops\\Indexserve\\4964974\\06006c\\retail\\amd64\\app\\saas"}}]}},"LegoPortal.Data.Polaris.JobTestNewDTO":{"required":["Name","Settings"],"type":"object","properties":{"Name":{"description":"JobTest.Name eg Base, Exp1","type":"string"},"IsBase":{"description":"bool, use this one to decide baseline(true) or experiment(false)","type":"boolean"},"Settings":{"description":"Dictionary<string, string> eg {'QPS': '2000', 'PerfFlag': 'Logman'}","type":"object","additionalProperties":{"type":"string"}}}},"LegoPortal.Data.Polaris.Job":{"required":["Id","Name","Type","Priority","User","DateStart","DateEnd","Status","MachineCount","Origin","Tests"],"type":"object","properties":{"Id":{"description":"Guid","type":"string"},"Name":{"description":"Name/label given by the Job.User","type":"string"},"Type":{"description":"TestType","type":"string"},"Priority":{"format":"int32","description":"Set by the Job.User = [1 to 4] (1 highest - 4 lowest)","type":"integer"},"User":{"description":"User who submitted this job (user alias)","type":"string"},"DateStart":{"format":"date-time","description":"DateTime submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime of last status change","type":"string"},"Status":{"description":"Job.Status = [Ready, OnGoing, Finished]","type":"string"},"Error":{"description":"Any errors returned from running the job","type":"string"},"Note":{"description":"Any notes set by a user - also used for validation status from 3rd parties","type":"string"},"MachineCount":{"format":"int32","description":"No. of machines assigned to run this job [1 to 9]","type":"integer"},"QueueTimeout":{"format":"int32","description":"No. of minutes this job will stay in queue before it expires","type":"integer"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"SpecifiedMachine":{"description":"Specifiy which machine to run","type":"string"},"Tests":{"description":"Every Job will have 1+ JobTest","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobTest"}}}},"LegoPortal.Data.Polaris.JobTest":{"required":["Name","Settings","TestRuns"],"type":"object","properties":{"Name":{"description":"JobTest.Name eg Base, Exp1","type":"string"},"IsBase":{"description":"bool, use this one to decide baseline(true) or experiment(false)","type":"boolean"},"RunTimeout":{"format":"int32","description":"No. of minutes this test will run for before it times out","maximum":4320,"minimum":60,"type":"integer"},"Settings":{"description":"Dictionary<string, string> eg {'QPS': '2000', 'PerfFlag': 'Logman'}","type":"object","additionalProperties":{"type":"string"}},"TestRuns":{"description":"Every JobTest will have 1+ JobTestRun","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobTestRun"}}}},"LegoPortal.Data.Polaris.JobTestRun":{"required":["Machine","DateStart","DateEnd","Status","TestRunResults"],"type":"object","properties":{"Machine":{"description":"MachineName assigned to run this test","type":"string"},"DateStart":{"format":"date-time","description":"DateTime when JobTestRun.Machine has been assigned","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime of last status change","type":"string"},"Status":{"description":"JobTestRun.Status = [Dispatch, Running, Finished, Cancelled, Failed]","type":"string"},"Error":{"description":"Any errors returned from running this TestRun","type":"string"},"TestLogsLocation":{"description":"Path location to the Test Logs folder","type":"string"},"TestResultsLocation":{"description":"Path location to the Test Results folder","type":"string"},"TestRunResults":{"description":"Every successful JobTestRun will have 1+ JobTestRunResults","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobTestRunResult"}}}},"LegoPortal.Data.Polaris.JobTestRunResult":{"required":["Name","Counters"],"type":"object","properties":{"Name":{"description":"JobTestRunResult.Name - this is usually the QPS","type":"string"},"Counters":{"description":"Dictionary<string, decimal?> eg {'CPU': 52.536323, 'RAM': 67.232132}","type":"object","additionalProperties":{"format":"double","type":"number"}}}},"LegoPortal.Data.Polaris.JobUpdateDTO":{"required":["Note"],"type":"object","properties":{"Note":{"description":"Update the note for thie job eg tags, validation status from 3rd parties","type":"string"}}},"LegoPortal.Data.Polaris.JobCancelDTO":{"required":["User"],"type":"object","properties":{"User":{"description":"User alias who is cancelling the job","type":"string"}}},"LegoPortal.Data.Polaris.TestTypeSettingUpdateDTO":{"required":["Value","User"],"type":"object","properties":{"Value":{"description":"Value for the setting","type":"string"},"User":{"description":"User or service that is updating the setting","type":"string"}}},"LegoPortal.Data.Polaris.TestTypeBasic":{"required":["Id","TaskType","MachineType","MachineCount","EnvType","SlaverType","Owner","IsEnabled","EnableFrozen"],"type":"object","properties":{"Id":{"pattern":"^\\S*$","type":"string"},"TaskType":{"type":"string"},"MachineType":{"type":"string"},"MachineCount":{"format":"int32","maximum":9,"minimum":1,"type":"integer"},"EnvType":{"type":"string"},"SlaverType":{"type":"string"},"Owner":{"type":"string"},"Group":{"type":"string"},"IsEnabled":{"type":"boolean"},"EnableFrozen":{"type":"boolean"},"ClientSettingConfig":{"type":"string"},"ClientResultConfig":{"type":"string"},"QueueTimeout":{"format":"int32","type":"integer"},"RunTimeout":{"format":"int32","type":"integer"}}},"LegoPortal.Data.Polaris.PolarisBoxFetchJobResponseDTO":{"required":["TestId","CaseConfig","CustomerSettings","ErrorInfo"],"type":"object","properties":{"TestId":{"type":"string"},"CaseConfig":{"type":"string"},"CustomerSettings":{"type":"object","additionalProperties":{"type":"string"}},"ErrorInfo":{"type":"object","additionalProperties":{"type":"string"}}}},"LegoPortal.Data.Polaris.PolarisBoxSubmitResultDTO":{"required":["TestResult","TestId","MachineName","ErrorInfo","ResultSet"],"type":"object","properties":{"TestResult":{"description":"Indicate whether the test is passed and contains result in this request","type":"boolean"},"TestId":{"type":"string"},"MachineName":{"type":"string"},"IterValue":{"type":"string"},"ResultString":{"type":"string"},"ErrorInfo":{"type":"object","additionalProperties":{"type":"string"}},"ResultSet":{"type":"object","additionalProperties":{"format":"double","type":"number"}}}},"LegoPortal.Data.Polaris.PolarisTipFetchJobResponseDTO":{"required":["MachineName","HasRequest","JobSetting","RunSettingList"],"type":"object","properties":{"MachineName":{"type":"string"},"HasRequest":{"type":"boolean"},"JobSetting":{"type":"object","additionalProperties":{"type":"string"}},"RunSettingList":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.RunSetting"}},"ErrorInfo":{"$ref":"#/definitions/LegoPortal.Data.Polaris.ErrorData"}}},"LegoPortal.Data.Polaris.RunSetting":{"required":["IsBase","CustomSetting"],"type":"object","properties":{"IsBase":{"type":"boolean"},"CustomSetting":{"type":"object","additionalProperties":{"type":"string"}}}},"LegoPortal.Data.Polaris.ErrorData":{"type":"object","properties":{"Errors":{"type":"array","items":{"$ref":"#/definitions/System.Collections.Generic.KeyValuePair[System.String,System.String]"}}}},"System.Collections.Generic.KeyValuePair[System.String,System.String]":{"type":"object","properties":{"Key":{"type":"string","readOnly":true},"Value":{"type":"string","readOnly":true}}},"LegoPortal.Data.Polaris.PolarisTipSubmitResultDTO":{"required":["JobName","MachineName","IsSuccess","RunStartDT","RunResults"],"type":"object","properties":{"JobName":{"type":"string"},"MachineName":{"type":"string"},"IsSuccess":{"type":"boolean"},"ErrorMsg":{"type":"string"},"ResultString":{"type":"string"},"RunStartDT":{"format":"date-time","type":"string"},"RunResults":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.RunResult"}}}},"LegoPortal.Data.Polaris.RunResult":{"required":["RunResults"],"type":"object","properties":{"IterValue":{"type":"string"},"RunResults":{"type":"object","additionalProperties":{"format":"double","type":"number"}}}},"LegoPortal.Data.Polaris.PolarisFetchJobResponseDTO":{"required":["JobId","PolarisJobTestDTOs"],"type":"object","properties":{"JobId":{"type":"string"},"PolarisJobTestDTOs":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.PolarisJobTestDTO"}}}},"LegoPortal.Data.Polaris.PolarisJobTestDTO":{"required":["JobTestId","Name","IsBase","CaseConfig","CustomerSettingList"],"type":"object","properties":{"JobTestId":{"format":"int32","type":"integer"},"Name":{"type":"string"},"IsBase":{"type":"boolean"},"CaseConfig":{"type":"string"},"CustomerSettingList":{"type":"object","additionalProperties":{"type":"string"}}}},"System.Web.OData.Query.ODataQueryOptions[LegoPortal.Data.Polaris.JobReport]":{"type":"object","properties":{"IfMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"IfNoneMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Request":{"$ref":"#/definitions/System.Object","readOnly":true},"RawValues":{"$ref":"#/definitions/System.Web.OData.Query.ODataRawQueryOptions","readOnly":true},"SelectExpand":{"$ref":"#/definitions/System.Web.OData.Query.SelectExpandQueryOption","readOnly":true},"Filter":{"$ref":"#/definitions/System.Web.OData.Query.FilterQueryOption","readOnly":true},"OrderBy":{"$ref":"#/definitions/System.Web.OData.Query.OrderByQueryOption","readOnly":true},"Skip":{"$ref":"#/definitions/System.Web.OData.Query.SkipQueryOption","readOnly":true},"Top":{"$ref":"#/definitions/System.Web.OData.Query.TopQueryOption","readOnly":true},"Count":{"$ref":"#/definitions/System.Web.OData.Query.CountQueryOption","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.ODataQueryValidator"}}},"System.Web.OData.PageResult[LegoPortal.Data.Polaris.JobReport]":{"type":"object","properties":{"Items":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.Polaris.JobReport"}},"NextPageLink":{"type":"string"},"Count":{"format":"int64","type":"integer"}}},"LegoPortal.Data.Polaris.JobReport":{"required":["Id","Guid","Type","Name","User","Priority","JobStatus","MachineCount","Origin","JobStart","JobEnd"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"Guid":{"description":"Public Id","type":"string"},"Type":{"description":"TestType","type":"string"},"Name":{"description":"Name/label given by the Job.User","type":"string"},"User":{"description":"User who submitted this job (user alias)","type":"string"},"Priority":{"format":"int32","description":"Set by the Job.User = [1 to 4] (1 highest - 4 lowest)","type":"integer"},"JobStatus":{"description":"Job Status = [Ready, OnGoing, Finished]","type":"string"},"Error":{"description":"Any errors returned from running the job","type":"string"},"MachineCount":{"format":"int32","description":"No. of machines assigned to run this job [1 to 9]","type":"integer"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"JobStart":{"format":"date-time","description":"DateTime Job submitted","type":"string"},"JobEnd":{"format":"date-time","description":"DateTime of last Job status change","type":"string"},"TestsTotal":{"format":"int32","description":"Total number of tests","type":"integer"},"TestsStart":{"format":"date-time","description":"Earliest start time of all the tests","type":"string"},"TestsEnd":{"format":"date-time","description":"Latest end time of all the tests","type":"string"},"RunsTotal":{"format":"int32","description":"Total number of runs","type":"integer"},"RunsStatusSucceeded":{"format":"int32","description":"Total number of runs with Succeeded status","type":"integer"},"RunsStatusFailed":{"format":"int32","description":"Total number of runs with Failed status","type":"integer"},"RunsStatusCancelled":{"format":"int32","description":"Total number of runs with Cancelled status","type":"integer"},"RunsStatusRunning":{"format":"int32","description":"Total number of runs with Running status","type":"integer"},"RunsStatusDispatch":{"format":"int32","description":"Total number of runs with Dispatch status","type":"integer"}}},"System.Web.OData.Query.ODataQueryOptions[LegoPortal.Data.QM.TaskBasic]":{"type":"object","properties":{"IfMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"IfNoneMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Request":{"$ref":"#/definitions/System.Object","readOnly":true},"RawValues":{"$ref":"#/definitions/System.Web.OData.Query.ODataRawQueryOptions","readOnly":true},"SelectExpand":{"$ref":"#/definitions/System.Web.OData.Query.SelectExpandQueryOption","readOnly":true},"Filter":{"$ref":"#/definitions/System.Web.OData.Query.FilterQueryOption","readOnly":true},"OrderBy":{"$ref":"#/definitions/System.Web.OData.Query.OrderByQueryOption","readOnly":true},"Skip":{"$ref":"#/definitions/System.Web.OData.Query.SkipQueryOption","readOnly":true},"Top":{"$ref":"#/definitions/System.Web.OData.Query.TopQueryOption","readOnly":true},"Count":{"$ref":"#/definitions/System.Web.OData.Query.CountQueryOption","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.ODataQueryValidator"}}},"System.Web.OData.PageResult[LegoPortal.Data.QM.TaskBasic]":{"type":"object","properties":{"Items":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.TaskBasic"}},"NextPageLink":{"type":"string"},"Count":{"format":"int64","type":"integer"}}},"LegoPortal.Data.QM.TaskBasic":{"required":["Id","Guid","Name","Schedule","User","BuildBase","BuildExp","DateStart","Status","Origin"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"Guid":{"description":"Public Id","type":"string"},"Name":{"description":"Job description or title","type":"string"},"Schedule":{"description":"[Daily, Weekly, OnDemand]","type":"string"},"ScheduleGroup":{"description":"Only for Daily, Weekly (eg IndexServe, xCache etc...)","type":"string"},"User":{"description":"User who submitted this Task (user alias)","type":"string"},"BuildBase":{"description":"Build location used for Baseline","type":"string"},"BuildExp":{"description":"Build location used for Experiment","type":"string"},"DateStart":{"format":"date-time","description":"DateTime Task was submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime Task ended","type":"string"},"Status":{"description":"Status [OnGoing, Finished]","type":"string"},"EndState":{"description":"[Error, Cancelled, Timedout] or null if ok","type":"string"},"Info":{"description":"Any error messages or reason for Qualification fail","type":"string"},"QPass":{"description":"QualityPass - whether this Task has passed Qualification","type":"boolean"},"Origin":{"description":"Where the Task was submitted from eg API PartnerX or Portal","type":"string"}}},"LegoPortal.Data.QM.TaskNewDTO":{"required":["Name","User","Schedule","BuildLocationBase","BuildLocationExp","Origin"],"type":"object","properties":{"Name":{"description":"Name/label this Task","type":"string"},"User":{"description":"User/service alias who is submitting this Task","type":"string"},"Schedule":{"description":"Mainly for QM jobs [Daily, Weekly, OnDemand]","type":"string"},"OnDemandSchedule":{"description":"Manually trigger a scheduled task","type":"string"},"ScheduleGroup":{"description":"Required for Daily and Weekly Schedule","type":"string"},"BuildLocationBase":{"description":"Build location path to be used for Baseline","type":"string"},"BuildLocationExp":{"description":"Build location path to be used for Experiment","type":"string"},"Origin":{"description":"Specifiy where this job is submitted from eg API PartnerX","type":"string"},"Jobs":{"description":"List of Jobs to be included in this Task - only required for OnDemand Schedule","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.TaskJobDTO"}},"Monitors":{"description":"List of Monitors to be included in this Task - only used by Daily Schedule","type":"array","items":{"type":"string"}}}},"LegoPortal.Data.QM.TaskJobDTO":{"required":["Service","TestType"],"type":"object","properties":{"Service":{"description":"The Service that the TestType belongs to eg Polaris, Draco etc... use LegoPortal.Data.QM.BackendType","type":"string"},"TestType":{"description":"The TestType that is on the Service","type":"string"}}},"LegoPortal.Data.QM.Task":{"required":["Id","Guid","Name","Schedule","User","BuildBase","BuildExp","DateStart","Status","Origin"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"Guid":{"description":"Public Id","type":"string"},"Name":{"description":"Job description or title","type":"string"},"Schedule":{"description":"[Daily, Weekly, OnDemand]","type":"string"},"ScheduleGroup":{"description":"Only for Daily, Weekly (eg IndexServe, xCache etc...)","type":"string"},"User":{"description":"User who submitted this Task (user alias)","type":"string"},"BuildBase":{"description":"Build location used for Baseline","type":"string"},"BuildExp":{"description":"Build location used for Experiment","type":"string"},"DateStart":{"format":"date-time","description":"DateTime Task was submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime Task ended","type":"string"},"Status":{"description":"Status [OnGoing, Finished]","type":"string"},"EndState":{"description":"[Error, Cancelled, Timedout] or null if ok","type":"string"},"Info":{"description":"Any error messages or reason for Qualification fail","type":"string"},"QPass":{"description":"QualityPass - whether this Task has passed Qualification","type":"boolean"},"Origin":{"description":"Where the Task was submitted from eg API PartnerX or Portal","type":"string"},"Jobs":{"description":"List of all Jobs belonging to this Task","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.Job"}}}},"LegoPortal.Data.QM.Job":{"required":["Id","Guid","Schedule","Name","BackendProxy","BackendTestType","User","DateStart","Status","Origin","JobTestBase"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"Guid":{"description":"Public Id","type":"string"},"TaskId":{"format":"int32","description":"Task Internal Id if this job belongs to one","type":"integer"},"TestIdBase":{"format":"int32","description":"Test Base Internal Id","type":"integer"},"TestIdExp":{"format":"int32","description":"Test Exp Internal Id","type":"integer"},"BuildBase":{"description":"Build location used for Baseline - not present for non-QM jobs","type":"string"},"BuildExp":{"description":"Build location used for Experiment - not present for non-QM jobs","type":"string"},"Schedule":{"description":"[Daily, Weekly, Rolling, OnDemand]","type":"string"},"ScheduleGroup":{"description":"Only for Rolling, Daily, Weekly (eg IndexServe, xCache etc...)","type":"string"},"Name":{"description":"Job description or title","type":"string"},"BackendProxy":{"description":"ProxyId used for Backend","type":"string"},"BackendTestType":{"description":"Backend TestType","type":"string"},"User":{"description":"User who submitted the job/test (user alias)","type":"string"},"DateStart":{"format":"date-time","description":"DateTime job was submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime job ended","type":"string"},"Status":{"description":"Status [Ready, OnGoing, Finished]","type":"string"},"EndState":{"description":"[Error, Cancelled, Timedout] or null if ok","type":"string"},"Info":{"description":"Any error messages or reason for Qualification fail","type":"string"},"QStatus":{"description":"Qualification Status [Pass, Fail, ForcePass]","type":"string"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"ErrorCategory":{"description":"Error category for the job","type":"string"},"MaxRetryCount":{"format":"int32","description":"Max auto retry count sent from job submitter","type":"integer"},"JobTestBase":{"$ref":"#/definitions/LegoPortal.Data.QM.JobTest","description":"Baseline Test"},"JobTestExp":{"$ref":"#/definitions/LegoPortal.Data.QM.JobTest","description":"Experiment Test"},"TestIdBaseRuns":{"description":"List of Baseline Test Internal Ids of previously failed tests","type":"array","items":{"format":"int32","type":"integer"}},"TestIdExpRuns":{"description":"List of Experiment Test Internal Ids of previously failed tests","type":"array","items":{"format":"int32","type":"integer"}},"JobTestsBase":{"description":"List of previously failed Baseline Tests","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.JobTest"}},"JobTestsExp":{"description":"List of previously failed Experiment Tests","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.JobTest"}},"Job_JobTest":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.Job_JobTest"}},"JobTestsMap":{"description":"List of previously failed Tests, Map[currentTestId, failedTest]","type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.JobTest"}}}}},"LegoPortal.Data.QM.JobTest":{"required":["Id","BackendId","BackendProxy","BackendTestType","Name","User","DateStart","Status"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"BackendId":{"description":"Backend Id (usually a guid)","type":"string"},"BackendProxy":{"description":"ProxyId used for Backend","type":"string"},"BackendTestType":{"description":"Backend TestType","type":"string"},"Name":{"description":"Test description or title","type":"string"},"User":{"description":"User who submitted the job/test (user alias)","type":"string"},"Build":{"description":"Build location used for this test - not present for tests with both Base and Exp in one test","type":"string"},"DateStart":{"format":"date-time","description":"DateTime test was submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime test ended","type":"string"},"Status":{"description":"Status [OnGoing, Finished]","type":"string"},"EndState":{"description":"[Error, Cancelled, Timedout, Failed] or null if ok","type":"string"},"Info":{"description":"Any errors or information for this test","type":"string"},"QPass":{"description":"QualityPass - whether this test is considered an acceptable run","type":"boolean"},"ErrorCategory":{"description":"Error category for the jobTest","type":"string"}}},"LegoPortal.Data.QM.Job_JobTest":{"required":["Id","JobId","JobTestId"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"JobId":{"format":"int32","description":"","type":"integer"},"JobTestId":{"format":"int32","description":"","type":"integer"},"Name":{"type":"string"},"JobTestIdRuns":{"description":"","type":"array","items":{"format":"int32","type":"integer"}},"JobTest":{"$ref":"#/definitions/LegoPortal.Data.QM.JobTest"}}},"LegoPortal.Data.QM.TaskAddJobsDTO":{"required":["User","BuildLocationBase","BuildLocationExp","Origin","Jobs"],"type":"object","properties":{"User":{"description":"User/service alias who is submitting this job","type":"string"},"BuildLocationBase":{"description":"Build location path to be used for Baseline","type":"string"},"BuildLocationExp":{"description":"Build location path to be used for Experiment","type":"string"},"Origin":{"description":"Specifiy where this job is submitted from eg API PartnerX","type":"string"},"Jobs":{"description":"List of Jobs to be included in this Task - only required for OnDemand Schedule","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.TaskJobDTO"}}}},"System.Web.OData.Query.ODataQueryOptions[LegoPortal.Data.QM.JobBasic]":{"type":"object","properties":{"IfMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"IfNoneMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Request":{"$ref":"#/definitions/System.Object","readOnly":true},"RawValues":{"$ref":"#/definitions/System.Web.OData.Query.ODataRawQueryOptions","readOnly":true},"SelectExpand":{"$ref":"#/definitions/System.Web.OData.Query.SelectExpandQueryOption","readOnly":true},"Filter":{"$ref":"#/definitions/System.Web.OData.Query.FilterQueryOption","readOnly":true},"OrderBy":{"$ref":"#/definitions/System.Web.OData.Query.OrderByQueryOption","readOnly":true},"Skip":{"$ref":"#/definitions/System.Web.OData.Query.SkipQueryOption","readOnly":true},"Top":{"$ref":"#/definitions/System.Web.OData.Query.TopQueryOption","readOnly":true},"Count":{"$ref":"#/definitions/System.Web.OData.Query.CountQueryOption","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.ODataQueryValidator"}}},"System.Web.OData.PageResult[LegoPortal.Data.QM.JobBasic]":{"type":"object","properties":{"Items":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.JobBasic"}},"NextPageLink":{"type":"string"},"Count":{"format":"int64","type":"integer"}}},"LegoPortal.Data.QM.JobBasic":{"required":["Id","Guid","Schedule","Name","BackendProxy","BackendTestType","User","DateStart","Status","Origin"],"type":"object","properties":{"Id":{"format":"int32","description":"Internal Id","type":"integer"},"Guid":{"description":"Public Id","type":"string"},"TaskId":{"format":"int32","description":"Task Internal Id if this job belongs to one","type":"integer"},"TestIdBase":{"format":"int32","description":"Test Base Internal Id","type":"integer"},"TestIdExp":{"format":"int32","description":"Test Exp Internal Id","type":"integer"},"BuildBase":{"description":"Build location used for Baseline - not present for non-QM jobs","type":"string"},"BuildExp":{"description":"Build location used for Experiment - not present for non-QM jobs","type":"string"},"Schedule":{"description":"[Daily, Weekly, Rolling, OnDemand]","type":"string"},"ScheduleGroup":{"description":"Only for Rolling, Daily, Weekly (eg IndexServe, xCache etc...)","type":"string"},"Name":{"description":"Job description or title","type":"string"},"BackendProxy":{"description":"ProxyId used for Backend","type":"string"},"BackendTestType":{"description":"Backend TestType","type":"string"},"User":{"description":"User who submitted the job/test (user alias)","type":"string"},"DateStart":{"format":"date-time","description":"DateTime job was submitted","type":"string"},"DateEnd":{"format":"date-time","description":"DateTime job ended","type":"string"},"Status":{"description":"Status [Ready, OnGoing, Finished]","type":"string"},"EndState":{"description":"[Error, Cancelled, Timedout] or null if ok","type":"string"},"Info":{"description":"Any error messages or reason for Qualification fail","type":"string"},"QStatus":{"description":"Qualification Status [Pass, Fail, ForcePass]","type":"string"},"TestIdBaseRuns":{"description":"List of Baseline Test Internal Ids of previously failed tests","type":"string"},"TestIdExpRuns":{"description":"List of Experiment Test Internal Ids of previously failed tests","type":"string"},"Origin":{"description":"Where the job was submitted from eg API PartnerX or Portal","type":"string"},"ErrorCategory":{"description":"Error category for the job","type":"string"},"MaxRetryCount":{"format":"int32","description":"Max auto retry count sent from job submitter","type":"integer"}}},"LegoPortal.Data.QM.JobNewDTO":{"required":["Service","TestType","Name","User","Origin","Schedule"],"type":"object","properties":{"Service":{"description":"The Service that the TestType belongs to eg Polaris, Draco etc... use LegoPortal.Data.QM.BackendType","type":"string"},"TestType":{"description":"The TestType that is on the Service","type":"string"},"Name":{"description":"Name/label this Job","type":"string"},"User":{"description":"User/service alias who is submitting this job","type":"string"},"Origin":{"description":"Specifiy where this job is submitted from eg API PartnerX","type":"string"},"Schedule":{"description":"Mainly for QM jobs (Rolling or OnDemand) - external jobs from partners should use OnDemand","type":"string"},"ScheduleGroup":{"description":"Required for Rolling Schedule only","type":"string"},"BuildLocationBase":{"description":"Build location path to be used for Baseline - required for Schedule Rolling","type":"string"},"BuildLocationExp":{"description":"Build location path to be used for Experiment - required for Schedule Rolling","type":"string"},"SettingsJob":{"description":"Job settings to be passed to the Service (mainly for partners) - Dictionary<string, string> eg {'QueueTimeout': '60', 'MachineCount': '3'}","type":"object","additionalProperties":{"type":"string"}},"SettingsBase":{"description":"Baseline Test settings to be passed to the Service (mainly for partners) - Dictionary<string, string> eg {'QPS': '2000'}","type":"object","additionalProperties":{"type":"string"}},"SettingsExp":{"description":"Experiment Test settings to be passed to the Service (mainly for partners) - Dictionary<string, string> eg {'QPS': '2400'}","type":"object","additionalProperties":{"type":"string"}}}},"LegoPortal.Data.QM.BackendJobResult":{"required":["Status","EndState"],"type":"object","properties":{"Status":{"description":"Status [Ready, OnGoing, Finished]","type":"string"},"EndState":{"description":"EndState [null (success), Error, Cancelled, Timedout, Failed]","type":"string"},"Info":{"description":"Any errors or information for this test","type":"string"},"Tests":{"description":"Ordered lists of Tests (if more than one Test then first Test will be Baseline)","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.BackendJobTest"}}}},"LegoPortal.Data.QM.BackendJobTest":{"required":["Name","Runs"],"type":"object","properties":{"Name":{"description":"Name for this test (usually, Base or Exp)","type":"string"},"Status":{"description":"Status [Ready, OnGoing, Finished]","type":"string"},"Runs":{"description":"Ordered lists of TestRuns","type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.BackendJobTestRun"}}}},"LegoPortal.Data.QM.BackendJobTestRun":{"required":["Name","Counters"],"type":"object","properties":{"Name":{"description":"Name for this Run (usually machine name or Run{X})","type":"string"},"TestLogsLocation":{"description":"Path location to the Backend Test Logs folder","type":"string"},"TestResultsLocation":{"description":"Path location to the Backend Test Results folder","type":"string"},"Counters":{"description":"Counter names and values returned","type":"object","additionalProperties":{"format":"double","type":"number"}}}},"LegoPortal.Data.QM.Build":{"type":"object","properties":{"Id":{"description":"Build ID","type":"string"},"Branch":{"description":"Build Name","type":"string"},"Path":{"description":"Build Path","type":"string"},"Date":{"format":"date-time","description":"Build creation date","type":"string"}}},"System.Web.OData.Query.ODataQueryOptions[LegoPortal.Data.QM.Build]":{"type":"object","properties":{"IfMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"IfNoneMatch":{"$ref":"#/definitions/System.Object","readOnly":true},"Context":{"$ref":"#/definitions/System.Web.OData.ODataQueryContext","readOnly":true},"Request":{"$ref":"#/definitions/System.Object","readOnly":true},"RawValues":{"$ref":"#/definitions/System.Web.OData.Query.ODataRawQueryOptions","readOnly":true},"SelectExpand":{"$ref":"#/definitions/System.Web.OData.Query.SelectExpandQueryOption","readOnly":true},"Filter":{"$ref":"#/definitions/System.Web.OData.Query.FilterQueryOption","readOnly":true},"OrderBy":{"$ref":"#/definitions/System.Web.OData.Query.OrderByQueryOption","readOnly":true},"Skip":{"$ref":"#/definitions/System.Web.OData.Query.SkipQueryOption","readOnly":true},"Top":{"$ref":"#/definitions/System.Web.OData.Query.TopQueryOption","readOnly":true},"Count":{"$ref":"#/definitions/System.Web.OData.Query.CountQueryOption","readOnly":true},"Validator":{"$ref":"#/definitions/System.Web.OData.Query.Validators.ODataQueryValidator"}}},"System.Web.OData.PageResult[LegoPortal.Data.QM.Build]":{"type":"object","properties":{"Items":{"type":"array","items":{"$ref":"#/definitions/LegoPortal.Data.QM.Build"}},"NextPageLink":{"type":"string"},"Count":{"format":"int64","type":"integer"}}}},"tags":[{"name":"Polaris","description":"Single box testing"},{"name":"QM","description":"Qualification Manager"},{"name":"Draco","description":"Bed level testing"}]} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment