Skip to content
For developers

Build EV charging into your product

Everything you need to build EV charging into your own product: one documented API, MCP servers for your AI tools, and open-source OCPP libraries you can run without any hardware.

Book a demo
Build on Monta

One API, built to build on

The same surface covers fleets, operators, your data stack, and the home. Use the parts you need and leave the rest.
Fleets

Fleets

Onboard and manage fleet charging: create drivers, assign charge access, and pull session and cost data through one API.

Operators

Operators

Run your charging network: create and configure chargers, set pricing, schedule availability, and watch diagnostics across your estate.

Data and CRM

Data and CRM

Sync charging with your systems: import and export drivers, sessions, and transactions into the CRM, ERP, and billing you already run.

Home and smart devices

Home and smart devices

Automate home charging with the free Public API, connecting home chargers to smart-home tools for solar, schedule, and price-based charging.

Quickstart

See the API, not just the promise

Authenticate once, then read and control chargers with a few calls. Versioned, documented, and the same surface that powers our infra.

curl --request GET \
     --url 'https://partner-api.monta.com/api/v1/charge-points?page=0&perPage=10&includeDeleted=false&includePublic=false' \
     --header 'accept: application/json' \
     --header 'authorization: Bearer <token>'
import montaPartnerApi from '@api/monta-partner-api';

montaPartnerApi.auth('<token>');
montaPartnerApi.getChargePoints({page: '0', perPage: '10', includeDeleted: 'false', includePublic: 'false'})
  .then(({ data }) => console.log(data))
  .catch(err => console.error(err));
import requests

url = "https://partner-api.monta.com/api/v1/charge-points?page=0&perPage=10&includeDeleted=false&includePublic=false"

headers = {
    "accept": "application/json",
    "authorization": "Bearer <token>"
}

response = requests.get(url, headers=headers)

print(response.text)
Illustrative request. Full reference at developer.monta.com
Explore the API reference
Developer tooling

More than an API

Monta gives you the surrounding tooling that decides how fast an integration actually ships.

MCP servers for your 
AI tools

Connect Claude, ChatGPT, or Copilot to charging over the Model Context Protocol. Three servers cover the docs, the live API, and the knowledge base.

See the MCP setup

Docs your AI agents can read

Every page has a published Markdown with an llms.txt index and OpenAPI specs, so coding agents can navigate the API without scraping it.

View the API docs

Open-source OCPP library

A Kotlin library implementing OCPP 1.6 and 2.0.1, Apache 2.0 licensed, so you speak the protocol without building it from scratch.

Get it on GitHub

OCPP emulator for testing

Simulate chargers and sessions on your own machine, no hardware required, and inspect every OCPP message as you build.

Try the emulator
whats available

Everything you need to build on top of Monta.

Use any combination of these capabilities in your own product. 
Each one is independent — take only what you need.

What teams are building on Monta APIs.

The same endpoints that run Monta’s own products. 
Proven at scale, available in yours.
fleet operators

Fleet charging, scheduled by logistics data

Charge drivers, energy-aware sessions, and job costs data from route data, not a dashboard.

const { data } = await monta.fleets.sessions.list({
  fleet_id: "flt_29Kd8",
  vehicle_status: "idle",
});

await monta.fleets.schedule.create({
  vehicle_id: data[0].vehicle_id,
  target_soc: 90,
});
white label

Branded charging apps, powered by Monta

Ship a fully-branded EV charging app without building the OCPP stack yourself, while Monta runs the infrastructure in production today.

# Your app calls your API,
# your API calls Monta.
POST /api/v1/charge-points/{id}/start
Authorization: Bearer $TOKEN
{
  "connector_id": 1,
  "user_reference": "app_user_502"
}

FAQs

You authenticate with a bearer token. The docs walk through generating credentials and making your first authenticated request, with a versioned, documented reference for every endpoint.

Monta runs on open standards: native OCPP 1.6 and 2.0.1 for chargers and OCPI for roaming. Our OCPP library and emulator are open source under the Apache 2.0 license.

Yes. The open-source OCPP emulator simulates chargers and sessions on your machine, so you can build and debug integrations before any hardware is connected.

Yes. Three MCP servers let AI clients connect to the docs, the live API, and the knowledge base, and every docs page is published as Markdown with an llms.txt index.

Your data stays yours. You can export drivers, sessions, and transactions through the API at any time, so there is a known, documented exit path rather than a lock-in.

Ready to build on the Monta API?