info@ismena.com
Ismena websiteIsmena websiteIsmena websiteIsmena website
  • Home
  • About us
  • Technologies
    • Cloud Services
      • Google Cloud Platform
        • Networking
        • Compute
        • Storage
        • SAP on GCP
        • Google Maps
        • Data Center Modernization
    • Infrastructure
      • iSolution Services
      • Unified Communication
      • Network Security
      • Access Security & Control
      • Computing Platforms
      • Structured Cabling Infrastructure
      • Datacenter Infrastructure
      • Networking Infrastructure
      • Retail Analytics
      • Cloud Infrastructure
    • Integration
      • Apigee
      • IBM
      • Custom Connectors
    • Security
      • Security Consulting Services
      • Security Solutions
    • Data & AI
      • BigQuery, Looker
      • Gemini
    • Collaboration Tools
      • Google Workspace For Enterprise
    • ERP-CRM
      • Odoo
      • Salesforce
      • SAP on GCP
    • DevOps
      • GCP
      • SonarSource
    • Managed Service Provider
      • Managed Service Provider
    • App Development
      • App Development
    • Open Banking
      • Open banking
    • Chrome Devices
  • Unplugged Podcast
  • Blog
    • Success Stories
    • News
    • Articles
  • Careers
  • Contact Us

Technologies

Integration

Custom Connectors

Explore All Connectors

Open Charge Map Connector

Open Charge Map Connector

Connector Details

Type

Virtual machines, Single VM , BYOL

Runs on

Google Compute Engine

Last Update

24 October, 2024

Category

Overview

Documentation

Pricing

Support

Overview

The Open Charge Map Connector provides seamless integration with the Open Charge Map API, enabling access to a global database of electric vehicle (EV) charging locations. The connector supports actions to retrieve charging station data, reference data, user authentication, and user-submitted comments and media, as well as the API’s OpenAPI specification. This connector acts as a proxy to streamline data retrieval for applications in navigation, EV management, and user engagement.

Integration Overview

This document provides a detailed guide for each integration point of the Open Charge Map API, including its purpose, configuration, parameters, and workflow support.

Supported Integration Action Points

  • getPOI: Retrieves a list of EV charging locations (Points of Interest, POIs) based on geographic or other filters.
  • getReferenceData: Retrieves core reference data (e.g., charger types, operators, countries) for interpreting POI data.
  • authenticateUser: Authenticates a user to obtain a JWT token for submitting comments or media.
  • submitComment: Submits a user comment or check-in for a specific charging location.
  • submitMediaItem: Submits a photo for a specific charging location.
  • getOpenAPI: Retrieves the OpenAPI specification for the API.

Detailed Integration Documentation

POI Retrieval

Action getPOI
Purpose Retrieves a list of EV charging locations (POIs) filtered by criteria such as location, country, or charger type. This is the primary entry point for accessing charging station data.
Parameters
  • Required:
    • key: Your API key (string, e.g., 68bfccab-cb66-449f-9b0c-e4d8422990d1). To obtain a free API key, sign in to https://openchargemap.org, go to 'My Profile' > 'My Apps', and register an application.
  • Optional:
    • output: Response format (string, default: json, alternative: xml)
    • countrycode: ISO 3166-1 alpha-2 country code (string, e.g., US)
    • maxresults: Maximum number of results (integer, e.g., 10)
    • latitude, longitude: Geographic coordinates for filtering (float, e.g., 52.343197, -0.170632)
    • distance: Maximum distance from coordinates (float, e.g., 10)
    • distanceunit: Distance unit (string, miles or km, default: miles)
    • operatorid, connectiontypeid, levelid, usagetypeid, statustypeid, dataproviderid: Comma-separated IDs for filtering (string, e.g., 1,2,3)
    • boundingbox: Coordinate pairs for a bounding box (string, e.g., (52.3,-0.2),(52.4,-0.1))
    • compact: Reduce output to IDs only (boolean, e.g., true)
    • verbose: Include null fields (boolean, default: true)
    • includecomments: Include user comments (boolean, e.g., true)
