JSON Ground Transportation (Open Travel 2.0)

The Links Rez Ground API allows for three basic capabilities; search for a ground transportation product, book a ground transportation product, and cancel a ground transpiration booking.  Details and samples are in each of the three endpoint sections below.  Swagger can be downloaded here.  Sample code using swagger is here.

AVAILABILITY API ENDPOINT

https://sgrdapi.linksrez.net/api/v1/Ground/Availability

NOTES:

Can use either lat/long or address.  If using only address, remove the lat/long elements from the POST.

METHOD

POST

HEADERS

Content-Type: application/json’, Username: {UserName}’, Password: {Password}

REQUEST

{
    "Passengers": [
        {
            "Quantity": 2,
            "Category": {
                "Value": "Adult"
            }
        }
    ],
    "Service": {
        "Pickup": {
            "DateTime": "05/12/2017 11:00 PM",
            "Address": {
                "AddressLine": "2543 N. 60th Ave",
                "CityName": "Phoenix",
                "PostalCode": "85035",
                "LocationType": {
                    "Value": "HomeResidence"
                },
                "StateProv": {
                    "StateCode": "AZ"
                },
                "CountryName": {
                    "Code": "US"
                },
                "Latitude": "33.475609",
                "Longitude": "-112.188570"
            }
        },
        "Dropoff": {
            "Address": {
                "AddressLine": "2543 N. 60th Ave",
                "CityName": "Phoenix",
                "PostalCode": "85035",
                "LocationType": {
                    "Value": "HomeResidence"
                },
                "StateProv": {
                    "StateCode": "AZ"
                },
                "CountryName": {
                    "Code": "US"
                },
                "Latitude": "33.475609",
                "Longitude": "-112.188570"
            }
        }
    }
}

BOOK API ENDPOINT

https://sgrdapi.linksrez.net/api/v1/Ground/Booking?ProviderName={ProviderName}

NOTES:

Must pass in ProviderName querystring parameter so linksrez ground knows who to book the request with.
(Also ID,DateTime below in the request is the same ID,DateTime returned from the Availability Response)

METHOD

POST

HEADERS

Content-Type: application/json’, Username: {UserName}’, Password: {Password}

REQUEST

{
    "PrimaryLangID": "en",
    "POS": {
        "Source": {
            "ISOCountry": "US",
            "ISOCurrency": "USD"
        }
    },
    "References": [
        {
            "ID": "1"
        }
    ],
    "GroundReservations": [
        {
            "Passenger": {
                "Primary": {
                    "PersonName": {
                        "GivenName": "Test",
                        "Surname": "Test"
                    },
                    "Telephones": [
                        {
                            "CountryAccessCode": "001",
                            "AreaCityCode": "602",
                            "PhoneNumber": "555-1234"
                        }
                    ],
                    "Emails": [
                        {
                            "Value": ""
                        }
                    ]
                }
            },
            "Service": {
                "Location": {
                    "Pickup": {
                        "DateTime": "5-12-17 11:00 PM",
                        "Address": {
                            "AddressLine": "2543 N 60th Ave",
                            "CityName": "Phoenix",
                            "PostalCode": "85035",
                            "LocationType": {
                                "Value": "HomeResidence"
                            },
                            "StateProv": {
                                "StateCode": "AZ"
                            },
                            "CountryName": {
                                "Code": "US"
                            },
                            "Latitude": "33.475609",
                            "Longitude": "-112.188570"
                        }
                    },
                    "Dropoff": {
                        "Address": {
                            "AddressLine": "2820 N 75th Ave",
                            "CityName": "Phoenix",
                            "PostalCode": "85035",
                            "LocationType": {
                                "Value": "Business"
                            },
                            "StateProv": {
                                "StateCode": "AZ"
                            },
                            "CountryName": {
                                "Code": "US"
                            },
                            "Latitude": "33.479324",
                            "Longitude": "-112.221352"
                        }
                    }
                }
            },
            "RateQualifiers": [
                {
                    "RateQualifierValue": "SuperShuttle",
                    "SpecialInputs": [
                        {
                            "Name": "Gratuity",
                            "Value": "%15"
                        }
                    ]
                }
            ]
        }
    ],
    "Payments": {
        "Payments": [
            {
                "DirectBill": {
                    "ID": "20319",
                    "BillingNumber": "001SUPEF"
                }
            }
        ]
    },
    "TPA_Extensions": {
        "Passengers": [
            {
                "Quantity": 1,
                "Category": {
                    "Value": "Adult"
                }
            }
        ],
        "Confirmations": [],
        "RateQualifiers": [],
        "Source": "Expedia",
        "PickMeUpNow": false
    }
}

CANCEL API ENDPOINT

https://sgrdapi.linksrez.net/api/v1/Ground/Availability

NOTES:

Must pass in ProviderName querystring parameter so linksrez ground knows who to cancel the request with.
(Also ID,PostalCode below in the request is the same ID,PostlCode returned from the Booking Response)

METHOD

POST

HEADERS

Content-Type: application/json’, Username: {UserName}’, Password: {Password}

REQUEST

{
    "PrimaryLangID": "en",
    "POS": {
        "Source": {
            "ISOCountry": "US",
            "ISOCurrency": "USD"
        }
    },
    "Reservation": {
        "CancelType": "Cancel",
        "UniqueID": [
            {
                "Type": "DispatchConfirmation",
                "ID": "8123906"
            }
        ],
        "Verification": {
            "AddressInfo": {
                "PostalCode": "85035"
            }
        }
    },
    "TPA_Extensions": {
        "Passengers": [],
        "Confirmations": [],
        "RateQualifiers": [
            {
                "RateQualifierValue": "SuperShuttle",
                "SpecialInputs": []
            }
        ]
    }
}