Reference for http://developers.vietbando.com/V2/service/PartnerPortalService.svc/rest/FindShortestPath

Url: http://developers.vietbando.com/V2/service/PartnerPortalService.svc/rest/FindShortestPath

HTTP Method: POST

Message direction Format Body
Request Xml Example,Schema
Request Json Example
Response Xml Example,Schema
Response Json Example

The following is an example request Xml body:

<FindShortestPathRequest xmlns="http://schemas.datacontract.org/2004/07/PP.Services">
  <AlleyAvoidance>true</AlleyAvoidance>
  <Points>
    <Point>
      <Latitude>1.26743233E+15</Latitude>
      <Longitude>1.26743233E+15</Longitude>
    </Point>
    <Point>
      <Latitude>1.26743233E+15</Latitude>
      <Longitude>1.26743233E+15</Longitude>
    </Point>
  </Points>
  <TransportType>Walk</TransportType>
</FindShortestPathRequest>

The following is an example request Json body:

{
	"AlleyAvoidance":true,
	"Points":[{
		"Latitude":1.26743233E+15,
		"Longitude":1.26743233E+15
	}],
	"TransportType":0
}

The following is an example response Xml body:

<SingleDirectionResult xmlns="http://schemas.datacontract.org/2004/07/Vietbando.MessageType">
  <Error>
    <ExceptionType>String content</ExceptionType>
    <Message>String content</Message>
  </Error>
  <IsSuccess>true</IsSuccess>
  <ResponseTime>1999-05-31T11:20:00</ResponseTime>
  <Value>
    <FullPath xmlns="http://schemas.datacontract.org/2004/07/PP.Services">
      <ArrayOfArrayOfdouble xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <ArrayOfdouble>
          <double>1.26743233E+15</double>
          <double>1.26743233E+15</double>
        </ArrayOfdouble>
        <ArrayOfdouble>
          <double>1.26743233E+15</double>
          <double>1.26743233E+15</double>
        </ArrayOfdouble>
      </ArrayOfArrayOfdouble>
      <ArrayOfArrayOfdouble xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <ArrayOfdouble>
          <double>1.26743233E+15</double>
          <double>1.26743233E+15</double>
        </ArrayOfdouble>
        <ArrayOfdouble>
          <double>1.26743233E+15</double>
          <double>1.26743233E+15</double>
        </ArrayOfdouble>
      </ArrayOfArrayOfdouble>
    </FullPath>
    <PathLength xmlns="http://schemas.datacontract.org/2004/07/PP.Services">1.26743233E+15</PathLength>
    <RealPlaces xmlns="http://schemas.datacontract.org/2004/07/PP.Services">
      <double xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">1.26743233E+15</double>
      <double xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">1.26743233E+15</double>
    </RealPlaces>
    <ResultScript xmlns="http://schemas.datacontract.org/2004/07/PP.Services">
      <Leg xmlns="http://schemas.datacontract.org/2004/07/Vietbando.Web.Library">
        <ShortestPathLeg>
          <Step>
            <ShortestPathLegStep>
              <X>1.26743233E+15</X>
              <Y>1.26743233E+15</Y>
              <angle>2147483647</angle>
              <dir>String content</dir>
              <len>1.26743233E+15</len>
              <name>String content</name>
              <start>2147483647</start>
            </ShortestPathLegStep>
            <ShortestPathLegStep>
              <X>1.26743233E+15</X>
              <Y>1.26743233E+15</Y>
              <angle>2147483647</angle>
              <dir>String content</dir>
              <len>1.26743233E+15</len>
              <name>String content</name>
              <start>2147483647</start>
            </ShortestPathLegStep>
          </Step>
          <endX>1.26743233E+15</endX>
          <endY>1.26743233E+15</endY>
          <found>true</found>
          <len>1.26743233E+15</len>
          <startX>1.26743233E+15</startX>
          <startY>1.26743233E+15</startY>
        </ShortestPathLeg>
        <ShortestPathLeg>
          <Step>
            <ShortestPathLegStep>
              <X>1.26743233E+15</X>
              <Y>1.26743233E+15</Y>
              <angle>2147483647</angle>
              <dir>String content</dir>
              <len>1.26743233E+15</len>
              <name>String content</name>
              <start>2147483647</start>
            </ShortestPathLegStep>
            <ShortestPathLegStep>
              <X>1.26743233E+15</X>
              <Y>1.26743233E+15</Y>
              <angle>2147483647</angle>
              <dir>String content</dir>
              <len>1.26743233E+15</len>
              <name>String content</name>
              <start>2147483647</start>
            </ShortestPathLegStep>
          </Step>
          <endX>1.26743233E+15</endX>
          <endY>1.26743233E+15</endY>
          <found>true</found>
          <len>1.26743233E+15</len>
          <startX>1.26743233E+15</startX>
          <startY>1.26743233E+15</startY>
        </ShortestPathLeg>
      </Leg>
      <len xmlns="http://schemas.datacontract.org/2004/07/Vietbando.Web.Library">1.26743233E+15</len>
    </ResultScript>
    <Segments xmlns="http://schemas.datacontract.org/2004/07/PP.Services">
      <int xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">2147483647</int>
      <int xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">2147483647</int>
    </Segments>
  </Value>
