SolarEdge Accounts API

Account and sub-account management

OpenAPI Specification

solar-edge-accounts-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: SolarEdge Monitoring Accounts API
  description: The SolarEdge Monitoring API provides programmatic access to data from SolarEdge solar energy systems. It delivers site energy measurements, power flow data, inverter technical telemetry, battery storage status, equipment inventory, and environmental benefit metrics for SolarEdge-connected systems. Authentication is via an API key passed as a query parameter. All requests are made over HTTPS with responses returned in JSON format.
  version: 1.0.0
  contact:
    name: SolarEdge Developer Support
    url: https://developers.solaredge.com
  license:
    name: Proprietary
    url: https://www.solaredge.com/us/commercial/developer
  x-api-id: solar-edge:solar-edge-monitoring-api
servers:
- url: https://monitoringapi.solaredge.com
  description: SolarEdge Monitoring API production server
security:
- ApiKeyQuery: []
tags:
- name: Accounts
  description: Account and sub-account management
paths:
  /accounts/list:
    get:
      operationId: getAccountList
      summary: Get Account List
      description: Returns the account details and list of sub-accounts for the provided API key.
      tags:
      - Accounts
      parameters:
      - name: pageSize
        in: query
        description: Number of accounts per page (max 100)
        schema:
          type: integer
          default: 100
          maximum: 100
      - name: startIndex
        in: query
        description: Starting index for pagination
        schema:
          type: integer
          default: 0
      - name: searchText
        in: query
        description: Text to search across account fields
        schema:
          type: string
      - name: sortProperty
        in: query
        description: Property to sort results by
        schema:
          type: string
          enum:
          - Name
          - country
          - city
          - address
          - zip
          - fax
          - phone
          - notes
      - name: sortOrder
        in: query
        description: Sort order
        schema:
          type: string
          enum:
          - ASC
          - DESC
          default: ASC
      responses:
        '200':
          description: Account list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    AccountListResponse:
      type: object
      properties:
        accounts:
          type: object
          properties:
            count:
              type: integer
            list:
              type: array
              items:
                $ref: '#/components/schemas/Account'
    Location:
      type: object
      properties:
        country:
          type: string
        state:
          type: string
        city:
          type: string
        address:
          type: string
        address2:
          type: string
        zip:
          type: string
        timeZone:
          type: string
        countryCode:
          type: string
        stateCode:
          type: string
    ErrorResponse:
      type: object
      properties:
        code:
          type: integer
          description: HTTP status code
        message:
          type: string
          description: Human-readable error message
    Account:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        location:
          $ref: '#/components/schemas/Location'
        companyWebSite:
          type: string
        contactPerson:
          type: string
        email:
          type: string
        phoneNumber:
          type: string
        faxNumber:
          type: string
        notes:
          type: string
        parentId:
          type: integer
  responses:
    Unauthorized:
      description: Missing or invalid API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api_key
      description: API key generated through the SolarEdge monitoring portal