Reference for http://wsdot.wa.gov/Ferries/API/Vessels/rest/vessellocations?apiaccesscode={APIACCESSCODE}

Url: http://wsdot.wa.gov/Ferries/API/Vessels/rest/vessellocations?apiaccesscode={APIACCESSCODE}

HTTP Method: GET

This operation supports JSONP responses. The callback function can be specified using the "callback" Url query parameter.

Message direction Format Body
Request N/A The Request body is empty.
Response Xml Example,Schema
Response Json Example

The following is an example response Xml body:

<ArrayOfVesselLocationResponse xmlns="http://www.wsdot.wa.gov/ferries/vessels/">
  <VesselLocationResponse>
    <VesselID>2147483647</VesselID>
    <VesselName>String content</VesselName>
    <Mmsi>2147483647</Mmsi>
    <DepartingTerminalID>2147483647</DepartingTerminalID>
    <DepartingTerminalName>String content</DepartingTerminalName>
    <DepartingTerminalAbbrev>String content</DepartingTerminalAbbrev>
    <ArrivingTerminalID>2147483647</ArrivingTerminalID>
    <ArrivingTerminalName>String content</ArrivingTerminalName>
    <ArrivingTerminalAbbrev>String content</ArrivingTerminalAbbrev>
    <Latitude>1.26743233E+15</Latitude>
    <Longitude>1.26743233E+15</Longitude>
    <Speed>1.26743233E+15</Speed>
    <Heading>2147483647</Heading>
    <InService>true</InService>
    <AtDock>true</AtDock>
    <LeftDock>1999-05-31T11:20:00</LeftDock>
    <Eta>1999-05-31T11:20:00</Eta>
    <EtaBasis>String content</EtaBasis>
    <ScheduledDeparture>1999-05-31T11:20:00</ScheduledDeparture>
    <OpRouteAbbrev>
      <string>String content</string>
      <string>String content</string>
    </OpRouteAbbrev>
    <VesselPositionNum>2147483647</VesselPositionNum>
    <SortSeq>2147483647</SortSeq>
    <ManagedBy>WSF</ManagedBy>
    <TimeStamp>1999-05-31T11:20:00</TimeStamp>
    <VesselWatchShutID>2147483647</VesselWatchShutID>
    <VesselWatchShutMsg>String content</VesselWatchShutMsg>
    <VesselWatchShutFlag>String content</VesselWatchShutFlag>
    <VesselWatchStatus>String content</VesselWatchStatus>
    <VesselWatchMsg>String content</VesselWatchMsg>
  </VesselLocationResponse>
  <VesselLocationResponse>
    <VesselID>2147483647</VesselID>
    <VesselName>String content</VesselName>
    <Mmsi>2147483647</Mmsi>
    <DepartingTerminalID>2147483647</DepartingTerminalID>
    <DepartingTerminalName>String content</DepartingTerminalName>
    <DepartingTerminalAbbrev>String content</DepartingTerminalAbbrev>
    <ArrivingTerminalID>2147483647</ArrivingTerminalID>
    <ArrivingTerminalName>String content</ArrivingTerminalName>
    <ArrivingTerminalAbbrev>String content</ArrivingTerminalAbbrev>
    <Latitude>1.26743233E+15</Latitude>
    <Longitude>1.26743233E+15</Longitude>
    <Speed>1.26743233E+15</Speed>
    <Heading>2147483647</Heading>
    <InService>true</InService>
    <AtDock>true</AtDock>
    <LeftDock>1999-05-31T11:20:00</LeftDock>
    <Eta>1999-05-31T11:20:00</Eta>
    <EtaBasis>String content</EtaBasis>
    <ScheduledDeparture>1999-05-31T11:20:00</ScheduledDeparture>
    <OpRouteAbbrev>
      <string>String content</string>
      <string>String content</string>
    </OpRouteAbbrev>
    <VesselPositionNum>2147483647</VesselPositionNum>
    <SortSeq>2147483647</SortSeq>
    <ManagedBy>WSF</ManagedBy>
    <TimeStamp>1999-05-31T11:20:00</TimeStamp>
    <VesselWatchShutID>2147483647</VesselWatchShutID>
    <VesselWatchShutMsg>String content</VesselWatchShutMsg>
    <VesselWatchShutFlag>String content</VesselWatchShutFlag>
    <VesselWatchStatus>String content</VesselWatchStatus>
    <VesselWatchMsg>String content</VesselWatchMsg>
  </VesselLocationResponse>
</ArrayOfVesselLocationResponse>

The following is an example response Json body:

