Billiecart API

<back to all web services

SearchAllAvailableCarsRequest

Requires Authentication
The following routes are available for this service:
GET/cars/available
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    public static class SearchAllAvailableCarsRequest extends SearchOperationTenanted<SearchAllAvailableCarsResponse>
    {
        public Date fromUtc = null;
        public Date toUtc = null;
        
        public Date getFromUtc() { return fromUtc; }
        public SearchAllAvailableCarsRequest setFromUtc(Date value) { this.fromUtc = value; return this; }
        public Date getToUtc() { return toUtc; }
        public SearchAllAvailableCarsRequest setToUtc(Date value) { this.toUtc = value; return this; }
    }

    public static class SearchOperationTenanted<TResponse> extends SearchOperationUnTenanted<TResponse> implements ITenantedRequest
    {
        public String organisationId = null;
        
        public String getOrganisationId() { return organisationId; }
        public SearchOperationTenanted<TResponse> setOrganisationId(String value) { this.organisationId = value; return this; }
    }

    public static class SearchOperationUnTenanted<TResponse> extends GetOperationUnTenanted<TResponse> implements IHasSearchOptions
    {
        public String distinct = null;
        public Integer limit = null;
        public Integer offset = null;
        public String sort = null;
        public String filter = null;
        public String search = null;
        
        public String getDistinct() { return distinct; }
        public SearchOperationUnTenanted<TResponse> setDistinct(String value) { this.distinct = value; return this; }
        public Integer getLimit() { return limit; }
        public SearchOperationUnTenanted<TResponse> setLimit(Integer value) { this.limit = value; return this; }
        public Integer getOffset() { return offset; }
        public SearchOperationUnTenanted<TResponse> setOffset(Integer value) { this.offset = value; return this; }
        public String getSort() { return sort; }
        public SearchOperationUnTenanted<TResponse> setSort(String value) { this.sort = value; return this; }
        public String getFilter() { return filter; }
        public SearchOperationUnTenanted<TResponse> setFilter(String value) { this.filter = value; return this; }
        public String getSearch() { return search; }
        public SearchOperationUnTenanted<TResponse> setSearch(String value) { this.search = value; return this; }
    }

    public static class GetOperationUnTenanted<TResponse> implements IHasGetOptions, IGet
    {
        public String embed = null;
        
        public String getEmbed() { return embed; }
        public GetOperationUnTenanted<TResponse> setEmbed(String value) { this.embed = value; return this; }
    }

    public static class SearchAllAvailableCarsResponse extends SearchOperationResponse
    {
        public ResponseStatus responseStatus = null;
        public ArrayList<Car> cars = null;
        
        public ResponseStatus getResponseStatus() { return responseStatus; }
        public SearchAllAvailableCarsResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
        public ArrayList<Car> getCars() { return cars; }
        public SearchAllAvailableCarsResponse setCars(ArrayList<Car> value) { this.cars = value; return this; }
    }

    public static class SearchOperationResponse
    {
        public SearchMetadata metadata = null;
        
        public SearchMetadata getMetadata() { return metadata; }
        public SearchOperationResponse setMetadata(SearchMetadata value) { this.metadata = value; return this; }
    }

    public static class SearchMetadata
    {
        public Integer total = null;
        public Integer limit = null;
        public Integer offset = null;
        public Sorting sort = null;
        public Filtering filter = null;
        
        public Integer getTotal() { return total; }
        public SearchMetadata setTotal(Integer value) { this.total = value; return this; }
        public Integer getLimit() { return limit; }
        public SearchMetadata setLimit(Integer value) { this.limit = value; return this; }
        public Integer getOffset() { return offset; }
        public SearchMetadata setOffset(Integer value) { this.offset = value; return this; }
        public Sorting getSort() { return sort; }
        public SearchMetadata setSort(Sorting value) { this.sort = value; return this; }
        public Filtering getFilter() { return filter; }
        public SearchMetadata setFilter(Filtering value) { this.filter = value; return this; }
    }

    public static class Sorting
    {
        public String by = null;
        public SortDirection direction = null;
        
        public String getBy() { return by; }
        public Sorting setBy(String value) { this.by = value; return this; }
        public SortDirection getDirection() { return direction; }
        public Sorting setDirection(SortDirection value) { this.direction = value; return this; }
    }

    public static enum SortDirection
    {
        Ascending,
        Descending;
    }

    public static class Filtering
    {
        public ArrayList<String> fields = null;
        public String search = null;
        
        public ArrayList<String> getFields() { return fields; }
        public Filtering setFields(ArrayList<String> value) { this.fields = value; return this; }
        public String getSearch() { return search; }
        public Filtering setSearch(String value) { this.search = value; return this; }
    }

    public static class Car implements IIdentifiableResource
    {
        public CarManufacturer manufacturer = null;
        public CarLicensePlate plate = null;
        public CarOwner owner = null;
        public ArrayList<CarManager> managers = null;
        public String status = null;
        public Boolean altered = null;
        public String id = null;
        
        public CarManufacturer getManufacturer() { return manufacturer; }
        public Car setManufacturer(CarManufacturer value) { this.manufacturer = value; return this; }
        public CarLicensePlate getPlate() { return plate; }
        public Car setPlate(CarLicensePlate value) { this.plate = value; return this; }
        public CarOwner getOwner() { return owner; }
        public Car setOwner(CarOwner value) { this.owner = value; return this; }
        public ArrayList<CarManager> getManagers() { return managers; }
        public Car setManagers(ArrayList<CarManager> value) { this.managers = value; return this; }
        public String getStatus() { return status; }
        public Car setStatus(String value) { this.status = value; return this; }
        public Boolean isAltered() { return altered; }
        public Car setAltered(Boolean value) { this.altered = value; return this; }
        public String getId() { return id; }
        public Car setId(String value) { this.id = value; return this; }
    }

    public static class CarManufacturer
    {
        public Integer year = null;
        public String make = null;
        public String model = null;
        
        public Integer getYear() { return year; }
        public CarManufacturer setYear(Integer value) { this.year = value; return this; }
        public String getMake() { return make; }
        public CarManufacturer setMake(String value) { this.make = value; return this; }
        public String getModel() { return model; }
        public CarManufacturer setModel(String value) { this.model = value; return this; }
    }

    public static class CarLicensePlate
    {
        public String jurisdiction = null;
        public String number = null;
        
        public String getJurisdiction() { return jurisdiction; }
        public CarLicensePlate setJurisdiction(String value) { this.jurisdiction = value; return this; }
        public String getNumber() { return number; }
        public CarLicensePlate setNumber(String value) { this.number = value; return this; }
    }

    public static class CarOwner
    {
        public String id = null;
        
        public String getId() { return id; }
        public CarOwner setId(String value) { this.id = value; return this; }
    }

    public static class CarManager
    {
        public String id = null;
        
        public String getId() { return id; }
        public CarManager setId(String value) { this.id = value; return this; }
    }

}

Java SearchAllAvailableCarsRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /cars/available HTTP/1.1 
Host: staging-api.billiecart.com.au 
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
		}
	},
	cars: 
	[
		{
			manufacturer: 
			{
				year: 0,
				make: String,
				model: String
			},
			plate: 
			{
				jurisdiction: String,
				number: String
			},
			owner: 
			{
				id: String
			},
			managers: 
			[
				{
					id: String
				}
			],
			status: String,
			altered: False,
			id: String
		}
	],
	metadata: 
	{
		total: 0,
		limit: 0,
		offset: 0,
		sort: 
		{
			by: String,
			direction: Ascending
		},
		filter: 
		{
			fields: 
			[
				String
			],
			search: String
		}
	}
}