EagleView Optimization API

TrueDesign's Optimization APIs enables you to access current System Details based on the PV layout and make changes like adjusting to production (kWh) offsets, system size (kW), module count (#), or minimum TSRF (%). You can also apply new max layouts based on design criteria like module orientation or alignment.

Operations 3

PUT /solar/v1/truedesign/systemMaxLayout Max Layout #
GET /solar/v1/truedesign/systemOptimize Retrieve System Details #
PUT /solar/v1/truedesign/systemOptimize Apply System Filters #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/eagleview:eagleview-optimization-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

eagleview-optimization-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: '# Introduction


    ## About

    TrueDesign API provides access to solar design data, enabling seamless integration with various tools and platforms.'
  version: '1.0'
  title: TrueDesign™ Optimization API
  contact:
    name: solar
    url: https://apicenter.eagleview.com
servers:
- url: https://apicenter.eagleview.com
tags:
- name: Optimization
  description: TrueDesign's Optimization APIs enables you to access current System Details based on the PV layout and make changes like adjusting to production (kWh) offsets, system size (kW), module count (#), or minimum TSRF (%). You can also apply new max layouts based on design criteria like module orientation or alignment.
paths:
  /solar/v1/truedesign/systemMaxLayout:
    put:
      operationId: PUT/solar/v1/truedesign/systemMaxLayout
      summary: Max Layout
      description: The systemMaxLayout method will max out the module layout based on the desired orientation and alignment for the primary structure or all structures within the reportId and versionId.
      parameters:
      - name: reportId
        required: true
        in: query
        description: Unique id generated by EagleView when an order is placed.
        schema:
          type: number
      - name: versionId
        required: false
        in: query
        description: Unique id generated by EagleView for each system within a reportId.
        schema:
          type: string
      - name: selectedAlignment
        required: false
        in: query
        description: Selected Alignment
        schema:
          type: string
      - name: structure
        required: true
        in: query
        description: Select Primary Structure or All Structures
        schema:
          enum:
          - Primary
          - All
          type: string
      - name: selectedPattern
        required: true
        in: query
        description: Selected Pattern
        schema:
          type: string
      responses:
        '200':
          description: Maxlayout updated Successfully
          content:
            text/html:
              schema:
                type: string
              example: Success
        '400':
          description: Bad Request - Invalid input param
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
        '500':
          description: An error occurred while processing the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorData'
      security:
      - access-token: []
      tags:
      - Optimization
      x-operation-id-source: normalized
      x-operation-id-original: PUT /solar/v1/truedesign/systemMaxLayout
  /solar/v1/truedesign/systemOptimize:
    get:
      operationId: GET/solar/v1/truedesign/systemOptimize
      summary: Retrieve System Details
      description: 'The systemOptimize method GET will return system details such as TSRF, SAV, module count, annual AC production, and DC size.

        The information will also be available by mounting plane or facet.

        If working with Solar Tiles, active versus passive tile count will be available.

        Output for this method include JSON and PDF.'
      parameters:
      - name: reportId
        required: true
        in: query
        description: Unique id generated by EagleView when an order is placed.
        schema:
          type: number
      - name: versionId
        required: false
        in: query
        description: Unique id generated by EagleView for each system within a reportId.
        schema:
          type: string
      - name: respFormat
        required: true
        in: query
        description: File type:PDF or JSON
        schema:
          enum:
          - JSON
          - PDF
          type: string
      responses:
        '200':
          description: The System Details are returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SystemOptimizeResponseDto'
        '204':
          description: System Details not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto204'
        '400':
          description: Bad Request - Invalid input param
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
        '500':
          description: An error occurred while processing the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorData'
      security:
      - access-token: []
      tags:
      - Optimization
      x-operation-id-source: normalized
      x-operation-id-original: GET /solar/v1/truedesign/systemOptimize
    put:
      operationId: PUT/solar/v1/truedesign/systemOptimize
      summary: Apply System Filters
      description: 'The systemOptimize method PUT will increase or decrease the system for the specified reportId and versionId for the following parameters:TSRF, Module Count, Active Tile Count, DC Size, and AC Production.

        Multiple parameters can be use in a signle request based on the order they are listed in the request body.'
      parameters:
      - name: reportId
        required: true
        in: query
        description: Unique id generated by EagleView when an order is placed.
        schema:
          type: number
      - name: versionId
        required: false
        in: query
        description: Unique id generated by EagleView for each system within a reportId.
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSystemDetailDto'
      responses:
        '200':
          description: Filter applied successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SystemOptimizePutResponseDto'
        '204':
          description: Details not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto204'
        '400':
          description: Bad Request - Invalid input param
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
        '500':
          description: An error occurred while processing the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorData'
      security:
      - access-token: []
      tags:
      - Optimization
      x-operation-id-source: normalized
      x-operation-id-original: PUT /solar/v1/truedesign/systemOptimize
