Transfer

Using this API

The transfer service can be used to reserve vehicles that will serve as transportation to the user, so you can take it between places more easily.

Use the REST Transfer API to search, verify policies, and book vehicles to transport the customer to places already registered in Cangooroo.

The Transfer REST API has the following methods to use in this order:

  • SearchAvailability: Used to define the date of service, number of passengers, languages available for the service, place of pickup and place of dropoff of the passenger.

  • GetCancellationPolicies: Used to verify the Cancellation Policies of the transfer chosen.

  • DoBooking: Used to confirm a reservation, it sends the information of the passenger (s), the vehicle chosen, the date of service and the places where the passenger wishes to be transported.

  • CancelBooking: used to cancel a reservation.

  • GetServicesDetails: used to view the details of your reservation without having to make any changes.

The API works with Json in its requests and responses, so text parameters can be identified by enclosing double quotation marks ("example"), boolean numbers and parameters can be sent normally.

Below you will find more information on the most important rules, possibilities, points of attention and properties to use for each method.

Tour API endpoint

Each method will have its own instance of the Cangooroo Booking Engine and, with that, each one will have its own endpoint. Unless otherwise specified, the endpoints of the Tour services will be:

  • {{URL}}/ws/Rest/Transfer.svc/Search

  • {{URL}}/ws/Rest/Transfer.svc/GetCancellationPolicies

  • {{URL}}/ws/Rest/Transfer.svc/DoBooking

  • {{URL}}/ws/Rest/Transfer.svc/Cancel

  • {{URL}}/ws/Rest/Transfer.svc/GetServiceDetails

*Note the BOLD words in the example above, since they vary depending on the method you will be using.

Search

This is where everything begins. The Search Request is where the user will pass their Credentials, id and type of origin locations (PickUp) and destination (DropOff) of the passenger, the date and time of the service, along with the number of adults and children who will be transported by the service, and the language that will be returned to the descriptions of the service.

SearchRequest

The Search Request is pretty simple, below you will find the most common usage of this method as well as some examples for the most Frequently Asked Questions we have.

{

"Credential": {

"Username": "Your_Username",

"Password": "Your_Password"

},

"Criteria":{

"ServiceDate": "2019-05-25",

"Hour": 12,

"Minutes": 00,

"NumberOfAdults": 1,

"Pickup": {

"LocationCode": "26486",

"LocationType": "Accommodation"

},

"Dropoff": {

"LocationCode": "26602",

"LocationType": "Accommodation"

},

"ServiceLanguage": "all"

}

}

Credential

The credentials tag is fairly simple and only has the UserName and the Password as shown below:

{

"Credential": {

"Username": "Your_Username",

"Password": "Your_Password"

},

The UserName space is where you're supposed to put in the UserName given you by the Operator. While the Password is where you're supposed to insert the Password given you by the Operator.

Criteria

The criteria field will be used for the specifications of your search, in which the user will inform the date and time of service, number of adults and children to be transported, the language of the service and, finally, the ids and specifications of the places origin and destination of passengers.

"Criteria":{

"ServiceDate": "2019-05-25",

"Hour": 12,

"Minutes": 00,

"NumberOfAdults": 1,

"Pickup": {

"LocationCode": "26486",

"LocationType": "Accommodation"

},

"Dropoff": {

"LocationCode": "26602",

"LocationType": "Accommodation"

},

"ServiceLanguage": "all"

}

Search Response

The search response is separated between the response information, the token, and the transfer services; Below you can see what each of these objects represents.

Token

The Token field is extremely important, as explained on our Services page. You will need this token to confirm the reservation of choosen tour and this information should be transported with each subsequent request.

A Token will always be unique and the combination of Token + Credentials + expiration ensures that we will never have matching results stored on our servers.

The TotalToursResults field provides information on the total number of results found, lastly the number of results in this single response.

When your search provides larger sets of results, those that affect the performance of your application and on those occasions, you will have to work with filters and paging our results.