GET | /api/GetStations |
---|
// @DataContract
export class BaseRequest
{
/** @description 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 ApiKey: string;
// @DataMember
// @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")
public OAuthToken: string;
public constructor(init?: Partial<BaseRequest>) { (Object as any).assign(this, init); }
}
// @DataContract
export class BaseSecureRequest extends BaseRequest
{
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header")
public Token: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header")
public DeviceId: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header")
public AppId: string;
public constructor(init?: Partial<BaseSecureRequest>) { super(init); (Object as any).assign(this, init); }
}
// @DataContract
export class BaseResponseResult
{
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
public StatusCode: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
public Login: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
public ErrorCode: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
public ErrorDisplayText: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
public ErrorMessage: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
public DomainName: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
public IpAddress: string;
public constructor(init?: Partial<BaseResponseResult>) { (Object as any).assign(this, init); }
}
// @DataContract
export class BaseResponse
{
/** @description */
// @DataMember
// @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
public Status: BaseResponseResult;
public constructor(init?: Partial<BaseResponse>) { (Object as any).assign(this, init); }
}
// @DataContract
export class LocationInfo
{
// @DataMember
public Id: number;
// @DataMember
public Desc: string;
// @DataMember
public ShortDesc: string;
// @DataMember
public Region: string;
// @DataMember
public Latitude: number;
// @DataMember
public Longitude: number;
// @DataMember
public InStorePickup: string;
// @DataMember
public Active: boolean;
// @DataMember
public CashSaleAcct?: number;
public constructor(init?: Partial<LocationInfo>) { (Object as any).assign(this, init); }
}
// @DataContract
export class ReservationInfo
{
// @DataMember
public Start: string;
// @DataMember
public End: string;
// @DataMember
public CustomerAcct?: number;
public constructor(init?: Partial<ReservationInfo>) { (Object as any).assign(this, init); }
}
// @DataContract
export class StationInfo
{
// @DataMember
public Id: number;
// @DataMember
public Name: string;
// @DataMember
public WebDescription: string;
// @DataMember
public MaxUsers: number;
// @DataMember
public Location: LocationInfo;
// @DataMember
public CurrentStatus: string;
// @DataMember
public Reservations: ReservationInfo[];
// @DataMember
public AvailabilityCalendar: string[];
// @DataMember
public Topic: string;
public constructor(init?: Partial<StationInfo>) { (Object as any).assign(this, init); }
}
// @DataContract
export class GetStationsResponse extends BaseResponse
{
// @DataMember
public Stations: StationInfo[];
public constructor(init?: Partial<GetStationsResponse>) { super(init); (Object as any).assign(this, init); }
}
/** @description GetStationsRequires active-e Station Reservations Service */
// @DataContract
export class GetStationsRequest extends BaseSecureRequest
{
/** @description 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 LocationId?: number;
/** @description 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 GroupId?: number;
// @DataMember
public Acct?: number;
// @DataMember
public GenerateAvailabilityCalendar: boolean;
/** @description 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 AvailabilityCalendarDays?: number;
/** @description 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 AvailabilityCalendarDate?: string;
/** @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. */
// @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 AvailabilityCalendarReservationLength?: number;
public constructor(init?: Partial<GetStationsRequest>) { super(init); (Object as any).assign(this, init); }
}
TypeScript GetStationsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
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: text/jsonl
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"Stations":[{"Id":0,"Name":"String","WebDescription":"String","MaxUsers":0,"Location":{"Id":0,"Desc":"String","ShortDesc":"String","Region":"String","Latitude":0,"Longitude":0,"InStorePickup":"String","Active":false,"CashSaleAcct":0},"CurrentStatus":"String","Reservations":[{"CustomerAcct":0}],"AvailabilityCalendar":["0001-01-01T00:00:00.0000000"],"Topic":"String"}],"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}