Skip to main content
APIs 8 min read

5 things you need to know about HERE Parking API

parking-meter-woman-frustration-blog.jpg

Whether you are providing truck routing for fleets or navigating users through the city to find the best parking spot, HERE APIs provide you with everything you need to put location at the center of your app. HERE APIs integrate powerful location features into your apps with flexible REST services, one of the features is HERE Parking API. In this blog, we will discuss 5 things you need to know about HERE Parking API. 

Note: 

HERE Parking API is only available to automotive OEMs for in-vehicle applications. 

1. On-Street and Off-Street Parking API

There are two variants of the HERE Parking: On-Street and Off-Street Parking API. 

HERE On-Street Parking API

HERE On-Street Parking API is a RESTful API that allows you to find a parking spot on the street, also known as unattended curbside parking. It also allows you to create applications that inform drivers about where they are more likely to find parking and its parking restrictions and prices. 

For example, the request below describes how to get parking information for an area in Barcelona, Spain. The bbox parameter specified a bounding box for a search area. 

Copied
        curl GET 
https://osp.cc.api.here.com/parking/segments
    ?bbox=41.389405513925354,2.127549994463742,41.38042236108416,2.139522979169079

-H "Authorization: Bearer {YOUR_TOKEN}"
      
  

The On-Street Parking response data delivers the following high-level elements of the parkingSegments array containing all parking segments in the bounding box specified in your request, for which parking availability or parking rules information is available. For each segment, the full on-street parking information is given, including parking restrictions. An example of the response to the above request is shown in the appendix below. 

HERE Off-Street Parking API

HERE Off-Street Parking API is a RESTful API that provides rich information on off-street parking facilities details such as opening times, height restrictions, and prices. It also provides dynamic, real-time off-street parking availability information.

  • Facility Search Example

The request below describes how to get a list of parking facilities in the radius of the search geometry. The parameter prox specifies the center (lat, long) and the radius in meters of the search geometry. 

Copied
        curl GET 
https://parking-v2.cit.cc.api.here.com/parking/facilities.json
?prox=52.51638,13.38244,500
-H "Authorization: Bearer {YOUR_TOKEN}"
      
  

The response contains a list of facilities, represented as ParkingFacilities elements, where each facility has its own unique id, location, address information and type, and other properties as described in ParkingFacilityType. An example of the response to the above request is shown in the appendix below.

  • Facility Details Example

The request below describes how to get detailed information regarding a specific parking facility with id "276u33db-e63737ae997c4a1ab5a19c50a63af49e" – details under Facility Details.

Copied
        curl GET 
https://parking-v2.cit.cc.api.here.com/parking/facilities/276u33db-e63737ae997c4a1ab5a19c50a63af49e.json
-H "Authorization: Bearer {YOUR_TOKEN}"

  

The response contains one parking facility, represented as a ParkingFacilities element, carrying the facility's unique id, location, address information, and type, together with other properties as described in ParkingFacilityType. An example of the response to the above request is shown in the appendix below. 

2. On-Street: Payment Info

User story: Can I use my AMEX card to pay for parking?

The parkingSement response includes the paymentInfo attribute, and then under the paymentMethod attribute contains the information about payment methods available (i.e. “CARDS” = [“AMEX”]).

