| 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;
/** @description The OAuthToken token return by AeServices30 */
// @DataMember
// @ApiMember(DataType="string", Description="The OAuthToken token return by AeServices30", IsRequired=true, Name="OAuthToken", ParameterType="Header")
public OAuthToken: string;
/** @description The Device ID of the Mobile Device. Not used for non-mobile devices. */
// @DataMember
// @ApiMember(DataType="string", Description="The Device ID of the Mobile Device. Not used for non-mobile devices.", Name="DeviceId", ParameterType="Header")
public DeviceId: string;
/** @description An identifier for your integration */
// @DataMember
// @ApiMember(DataType="string", Description="An identifier for your integration", IsRequired=true, Name="AppId", ParameterType="Header")
public AppId: string;
public constructor(init?: Partial<BaseRequest>) { (Object as any).assign(this, init); }
}
// @DataContract
export class BaseSecureRequest extends BaseRequest
{
/** @description The Login Token return by the Security API. Required for secured calls. */
// @DataMember
// @ApiMember(DataType="string", Description="The Login Token return by the Security API. Required for secured calls.", Name="Token", ParameterType="Header")
public Token: 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 .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>