Open Mobility Foundation · Schema
models/mutable-stop
The fields of a Stop that can be changed in the Agency API.
CompanyMobilityOpen SourceOpen StandardsTransportationCitiesMicromobilityData Specifications
Properties
| Name | Type | Description |
|---|---|---|
| stop_id | object | UUID for the stop. |
| last_updated | object | Date/Time of the the stop was last updated. |
| status | object | The status of the stop. |
| num_vehicles_available | object | How many vehicles are available per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop?. |
| num_vehicles_disabled | object | How many vehicles are unavailable/reserved per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop?. |
| rental_methods | array | List of payment methods accepted at stop, see [GBFS Rental Methods](https://github.com/NABSA/gbfs/blob/master/gbfs.md#station_informationjson). |
| num_places_available | object | How many places are free to be populated with vehicles per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop? |
| num_places_disabled | object | How many places are disabled and unable to accept vehicles per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop? |
| devices | object | List of `device_id` for [vehicles](./vehicle.yaml) currently at this stop. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/open-mobility-foundation/main/json-schema/open-mobility-foundation-mutable-stop-schema.json",
"title": "models/mutable-stop",
"description": "The fields of a Stop that can be changed in the Agency API.",
"x-generated": "2026-10-09",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/open-mobility-foundation-mds-agency-openapi.yml#/components/schemas/mutable-stop",
"type": "object",
"x-stoplight": {
"id": "xs6ehwfn5b629"
},
"required": [
"stop_id",
"last_updated"
],
"properties": {
"stop_id": {
"$ref": "#/$defs/data-types_uuid",
"description": "UUID for the stop."
},
"last_updated": {
"$ref": "#/$defs/data-types_timestamp",
"description": "Date/Time of the the stop was last updated."
},
"status": {
"type": "object",
"required": [
"is_installed",
"is_renting",
"is_returning"
],
"properties": {
"is_installed": {
"type": "boolean",
"description": "See GBFS [station_status.json](https://github.com/NABSA/gbfs/blob/master/gbfs.md#station_statusjson)"
},
"is_renting": {
"type": "boolean",
"description": "See GBFS [station_status.json](https://github.com/NABSA/gbfs/blob/master/gbfs.md#station_statusjson)"
},
"is_returning": {
"type": "boolean",
"description": "See GBFS [station_status.json](https://github.com/NABSA/gbfs/blob/master/gbfs.md#station_statusjson)"
}
},
"description": "The status of the stop."
},
"num_vehicles_available": {
"$ref": "#/$defs/data-types_vehicle-type-counts",
"description": "How many vehicles are available per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop?."
},
"num_vehicles_disabled": {
"$ref": "#/$defs/data-types_vehicle-type-counts",
"description": "How many vehicles are unavailable/reserved per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop?."
},
"rental_methods": {
"type": "array",
"uniqueItems": true,
"items": {
"enum": [
"key",
"creditcard",
"paypass",
"applepay",
"androidpay",
"transitcard",
"accountnumber",
"phone"
]
},
"description": "List of payment methods accepted at stop, see [GBFS Rental Methods](https://github.com/NABSA/gbfs/blob/master/gbfs.md#station_informationjson)."
},
"num_places_available": {
"$ref": "#/$defs/data-types_vehicle-type-counts",
"description": "How many places are free to be populated with vehicles per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop?"
},
"num_places_disabled": {
"$ref": "#/$defs/data-types_vehicle-type-counts",
"description": "How many places are disabled and unable to accept vehicles per [`vehicle_type`](./data-types/vehicle-type.yaml) at this stop?"
},
"devices": {
"$ref": "#/$defs/data-types_uuid-array",
"description": "List of `device_id` for [vehicles](./vehicle.yaml) currently at this stop."
}
},
"$defs": {
"data-types_integer-positive": {
"title": "data-types/integer-positive",
"description": "An integer greater than or equal to 0.",
"minimum": 0,
"type": "integer",
"x-stoplight": {
"id": "nfkphjmpm8yay"
}
},
"data-types_timestamp": {
"title": "data-types/timestamp",
"description": "Integer milliseconds since Unix epoch.",
"minimum": 1514764800000,
"multipleOf": 1,
"type": "number",
"x-stoplight": {
"id": "vliol1hqlxw6y"
}
},
"data-types_uuid": {
"title": "data-types/uuid",
"description": "A UUID used to uniquely identity an object.",
"type": "string",
"x-stoplight": {
"id": "np9kodwmy2kqa"
},
"format": "uuid",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
},
"data-types_uuid-array": {
"title": "data-types/uuid-array",
"description": "Array of UUID.",
"type": "array",
"x-stoplight": {
"id": "v932clitbqv31"
},
"uniqueItems": true,
"items": {
"$ref": "#/$defs/data-types_uuid"
}
},
"data-types_vehicle-type": {
"title": "data-types/vehicle-type",
"description": "The allowed types of of vehicles in MDS. Based off of `form_factor` in [GBFS vehicle_types](https://github.com/MobilityData/gbfs/blob/master/gbfs.md#vehicle_typesjson), with some additional to support MDS modes.",
"type": "string",
"x-stoplight": {
"id": "gbhhyditnvs5w"
},
"enum": [
"bicycle",
"bus",
"cargo_bicycle",
"car",
"delivery_robot",
"moped",
"motorcycle",
"scooter_standing",
"scooter_seated",
"truck",
"other"
]
},
"data-types_vehicle-type-counts": {
"title": "data-types/vehicle-type-counts",
"description": "A dictionary of vehicle counts, keyed by [`vehicle_type`](./vehicle-type.yaml).",
"type": "object",
"x-stoplight": {
"id": "isobk3kg3rr8r"
},
"additionalProperties": false,
"propertyNames": {
"$ref": "#/$defs/data-types_vehicle-type"
},
"patternProperties": {
"": {
"$ref": "#/$defs/data-types_integer-positive"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/open-mobility-foundation-mutable-stop"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.