</SingleDirectionResult>

The following is an example response Json body:

{
	"Error":{
		"ExceptionType":"String content",
		"Message":"String content"
	},
	"IsSuccess":true,
	"ResponseTime":"\/Date(928124400000+0700)\/",
	"Value":{
		"FullPath":[[[1.26743233E+15]]],
		"PathLength":1.26743233E+15,
		"RealPlaces":[1.26743233E+15],
		"ResultScript":{
			"Leg":[{
				"Step":[{
					"X":1.26743233E+15,
					"Y":1.26743233E+15,
					"angle":2147483647,
					"dir":"String content",
					"len":1.26743233E+15,
					"name":"String content",
					"start":2147483647
				}],
				"endX":1.26743233E+15,
				"endY":1.26743233E+15,
				"found":true,
				"len":1.26743233E+15,
				"startX":1.26743233E+15,
				"startY":1.26743233E+15
			}],
			"len":1.26743233E+15
		},
		"Segments":[2147483647]
	}
}

The following is the request Xml Schema:

<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/PP.Services" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/PP.Services" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:complexType name="FindShortestPathRequest">
    <xs:sequence>
      <xs:element minOccurs="0" name="AlleyAvoidance" type="xs:boolean" />
      <xs:element minOccurs="0" name="Points" nillable="true" type="tns:ArrayOfPoint" />
      <xs:element minOccurs="0" name="TransportType" type="tns:TransportType" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="FindShortestPathRequest" nillable="true" type="tns:FindShortestPathRequest" />
  <xs:complexType name="ArrayOfPoint">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Point" nillable="true" type="tns:Point" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfPoint" nillable="true" type="tns:ArrayOfPoint" />
  <xs:complexType name="Point">
    <xs:sequence>
      <xs:element minOccurs="0" name="Latitude" type="xs:double" />
      <xs:element minOccurs="0" name="Longitude" type="xs:double" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Point" nillable="true" type="tns:Point" />
  <xs:simpleType name="TransportType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Walk" />
      <xs:enumeration value="Bike" />
      <xs:enumeration value="Car" />
      <xs:enumeration value="Truck" />
      <xs:enumeration value="Emergency">
        <xs:annotation>
          <xs:appinfo>
            <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">5</EnumerationValue>
          </xs:appinfo>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TransportType" nillable="true" type="tns:TransportType" />
</xs:schema>

Additional request 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>

The following is the response Xml Schema:

<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Vietbando.MessageType" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Vietbando.MessageType" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.datacontract.org/2004/07/PP.Services" />
  <xs:complexType name="SingleDirectionResult">
    <xs:annotation>
      <xs:appinfo>
        <GenericType Name="Single{0}" Namespace="http://schemas.datacontract.org/2004/07/Vietbando.MessageType" xmlns="http://schemas.microsoft.com/2003/10/Serialization/">
          <GenericParameter Name="DirectionResult" Namespace="http://schemas.datacontract.org/2004/07/PP.Services" />
        </GenericType>
      </xs:appinfo>
    </xs:annotation>
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Response">
        <xs:sequence>
          <xs:element minOccurs="0" name="Value" nillable="true" xmlns:q1="http://schemas.datacontract.org/2004/07/PP.Services" type="q1:DirectionResult" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SingleDirectionResult" nillable="true" type="tns:SingleDirectionResult" />
  <xs:complexType name="Response">
    <xs:sequence>
      <xs:element minOccurs="0" name="Error" nillable="true" type="tns:Error" />
      <xs:element minOccurs="0" name="IsSuccess" type="xs:boolean" />
      <xs:element minOccurs="0" name="ResponseTime" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Response" nillable="true" type="tns:Response" />
  <xs:complexType name="Error">
    <xs:sequence>
      <xs:element minOccurs="0" name="ExceptionType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Error" nillable="true" type="tns:Error" />
