Requires the role: | manager |
POST | /cars |
---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
public static class CreateCarRequest extends PostOperationTenanted<CreateCarResponse>
{
public Integer year = null;
public String make = null;
public String model = null;
public Integer getYear() { return year; }
public CreateCarRequest setYear(Integer value) { this.year = value; return this; }
public String getMake() { return make; }
public CreateCarRequest setMake(String value) { this.make = value; return this; }
public String getModel() { return model; }
public CreateCarRequest setModel(String value) { this.model = value; return this; }
}
public static class PostOperationTenanted<TResponse> extends PostOperationUnTenanted<TResponse> implements ITenantedRequest
{
public String organisationId = null;
public String getOrganisationId() { return organisationId; }
public PostOperationTenanted<TResponse> setOrganisationId(String value) { this.organisationId = value; return this; }
}
public static class PostOperationUnTenanted<TResponse> implements IPost
{
}
public static class CreateCarResponse
{
public ResponseStatus responseStatus = null;
public Car car = null;
public ResponseStatus getResponseStatus() { return responseStatus; }
public CreateCarResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
public Car getCar() { return car; }
public CreateCarResponse setCar(Car value) { this.car = 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; }
}
}
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.
POST /cars HTTP/1.1
Host: staging-api.billiecart.com.au
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
year: 0,
make: String,
model: String,
organisationId: String
}
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 } }, car: { manufacturer: { year: 0, make: String, model: String }, plate: { jurisdiction: String, number: String }, owner: { id: String }, managers: [ { id: String } ], status: String, altered: False, id: String } }