GET | /api/GetStations |
---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
/**
* GetStationsRequires active-e Station Reservations Service
*/
@DataContract
public static class GetStationsRequest extends BaseSecureRequest
{
/**
* If sent, only stations at the passed location will be returned.
*/
@DataMember
@ApiMember(DataType="integer", Description="If sent, only stations at the passed location will be returned.", Format="int64", Name="LocationId", ParameterType="query")
public Long LocationId = null;
/**
* If sent, only stations in the passed Station group will be returned
*/
@DataMember
@ApiMember(DataType="integer", Description="If sent, only stations in the passed Station group will be returned", Format="int64", Name="GroupId", ParameterType="query")
public Long GroupId = null;
@DataMember
public Integer Acct = null;
@DataMember
public Boolean GenerateAvailabilityCalendar = null;
/**
* If sent, the availability calendar will be for the next X days
*/
@DataMember
@ApiMember(DataType="integer", Description="If sent, the availability calendar will be for the next X days", Format="int64", Name="AvailabilityCalendarDays", ParameterType="query")
public Integer AvailabilityCalendarDays = null;
/**
* If sent, the availability calendar will be for the sent date only
*/
@DataMember
@ApiMember(DataType="integer", Description="If sent, the availability calendar will be for the sent date only", Format="int64", Name="AvailabilityCalendarDate", ParameterType="query")
public Date AvailabilityCalendarDate = null;
/**
* If sent, the availability calendar will look for available slots of length X minutes. Uses the interval of the station group if not sent.
*/
@DataMember
@ApiMember(DataType="integer", Description="If sent, the availability calendar will look for available slots of length X minutes. Uses the interval of the station group if not sent.", Format="int64", Name="AvailabilityCalendarReservationLength", ParameterType="query")
public Integer AvailabilityCalendarReservationLength = null;
public Long getLocationId() { return LocationId; }
public GetStationsRequest setLocationId(Long value) { this.LocationId = value; return this; }
public Long getGroupId() { return GroupId; }
public GetStationsRequest setGroupId(Long value) { this.GroupId = value; return this; }
public Integer getAcct() { return Acct; }
public GetStationsRequest setAcct(Integer value) { this.Acct = value; return this; }
public Boolean isGenerateAvailabilityCalendar() { return GenerateAvailabilityCalendar; }
public GetStationsRequest setGenerateAvailabilityCalendar(Boolean value) { this.GenerateAvailabilityCalendar = value; return this; }
public Integer getAvailabilityCalendarDays() { return AvailabilityCalendarDays; }
public GetStationsRequest setAvailabilityCalendarDays(Integer value) { this.AvailabilityCalendarDays = value; return this; }
public Date getAvailabilityCalendarDate() { return AvailabilityCalendarDate; }
public GetStationsRequest setAvailabilityCalendarDate(Date value) { this.AvailabilityCalendarDate = value; return this; }
public Integer getAvailabilityCalendarReservationLength() { return AvailabilityCalendarReservationLength; }
public GetStationsRequest setAvailabilityCalendarReservationLength(Integer value) { this.AvailabilityCalendarReservationLength = value; return this; }
}
@DataContract
public static class BaseSecureRequest extends BaseRequest
{
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header")
public String Token = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header")
public String DeviceId = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header")
public String AppId = null;
public String getToken() { return Token; }
public BaseSecureRequest setToken(String value) { this.Token = value; return this; }
public String getDeviceId() { return DeviceId; }
public BaseSecureRequest setDeviceId(String value) { this.DeviceId = value; return this; }
public String getAppId() { return AppId; }
public BaseSecureRequest setAppId(String value) { this.AppId = value; return this; }
}
@DataContract
public static class BaseRequest
{
/**
* This is your AIM API Key provided by Tri-Tech
*/
@DataMember
@ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header")
public String ApiKey = null;
@DataMember
@ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")
public String OAuthToken = null;
public String getApiKey() { return ApiKey; }
public BaseRequest setApiKey(String value) { this.ApiKey = value; return this; }
public String getOAuthToken() { return OAuthToken; }
public BaseRequest setOAuthToken(String value) { this.OAuthToken = value; return this; }
}
@DataContract
public static class GetStationsResponse extends BaseResponse
{
@DataMember
public ArrayList<StationInfo> Stations = null;
public ArrayList<StationInfo> getStations() { return Stations; }
public GetStationsResponse setStations(ArrayList<StationInfo> value) { this.Stations = value; return this; }
}
@DataContract
public static class BaseResponse
{
/**
*
*/
@DataMember
@ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
public BaseResponseResult Status = null;
public BaseResponseResult getStatus() { return Status; }
public BaseResponse setStatus(BaseResponseResult value) { this.Status = value; return this; }
}
@DataContract
public static class BaseResponseResult
{
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
public String StatusCode = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
public String Login = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
public String ErrorCode = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
public String ErrorDisplayText = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
public String ErrorMessage = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
public String DomainName = null;
/**
*
*/
@DataMember
@ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
public String IpAddress = null;
public String getStatusCode() { return StatusCode; }
public BaseResponseResult setStatusCode(String value) { this.StatusCode = value; return this; }
public String getLogin() { return Login; }
public BaseResponseResult setLogin(String value) { this.Login = value; return this; }
public String getErrorCode() { return ErrorCode; }
public BaseResponseResult setErrorCode(String value) { this.ErrorCode = value; return this; }
public String getErrorDisplayText() { return ErrorDisplayText; }
public BaseResponseResult setErrorDisplayText(String value) { this.ErrorDisplayText = value; return this; }
public String getErrorMessage() { return ErrorMessage; }
public BaseResponseResult setErrorMessage(String value) { this.ErrorMessage = value; return this; }
public String getDomainName() { return DomainName; }
public BaseResponseResult setDomainName(String value) { this.DomainName = value; return this; }
public String getIpAddress() { return IpAddress; }
public BaseResponseResult setIpAddress(String value) { this.IpAddress = value; return this; }
}
@DataContract
public static class StationInfo
{
@DataMember
public Long Id = null;
@DataMember
public String Name = null;
@DataMember
public String WebDescription = null;
@DataMember
public Integer MaxUsers = null;
@DataMember
public LocationInfo Location = null;
@DataMember
public String CurrentStatus = null;
@DataMember
public ArrayList<ReservationInfo> Reservations = null;
@DataMember
public ArrayList<Date> AvailabilityCalendar = null;
@DataMember
public String Topic = null;
public Long getId() { return Id; }
public StationInfo setId(Long value) { this.Id = value; return this; }
public String getName() { return Name; }
public StationInfo setName(String value) { this.Name = value; return this; }
public String getWebDescription() { return WebDescription; }
public StationInfo setWebDescription(String value) { this.WebDescription = value; return this; }
public Integer getMaxUsers() { return MaxUsers; }
public StationInfo setMaxUsers(Integer value) { this.MaxUsers = value; return this; }
public LocationInfo getLocation() { return Location; }
public StationInfo setLocation(LocationInfo value) { this.Location = value; return this; }
public String getCurrentStatus() { return CurrentStatus; }
public StationInfo setCurrentStatus(String value) { this.CurrentStatus = value; return this; }
public ArrayList<ReservationInfo> getReservations() { return Reservations; }
public StationInfo setReservations(ArrayList<ReservationInfo> value) { this.Reservations = value; return this; }
public ArrayList<Date> getAvailabilityCalendar() { return AvailabilityCalendar; }
public StationInfo setAvailabilityCalendar(ArrayList<Date> value) { this.AvailabilityCalendar = value; return this; }
public String getTopic() { return Topic; }
public StationInfo setTopic(String value) { this.Topic = value; return this; }
}
@DataContract
public static class LocationInfo
{
@DataMember
public Long Id = null;
@DataMember
public String Desc = null;
@DataMember
public String ShortDesc = null;
@DataMember
public String Region = null;
@DataMember
public BigDecimal Latitude = null;
@DataMember
public BigDecimal Longitude = null;
@DataMember
public String InStorePickup = null;
@DataMember
public Boolean Active = null;
@DataMember
public Integer CashSaleAcct = null;
public Long getId() { return Id; }
public LocationInfo setId(Long value) { this.Id = value; return this; }
public String getDesc() { return Desc; }
public LocationInfo setDesc(String value) { this.Desc = value; return this; }
public String getShortDesc() { return ShortDesc; }
public LocationInfo setShortDesc(String value) { this.ShortDesc = value; return this; }
public String getRegion() { return Region; }
public LocationInfo setRegion(String value) { this.Region = value; return this; }
public BigDecimal getLatitude() { return Latitude; }
public LocationInfo setLatitude(BigDecimal value) { this.Latitude = value; return this; }
public BigDecimal getLongitude() { return Longitude; }
public LocationInfo setLongitude(BigDecimal value) { this.Longitude = value; return this; }
public String getInStorePickup() { return InStorePickup; }
public LocationInfo setInStorePickup(String value) { this.InStorePickup = value; return this; }
public Boolean isActive() { return Active; }
public LocationInfo setActive(Boolean value) { this.Active = value; return this; }
public Integer getCashSaleAcct() { return CashSaleAcct; }
public LocationInfo setCashSaleAcct(Integer value) { this.CashSaleAcct = value; return this; }
}
@DataContract
public static class ReservationInfo
{
@DataMember
public Date Start = null;
@DataMember
public Date End = null;
@DataMember
public Integer CustomerAcct = null;
public Date getStart() { return Start; }
public ReservationInfo setStart(Date value) { this.Start = value; return this; }
public Date getEnd() { return End; }
public ReservationInfo setEnd(Date value) { this.End = value; return this; }
public Integer getCustomerAcct() { return CustomerAcct; }
public ReservationInfo setCustomerAcct(Integer value) { this.CustomerAcct = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /api/GetStations HTTP/1.1 Host: active-ewebservice.biz Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <GetStationsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService"> <Status> <DomainName>String</DomainName> <ErrorCode>String</ErrorCode> <ErrorDisplayText>String</ErrorDisplayText> <ErrorMessage>String</ErrorMessage> <IpAddress>String</IpAddress> <Login>String</Login> <StatusCode>String</StatusCode> </Status> <Stations> <GetStationsResponse.StationInfo> <AvailabilityCalendar xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:dateTime>0001-01-01T00:00:00</d4p1:dateTime> </AvailabilityCalendar> <CurrentStatus>String</CurrentStatus> <Id>0</Id> <Location xmlns:d4p1="http://schemas.datacontract.org/2004/07/AIM"> <d4p1:Active>false</d4p1:Active> <d4p1:CashSaleAcct>0</d4p1:CashSaleAcct> <d4p1:Desc>String</d4p1:Desc> <d4p1:Id>0</d4p1:Id> <d4p1:InStorePickup>String</d4p1:InStorePickup> <d4p1:Latitude>0</d4p1:Latitude> <d4p1:Longitude>0</d4p1:Longitude> <d4p1:Region>String</d4p1:Region> <d4p1:ShortDesc>String</d4p1:ShortDesc> </Location> <MaxUsers>0</MaxUsers> <Name>String</Name> <Reservations> <GetStationsResponse.StationInfo.ReservationInfo> <CustomerAcct>0</CustomerAcct> <End>0001-01-01T00:00:00</End> <Start>0001-01-01T00:00:00</Start> </GetStationsResponse.StationInfo.ReservationInfo> </Reservations> <Topic>String</Topic> <WebDescription>String</WebDescription> </GetStationsResponse.StationInfo> </Stations> </GetStationsResponse>