BMW ConnectedDrive is BMW Group's umbrella for connected vehicle services spanning navigation, remote services, intelligent emergency call, ConnectedDrive Store add-ons, and the My BMW app. Programmatic access for customers, third-party developers, and the repair-and-maintenance ecosystem is consolidated under the BMW Open Data Platform / BMW CarData. CarData exposes an OAuth 2.0 Device Code Flow protected REST API at api-cardata.bmwgroup.com for retrieving static vehicle metadata (basicData), telematics, charging history, smart maintenance tyre diagnosis, location-based charging settings, vehicle images, and managing data "containers" that scope which telematics descriptors a client is authorized to read. A companion MQTT 3.1.1 streaming service at customer.streaming-cardata.bmwgroup.com:9000 (TLS) pushes live container data on the per-VIN topic `{gcid}/{vin}`. CarData is the EU regulatory successor to the legacy BMW ConnectedDrive REST endpoints used by the My BMW app and is the canonical surface for third-party automotive integrations, including independent repair, fleet, charging, and home-automation use cases.
BMW ConnectedDrive publishes 4 API contracts indexed on the APIs.io network, including Containers API, Vehicles API, and 2 more. Tagged areas include Automotive, Connected Vehicles, Telematics, Vehicle Data, and CarData.
The BMW ConnectedDrive catalog on APIs.io includes 1 Spectral governance ruleset.
BMW ConnectedDrive’s developer surface includes authentication, developer portal, documentation, signup flow, engineering blog, YouTube channel, and 23 more developer resources.
Regulatory Posture applies to this provider. Its tags matched the
Horizontal (data, software, accessibility, platform) regime, so
Regulatory Posture carries 15 points of the composite.
If this regime is wrong for your business, say so on your
provider repo — the
applicability map is public and we will correct it.
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it
carries 10 points of the composite. It is scored from the published contracts
themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already
holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in
front of it, and the first time that check is skipped a duplicate record is created.
Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet,
not penalised by it.
The six quality facets above are damped to 75 points between them,
because the conditional facet above carries the other
25. That is why each facet's contribution is shown against a damped
maximum: raising a quality facet moves the composite by 75% of its nominal
weight, not 100%. The full arithmetic is at apis.io/rating/.
Show this score on your site.
It updates itself when the score changes. Paste this where you link to your API docs:
<a href="https://apis.io/providers/bmw-connecteddrive/"><img src="https://apis.io/badge/bmw-connecteddrive/card.svg" alt="BMW ConnectedDrive on APIs.io — Kin Score by API Evangelist"></a>
Other styles, a README pill and a shields.io endpoint are on the badge page.
Raise your score.
Agent readiness — checks not met, largest first (exact, from this profile):
MCP Server+12 pts — deployment.mode + probe verdict on the mcp/ manifest, not the pointer; an unprobed slug falls back to authorship
Idempotency+9 pts — OpenAPI mutating operations declare an idempotency key — a header, a request-body property, or a named de-duplication token whose own description says so (verified); else common[].type matches /idempoten/i (documented)
A2A Agent Card+8 pts — a2a/-a2a.yml manifest, graded on conformance.grade against A2A 1.0.0
Rate-Limit Signaling+7 pts — OpenAPI responses document X-RateLimit-* / RateLimit headers (verified), else a rate_limits artifact or RateLimits link (documented)
Request/Response Examples+7 pts — share of operations carrying request/response examples; else an Examples / Code Samples link
The Kin Score Market layer reads a provider inside its market:
its position, and how deep its integrations go. Depth is only comparable within a position. Provisional and unweighted:
not part of the Kin Score or agent readiness.
Registered MCP server and declares compatibility are report only — not weighted.
Undeclared means we found nothing we can read, so there is no number: we never infer integrations.
Standards this provider implements or carries. De facto ones are profiled and measured by the API Commons; formal ones come from the standards directory and are linked by the provider's own tags. The evidence column says how each claim was established — not that it was made.
The BMW CarData Streaming API delivers near-real-time vehicle telematics over MQTT 3.1.1 with TLS. Clients connect to `customer.streaming-cardata.bmwgroup.com` on port 9000, aut...
The third-party variant of BMW CarData targets independent service providers — repair shops, charging operators, fleet platforms, insurance, and aftermarket integrators — who co...
aid: bmw-connecteddrive
name: BMW ConnectedDrive
url: https://raw.githubusercontent.com/api-evangelist/bmw-connecteddrive/refs/heads/main/apis.yml
description: BMW ConnectedDrive is BMW Group's umbrella for connected vehicle services spanning navigation, remote services,
intelligent emergency call, ConnectedDrive Store add-ons, and the My BMW app. Programmatic access for customers, third-party
developers, and the repair-and-maintenance ecosystem is consolidated under the BMW Open Data Platform / BMW CarData. CarData
exposes an OAuth 2.0 Device Code Flow protected REST API at api-cardata.bmwgroup.com for retrieving static vehicle metadata
(basicData), telematics, charging history, smart maintenance tyre diagnosis, location-based charging settings, vehicle images,
and managing data "containers" that scope which telematics descriptors a client is authorized to read. A companion MQTT
3.1.1 streaming service at customer.streaming-cardata.bmwgroup.com:9000 (TLS) pushes live container data on the per-VIN
topic `{gcid}/{vin}`. CarData is the EU regulatory successor to the legacy BMW ConnectedDrive REST endpoints used by the
My BMW app and is the canonical surface for third-party automotive integrations, including independent repair, fleet, charging,
and home-automation use cases.
tags:
- Automotive
- Connected Vehicles
- Telematics
- Vehicle Data
- CarData
- ConnectedDrive
- Electric Vehicles
- Charging
- MQTT
- Streaming
- OAuth
- Device Code Flow
- GDPR
- Right To Repair
- Mobility
- Authentication
tags_raw:
- Automotive
- Connected Vehicle
- Telematics
- Vehicle Data
- CarData
- ConnectedDrive
- Electric Vehicles
- Charging
- MQTT
- Streaming
- OAuth
- Device Code Flow
- GDPR
- Right To Repair
- Mobility
- Authentication
type: Provider
deliveryModel:
model: saas
open_source: false
commercial: true
callable_host: true
label: Hosted service · you call their endpoint
confidence: high
source:
- openapi
- pricing
generated: '2026-08-28'
method: derived
accessModel:
pricing: unknown
onboarding: unknown
trial: false
try_now: false
public: false
label: Unknown
confidence: low
source:
- authentication
- security
generated: '2026-11-06'
method: derived
position: Producing
access: 3rd-Party
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/bmw-connecteddrive.png
created: '2026-05-25'
modified: '2026-05-25'
specificationVersion: '0.23'
apis:
- aid: bmw-connecteddrive:bmw-cardata-streaming-api
name: BMW CarData Streaming API
description: The BMW CarData Streaming API delivers near-real-time vehicle telematics over MQTT 3.1.1 with TLS. Clients
connect to `customer.streaming-cardata.bmwgroup.com` on port 9000, authenticate with their GCID as the MQTT username and
a GCDM access token (scope `cardata:streaming:read`) as the password, and subscribe to the per-vehicle topic `{gcid}/{vin}`.
The set of descriptors streamed is controlled by the container(s) the client has registered via the CarData REST API,
allowing a customer to scope exactly which signals (e.g. state of charge, mileage, doors, location) flow to each third-party
integration. The streaming surface is the recommended path for charging optimizers, home-automation hubs, and fleet telematics
back-ends that need event-driven updates instead of polled reads.
humanURL: https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
tags:
- CarData
- Streaming
- MQTT
- Telematics
- Real-Time
properties:
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-specification
name: CarData Streaming Configuration
- aid: bmw-connecteddrive:bmw-cardata-thirdparty-api
name: BMW CarData Third-Party API
description: The third-party variant of BMW CarData targets independent service providers — repair shops, charging operators,
fleet platforms, insurance, and aftermarket integrators — who consume vehicle data on behalf of customers who have explicitly
consented through the BMW Open Data Platform. Third parties register a client, subscribe to one or more CarData services
(which assigns the corresponding scope to the client ID), and then drive their users through the OAuth 2.0 Device Code
Flow to obtain customer consent. The third-party surface reuses the same REST and MQTT endpoints as the Customer API but
is bounded by the data-minimization rules of the BMW Open Data Platform and the EU Data Act / right-to-repair framework.
humanURL: https://bmw-cardata.bmwgroup.com/thirdparty/public/car-data/technical-configuration/api-documentation
tags:
- CarData
- Third Party
- Vehicles
- Telematics
- Right To Repair
tags_raw:
- CarData
- Third-Party
- Vehicles
- Telematics
- Right To Repair
properties:
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/thirdparty/public/car-data/technical-configuration/api-documentation
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/thirdparty/public/car-data/technical-configuration/api-specification
name: Third-Party CarData API Specification
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/thirdparty/public/repair-and-maintenance/technical-configuration/api-documentation
name: Repair and Maintenance API Documentation
- aid: bmw-connecteddrive:bmw-connecteddrive-containers-api
name: BMW ConnectedDrive Containers API
description: Management of containers
humanURL: https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
baseURL: https://api-cardata.bmwgroup.com
tags:
- Containers
properties:
- type: OpenAPI
url: openapi/bmw-connecteddrive-containers-api-openapi.yml
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-specification
- aid: bmw-connecteddrive:bmw-connecteddrive-vehicles-api
name: BMW ConnectedDrive Vehicles API
description: Access vehicle data and information
humanURL: https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
baseURL: https://api-cardata.bmwgroup.com
tags:
- Vehicles
properties:
- type: OpenAPI
url: openapi/bmw-connecteddrive-vehicles-api-openapi.yml
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-specification
common:
- type: Website
url: https://www.bmwgroup.com/
- type: CapabilityMap
url: capabilities/bmw-connecteddrive-capability-edges.yml
name: BMW ConnectedDrive Business Capability Map
- type: AgenticAccess
url: agentic-access/bmw-connecteddrive-agentic-access.yml
- type: DomainSecurity
url: security/bmw-connecteddrive-domain-security.yml
- type: Authentication
url: authentication/bmw-connecteddrive-authentication.yml
- type: Portal
url: https://www.bmw.com
- type: Portal
url: https://www.bmwgroup.com
- type: Portal
url: https://bmw-cardata.bmwgroup.com/
name: BMW Open Data Platform / CarData
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
name: CarData Customer API Documentation
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/customer/public/api-specification
name: CarData Customer API Specification (Swagger UI)
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/thirdparty/public/car-data/technical-configuration/api-documentation
name: CarData Third-Party API Documentation
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/thirdparty/public/car-data/technical-configuration/api-specification
name: CarData Third-Party API Specification
- type: Documentation
url: https://bmw-cardata.bmwgroup.com/thirdparty/public/repair-and-maintenance/technical-configuration/api-documentation
name: Repair and Maintenance API Documentation
- type: Signup
url: https://bmw-cardata.bmwgroup.com/customer
name: CarData Customer Portal
- type: Signup
url: https://bmw-cardata.bmwgroup.com/thirdparty
name: CarData Third-Party Portal
- type: Blog
url: https://www.press.bmwgroup.com/global/rss
- type: Authentication
url: https://customer.bmwgroup.com/oneid/login
name: BMW ID / GCDM OAuth (Device Code Flow)
- type: ConnectedDrive
url: https://www.bmw.com/en/explore-bmw/connected-drive.html
name: BMW ConnectedDrive overview
- type: ConnectedDriveStore
url: https://customer.bmwgroup.com/store/
name: ConnectedDrive Store
- type: MyBMW
url: https://www.bmw.com/en/footer/my-bmw-app.html
name: My BMW App
- type: GitHubOrganization
url: https://github.com/bmwcarit
name: BMW Car IT GitHub (joynr, ramses, MoCOCrW, python-dlt)
- type: GitHubOrganization
url: https://github.com/bmwgroup
name: BMW Group GitHub
- type: PrivacyPolicy
url: https://www.bmw.com/en/footer/metanavigation/privacy-policy.html
- type: TermsOfService
url: https://www.bmw.com/en/footer/metanavigation/legal-notice-pool/legal-notice.html
- type: Press
url: https://www.press.bmwgroup.com
- type: Newsroom
url: https://www.bmwgroup.com/en/news.html
- type: Twitter
url: https://twitter.com/BMWGroup
- type: LinkedIn
url: https://www.linkedin.com/company/bmw-group
- type: YouTube
url: https://www.youtube.com/@BMWGroup
- type: Features
data:
- OAuth 2.0 Device Code Flow against GCDM for customer consent
- Scoped client subscriptions — `cardata:api:read` and `cardata:streaming:read`
- CarData "containers" let customers scope which telematics descriptors flow to each client
- REST endpoints for basic data, telematic data, charging history, smart maintenance tyre diagnosis, location-based charging
settings, vehicle images, and vehicle mappings
- MQTT 3.1.1 streaming over TLS for near-real-time per-VIN telematics on topic `{gcid}/{vin}`
- GCID-based identity model for both REST bearer tokens and MQTT credentials
- One-hour ID tokens with refresh-token rotation
- Third-party developer track aligned with EU Data Act / right-to-repair
- Separate Repair & Maintenance API track for independent workshops
- Companion BMW Car IT open-source stack (joynr, ramses, MoCOCrW, python-dlt) underpinning connected-vehicle middleware
sources:
- https://bmw-cardata.bmwgroup.com/customer/public/api-documentation
- https://bmw-cardata.bmwgroup.com/customer/public/api-specification
- https://bmw-cardata.bmwgroup.com/thirdparty/public/car-data/technical-configuration/api-documentation
- https://github.com/bmwcarit
updated: '2026-05-25'
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com
url: https://apievangelist.com
BMW ConnectedDrive API — frequently asked questions
Does BMW ConnectedDrive have an API?
Yes. APIs.io lists 4 APIs from BMW ConnectedDrive, including BMW CarData Streaming API, BMW CarData Third-Party API and BMW ConnectedDrive Containers API, and 1 more.
Is there an OpenAPI specification for the BMW ConnectedDrive API?
Yes. APIs.io indexes 2 OpenAPI specifications for BMW ConnectedDrive, each linked for download from this page.
How do I authenticate with the BMW ConnectedDrive API?
BMW ConnectedDrive uses bearer-token authentication (http · 1 scheme). The details are profiled on APIs.io as Bmw Connecteddrive Authentication.
Is the BMW ConnectedDrive API ready for AI agents?
BMW ConnectedDrive has a Kin Score of 30.3 out of 100 (thin) and an Agent Readiness score of 27.2 (agent-aware), scored by API Evangelist on 2026-11-06.
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.