INRIX documentation logo

Common questions that exist across all the INRIX Parking products

Rates and Restrictions

How are rates and restrictions represented in your API.

Option 1 - The Rate Card

The rate_card field is the most user friendly option. It displays the rate card exactly how the user would visualize it. The data is provided in an array in which each line represents the rates and/or restrictions. For OffStreet lots, there is an additional hrs_of_operation; this field is not included in OnStreet because parking is assumed to be accessible 24 hours a day (even if it is not allowed).

In displaying the rate card, we always attempt to match the actual, real-world signage as close as possible. Decisions such as as whether or not tax is included, which currency denomination, etc. we defer to local knowledge. In order to match to signage we will sometimes choose verbal proximity over consistency:

Parking Rate Card

Parking Restriction

Option 2 - Calculated Rates

The calculated_rate field is the most simple option. In order to activate it you must pass an entry_time and duration field to the API. In returns a single numeric value representing the rate.

calculated_rate / is_open NULL EMPTY LIST RATE = ZERO RATE >= ZERO
TRUE Unknown (no data) n/a Lot is open. Parking is free Lot is open. Parking is paid
FALSE Unknown (no data) Lot is Closed n/a n/a

Note: If a series of calculated rates are desired in a single API request (such as 1 hour, 2 hours, 4 hours, 8 hours), you can pass a a pipe-delimited array to the duration field. In addition a rate_type field is supported that can provide 3 different flavors of this rate (B - Base, M - Monthly, R - Reservable/Prepay/MobilePayment)

Calculated Rate

Option 3 - Structure Rates and Restrictions

The structured_rate field is the most complex option. It describes the rates written in a structured format. It is worth noting that this representation is for advanced API consumers only and INRIX does NOT recommend its use. The structured_rate field answers three important questions: Can you park?, How much will it cost? and How long can you park for? time_in combined with dow_start and dow_end determine, based on current time if you are able to park time_out can then be used to determine duration of parking increment and rate determine how much it will cost to park for said duration

Rate Structure

Localization

How does the “locale” parameter changes the response?

Text based fields such as Rate Card and Hours of Operation are translated.

Do we need to use any locale other than the default (en-US)?

Depends on your use case. The following are all the other locales supported:

Amenities

The “amenities” field contains objects, identified by integers. What are all the options?
[
    {
        'id': 1,
        'name': 'Max Weight',
        'value': math.trunc(lot.f_max_weight_lbs),
        'metric': lot.f_max_weight_lbs * 0.453592,
    },
    {
        'id': 2,
        'name': 'Max Height',
        'value': math.trunc(lot.f_clearance_height_in),
        'metric': lot.f_clearance_height_in * 0.0254,
    },
    {
        'id': 3,
        'name': 'Zip Car Stations',
        'value': lot.b_zip_car
    },
    {
        'id': 4,
        'name': 'EV Chargers',
        'value': lot.b_ev_charger
    },
    {
        'id': 5,
        'name': 'Car Wash',
        'value': lot.b_car_wash
    },
    {
        'id': 6,
        'name': 'Airport Shuttle',
        'value': lot.b_airport_shuttle
    },
    {
        'id': 7,
        'name': 'Handicap Spaces',
        'value': lot.i_spaces_handicap
    },
    {
        'id': 8,
        'name': 'Validation Available',
        'value': lot.b_validation_avail
    },
    {
        'id': 9,
        'name': 'Covered Parking Available',
        'value': True
    },
    {
        'id': 10,
        'name': 'Open 24/7',
        'value': True
    },
    {
        'id': 11,
        'name': 'In and Out Allowed',
        'value': lot.b_in_out_privileges
    },
    {
        'id': 12,
        'name': 'Printed Pass Required',
        'value': lot.b_printed_pass_required
    },
    {
        'id': 13,
        'name': 'Unobstructed Parking',
        'value': lot.b_unobstructed_parking
    },
    {
        'id': 14,
        'name': 'RV Parking',
        'value': lot.b_rv_parking
    },
    {
        'id': 15,
        'name': 'Tailgating Permitted',
        'value': lot.b_tailgating_permitted
    },
    {
        'id': 16,
        'name': 'Restrooms',
        'value': lot.b_restrooms
    },
    {
        'id': 17,
        'name': 'Airport/Venue Official',
        'value': lot.b_airport_venue_official
    },
    {
        'id': 18,
        'name': 'Credit Cards Accepted',
        'value': True
    },
    {
        'id': 19,
        'name': 'Over 7ft. Clearance',
        'value': True
    },
    {
        'id': 20,
        'name': 'Women and Family Parking',
        'value': True
    },
    {
        "id": 21,
        "name": "Semi Parking",
        "value": true
    },
    {
        "id": 22,
        "name": "Video Monitoring",
        "value": true
    },
    {
        "id": 23,
        "name": "Bicycle Parking",
        "value": true
    },
    {
        "id": 24,
        "name": "On-Site Elevator",
        "value": true
    },
    {
        "id": 25,
        "name": "Parking Lighting",
        "value": true
    },
    {
        "id": 26,
        "name": "Pay & Display",
        "value": true
    },
    {
        "id": 27,
        "name": "Guidance System",
        "value": true
    },    
]
What about electric vehicle (EV) charging stations? Additional info is returned within ev_stations.
"ev_stations": [
  {
    "level": null,
    "minVolt": null,
    "maxVolt": 480,
    "minAmp": null,
    "maxAmp": 250,
    "rateCard": null,
    "url": null,
    "phone": null,
    "restriction": "PRIVATE",
    "plugs": {
      "teslaSuper": 1,
      "teslaRoadster": 4
    },
    "pmt_types": [
      "MC/Visa"
    ]
  }
],
What about LPG/Gas cars, if they are allowed to drive into a parking lot?

Not currently supported

Why does the API returns location information with Longitude before Latitude?

Cartesian coordinates are common in science and engineering. Our first customers preferred this approach and it has stuck ever since.

In “peps”, only the “IN” value of the “pepType” field is used, according to the response data I verified. Please list the other possible type identifier strings, if any.

OUT is also available but rare

Please describe the “pepAz” field, e.g. in degrees? clockwise/counterclockwise? from North? direction of the car(in/out)/door?

Degrees clockwise from entrance

Only “Point” is received as the value of “type” in the “point” array. Please either confirm or list other possible values, and define their functionality.

Point is the only one

These are the only two:

Please describe the usage of the costIndex field. Actually I have seen values: 1, 2 and 3.

Used for relatively cost. Similar to the $, $ you see on Yelp.

For example, a €10 lot in Paris might be a 1 because Paris is relatively expensive but it might be 3 in Lyon because it’s comparatively more expensive.

Reservations and Payment

How does proof of payment work? In other words, I pay in the app, how do I get out of the parking structure?

Enforcement methods vary by lot. Some lots use LPR, some use QR Codes, some use a pin, etc.

How is overstay handled? Can we extend an existing reservation (maybe start a new one back2back with the one before)?

On the roadmap but not supported at this time. Overstay is handled by paying the difference manually upon exiting the lot.

In the On and Off Street APIs the “reservations” field is an array of objects. Please describe the usage and type of that object’s fields, and describe, which one is mandatory/optional.

This field provides HTML based reservation page. This is the easiest path to quickly deploying parking reservations and payments. If you want a much more integrated experience. Use API based Reservation/Payment product instead.

What test cards can I use to make reservations:

Geography

Polyline
OpenLR