In order to send prepaid parking (reservations) to Valet Manager, your development team must pass a certification demonstrating a basic understanding of the reservation data models. Please reach out tosupport@valet-manager.comto have an API account setup for your organization. You will be provided with access to a Swagger documentation page with a live sandbox.
There are 5 key elements to the certification.
1) A standard 3-hour reservation

2) A standard 3-hour reservation with license plate

3) An early bird reservation (Enter between 8 AM and 10 AM; Exit before 6 PM)

4) A max stay reservation (a large parking window with a short parking duration)

5) An oversize vehicle reservation

If you are supporting garages in multiple timezones, you will also need to create reservations for garages in each applicable timezone for validation.
There are four key endpoints related to CRUDing reservations
When a reservation is created you will be returned the reservationId. You will need to use this reservationId to update/delete the reservation.
Please ensure that you ALWAYS provide
- a garageId
- a value
- avendorReservationId (THIS SHOULD BE THE BARCODE YOUR APPLICATION/EMAIL DISPLAYS.)
- check-in/check-out data
The Valet Manager POS can read a number of different barcode formats but we see the best performance withAZTEC or QR codes.
If your vendorReservationId is 542452435245, the qr code (with default settings) would be:

All date-times should be sent in 8061 ISO. If timezone information is not included, it will be assumed to be inUTC/GMT.
RESERVATION CREATION SAMPLE
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer {accessToken}' -d '{ \
"garageId":"d72046a64560ce9dadd6b2cac963f8d0", \
"venderReservationId":"542452346", \
"checkinAfterTime":"2021-03-19T19:00:00Z", \
"checkinBeforeTime":"2021-03-19T22:00:00Z", \
"checkoutAfterTime":"2021-03-19T19:00:00Z" \
"checkoutBeforeTime":"2021-03-19T22:00:00Z", \
"maxStay":180, \
}' \
'https://api.valet-manager.com/reservation'
API/BASIC AUTHENTICATION
curl -i -X GET -u{userid/apikey}:{password/ap i secret} 'https://demo.api.valet-manage r.com/reservation/c2c3881e546b 63eb151a48f385262bb7'
TOKEN AUTHENTICATION
#Create new access token curl -X POST 'https://demo.api.valet-manager.com/oauth/token' \ --data 'grant_type=password&username= {username}&password={password} ' #Returned json has both access_token and refresh_token. { "access_token":"{ACCESS TOKEN}", "refresh_token":"{REFRESH TOKEN}", "token_type":"Bearer", "expires_in":3600 } #Use access_token for subsequent requests as shown below curl -i -H 'Authorization: Bearer {access_token}' \ -X GET 'https://demo.api.valet-manage r.com/reservation/{reservationId}' # To refresh token curl -X POST https://demo.api.valet-manager .com/oauth/token \ --data 'grant_type=refresh_token&refr esh_token={refresh token}'

