canonical: https://jentic.com/apis/parkmobile.io/parkmobile

# ParkMobile API

ParkMobile API enables parking location discovery, parking session management, and enforcement validation for consumer and enterprise parking applications. The API provides location search by coordinates with radius filtering, location detail retrieval, parking session creation and monitoring, and enforcement validation to check if a vehicle has an active parking session at a location.

## For AI agents

Search parking locations, start and monitor parking sessions, and validate parking for enforcement.

## Scope

Does not control physical parking hardware or manage parking facility operations - use only for consumer-facing parking payments and enforcement validation.

## Capabilities

- Search parking locations by latitude, longitude, and radius
- Retrieve detailed information for specific parking locations including rates and addresses
- Start new parking sessions for vehicles at locations
- Query parking session details and status
- Validate parking sessions for enforcement purposes

## Use cases

### Mobile Parking Payment

Integrate ParkMobile into parking payment apps or navigation systems. GET /locations with user coordinates returns nearby parking spots with rates. Users select a location, POST /sessions initiates a paid parking session, and GET `/sessions/{session_id}` monitors active sessions. This removes the need for physical meters and paper receipts.

Example prompt: GET /locations?lat={lat}&lng={lng}&radius={meters} to find nearby locations, then POST /sessions with location_id, vehicle info, and payment details to start a session.

### Enforcement Validation

Parking enforcement officers use POST `/enforcement/validate` with a license plate and location to check if the vehicle has an active paid session. The API returns valid:true/false and session_id if found, allowing digital enforcement without chalk or tickets.

Example prompt: POST `/enforcement/validate` with license plate and location_id. If valid is false, issue a citation; if true, the vehicle has paid.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/locations` | Search parking locations by coordinates |
| GET | `/locations/{location_id}` | Get location details |
| POST | `/sessions` | Start a new parking session |
| GET | `/sessions/{session_id}` | Get session details |
| POST | `/enforcement/validate` | Validate if a vehicle has paid for parking |

## Key resources

- **Locations** — Parking spots or zones with addresses, rates, and availability
- **Sessions** — Active parking sessions with start time, end time, vehicle, and payment status

## Why Jentic

- **Setup:** Wiring the ParkMobile API by hand means carrying its X-API-Key header, shaping the location and session routes, and handling retries yourself. Through Jentic you install once, import ParkMobile from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** ParkMobile puts the location id and session id in the URL path (`/locations/{location_id}`, `/sessions/{session_id}`), so a rule can pin your agent to reading a location or session. You choose the operations it may call, so starting a session or validating enforcement is not included unless you add it.
- **Credential handling:** Your ParkMobile API key is stored once, encrypted, by your own Jentic One instance and injected as the X-API-Key header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'start a parking session' or 'look up a parking location', and Jentic returns the matching ParkMobile operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **ParkWhiz API** — ParkWhiz focuses on reservable garage parking while ParkMobile handles on-street and metered parking payments.

## FAQ

### What authentication does the ParkMobile API use?

The API uses API key authentication via the X-API-Key header. Jentic stores keys encrypted and injects them at execution time.

### Can I validate if a vehicle has paid for parking?

Yes. POST `/enforcement/validate` with the license plate and location_id returns whether the vehicle has an active paid session, enabling digital enforcement.

### Does the API handle parking payments?

The API initiates parking sessions but delegates payment processing to ParkMobile's payment infrastructure. Session creation implies payment authorization.

### Can I limit what my agent is allowed to do with the ParkMobile API?

Yes. Because you run Jentic One yourself, your own rules decide which ParkMobile operations and credentials the agent may use. ParkMobile puts the location and session identifiers in the URL path (`/locations/{location_id}`, `/sessions/{session_id}`), so you can pin the agent to only reading a specific location or session. Since you choose the operations it may call, starting a session with POST /sessions or checking enforcement with POST `/enforcement/validate` is excluded unless you explicitly allow it.