components:
  schemas:
    FilterField:
      type: object
      properties:
        field:
          type: string
          enum:
          - TSRF
          - MODULES
          - ACTIVE
          - PASSIVE
          - DC
          - PRODUCTION
        value:
          type: number
      required:
      - field
      - value
    SystemOptimizeResponseDto:
      type: string
      enum:
      - https://evtech-us-east-2-pg-test-sunsitecomplete.s3.us-east-2.amazonaws.com/44853625/truedesign/versions/0224ae9b-ea2a-475d-818e-da18c1bc3fa3/output/System_details.pdf?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=REDACTED_AWS_ACCESS_KEY_ID%2F20230921%2Fus-east-2%2Fs3%2Faws4_request&X-Amz-Date=20230921T103343Z&X-Amz-Expires=300&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEAIaCXVzLWVhc3QtMiJGMEQCIHlXTrpZl9ERSil2WqEB59OOD%2F1RH6w2E%2BqNMioxXA1OAiBB7rUlN0%2Fb3aOY86G2V85JjJM3e%2FhiCxo8JINVSWAeGCqjBQjr%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F8BEAIaDDk1MjAyODUzMjM2MCIMEXcueyea%2Bfxu9iu0KvcEUXSFSCRpk2Cy73kGRQ5l3m71Fl4FCLSZILyV4tYTDIArCJll6dxB1LqivKFtzOP2LRV4Jo2AKDvqAbghhZJ6sZ4yiU103a7narvEyIImi7d1xIjLvk0Di5PTlpBTmulxZuKSSIUPCYj%2BmIXrx%2BMKAQ%2Fj7kcufMr4Fabx9I8f0%2F5MkfKSRIH8D0BORIdWpmQRCi8DdVXZAQqoxAIPOS0jj7trDMiP6u2QTi72oVcCjgK63E8765%2FVSyhFJBOvUIJXSm0W%2BsRrIkGmdmcxmpqRFPz970Dl4LYDoatyp3K5%2Fwbk%2FSbrhMD8QyyiHtHL9G8fGAIAfIHDJa2a2Nzw11G6CrRHCBVi%2B9VAkd29q3rnCwSqOxVSBAqrEv0JZSIcbaIGO3Rz1IClDX8vt4tRHFNc2ExC%2B3WqYPOJIU%2FZfv0%2FVwWGKJoeJQMvG2i%2Fe5L9vruC0RKB4AbwA7CG%2Fa%2B8m7lzCdmOQjSeiJSn%2FZQiJP%2FnBo%2BLb2ms5HTZ%2FL59%2Buz5P2FIGBp6X%2Bg2K5avQ1jFUnsuKR5lkw1ie%2F5irt0iQbxg5qwkhSgwpN%2BBl%2B%2B64rOSsGqRSLiPemxi9fYpTWWpI9%2FyYdAc0p42eBeqSLa%2Bg6bUe1QPbPG5NKI0%2B5CL86uteaY%2BEvyP3602b7620csu%2BRreNVMJ8jTpyddMsxQ15BRa%2BXn%2FKH6NszAu3PTq1ZptGex273UtpNMvaalgIV3yTaux65W40X2ndA1U6lEL3izdUtN02zL4CUkXSVHDxPTHHa1jfJu2M%2BsQ9Iwa05A6QomA7qKOcWeJ74R3jexOilW2zO0KFMjiqqPUIKfzs53Dgez2c5AQGvReIjDTqrCoBjqcAbPo3Euu6dT2%2BvE6SLHT82W3yzIhFIWdTFM4txyYlGGjAisTGrCF%2Fh9jv65wLYegEJvfntTsULn%2BVs3C%2FPGbN9WDV8x0lPdQxMEaB39Wizsi6yyZWSrCZdig7tJvsUz6SIK0tvrmhl9puO9WECGX6lrmwIQMI%2BJI2fo3Mk59b0T3yKDFI67z0qkUKdpjlJd7Tv6sHDivqIMBgN6iCA%3D%3D&X-Amz-Signature=853fbd1fb9ad42a240cbdae18d5b6dfef6b3f28ef813a5bcd8517f91cec3fd67&X-Amz-SignedHeaders=host&x-id=GetObject
    ErrorDto:
      type: object
      properties:
        statusCode:
          type: number
          enum:
          - 400
        timestamp:
          type: string
          enum:
          - '2023-09-21T10:32:41.554Z'
        message:
          type: string
          enum:
          - Bad Request - verify your input parameters
        path:
          type: string
          enum:
          - /api/v1/truedesign/url
    SystemOptimizePutResponseDto:
      type: object
      properties:
        mainProduction:
          type: number
          enum:
          - 2460
        modules:
          type: number
          enum:
          - 5
        dcSize:
          type: number
          enum:
          - 1.5
        TSRF:
          type: number
          enum:
          - 99
        activeTiles:
          type: number
        passiveTiles:
          type: number
        avgTSRF:
          type: number
          enum:
          - 99.85060911688309
        message:
          type: string
          enum:
          - Modified successfully based on the applied filters
    UpdateSystemDetailDto:
      type: object
      properties:
        filters:
          description: Filters
          type: array
          items:
            $ref: '#/components/schemas/FilterField'
      required:
      - filters
    ErrorData:
      type: object
      properties:
        statusCode:
          type: number
          enum:
          - 500
        timestamp:
          type: string
          enum:
          - '2023-09-21T10:32:41.554Z'
        message:
          type: string
          enum:
          - Internal Server Error
        path:
          type: string
          enum:
          - /api/v1/truedesign/url
    ErrorDto204:
      type: object
      properties:
        statusCode:
          type: number
          enum:
          - 204
        timestamp:
          type: string
          enum:
          - '2023-09-21T10:32:41.554Z'
        message:
          type: string
          enum:
          - System Details not found
        path:
          type: string
          enum:
          - /api/v1/truedesign/url
  securitySchemes:
    access-token:
      scheme: bearer
      bearerFormat: JWT
      type: http