Fleet Search API
The Fleet Search API lets you discover available vehicles from all GNet operators near a given location. Search by vehicle type (e.g., sedan, SUV) and specify a location using airport codes or GPS coordinates. Results include vehicle details, photos, capacity, and the operator’s GPS position.Endpoint
GET https://core.grdd.net/api/search/fleet
Authorization: Bearer <your_token>
Query Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| airports | string | Comma-separated IATA airport codes (e.g. LAX,SNA). At least one of airports or lat+lon is required. | Conditional |
| lat | number | Latitude of the search center (e.g. 33.9425). Must be paired with lon. | Conditional |
| lon | number | Longitude of the search center (e.g. -118.408). Must be paired with lat. | Conditional |
| types | string | Comma-separated vehicle types to filter by (e.g. sedan,suv). Case-insensitive. Omit to return all types. | No |
| q | string | Keyword search. Every word must appear (case-insensitive) in at least one of the vehicle’s name, description, model, or type. Omit or leave blank to return all results. | No |
| radius_km | number | Search radius in kilometers. Defaults to 50 when omitted. | No |
| limit | number | Maximum number of results to return per page. Defaults to 20, max 100. | No |
| offset | number | Number of results to skip (for pagination). Defaults to 0. | No |
airports or lat+lon. Both can be combined — operators near any of the given locations are included.
Example Requests
Search by airport code
Search by GPS coordinates
Multi-airport search with custom radius
Keyword search
types to further narrow results.
Success Response
200 - OK
Returns a list of fleet vehicles matching the search criteria. The list is cross-operator — vehicles from all GNet operators serving the requested location(s) are included.Response Fields
data.items[]
| Field | Type | Description |
|---|---|---|
| griddid | string | Unique GNet operator ID |
| type | string | Vehicle type (e.g. sedan, suv, bus) |
| name | string | Display name of the vehicle class |
| description | string | Vehicle description |
| imageUrl | string / null | URL of the vehicle photo, or null if unavailable |
| maxPassengers | number | Maximum passenger capacity |
| maxLuggage | number | Maximum luggage capacity |
| lat | number | Latitude of the operator’s service location nearest the search point |
| lon | number | Longitude of the operator’s service location nearest the search point |
| distanceKm | number | Great-circle distance in km from the nearest search point to the operator’s location (rounded to 2 decimal places) |
| score | number | Completeness score (0–100) reflecting how fully the operator has populated vehicle details (photo, description, capacity, extras) |
| minimum_rate | number | Operator’s minimum booking rate (0 if not set) |
| hourly_rate | number | Operator’s hourly rate (0 if not set) |
| slug | string / undefined | URL-friendly identifier for the vehicle class, if set by the operator |
data.warnings[]
Warnings are non-fatal notices returned alongside results.
| Field | Type | Description |
|---|---|---|
| code | string | Warning code: UNRESOLVABLE_AIRPORT or MISSING_GPS |
| griddid | string | Operator GNet ID (present for MISSING_GPS warnings) |
| detail | string | Human-readable explanation |
UNRESOLVABLE_AIRPORT— An airport code in the request could not be resolved to GPS coordinates. Valid codes in the same request are still searched.MISSING_GPS— An operator has a service location record near the search point but no parseable GPS coordinates. That operator is excluded from results.
Error Responses
401 - Unauthorized
400 - Bad Request
Returned when no location is provided, or whenlat and lon are not both present.
500 - Internal Server Error
Notes
Sort order
Results are sorted by two criteria applied in order:- Distance (ascending) — operators nearest the search point(s) appear first. Distance is grouped into 5 km buckets, so an operator 3 km away and one 4.9 km away are treated as equally close.
- Completeness score (descending) — within the same distance bucket, operators with richer vehicle profiles (photo, description, capacity info, extras) rank higher. Scores range from 0 to 100; the
scorefield is included in each result for reference.
- Results are cross-operator: vehicles from every active GNet operator serving the search area are included in a single response.
- When multiple airport codes or a mix of airports and GPS coordinates are provided, operators near any of the given points are included (union).
- An operator appearing in multiple location results is deduplicated — they appear once, with GPS from the location closest to the first matched search point.
- The
typesfilter is case-insensitive (Sedan,SEDAN, andsedanall match). - When
typesis omitted, all vehicle types from matching operators are returned. radius_kmdefaults to50km when not specified.limitdefaults to20and is capped at100. Useoffsetto page through results (offset=20for page 2,offset=40for page 3, etc.).totalin the response always reflects the full match count before pagination, so callers can compute total pages asceil(total / limit).