[{
	"VesselID":2147483647,
	"VesselName":"String content",
	"Mmsi":2147483647,
	"DepartingTerminalID":2147483647,
	"DepartingTerminalName":"String content",
	"DepartingTerminalAbbrev":"String content",
	"ArrivingTerminalID":2147483647,
	"ArrivingTerminalName":"String content",
	"ArrivingTerminalAbbrev":"String content",
	"Latitude":1.26743233E+15,
	"Longitude":1.26743233E+15,
	"Speed":1.26743233E+15,
	"Heading":2147483647,
	"InService":true,
	"AtDock":true,
	"LeftDock":"\/Date(928174800000-0700)\/",
	"Eta":"\/Date(928174800000-0700)\/",
	"EtaBasis":"String content",
	"ScheduledDeparture":"\/Date(928174800000-0700)\/",
	"OpRouteAbbrev":["String content"],
	"VesselPositionNum":2147483647,
	"SortSeq":2147483647,
	"ManagedBy":0,
	"TimeStamp":"\/Date(928174800000-0700)\/",
	"VesselWatchShutID":2147483647,
	"VesselWatchShutMsg":"String content",
	"VesselWatchShutFlag":"String content",
	"VesselWatchStatus":"String content",
	"VesselWatchMsg":"String content"
}]

The following is the response Xml Schema:

<xs:schema xmlns:tns="http://www.wsdot.wa.gov/ferries/vessels/" elementFormDefault="qualified" targetNamespace="http://www.wsdot.wa.gov/ferries/vessels/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:complexType name="ArrayOfVesselLocationResponse">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="VesselLocationResponse" nillable="true" type="tns:VesselLocationResponse" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfVesselLocationResponse" nillable="true" type="tns:ArrayOfVesselLocationResponse" />
  <xs:complexType name="VesselLocationResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="VesselID" type="xs:int" />
      <xs:element minOccurs="0" name="VesselName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Mmsi" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="DepartingTerminalID" type="xs:int" />
      <xs:element minOccurs="0" name="DepartingTerminalName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="DepartingTerminalAbbrev" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ArrivingTerminalID" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="ArrivingTerminalName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ArrivingTerminalAbbrev" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Latitude" type="xs:double" />
      <xs:element minOccurs="0" name="Longitude" type="xs:double" />
      <xs:element minOccurs="0" name="Speed" type="xs:double" />
      <xs:element minOccurs="0" name="Heading" type="xs:int" />
      <xs:element minOccurs="0" name="InService" type="xs:boolean" />
      <xs:element minOccurs="0" name="AtDock" type="xs:boolean" />
      <xs:element minOccurs="0" name="LeftDock" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Eta" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="EtaBasis" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ScheduledDeparture" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="OpRouteAbbrev" nillable="true" type="tns:ArrayOfString" />
      <xs:element minOccurs="0" name="VesselPositionNum" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="SortSeq" type="xs:int" />
      <xs:element minOccurs="0" name="ManagedBy" type="tns:VesselManagement" />
      <xs:element minOccurs="0" name="TimeStamp" type="xs:dateTime" />
      <xs:element minOccurs="0" name="VesselWatchShutID" type="xs:int" />
      <xs:element minOccurs="0" name="VesselWatchShutMsg" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VesselWatchShutFlag" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VesselWatchStatus" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VesselWatchMsg" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="VesselLocationResponse" nillable="true" type="tns:VesselLocationResponse" />
  <xs:complexType name="ArrayOfString">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfString" nillable="true" type="tns:ArrayOfString" />
  <xs:simpleType name="VesselManagement">
    <xs:restriction base="xs:string">
      <xs:enumeration value="WSF">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">1</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="KCM">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="VesselManagement" nillable="true" type="tns:VesselManagement" />
</xs:schema>

Additional response Xml Schemas:

<xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="anyType" nillable="true" type="xs:anyType" />
  <xs:element name="anyURI" nillable="true" type="xs:anyURI" />
  <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />
  <xs:element name="boolean" nillable="true" type="xs:boolean" />
  <xs:element name="byte" nillable="true" type="xs:byte" />
  <xs:element name="dateTime" nillable="true" type="xs:dateTime" />
  <xs:element name="decimal" nillable="true" type="xs:decimal" />
  <xs:element name="double" nillable="true" type="xs:double" />
  <xs:element name="float" nillable="true" type="xs:float" />
  <xs:element name="int" nillable="true" type="xs:int" />
  <xs:element name="long" nillable="true" type="xs:long" />
  <xs:element name="QName" nillable="true" type="xs:QName" />
  <xs:element name="short" nillable="true" type="xs:short" />
  <xs:element name="string" nillable="true" type="xs:string" />
  <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />
  <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />
  <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />
  <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />
  <xs:element name="char" nillable="true" type="tns:char" />
  <xs:simpleType name="char">
    <xs:restriction base="xs:int" />
  </xs:simpleType>
  <xs:element name="duration" nillable="true" type="tns:duration" />
  <xs:simpleType name="duration">
    <xs:restriction base="xs:duration">
      <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
      <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
      <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="guid" nillable="true" type="tns:guid" />
  <xs:simpleType name="guid">
    <xs:restriction base="xs:string">
      <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
    </xs:restriction>
  </xs:simpleType>
  <xs:attribute name="FactoryType" type="xs:QName" />
  <xs:attribute name="Id" type="xs:ID" />
  <xs:attribute name="Ref" type="xs:IDREF" />
</xs:schema>

<tns:schema targetNamespace="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.w3.org/2001/XMLSchema">
  <tns:element name="schema">
    <tns:complexType />
  </tns:element>
</tns:schema>