Copied
        {  
   "parkingSegments":[  
      {  
         "id":"192191",
         ....
         "paymentInfo":{  
            "paymentType":[  
               "ON_FOOT"
            ],
            "paymentMethod":{  
               "CARDS":[  
                  "AMEX"
               ],
               "CASH":[  
                  "COINS"
               ],
               "ELECTRONIC_PAYMENT":[  
                  "MOBILE"
               ]
            }
         },
...
]
  

3. On-Street: Parking Restriction

User story: Can I park a motorcycle in this parking segment?

The parkingSegment response includes the features and the parkingRestriction attribute, and then under the exceptions attribute contains the information about the restrictions to which this parking rule restriction applies.

Copied
        {  
   "parkingSegments":[  
      {  
         "id":"192191",
         ..... 
         "features":[  
            "MOTORCYCLE"
         ],
         "parkingRestrictions":[  
            {  
               "type":"NO_PARKING",
               "exceptions":[  
                  {  
                     "type":"MOTORCYCLES_ONLY"
                  }
               ]
            }
         ],
.....
}
  

4. Off-Street: Opening Hours

User story: What are the parking facility's hours of operation? Is it open 24 hours?

The ParkingFacilitiesResultType container is the top-level element in responses to requests against the facilities resource in the Off-Street Parking API response. The ParkingFacilitiesResultType container then contains open24x7 element in the ParkingFacilityType, which indicates if the parking facility is open 24 hours. And there is also the data type OpeningHoursType in the response which defines the opening hours details of a parking facility

Copied
        
{
   ...
   "facilities":{
    "facility":[
     {
      "open24x7":true,
      "facilityDetails":{
         "openingHours":{
      "openNow": true,
          "regularOpeningHours":[
           {
            "daymask":127,
            "period":[
               {
                "from":"00:00:00",
                "to":"24:00:00"
               }
            ]
           }
          ],
          "annualOpenings":[

          ]
         .....
}

  

 

5. Off-street: Facility Availability

User story: Is there any available space in that parking facility? 

Under the facility details response, there is an available element under facilityAvaliability data type which indicates if there is any available space in the parking facility along with the total parking spaces. 

Copied
        
{
   "hasMore":false,
   "facilities":{
    "facility":[
     {
      ......
      "facilityAvailability":{
         "spacesTotal":173,
         "available":true,
         
      ...
   }
}

  

 

Resources

- HERE On-Street Parking API Documentation

- HERE Off-Street Parking API Documentation

Appendix

  • On-Street Parking API Response
Copied
        {  
   "parkingSegments":[  
      {  
         "id":"192191",
         "capacity":8,
         "paymentInfo":{  
            "paymentType":[  
               "ON_FOOT"
            ],
            "paymentMethod":{  
               "CARDS":[  
                  "AMEX"
               ],
               "CASH":[  
                  "COINS"
               ],
               "ELECTRONIC_PAYMENT":[  
                  "MOBILE"
               ]
            }
         },
         "priceSchema":{  
            "currencyCode":"EUR",
            "prices":[  
               {  
                  "maxStay":"PT2M",
                  "times":[  
                     {  
                        "days":31,
                        "timeRange":{  
                           "startTimeOfDay":"08:00",
                           "endTimeOfDay":"20:00"
                        }
                     }
                  ],
                  "cost":[  
                     {  
                        "type":"NONE",
                        "amount":2.75,
                        "duration":"PT1H"
                     }
                  ]
               }
            ]
         },
         "address":{  
            "street":"Carrer de Galileu, 314",
            "city":"Barcelona",
            "postalCode":"08028",
            "countryCode":"ESP"
         },
         "tpegOpenLR":{  
            "binary":"CCgBEAAkIwGEFR1t4AAJBQQFA/EACgQDBWAA/9gAUQAJBQQFA3EAMBcL",
            "sideOfRoad":"RIGHT"
         },
         "availability":{  
            "availableSpots":3,
            "trend":"STATIC",
            "lastUpdatedTimestamp":"2019-01-21T09:40:03Z"
         }
      },
      {  
         "id":"6205098",
         "capacity":8,
         "priceSchema":{  
            "currencyCode":"EUR",
            "prices":[  
               {  
                  "times":[  
                     {  
                        "days":127,
                        "timeRange":{  
                           "startTimeOfDay":"00:00",
                           "endTimeOfDay":"00:00"
                        }
                     }
                  ],
                  "cost":[  
                     {  
                        "type":"NONE",
                        "amount":0,
                        "duration":"PT1H"
                     }
                  ]
               }
            ]
         },
         "address":{  
            "street":"Calle de Joan Güell",
            "city":"Barcelona",
            "postalCode":"08028",
            "countryCode":"ESP"
         },
         "features":[  
            "MOTORCYCLE"
         ],
         "parkingRestrictions":[  
            {  
               "type":"NO_PARKING",
               "exceptions":[  
                  {  
                     "type":"MOTORCYCLES_ONLY"
                  }
               ]
            }
         ],
         "tpegOpenLR":{  
            "binary":"CCkBEAAlJAGEFB1tZgAJBQQFA3IACgUEBYEjAAA9/3QACQUEBQPzADBmLg==",
            "sideOfRoad":"LEFT"
         },
         "probability":[  
            {  
               "probability":31
            }
         ]
      }
   ]
}

  
  • Off-Street Parking API Response - Parking Facilities 
Copied
        
{
   "hasMore":false,
   "facilities":{
    "facility":[
     {
      "open24x7":true,
      "facilityDetails":{
         "openingHours":{
      "openNow": true,
          "regularOpeningHours":[
           {
            "daymask":127,
            "period":[
               {
                "from":"00:00:00",
                "to":"24:00:00"
               }
            ]
           }
          ],
          "annualOpenings":[

          ]
         },
         "paymentMethods":[
          {
           "name":"Cash - USD EUR GBP",
           "id":"CASH"
          },
          {
           "name":"Check - MONEY ORDER PERSONAL TRAVELERS OTHER",
           "id":"CHECK"
          },
          {
           "name":"AMEX",
           "id":"AMEX"
          },
          {
           "name":"MASTERCARD",
           "id":"MASTERCARD"
          },
          {
           "name":"VISA",
           "id":"VISA"
          },
          {
           "name":"CARTEBLANCHE",
           "id":"CARTEBLANCHE"
          },
          {
           "name":"DINERSCLUB",
           "id":"DINERSCLUB"
          },
          {
           "name":"DISCOVER",
           "id":"DISCOVER"
          },
          {
           "name":"Debit card",
           "id":"DEBITCARD"
          },
          {
           "name":"PAYPAL",
           "id":"PAYPAL"
          },
          {
           "name":"Other - CASHBACK LOAN WIRETRANSFERS",
           "id":"OTHER"
          }
         ],
         "driveMaxHeight":1.8,
         "facilityType":{
          "name":"Parking Facility",
          "id":"1"
         },
         "facilityOperator":"APCOA GmbH",
         "facilityLevels":2,
         "facilityInfrastructures":{
          "name":[
           "handicappedparkingspaces",
           "securitymanned",
           "elevators",
           "light"
          ]
         },
         "facilityAdministration":{
          "name":[
           "Monitored",
           "Gate"
          ]
         },
         "facilityRestrictions":{

         }
      },
      "facilityAvailability":{
         "spacesTotal":173,
         "available":true,
         "pricing":{
          "price":[
           {
            "priceGroup":0,
            "amount":2.0,
            "currency":"EUR",
            "unit":30,
            "daymask":127,
            "minMinutes":0,
            "maxMinutes":30,
            "textRepresentation": [
              {
              "text": [
                "First 30 minutes",
                "Per 30 minutes",
                "Every day"
              ],
              "language": "en-US"
              }
            ]
           },
           {
            "priceGroup":1,
            "amount":4.0,
            "currency":"EUR",
            "unit":60,
            "daymask":127,
            "minMinutes":31,
            "maxMinutes":60,
            "textRepresentation": [
              {
              "text": [
                "Over 31 minutes",
                "Max 1 hour",
                "Per hour",
                "Every day"
              ],
              "language": "en-US"
              }
            ]
           },
           {
            "priceGroup":2,
            "amount":38.0,
            "currency":"EUR",
            "unit":1440,
            "daymask":127,
            "minMinutes":61,
            "maxMinutes":1440,
            "textRepresentation": [
              {
              "text": [
                "Over 1 hour and 1 minute",
                "Max 24 hours",
                "Per day",
                "Every day"
              ],
              "language": "en-US"
              }
            ]
           }
          ]
         },
         "lastUpdateTimestamp":"2016-06-06T06:21:45.000Z"
      },
      "address":{
         "city":"Berlin",
         "country":"DEU",
         "region":"Berlin",
         "street":"Unter den Linden",
         "streetNumber":"77",
         "postalCode":"10117"
      },
      "contacts":{
         "phone":[
          {
           "value":"+4971130570305",
           "label":"PHONE"
          }
         ]
      },
      "position":{
         "latitude":52.51631,
         "longitude":13.37999
      },
      "name":"Hotel Adlon",
      "id":"276u33db-e63737ae997c4a1ab5a19c50a63af49e",
      "lastUpdateTimestamp":"2016-05-31T01:04:46.015Z",
      "timeZone":"Europe/Berlin"
     }
    ]
   }
}

  

 

Erwin Soekianto

Erwin Soekianto

Developer Evangelist

Have your say

Sign up for our newsletter

Why sign up:

  • Latest offers and discounts
  • Tailored content delivered weekly
  • Exclusive events
  • One click to unsubscribe