</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>

<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/PP.Services" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/PP.Services" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:import namespace="http://schemas.datacontract.org/2004/07/Vietbando.Web.Library" />
  <xs:complexType name="DirectionResult">
    <xs:sequence>
      <xs:element minOccurs="0" name="FullPath" nillable="true" xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q1:ArrayOfArrayOfArrayOfdouble" />
      <xs:element minOccurs="0" name="PathLength" type="xs:double" />
      <xs:element minOccurs="0" name="RealPlaces" nillable="true" xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q2:ArrayOfdouble" />
      <xs:element minOccurs="0" name="ResultScript" nillable="true" xmlns:q3="http://schemas.datacontract.org/2004/07/Vietbando.Web.Library" type="q3:ShortestPath" />
      <xs:element minOccurs="0" name="Segments" nillable="true" xmlns:q4="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q4:ArrayOfint" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="DirectionResult" nillable="true" type="tns:DirectionResult" />
</xs:schema>

<xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/Arrays" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ArrayOfArrayOfArrayOfdouble">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfArrayOfdouble" nillable="true" type="tns:ArrayOfArrayOfdouble" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfArrayOfArrayOfdouble" nillable="true" type="tns:ArrayOfArrayOfArrayOfdouble" />
  <xs:complexType name="ArrayOfArrayOfdouble">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfdouble" nillable="true" type="tns:ArrayOfdouble" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfArrayOfdouble" nillable="true" type="tns:ArrayOfArrayOfdouble" />
  <xs:complexType name="ArrayOfdouble">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="double" type="xs:double" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfdouble" nillable="true" type="tns:ArrayOfdouble" />
  <xs:complexType name="ArrayOfint">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="int" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfint" nillable="true" type="tns:ArrayOfint" />
</xs:schema>

<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Vietbando.Web.Library" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Vietbando.Web.Library" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ShortestPath">
    <xs:sequence>
      <xs:element minOccurs="0" name="Leg" nillable="true" type="tns:ArrayOfShortestPathLeg" />
      <xs:element minOccurs="0" name="len" type="xs:double" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ShortestPath" nillable="true" type="tns:ShortestPath" />
  <xs:complexType name="ArrayOfShortestPathLeg">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ShortestPathLeg" nillable="true" type="tns:ShortestPathLeg" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfShortestPathLeg" nillable="true" type="tns:ArrayOfShortestPathLeg" />
  <xs:complexType name="ShortestPathLeg">
    <xs:sequence>
      <xs:element minOccurs="0" name="Step" nillable="true" type="tns:ArrayOfShortestPathLegStep" />
      <xs:element minOccurs="0" name="endX" type="xs:double" />
      <xs:element minOccurs="0" name="endY" type="xs:double" />
      <xs:element minOccurs="0" name="found" type="xs:boolean" />
      <xs:element minOccurs="0" name="len" type="xs:double" />
      <xs:element minOccurs="0" name="startX" type="xs:double" />
      <xs:element minOccurs="0" name="startY" type="xs:double" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ShortestPathLeg" nillable="true" type="tns:ShortestPathLeg" />
  <xs:complexType name="ArrayOfShortestPathLegStep">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ShortestPathLegStep" nillable="true" type="tns:ShortestPathLegStep" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfShortestPathLegStep" nillable="true" type="tns:ArrayOfShortestPathLegStep" />
  <xs:complexType name="ShortestPathLegStep">
    <xs:sequence>
      <xs:element minOccurs="0" name="X" type="xs:double" />
      <xs:element minOccurs="0" name="Y" type="xs:double" />
      <xs:element minOccurs="0" name="angle" type="xs:int" />
      <xs:element minOccurs="0" name="dir" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="len" type="xs:double" />
      <xs:element minOccurs="0" name="name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="start" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ShortestPathLegStep" nillable="true" type="tns:ShortestPathLegStep" />
</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>