Enphase Energy EV Charger Control API

The EV Charger Control API from Enphase Energy — 2 operation(s) for ev charger control.

OpenAPI Specification

enphase-energy-ev-charger-control-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: The Enlighten Systems Device Level Production Monitoring EV Charger Control API
  description: 'The Enlighten Systems API is a JSON-based API that provides access to performance data for a PV system. By using the Enlighten Systems API, you agree to the Enphase Energy API License Agreement.


    Please note that the Enlighten Systems API does not provide performance data at a panel or microinverter level.'
  version: '2.0'
  termsOfService: https://developer.enphase.com/docs#Display-Requirements
  license:
    name: Enphase API License Agreement
    url: https://www.enphase.com/en-us/legal/api-license-agreement
servers:
- url: https://api.enphaseenergy.com/api/v2
security:
- ApiKey: []
tags:
- name: EV Charger Control
paths:
  /api/v4/systems/{system_id}/ev_charger/{serial_no}/start_charging:
    post:
      tags:
      - EV Charger Control
      summary: Start charging. Illustrative only - access via VPP api for partners
      description: API to send start charging command to the EV Charger
      operationId: startCharging
      parameters:
      - name: system_id
        in: path
        description: The unique numeric ID of the system
        required: true
        example: 701052773
        schema:
          type: integer
          format: int32
      - name: serial_no
        in: path
        description: Serial Number of the EV Charger
        required: true
        example: 202312100006
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StartChargingRequestBody'
      responses:
        '202':
          description: Request accepted
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/DefaultCommandResponse'
        '400':
          description: Possible Bad request reasons
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponseDetailArray'
              examples:
                response:
                  value:
                    message: Bad request
                    code: '400'
                    details:
                    - Invalid system_id or serial_no
                    - Connector Id must be greater than 0
                    - Charging level should be in the range [0-100]
        '401':
          description: Unauthorised
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                response:
                  value:
                    message: Not Authorized
                    code: '401'
                    details: User is not authorized
        '403':
          description: Forbidden
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                response:
                  value:
                    message: Forbidden
                    code: '403'
                    details: Not authorized to access this resource
        '405':
          description: Method Not Allowed
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponseArray'
        '500':
          description: Internal Server Error
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                response:
                  value:
                    message: Internal Server Error
                    code: '500'
                    details: Internal Server Error
  /api/v4/systems/{system_id}/ev_charger/{serial_no}/stop_charging:
    post:
      tags:
      - EV Charger Control
      summary: Stop charging. Illustrative only - access via VPP api for partners
      description: API to send stop charging command to the EV Charger
      operationId: stopCharging
      parameters:
      - name: system_id
        in: path
        description: The unique numeric ID of the system
        required: true
        example: 701052773
        schema:
          type: integer
          format: int32
      - name: serial_no
        in: path
        description: Serial Number of the EV Charger
        required: true
        example: 202312100006
        schema:
          type: string
      responses:
        '202':
          description: Request accepted
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/DefaultCommandResponse'
        '400':
          description: Invalid system_id or serial_no
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                response:
                  value:
                    message: Bad request
                    code: '400'
                    details: Invalid system_id or serial_no
        '401':
          description: Unauthorised
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                response:
                  value:
                    message: Not Authorized
                    code: '401'
                    details: User is not authorized
        '403':
          description: Forbidden
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                response:
                  value:
                    message: Forbidden
                    code: '403'
                    details: Not authorized to access this resource
        '405':
          description: Method Not Allowed
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponseArray'
        '500':
          description: Internal Server Error
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                response:
                  value:
                    message: Internal Server Error
                    code: '500'
                    details: Internal Server Error
components:
  schemas:
    ErrorResponseDetailArray:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        details:
          type: array
          description: Additional error detail(s).
          items:
            type: string
    DefaultCommandResponse:
      type: object
      properties:
        message:
          type: string
          description: Success message
          example: Request sent successfully
    ErrorResponseArray:
      required:
      - message
      - reason
      type: object
      properties:
        message:
          type: array
          description: message
          example:
          - Method not allowed
          items:
            type: string
            description: message
            example: '["Method not allowed"]'
        reason:
          type: string
          description: statusCode
          example: '405'
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        details:
          type: string
          description: Additional error detail.
    StartChargingRequestBody:
      type: object
      properties:
        connectorId:
          type: string
          description: connector id. It Should be a positive integer.
          example: '1'
        chargingLevel:
          maximum: 100
          minimum: 0
          type: string
          description: Charging current level. It Should be an integer in [0-100].
          example: '40'
  securitySchemes:
    ApiKey:
      type: apiKey
      name: key
      in: query