| GET | /jobs |
|---|
import java.math.*
import java.util.*
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*
open class SearchJobsRequest : SearchOperationTenanted<SearchJobsResponse>()
{
var machineId:String? = null
var completed:Boolean? = null
}
open class SearchOperationTenanted<TResponse> : SearchOperationUnTenanted<TResponse>(), ITenantedRequest
{
var organisationId:String? = null
}
open class SearchOperationUnTenanted<TResponse> : GetOperationUnTenanted<TResponse>(), IHasSearchOptions
{
var distinct:String? = null
var limit:Int? = null
var offset:Int? = null
var sort:String? = null
var filter:String? = null
}
open class GetOperationUnTenanted<TResponse> : IHasGetOptions, IGet
{
var embed:String? = null
}
open class SearchJobsResponse : SearchOperationResponse()
{
var responseStatus:ResponseStatus? = null
var jobs:ArrayList<Job> = ArrayList<Job>()
}
open class SearchOperationResponse
{
var metadata:SearchMetadata? = null
}
open class SearchMetadata
{
var total:Int? = null
var limit:Int? = null
var offset:Int? = null
var sort:Sorting? = null
var filter:Filtering? = null
}
open class Sorting
{
@SerializedName("by") var By:String? = null
var direction:SortDirection? = null
}
enum class SortDirection
{
Ascending,
Descending,
}
open class Filtering
{
var fields:ArrayList<String> = ArrayList<String>()
}
open class Job : IIdentifiableResource
{
var machineId:String? = null
var name:String? = null
var totalLayers:Int? = null
var startedAt:Date? = null
var finishedAt:Date? = null
var aborted:Boolean? = null
var id:String? = null
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /jobs HTTP/1.1 Host: staging-api.foundrylab.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
},
jobs:
[
{
machineId: String,
name: String,
totalLayers: 0,
finishedAt: ,
aborted: False,
id: String
}
],
metadata:
{
total: 0,
limit: 0,
offset: 0,
sort:
{
by: String,
direction: Ascending
},
filter:
{
fields:
[
String
]
}
}
}