Integration Overview
Here’s what a typical integration journey usually starts like:- Get API credentials and understand authentication
- Search for charging locations using geosearch
- Create users
- Start and stop charging sessions
Using AI? Start with the AI Integration Playbook for the recommended workflow across the Drive API docs,openapi.json, and/mcp. For the live MCP surface, supported tool categories, and security limitations, see MCP for AI Agents.
1. Authentication
All requests to the Drive API require an API key for authentication. The API key must be included in the HTTP header of every request.URLs for our different environments
- Staging:
https://drive-api-stage.plugsurfing.com/drive - Production:
https://drive-api.plugsurfing.com/drive
openapi.json, note that OpenAPI paths already include the product prefix, such as /drive or /emp. Do not append an OpenAPI path that starts with /drive to a base URL that already ends with /drive.
For example, the OpenAPI path /drive/v1/geosearch/radius maps to https://drive-api-stage.plugsurfing.com/drive/v1/geosearch/radius on stage. EMP paths use their own /emp/v1/... prefix, for example https://{environment}.plugsurfing.com/emp/v1/charging-keys.
Example request:
For your security: Never expose your API key in client-side code or public repositories. Store it securely and use it only in server-to-server communications.
📘 Learn More For detailed information about authentication and authorization, check API Key Access & Permissions
2. Searching for Charging Locations
One of the first features you’ll likely implement is helping users find charging stations.Here is how to find available charging stations within a specified distance from a point:
The response contains a list of locations data (address, opening hours, chargers, connectors, availability)
📘 Learn More For more ways to find charging locations and detailed information about the data and filtering options, see the our dedicated guide.
3. Managing Users
Before users can start charging, you need to sync your users with out system. The most common approach is to send us the user identifier you use in your system. That way, you can easily use the same identifier later on to identify the user on other endpoints. You can also pass the user’s email.Creating a User
Getting User Information
Let’s try to retrieve information from the user we just created:📘 Learn More For more details on User Management, checkout our dedicated guide.
4. Managing Charging Keys
Charging keys authorize users to start charging sessions. There are two types:- Physical cards (RFID cards/tags), used for local charging
- Virtual keys, used for remote charging
Listing a User’s Charging Keys
When a user is created, a Virtual key is automatically created. Let’s confirm that:📘 Learn More For more details on Charging Keys, checkout our dedicated guide.
5. Managing Charging Sessions
Now that our user is created, they can start and stop remote charging sessions.Starting a Remote Charging Session
To start a remote session, you need to provide two things:- user id (to identify who requests the charging session)
- connector id (to identify which connector should be requested to start delivering energy)
sessionId that you’ll need for checking status or stopping the session:
Checking Session Status
Stopping a Charging Session
📘 Learn More For detailed information about Remote Charging and Sessions, checkout our dedicated guide
Error Handling
Errors are returned with the appropriate HTTP status codes and error messages. The timeout for all API endpoints is 10 seconds unless otherwise specified. Detailed error documentation is available. For more information, please refer to the API Reference.Next Steps
Now that you understand the basics of the Drive API, you might want to explore:- In-depth Geosearch capabilities
- User management
- Charging key management
- Sessions
- Payment options and configurations