Data source: GBFS (General Bikeshare Feed Specification) — city operators
https://context.gnist.ai/rest/gbfs/
AuthenticationAll requests require a Gnist-API-Key header (or api_key query parameter).
Free tier: 100 calls/day. Get your API key.
Tools (5)
list_systemsList available bikeshare/scooter systems from the catalog.
Returns a curated list of 30+ major city bike/scooter sharing systems
worldwide that publish GBFS (General Bikeshare Feed Specification) data.
Filter by country or search by name/city/operator.
Use this first to discover system_ids, then call get_stations or
get_system_info with the chosen system_id.
Args:
country: 2-letter ISO country code filter (e.g. "NO" for Norway).
query: Search text matching name, city, or operator name.
limit: Maximum systems to return (1-100).
Returns:
List of systems with system_id, name, city, country, operator.
| Parameter | Type | Required | Description |
|---|---|---|---|
country | any | optional | ISO 3166-1 alpha-2 country code to filter systems (e.g. "NO", "US", "GB", "FR"). |
query | any | optional | Text search across system name, city, and operator (e.g. 'Oslo', 'Lime', 'Citi Bike'). |
limit | integer | optional | Maximum systems to return (1-100, default 50). (default: 50) |
{
"query": "example"
}get_system_infoGet metadata for a specific bikeshare system.
Fetches the system_information.json GBFS feed for the system and
returns operator details, timezone, contact info, and available feeds.
Args:
system_id: System identifier from list_systems (e.g. "oslobysykkel").
Returns:
System metadata including name, operator, URL, timezone, and
a list of available GBFS feed names.
| Parameter | Type | Required | Description |
|---|---|---|---|
system_id | string | required | System identifier from list_systems (e.g. "oslobysykkel", "lyft_nyc", "divvy"). |
{
"system_id": "example"
}get_stationsGet stations with real-time bike/dock availability for a bikeshare system.
Merges static station info (name, location, capacity) with live status
(bikes available, docks available, vehicle types). Returns all stations
or filters by name/address text search.
Use get_station_status for detailed info on a single station.
Args:
system_id: System identifier (e.g. "oslobysykkel").
query: Optional text filter on station name or address.
limit: Maximum stations to return (1-100, default 50).
Returns:
Stations with name, lat/lon, capacity, bikes_available, docks_available,
is_renting, is_returning, last_reported timestamp.
| Parameter | Type | Required | Description |
|---|---|---|---|
system_id | string | required | System identifier from list_systems (e.g. "oslobysykkel", "lyft_nyc"). |
query | any | optional | Text filter on station name or address (e.g. 'Central Station', 'Main St'). |
limit | integer | optional | Maximum stations to return (1-100, default 50). (default: 50) |
{
"system_id": "example"
}get_station_statusGet real-time availability for a specific bikeshare station.
Returns live data including bikes available, docks available,
operational status (is_renting, is_returning), and last update timestamp.
Also includes static info (name, address, coordinates, capacity).
Args:
system_id: System identifier (e.g. "oslobysykkel").
station_id: Station identifier from get_stations results.
Returns:
Station details with name, address, lat/lon, capacity, bikes_available,
docks_available, is_installed, is_renting, is_returning, last_reported.
| Parameter | Type | Required | Description |
|---|---|---|---|
system_id | string | required | System identifier from list_systems (e.g. "oslobysykkel", "lyft_nyc"). |
station_id | string | required | Station identifier from get_stations results. |
{
"system_id": "example",
"station_id": "example"
}report_feedbackReport a bug, feature request, or general feedback for this data source.
Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.
Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |
{
"feedback": "example"
}Quick Start
curl -X POST "https://context.gnist.ai/rest/gbfs/get_system_info" \
-H "Content-Type: application/json" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"system_id": "example"}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/rest/gbfs/get_system_info",
headers={"Gnist-API-Key": "YOUR_API_KEY"},
json={
"system_id": "example"
},
)
print(resp.json())