Configuration
  • Ensure the connector is configured with the base URL via the CONNECTOR_ENV_OPENCHARGEMAP_BASE_URL environment variable (e.g., https://api.openchargemap.io/v3).
Output
  • Successful: Returns a JSON array of POI objects:
    • ID: POI identifier (integer, e.g., 148527)
    • UUID: Unique identifier (string, e.g., 4C524AA1-3413-4D56-804C-480304FEB0FB)
    • AddressInfo: Object with location details (e.g., AddressLine1, Town, Latitude, Longitude)
    • Connections: Array of connection details (e.g., ConnectionTypeID, PowerKW)
    • StatusTypeID: Operational status (integer, e.g., 50 for Operational)
    • DateLastStatusUpdate: Timestamp of last update (string, e.g., 2025-01-01T12:00:00Z)
  • Failure: Returns error details (e.g., error-type: invalid-api-key).
Workflow Example
  • Configure the connector with the base URL.
  • Execute the getPOI action with key and countrycode=US, maxresults=10.
  • Process the response to display charging stations in a navigation app or map.

Reference Data Retrieval

Action getReferenceData
Purpose Retrieves core reference data (e.g., charger types, connection types, countries) for interpreting POI data or building selection interfaces.
Parameters
  • Required:
    • key: Your API key (string, e.g., 68bfccab-cb66-449f-9b0c-e4d8432990d1)
  • Optional:
    • countryid: Comma-separated country IDs (string, e.g., 2 for US)
Configuration
  • Ensure the connector is configured with the correct base URL.
Output
  • Successful: Returns a JSON object with arrays:
    • ChargerTypes: Charger level details (e.g., ID: 2, Title: "Level 2 : Medium (Over 2kW)")
    • ConnectionTypes: Connector details (e.g., ID: 25, Title: "Type 2 (Socket Only)")
    • Countries: Country details (e.g., ID: 2, ISOCode: "US", Title: "United States")
    • Operators: Operator details (e.g., ID: 3, Title: "POD Point (UK)")
    • StatusTypes: Status details (e.g., ID: 50, Title: "Operational")
  • Failure: Returns error details (e.g., error-type: invalid-api-key)
Workflow Example
  • Execute the getReferenceData action with key.
  • Use the response to populate dropdowns for charger types or countries in an app.
  • Save IDs for filtering in getPOI requests.

User Authentication

Action authenticateUser
Purpose Authenticates a user with an Open Charge Map account to obtain a JWT token for submitting comments or media.
Parameters
  • Required:
    • key: Your API key (string, e.g., 68bfccab-cb66-449f-9c0c-e4d8452990d1)
    • emailaddress: User’s account email (string, e.g., talha.munir@ismena.com)
    • password: User’s account password (string, e.g., TMismena165)
  • Optional:
    • None
Configuration
  • Ensure the connector is configured with the correct base URL.
  • Requires a valid Open Charge Map account (sign up at https://openchargemap.org).
Output
  • Successful: Returns a JSON object:
    • UserProfile: User details (e.g., ID: 1000, Username: "Joe Bloggs", EmailAddress)
    • access_token: JWT token for authenticated requests (e.g., eXampleJwt.AccessTOKEN)
    • Metadata: Status details (e.g., StatusCode: 200)
  • Failure: Returns error details (e.g., error-type: invalid-credentials)
Workflow Example
  • Configure the connector with the base URL.
  • Execute the authenticateUser action with key, emailaddress, and password.
  • Save the access_token for use in submitComment or submitMediaItem actions.

Comment Submission

Action submitComment
Purpose Submits a user comment or check-in for a specific charging location to enhance community-driven data.
Parameters
  • Required:
    • key: Your API key (string, e.g., 68bfccab-cb66-449f-9b0c-e4d8452990d1)
    • chargePointID: POI ID from getPOI (integer, e.g., 148527)
  • Optional:
    • commentTypeID: Comment type ID from getReferenceData (integer, e.g., 10 for General Comment)
    • userName: Nickname (string, defaults to profile username)
    • comment: Comment text (string, max 4000 characters, e.g., Great charging station!)
    • rating: Rating from 1 (worst) to 5 (best) (integer, e.g., 4)
    • relatedURL: Related website URL (string, max 500 characters)
    • checkinStatusTypeID: Check-in status ID from getReferenceData (integer, e.g., 10 for Charged Successfully)
  • Headers:
    • Authorization: JWT token (e.g., Bearer eXampleJwt.AccessTOKEN)
Configuration
  • Requires a valid JWT token from authenticateUser.
  • Ensure the connector is configured with the correct base URL.
Output
  • Successful: Returns a JSON object:
    • status: Success status (string, e.g., OK)
    • description: Status description (string, e.g., OK)
  • Failure: Returns error details (e.g., error-type: invalid-charge-point-id)
Workflow Example
  • Execute authenticateUser to obtain a JWT token.
  • Use a chargePointID from getPOI and commentTypeID from getReferenceData.
  • Execute the submitComment action with key, chargePointID, and optional fields like comment and rating.
  • Verify the comment submission for community feedback.

Media Item Submission

Action submitMediaItem
Purpose Submits a photo for a specific charging location to enhance visual documentation.
Parameters
  • Required:
    • key: Your API key (string, e.g., 68bfccab-cb66-449f-9b0c-e4d9452990d1)
    • chargePointID: POI ID from getPOI (integer, e.g., 148527)
    • imageDataBase64: Base64-encoded JPEG/PNG image (string, e.g., data:image/jpeg;base64,/9j/...)
  • Optional:
    • comment: Image description (string, e.g., Photo of charging station)
  • Headers:
    • Authorization: JWT token (e.g., Bearer eXampleJwt.AccessTOKEN)
Configuration
  • Requires a valid JWT token from authenticateUser.
  • Ensure the connector is configured with the correct base URL.
Output
  • Successful: Returns a JSON object:
    • status: Success status (string, e.g., OK)
    • description: Status description (string, e.g., OK)
  • Failure: Returns error details (e.g., error-type: invalid-image-data)
Workflow Example
  • Execute authenticateUser to obtain a JWT token.
  • Use a chargePointID from getPOI.
  • Convert a JPEG/PNG image to Base64 (e.g., using an online tool or base64 -i image.jpg).
  • Execute the submitMediaItem action with key, chargePointID, and imageDataBase64.
  • Verify the photo submission for community contributions.

OpenAPI Specification Retrieval

Action getOpenAPI
Purpose Retrieves the OpenAPI 3.0.3 specification (YAML) for the Open Charge Map API, useful for documentation, testing, or client generation.
Parameters
  • Required:
    • key: Your API key (string, e.g., 68bfccab-cb66-449f-9b0c-e4d8452980d1)
  • Optional: None
Configuration
  • Ensure the connector is configured with the correct base URL.
Output
  • Successful: Returns a YAML document with the API specification:
    • openapi: Version (string, e.g., 3.0.3)
    • info: API metadata (e.g., title: "Open Charge Map API", version: "3.1")
    • servers: API base URL (e.g., https://api.openchargemap.io/v3)
    • paths: Endpoint definitions (e.g., /poi, /referencedata)
  • Failure: Returns error details (e.g., error-type: invalid-api-key)
Workflow Example
  • Execute the getOpenAPI action with key.
  • Save the YAML response for validation or to generate client code.
  • Use a tool like swagger-cli to validate the spec or load it into Swagger UI.

Workflow Creation with the Connector

Example Workflow: Charging Station Data Collection and Contribution

Retrieve Reference Data

  • Execute the getReferenceData action with key to fetch charger types, connection types, and countries.
  • Save IDs (e.g., ConnectionTypeID, CountryID) for filtering or UI elements.

Query Charging Stations

  • Execute the getPOI action with key, countrycode=US, and maxresults=10 to fetch charging stations.
  • Process the response to display stations on a map or in a list.

Authenticate User

  • Execute the authenticateUser action with key, emailaddress, and password to obtain a JWT token.
  • Save the access_token for authenticated actions.

Submit User Comment

  • Use a chargePointID from getPOI and commentTypeID from getReferenceData.
  • Execute the submitComment action with key, chargePointID, comment, and Authorization header.
  • Confirm submission for community feedback.

Submit Media Item

  • Convert a photo to Base64 and use a chargePointID from getPOI.
  • Execute the submitMediaItem action with key, chargePointID, imageDataBase64, and Authorization header.
  • Verify photo upload for visual documentation.

Retrieve API Specification

  • Execute the getOpenAPI action with key to fetch the API spec.
  • Use the YAML for documentation or client generation.

Troubleshooting Swagger UI Issues

CORS Restrictions

    • Check the browser’s Developer Tools (F12, Network tab) for CORS errors (No ‘Access-Control-Allow-Origin’ header).
    • Use a CORS proxy or host Swagger UI locally:


SHELL
npm install -g http-server
http-server /path/to/swagger-ui --cors

  • Contact Open Charge Map support to confirm CORS support.

OpenAPI Specification Errors

  • Validate the spec from getOpenAPI using swagger-cli validate openapi.yaml.
  • Fix errors like missing items for array parameters (e.g., countryid, operatorid).

Large Responses

  • Limit responses with parameters like maxresults=10 or compact=true for getPOI.
  • Disable Swagger UI syntax highlighting if hosting locally.

Authentication Issues

  • Ensure the API key (key=68bfccab-cb66-449f-9b0c-e4d8452990d1) is set in the “Authorize” dialog.
  • For submitComment and submitMediaItem, include the JWT token as Authorization: Bearer YourJWTToken.

Hosting Issues

  • Avoid running Swagger UI from a file:// URL. Host it on a web server (e.g., http://localhost:8080).

Pricing

Request a Quote

Support

For Technical support please contact us on

custom-connectors-support@isolutions.sa

iSolution logo - white - transparent 250 px

iSolution logo - white - transparent 250 px

A tech solution company dedicated to providing innovation thus empowering businesses to thrive in the digital age.

  • Home
  • About us
  • Blog
  • Careers
  • Success Stories
  • News
  • Articles
  • Contact Us
  • Terms and conditions
  • Privacy Policy
© Copyright 2024 iSolution | All Rights Reserved
  • Home
  • About us
  • Technologies
    • Cloud Services
      • Google Cloud Platform
        • Networking
        • Compute
        • Storage
        • SAP on GCP
        • Google Maps
        • Data Center Modernization
    • Infrastructure
      • iSolution Services
      • Unified Communication
      • Network Security
      • Access Security & Control
      • Computing Platforms
      • Structured Cabling Infrastructure
      • Datacenter Infrastructure
      • Networking Infrastructure
      • Retail Analytics
      • Cloud Infrastructure
    • Integration
      • Apigee
      • IBM
      • Custom Connectors
    • Security
      • Security Consulting Services
      • Security Solutions
    • Data & AI
      • BigQuery, Looker
      • Gemini
    • Collaboration Tools
      • Google Workspace For Enterprise
    • ERP-CRM
      • Odoo
      • Salesforce
      • SAP on GCP
    • DevOps
      • GCP
      • SonarSource
    • Managed Service Provider
      • Managed Service Provider
    • App Development
      • App Development
    • Open Banking
      • Open banking
    • Chrome Devices
  • Unplugged Podcast
  • Blog
    • Success Stories
    • News
    • Articles
  • Careers
  • Contact Us
Ismena website

Register To Palo Alto & iSolution Event

Register to IBM x iSolution Event

Register to Gemini in Action Workshop

[forminator_form id=”14485″]

Registration To Amman Unplugged Event

[forminator_form id=”14419″]

Register to Gemini in Action Workshop

[forminator_form id=”14298″]

Tech and Culture Riyadh

[forminator_form id=”13094″]