> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plantpredict.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Process IV curve data

> Takes a list of measured IV curves (each a list of `{voltage, current}` pairs at a known irradiance/temperature) and extracts the key operating points — `Isc`, `Imp`, `Voc`, `Vmp`, `Pmax` — for each curve. Used as preprocessing before single-diode parameter derivation.



## OpenAPI

````yaml /api-docs/api-reference/plantpredict-api.yaml post /Module/Generator/ProcessIVCurves
openapi: 3.1.0
info:
  title: PlantPredict API
  version: 12.13.0
  description: >
    ## What is PlantPredict?


    PlantPredict is an industry-leading performance modeling platform for
    utility-scale

    solar power plants. It predicts energy yield across the full project
    lifecycle —

    from early-stage site prospecting through detailed engineering and
    operational

    monitoring. The same engine that powers the PlantPredict web UI is fully
    exposed

    via this REST API, enabling automation of complex, high-time-resolution
    energy

    predictions without any UI interaction.


    ## Domain Model — read this first


    Understanding the object hierarchy is essential before calling the API:


    - **Weather** — A weather file (hourly irradiance, temperature, wind, etc.)
    for a
      geographic location. Imported from a provider (e.g. SolarAnywhere, Meteonorm) or
      uploaded manually. Weather files live in a company-wide library and are referenced
      by Predictions.

    - **Module** — A PV module definition parameterized with electrical
    characteristics
      (STC power, temperature coefficients, single-diode model parameters, IAM curves,
      etc.). Modules live in a company-wide library.

    - **Inverter** — An inverter definition with efficiency curves,
    voltage/power ratings,
      and optional kVA derating curves. Inverters live in a company-wide library.

    - **Project** — A named location (lat/lon) that acts as a container for one
    or more
      Predictions. Holds geographic metadata (country, elevation, UTC offset) and a status.

    - **Prediction** — The core simulation configuration nested under a Project.
    Defines
      the simulation period, model selections (transposition, air mass, degradation,
      soiling, shading, spectral shift models), uncertainty error terms, and references
      to a Weather file. A Prediction must be linked to a PowerPlant before it can be run.
      Status values: 0 = Draft, 1 = Active, 2 = Issued, 3 = Archived.

    - **PowerPlant** — The physical plant design attached to a Prediction.
    Describes the
      electrical topology: Blocks → Arrays → Inverters → DC Fields (strings of modules).
      Also includes transformers, transmission lines, energy storage (ESS), availability
      losses, and LGIA export limits.

    - **Shade Scene** — An optional 3D shading model (PVJ format) attached to a
      Prediction's DC Fields. Supports import from PVC or SHD files. Shade and TABT
      (Tracker Angle Back-Tracking) calculations are queued and run asynchronously.

    ## Typical workflow to run a prediction


    1. Ensure a **Weather** file exists (search, download, or import one).

    2. Ensure a **Module** and **Inverter** exist in the library.

    3. **POST /Project** — create a project at the site location.

    4. **POST /Project/{projectId}/Prediction** — create a prediction with model
    settings.

    5. **POST /Project/{projectId}/Prediction/{predictionId}/PowerPlant** —
    attach a plant
       design referencing your module and inverter.
    6. **POST /Project/{projectId}/Prediction/{predictionId}/Run** — queue the
    simulation.

    7. Poll **GET /Project/{projectId}/Prediction/{predictionId}/Overview**
    until
       `status` reaches 2 (complete), then retrieve results via `/ResultSummary`,
       `/ResultDetails`, or `/NodalJson`.

    ## Authentication


    OAuth 2.0 **Client Credentials** flow via AWS Cognito. The spec advertises

    a single `bearerAuth` scheme — fetch a token yourself with the snippet

    below, then either paste it into the in-browser playground or pass it on

    every request as `Authorization: Bearer <token>`.


    > **Why not advertise OAuth2 directly?** Most users have access to the

    > production tenant only, and we don't want to invite anyone to enter

    > long-lived `client_id` / `client_secret` credentials into a third-party

    > documentation site. Keep credentials in your own environment; ship

    > short-lived bearer tokens to wherever they are needed.


    - Token URL:
    `https://terabase-prd.auth.us-west-2.amazoncognito.com/oauth2/token`

    - Scopes: `transactions/get` (read), `transactions/post` (write) — request
      both to access the entire surface.
    - Send credentials as **Basic Auth** in the token request header.


    Example:


    ```bash

    curl -X POST
    'https://terabase-prd.auth.us-west-2.amazoncognito.com/oauth2/token' \
      -u "$PP_CLIENT_ID:$PP_CLIENT_SECRET" \
      -d 'grant_type=client_credentials&scope=transactions/get transactions/post'
    ```


    API credentials (Client ID + Secret) are generated per user by a company
    admin

    inside the PlantPredict UI (gear icon → user profile → Generate API
    Credentials).

    Store them securely — they are shown only once.


    ## Notes


    - All request/response bodies are JSON (`Content-Type: application/json`).

    - The API is stateless — every request must supply complete inputs; there is
    no session.

    - POST operations that create entities return `{"id": <integer>}`.

    - Many integer fields (model types, status codes) map to named enums — use
      `GET /Definitions` to retrieve the full enum catalog at runtime.
    - Long-running operations (Run, Shade calculations, TABT) are asynchronous;
    poll
      the corresponding `ProcessingStatus` endpoint to track progress.
    - Responses may include an `X-Message` header with non-blocking warnings
    (e.g.
      duplicate project name).
servers:
  - url: https://api.plantpredict.terabase.energy
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Definitions
    description: Enum and model type definitions
  - name: Projects
    description: Solar project management
  - name: Predictions
    description: Energy prediction configuration and execution
  - name: PowerPlant
    description: Power plant design (blocks, arrays, inverters, transformers)
  - name: TimeSeries
    description: Custom time series data inputs
  - name: Results
    description: Prediction results — summary, details, nodal, average energy
  - name: FinancialModel
    description: Financial model parameters and cashflow results
  - name: Reports
    description: Report generation and export
  - name: ShadeScene
    description: 3D shade scene management and calculations
  - name: Weather
    description: Weather file import, download, and management
  - name: Inverters
    description: Inverter library management
  - name: Modules
    description: PV module library and single-diode parameter generation
  - name: ASHRAE
    description: ASHRAE climate station lookup
  - name: System
    description: System version and maintenance status
  - name: Company
    description: Company settings and user management
  - name: Country
    description: Reference country data
paths:
  /Module/Generator/ProcessIVCurves:
    post:
      tags:
        - Modules
      summary: Process IV curve data
      description: >-
        Takes a list of measured IV curves (each a list of `{voltage, current}`
        pairs at a known irradiance/temperature) and extracts the key operating
        points — `Isc`, `Imp`, `Voc`, `Vmp`, `Pmax` — for each curve. Used as
        preprocessing before single-diode parameter derivation.
      operationId: processIVCurves
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
            examples:
              postman-module-module-generator-process-iv-curves:
                value:
                  - temperature: 25
                    irradiance: 1000
                    dataPoints:
                      - current: 0
                        voltage: 0
                      - current: 1.823373
                        voltage: -1.975094
                      - current: 1.82255
                        voltage: -1.958302
                      - current: 1.821453
                        voltage: -1.949662
                      - current: 1.820776
                        voltage: -1.926781
                      - current: 1.819827
                        voltage: -1.916846
                      - current: 1.819007
                        voltage: -1.904794
                      - current: 1.818465
                        voltage: -1.886718
                      - current: 1.817469
                        voltage: -1.874306
                      - current: 1.816726
                        voltage: -1.850099
                      - current: 1.815756
                        voltage: -1.828831
                      - current: 1.815042
                        voltage: -1.801873
                      - current: 1.814104
                        voltage: -1.769216
                      - current: 1.813068
                        voltage: -1.744475
                      - current: 1.812106
                        voltage: -1.706867
                      - current: 1.811421
                        voltage: -1.660273
                      - current: 1.810178
                        voltage: -1.604743
                      - current: 1.80988
                        voltage: -1.532944
                      - current: 1.809525
                        voltage: -1.454226
                      - current: 1.809569
                        voltage: -1.331653
                      - current: 1.809114
                        voltage: -1.185485
                      - current: 1.808991
                        voltage: -0.9932011
                      - current: 1.808425
                        voltage: -0.7460286
                      - current: 1.80799
                        voltage: -0.4317857
                      - current: 1.807404
                        voltage: -0.0249008
                      - current: 1.80725
                        voltage: 0.4868751
                      - current: 1.807586
                        voltage: 1.100399
                      - current: 1.807517
                        voltage: 1.859974
                      - current: 1.807095
                        voltage: 2.757879
                      - current: 1.807156
                        voltage: 3.793593
                      - current: 1.806429
                        voltage: 5.008991
                      - current: 1.806265
                        voltage: 6.45389
                      - current: 1.805727
                        voltage: 8.185863
                      - current: 1.805283
                        voltage: 10.19291
                      - current: 1.804469
                        voltage: 12.51486
                      - current: 1.803572
                        voltage: 15.16558
                      - current: 1.8027
                        voltage: 18.15012
                      - current: 1.801541
                        voltage: 21.37329
                      - current: 1.800404
                        voltage: 24.8178
                      - current: 1.798926
                        voltage: 28.39852
                      - current: 1.797199
                        voltage: 32.01877
                      - current: 1.795819
                        voltage: 35.53878
                      - current: 1.793663
                        voltage: 38.84697
                      - current: 1.791319
                        voltage: 41.74788
                      - current: 1.789451
                        voltage: 44.26711
                      - current: 1.78683
                        voltage: 46.43472
                      - current: 1.784781
                        voltage: 48.18734
                      - current: 1.782949
                        voltage: 49.69402
                      - current: 1.780667
                        voltage: 51.26511
                      - current: 1.778486
                        voltage: 52.69376
                      - current: 1.776174
                        voltage: 53.98892
                      - current: 1.773624
                        voltage: 55.2023
                      - current: 1.770961
                        voltage: 56.26443
                      - current: 1.76834
                        voltage: 57.2321
                      - current: 1.765415
                        voltage: 58.14912
                      - current: 1.762473
                        voltage: 58.95348
                      - current: 1.759594
                        voltage: 59.68962
                      - current: 1.756725
                        voltage: 60.38783
                      - current: 1.753637
                        voltage: 61.06789
                      - current: 1.750216
                        voltage: 61.75161
                      - current: 1.747005
                        voltage: 62.36177
                      - current: 1.743364
                        voltage: 62.95808
                      - current: 1.739823
                        voltage: 63.53827
                      - current: 1.735837
                        voltage: 64.091
                      - current: 1.73157
                        voltage: 64.59982
                      - current: 1.727313
                        voltage: 65.07246
                      - current: 1.723052
                        voltage: 65.50597
                      - current: 1.718544
                        voltage: 65.93205
                      - current: 1.714053
                        voltage: 66.33756
                      - current: 1.709288
                        voltage: 66.7236
                      - current: 1.704235
                        voltage: 67.12745
                      - current: 1.698898
                        voltage: 67.53179
                      - current: 1.693368
                        voltage: 67.91056
                      - current: 1.687637
                        voltage: 68.28146
                      - current: 1.681409
                        voltage: 68.6568
                      - current: 1.674997
                        voltage: 69.04137
                      - current: 1.668263
                        voltage: 69.40885
                      - current: 1.661278
                        voltage: 69.77532
                      - current: 1.654522
                        voltage: 70.13943
                      - current: 1.647402
                        voltage: 70.50555
                      - current: 1.639937
                        voltage: 70.869
                      - current: 1.631721
                        voltage: 71.22669
                      - current: 1.622944
                        voltage: 71.59267
                      - current: 1.613681
                        voltage: 71.94542
                      - current: 1.603732
                        voltage: 72.31274
                      - current: 1.593609
                        voltage: 72.66999
                      - current: 1.583198
                        voltage: 73.02452
                      - current: 1.572476
                        voltage: 73.39515
                      - current: 1.561338
                        voltage: 73.74842
                      - current: 1.549523
                        voltage: 74.1009
                      - current: 1.537334
                        voltage: 74.45424
                      - current: 1.524168
                        voltage: 74.81243
                      - current: 1.510675
                        voltage: 75.17448
                      - current: 1.496448
                        voltage: 75.54227
                      - current: 1.481433
                        voltage: 75.90488
                      - current: 1.465895
                        voltage: 76.28407
                      - current: 1.449543
                        voltage: 76.64556
                      - current: 1.432756
                        voltage: 77.00402
                      - current: 1.414974
                        voltage: 77.35538
                      - current: 1.396381
                        voltage: 77.70606
                      - current: 1.377002
                        voltage: 78.05976
                      - current: 1.356493
                        voltage: 78.41864
                      - current: 1.335269
                        voltage: 78.78177
                      - current: 1.312883
                        voltage: 79.15505
                      - current: 1.289483
                        voltage: 79.52176
                      - current: 1.265338
                        voltage: 79.89535
                      - current: 1.239707
                        voltage: 80.26484
                      - current: 1.21344
                        voltage: 80.63391
                      - current: 1.185879
                        voltage: 81.00439
                      - current: 1.157236
                        voltage: 81.38024
                      - current: 1.127471
                        voltage: 81.74825
                      - current: 1.096374
                        voltage: 82.12222
                      - current: 1.064061
                        voltage: 82.49873
                      - current: 1.030309
                        voltage: 82.87961
                      - current: 0.9950443
                        voltage: 83.26054
                      - current: 0.9585943
                        voltage: 83.64484
                      - current: 0.9204476
                        voltage: 84.03355
                      - current: 0.8807714
                        voltage: 84.42062
                      - current: 0.8395423
                        voltage: 84.80888
                      - current: 0.7964886
                        voltage: 85.19507
                      - current: 0.7520182
                        voltage: 85.5821
                      - current: 0.7057932
                        voltage: 85.97397
                      - current: 0.6574857
                        voltage: 86.36483
                      - current: 0.6076273
                        voltage: 86.75446
                      - current: 0.5558598
                        voltage: 87.16232
                      - current: 0.5023009
                        voltage: 87.55193
                      - current: 0.4472867
                        voltage: 87.95135
                      - current: 0.3903799
                        voltage: 88.35075
                      - current: 0.3323242
                        voltage: 88.75009
                      - current: 0.2728401
                        voltage: 89.13935
                      - current: 0.2126096
                        voltage: 89.52796
                      - current: 0.1530069
                        voltage: 89.90092
                      - current: 0.09685339
                        voltage: 90.2431
                      - current: 0.05104935
                        voltage: 90.51373
                  - temperature: 25
                    irradiance: 800
                    dataPoints:
                      - current: 0
                        voltage: 0
                      - current: 1.782696
                        voltage: -1.934324
                      - current: 1.780743
                        voltage: -1.870275
                      - current: 1.778793
                        voltage: -1.811602
                      - current: 1.777387
                        voltage: -1.722681
                      - current: 1.775993
                        voltage: -1.582704
                      - current: 1.775111
                        voltage: -1.405731
                      - current: 1.774823
                        voltage: -1.183132
                      - current: 1.774653
                        voltage: -0.8481559
                      - current: 1.774574
                        voltage: -0.3807269
                      - current: 1.774276
                        voltage: 0.205052
                      - current: 1.774513
                        voltage: 0.9079445
                      - current: 1.774015
                        voltage: 1.722589
                      - current: 1.773559
                        voltage: 2.664983
                      - current: 1.773329
                        voltage: 3.714867
                      - current: 1.773408
                        voltage: 4.87551
                      - current: 1.772824
                        voltage: 6.158923
                      - current: 1.772243
                        voltage: 7.50502
                      - current: 1.772267
                        voltage: 8.949987
                      - current: 1.771861
                        voltage: 10.44461
                      - current: 1.770965
                        voltage: 11.99515
                      - current: 1.770376
                        voltage: 13.59135
                      - current: 1.769913
                        voltage: 15.24493
                      - current: 1.769342
                        voltage: 16.88357
                      - current: 1.769038
                        voltage: 18.55881
                      - current: 1.768383
                        voltage: 20.3069
                      - current: 1.767473
                        voltage: 22.05931
                      - current: 1.76665
                        voltage: 23.62293
                      - current: 1.766042
                        voltage: 25.13033
                      - current: 1.765118
                        voltage: 26.68256
                      - current: 1.764315
                        voltage: 28.25562
                      - current: 1.763585
                        voltage: 29.84755
                      - current: 1.762628
                        voltage: 31.40558
                      - current: 1.76165
                        voltage: 32.91952
                      - current: 1.76092
                        voltage: 34.32148
                      - current: 1.760083
                        voltage: 35.63923
                      - current: 1.758715
                        voltage: 36.99877
                      - current: 1.757571
                        voltage: 38.25579
                      - current: 1.756455
                        voltage: 39.38716
                      - current: 1.75559
                        voltage: 40.64747
                      - current: 1.754188
                        voltage: 41.88117
                      - current: 1.752961
                        voltage: 43.12992
                      - current: 1.751749
                        voltage: 44.417
                      - current: 1.750658
                        voltage: 45.67098
                      - current: 1.749385
                        voltage: 46.94712
                      - current: 1.747744
                        voltage: 48.32195
                      - current: 1.746536
                        voltage: 49.69078
                      - current: 1.745153
                        voltage: 50.96887
                      - current: 1.743056
                        voltage: 52.20852
                      - current: 1.741349
                        voltage: 53.3908
                      - current: 1.739841
                        voltage: 54.49593
                      - current: 1.737801
                        voltage: 55.50145
                      - current: 1.736086
                        voltage: 56.41797
                      - current: 1.734116
                        voltage: 57.31064
                      - current: 1.732008
                        voltage: 58.05783
                      - current: 1.730424
                        voltage: 58.69126
                      - current: 1.727952
                        voltage: 59.42493
                      - current: 1.725736
                        voltage: 60.06834
                      - current: 1.723414
                        voltage: 60.71612
                      - current: 1.720896
                        voltage: 61.33414
                      - current: 1.718419
                        voltage: 61.85944
                      - current: 1.71571
                        voltage: 62.37487
                      - current: 1.712964
                        voltage: 62.92265
                      - current: 1.710477
                        voltage: 63.38798
                      - current: 1.707407
                        voltage: 63.82022
                      - current: 1.704336
                        voltage: 64.28298
                      - current: 1.701502
                        voltage: 64.68024
                      - current: 1.698386
                        voltage: 65.11548
                      - current: 1.694605
                        voltage: 65.48322
                      - current: 1.690855
                        voltage: 65.85932
                      - current: 1.687146
                        voltage: 66.2465
                      - current: 1.683733
                        voltage: 66.57354
                      - current: 1.679602
                        voltage: 66.90591
                      - current: 1.675078
                        voltage: 67.26862
                      - current: 1.670629
                        voltage: 67.58372
                      - current: 1.666355
                        voltage: 67.87814
                      - current: 1.661075
                        voltage: 68.19975
                      - current: 1.655858
                        voltage: 68.52807
                      - current: 1.650237
                        voltage: 68.83883
                      - current: 1.64474
                        voltage: 69.13969
                      - current: 1.638752
                        voltage: 69.45258
                      - current: 1.63234
                        voltage: 69.77399
                      - current: 1.625599
                        voltage: 70.10053
                      - current: 1.618559
                        voltage: 70.4045
                      - current: 1.610944
                        voltage: 70.71947
                      - current: 1.602873
                        voltage: 71.04424
                      - current: 1.594674
                        voltage: 71.3716
                      - current: 1.585879
                        voltage: 71.68966
                      - current: 1.576257
                        voltage: 72.01475
                      - current: 1.566365
                        voltage: 72.34869
                      - current: 1.555734
                        voltage: 72.69044
                      - current: 1.544749
                        voltage: 73.02423
                      - current: 1.532634
                        voltage: 73.35306
                      - current: 1.519888
                        voltage: 73.69888
                      - current: 1.506708
                        voltage: 74.0535
                      - current: 1.492797
                        voltage: 74.39709
                      - current: 1.477721
                        voltage: 74.74595
                      - current: 1.46162
                        voltage: 75.11386
                      - current: 1.445106
                        voltage: 75.47912
                      - current: 1.427301
                        voltage: 75.82893
                      - current: 1.408461
                        voltage: 76.1953
                      - current: 1.388451
                        voltage: 76.57326
                      - current: 1.367779
                        voltage: 76.95535
                      - current: 1.345829
                        voltage: 77.32045
                      - current: 1.322418
                        voltage: 77.70255
                      - current: 1.297355
                        voltage: 78.09526
                      - current: 1.271246
                        voltage: 78.49223
                      - current: 1.243498
                        voltage: 78.87733
                      - current: 1.214249
                        voltage: 79.27168
                      - current: 1.183379
                        voltage: 79.69186
                      - current: 1.151163
                        voltage: 80.10628
                      - current: 1.116907
                        voltage: 80.51228
                      - current: 1.080594
                        voltage: 80.92535
                      - current: 1.042224
                        voltage: 81.3548
                      - current: 1.002047
                        voltage: 81.78822
                      - current: 0.9598784
                        voltage: 82.20805
                      - current: 0.9155341
                        voltage: 82.64005
                      - current: 0.8691744
                        voltage: 83.09194
                      - current: 0.820051
                        voltage: 83.55133
                      - current: 0.7681606
                        voltage: 83.99706
                      - current: 0.7136533
                        voltage: 84.45084
                      - current: 0.6565516
                        voltage: 84.91228
                      - current: 0.597256
                        voltage: 85.38618
                      - current: 0.5353064
                        voltage: 85.84328
                      - current: 0.4708288
                        voltage: 86.31159
                      - current: 0.4031724
                        voltage: 86.8019
                      - current: 0.3326936
                        voltage: 87.27722
                      - current: 0.2602936
                        voltage: 87.7439
                      - current: 0.18666
                        voltage: 88.20272
                      - current: 0.1154919
                        voltage: 88.65323
                      - current: 0.05414752
                        voltage: 89.02916
                  - temperature: 35
                    irradiance: 800
                    dataPoints:
                      - current: 0
                        voltage: 0
                      - current: 1.782696
                        voltage: -1.934324
                      - current: 1.780743
                        voltage: -1.870275
                      - current: 1.778793
                        voltage: -1.811602
                      - current: 1.777387
                        voltage: -1.722681
                      - current: 1.775993
                        voltage: -1.582704
                      - current: 1.775111
                        voltage: -1.405731
                      - current: 1.774823
                        voltage: -1.183132
                      - current: 1.774653
                        voltage: -0.8481559
                      - current: 1.774574
                        voltage: -0.3807269
                      - current: 1.774276
                        voltage: 0.205052
                      - current: 1.774513
                        voltage: 0.9079445
                      - current: 1.774015
                        voltage: 1.722589
                      - current: 1.773559
                        voltage: 2.664983
                      - current: 1.773329
                        voltage: 3.714867
                      - current: 1.773408
                        voltage: 4.87551
                      - current: 1.772824
                        voltage: 6.158923
                      - current: 1.772243
                        voltage: 7.50502
                      - current: 1.772267
                        voltage: 8.949987
                      - current: 1.771861
                        voltage: 10.44461
                      - current: 1.770965
                        voltage: 11.99515
                      - current: 1.770376
                        voltage: 13.59135
                      - current: 1.769913
                        voltage: 15.24493
                      - current: 1.769342
                        voltage: 16.88357
                      - current: 1.769038
                        voltage: 18.55881
                      - current: 1.768383
                        voltage: 20.3069
                      - current: 1.767473
                        voltage: 22.05931
                      - current: 1.76665
                        voltage: 23.62293
                      - current: 1.766042
                        voltage: 25.13033
                      - current: 1.765118
                        voltage: 26.68256
                      - current: 1.764315
                        voltage: 28.25562
                      - current: 1.763585
                        voltage: 29.84755
                      - current: 1.762628
                        voltage: 31.40558
                      - current: 1.76165
                        voltage: 32.91952
                      - current: 1.76092
                        voltage: 34.32148
                      - current: 1.760083
                        voltage: 35.63923
                      - current: 1.758715
                        voltage: 36.99877
                      - current: 1.757571
                        voltage: 38.25579
                      - current: 1.756455
                        voltage: 39.38716
                      - current: 1.75559
                        voltage: 40.64747
                      - current: 1.754188
                        voltage: 41.88117
                      - current: 1.752961
                        voltage: 43.12992
                      - current: 1.751749
                        voltage: 44.417
                      - current: 1.750658
                        voltage: 45.67098
                      - current: 1.749385
                        voltage: 46.94712
                      - current: 1.747744
                        voltage: 48.32195
                      - current: 1.746536
                        voltage: 49.69078
                      - current: 1.745153
                        voltage: 50.96887
                      - current: 1.743056
                        voltage: 52.20852
                      - current: 1.741349
                        voltage: 53.3908
                      - current: 1.739841
                        voltage: 54.49593
                      - current: 1.737801
                        voltage: 55.50145
                      - current: 1.736086
                        voltage: 56.41797
                      - current: 1.734116
                        voltage: 57.31064
                      - current: 1.732008
                        voltage: 58.05783
                      - current: 1.730424
                        voltage: 58.69126
                      - current: 1.727952
                        voltage: 59.42493
                      - current: 1.725736
                        voltage: 60.06834
                      - current: 1.723414
                        voltage: 60.71612
                      - current: 1.720896
                        voltage: 61.33414
                      - current: 1.718419
                        voltage: 61.85944
                      - current: 1.71571
                        voltage: 62.37487
                      - current: 1.712964
                        voltage: 62.92265
                      - current: 1.710477
                        voltage: 63.38798
                      - current: 1.707407
                        voltage: 63.82022
                      - current: 1.704336
                        voltage: 64.28298
                      - current: 1.701502
                        voltage: 64.68024
                      - current: 1.698386
                        voltage: 65.11548
                      - current: 1.694605
                        voltage: 65.48322
                      - current: 1.690855
                        voltage: 65.85932
                      - current: 1.687146
                        voltage: 66.2465
                      - current: 1.683733
                        voltage: 66.57354
                      - current: 1.679602
                        voltage: 66.90591
                      - current: 1.675078
                        voltage: 67.26862
                      - current: 1.670629
                        voltage: 67.58372
                      - current: 1.666355
                        voltage: 67.87814
                      - current: 1.661075
                        voltage: 68.19975
                      - current: 1.655858
                        voltage: 68.52807
                      - current: 1.650237
                        voltage: 68.83883
                      - current: 1.64474
                        voltage: 69.13969
                      - current: 1.638752
                        voltage: 69.45258
                      - current: 1.63234
                        voltage: 69.77399
                      - current: 1.625599
                        voltage: 70.10053
                      - current: 1.618559
                        voltage: 70.4045
                      - current: 1.610944
                        voltage: 70.71947
                      - current: 1.602873
                        voltage: 71.04424
                      - current: 1.594674
                        voltage: 71.3716
                      - current: 1.585879
                        voltage: 71.68966
                      - current: 1.576257
                        voltage: 72.01475
                      - current: 1.566365
                        voltage: 72.34869
                      - current: 1.555734
                        voltage: 72.69044
                      - current: 1.544749
                        voltage: 73.02423
                      - current: 1.532634
                        voltage: 73.35306
                      - current: 1.519888
                        voltage: 73.69888
                      - current: 1.506708
                        voltage: 74.0535
                      - current: 1.492797
                        voltage: 74.39709
                      - current: 1.477721
                        voltage: 74.74595
                      - current: 1.46162
                        voltage: 75.11386
                      - current: 1.445106
                        voltage: 75.47912
                      - current: 1.427301
                        voltage: 75.82893
                      - current: 1.408461
                        voltage: 76.1953
                      - current: 1.388451
                        voltage: 76.57326
                      - current: 1.367779
                        voltage: 76.95535
                      - current: 1.345829
                        voltage: 77.32045
                      - current: 1.322418
                        voltage: 77.70255
                      - current: 1.297355
                        voltage: 78.09526
                      - current: 1.271246
                        voltage: 78.49223
                      - current: 1.243498
                        voltage: 78.87733
                      - current: 1.214249
                        voltage: 79.27168
                      - current: 1.183379
                        voltage: 79.69186
                      - current: 1.151163
                        voltage: 80.10628
                      - current: 1.116907
                        voltage: 80.51228
                      - current: 1.080594
                        voltage: 80.92535
                      - current: 1.042224
                        voltage: 81.3548
                      - current: 1.002047
                        voltage: 81.78822
                      - current: 0.9598784
                        voltage: 82.20805
                      - current: 0.9155341
                        voltage: 82.64005
                      - current: 0.8691744
                        voltage: 83.09194
                      - current: 0.820051
                        voltage: 83.55133
                      - current: 0.7681606
                        voltage: 83.99706
                      - current: 0.7136533
                        voltage: 84.45084
                      - current: 0.6565516
                        voltage: 84.91228
                      - current: 0.597256
                        voltage: 85.38618
                      - current: 0.5353064
                        voltage: 85.84328
                      - current: 0.4708288
                        voltage: 86.31159
                      - current: 0.4031724
                        voltage: 86.8019
                      - current: 0.3326936
                        voltage: 87.27722
                      - current: 0.2602936
                        voltage: 87.7439
                      - current: 0.18666
                        voltage: 88.20272
                      - current: 0.1154919
                        voltage: 88.65323
                      - current: 0.05414752
                        voltage: 89.02916
                  - temperature: 45
                    irradiance: 800
                    dataPoints:
                      - current: 0
                        voltage: 0
                      - current: 1.782696
                        voltage: -1.934324
                      - current: 1.780743
                        voltage: -1.870275
                      - current: 1.778793
                        voltage: -1.811602
                      - current: 1.777387
                        voltage: -1.722681
                      - current: 1.775993
                        voltage: -1.582704
                      - current: 1.775111
                        voltage: -1.405731
                      - current: 1.774823
                        voltage: -1.183132
                      - current: 1.774653
                        voltage: -0.8481559
                      - current: 1.774574
                        voltage: -0.3807269
                      - current: 1.774276
                        voltage: 0.205052
                      - current: 1.774513
                        voltage: 0.9079445
                      - current: 1.774015
                        voltage: 1.722589
                      - current: 1.773559
                        voltage: 2.664983
                      - current: 1.773329
                        voltage: 3.714867
                      - current: 1.773408
                        voltage: 4.87551
                      - current: 1.772824
                        voltage: 6.158923
                      - current: 1.772243
                        voltage: 7.50502
                      - current: 1.772267
                        voltage: 8.949987
                      - current: 1.771861
                        voltage: 10.44461
                      - current: 1.770965
                        voltage: 11.99515
                      - current: 1.770376
                        voltage: 13.59135
                      - current: 1.769913
                        voltage: 15.24493
                      - current: 1.769342
                        voltage: 16.88357
                      - current: 1.769038
                        voltage: 18.55881
                      - current: 1.768383
                        voltage: 20.3069
                      - current: 1.767473
                        voltage: 22.05931
                      - current: 1.76665
                        voltage: 23.62293
                      - current: 1.766042
                        voltage: 25.13033
                      - current: 1.765118
                        voltage: 26.68256
                      - current: 1.764315
                        voltage: 28.25562
                      - current: 1.763585
                        voltage: 29.84755
                      - current: 1.762628
                        voltage: 31.40558
                      - current: 1.76165
                        voltage: 32.91952
                      - current: 1.76092
                        voltage: 34.32148
                      - current: 1.760083
                        voltage: 35.63923
                      - current: 1.758715
                        voltage: 36.99877
                      - current: 1.757571
                        voltage: 38.25579
                      - current: 1.756455
                        voltage: 39.38716
                      - current: 1.75559
                        voltage: 40.64747
                      - current: 1.754188
                        voltage: 41.88117
                      - current: 1.752961
                        voltage: 43.12992
                      - current: 1.751749
                        voltage: 44.417
                      - current: 1.750658
                        voltage: 45.67098
                      - current: 1.749385
                        voltage: 46.94712
                      - current: 1.747744
                        voltage: 48.32195
                      - current: 1.746536
                        voltage: 49.69078
                      - current: 1.745153
                        voltage: 50.96887
                      - current: 1.743056
                        voltage: 52.20852
                      - current: 1.741349
                        voltage: 53.3908
                      - current: 1.739841
                        voltage: 54.49593
                      - current: 1.737801
                        voltage: 55.50145
                      - current: 1.736086
                        voltage: 56.41797
                      - current: 1.734116
                        voltage: 57.31064
                      - current: 1.732008
                        voltage: 58.05783
                      - current: 1.730424
                        voltage: 58.69126
                      - current: 1.727952
                        voltage: 59.42493
                      - current: 1.725736
                        voltage: 60.06834
                      - current: 1.723414
                        voltage: 60.71612
                      - current: 1.720896
                        voltage: 61.33414
                      - current: 1.718419
                        voltage: 61.85944
                      - current: 1.71571
                        voltage: 62.37487
                      - current: 1.712964
                        voltage: 62.92265
                      - current: 1.710477
                        voltage: 63.38798
                      - current: 1.707407
                        voltage: 63.82022
                      - current: 1.704336
                        voltage: 64.28298
                      - current: 1.701502
                        voltage: 64.68024
                      - current: 1.698386
                        voltage: 65.11548
                      - current: 1.694605
                        voltage: 65.48322
                      - current: 1.690855
                        voltage: 65.85932
                      - current: 1.687146
                        voltage: 66.2465
                      - current: 1.683733
                        voltage: 66.57354
                      - current: 1.679602
                        voltage: 66.90591
                      - current: 1.675078
                        voltage: 67.26862
                      - current: 1.670629
                        voltage: 67.58372
                      - current: 1.666355
                        voltage: 67.87814
                      - current: 1.661075
                        voltage: 68.19975
                      - current: 1.655858
                        voltage: 68.52807
                      - current: 1.650237
                        voltage: 68.83883
                      - current: 1.64474
                        voltage: 69.13969
                      - current: 1.638752
                        voltage: 69.45258
                      - current: 1.63234
                        voltage: 69.77399
                      - current: 1.625599
                        voltage: 70.10053
                      - current: 1.618559
                        voltage: 70.4045
                      - current: 1.610944
                        voltage: 70.71947
                      - current: 1.602873
                        voltage: 71.04424
                      - current: 1.594674
                        voltage: 71.3716
                      - current: 1.585879
                        voltage: 71.68966
                      - current: 1.576257
                        voltage: 72.01475
                      - current: 1.566365
                        voltage: 72.34869
                      - current: 1.555734
                        voltage: 72.69044
                      - current: 1.544749
                        voltage: 73.02423
                      - current: 1.532634
                        voltage: 73.35306
                      - current: 1.519888
                        voltage: 73.69888
                      - current: 1.506708
                        voltage: 74.0535
                      - current: 1.492797
                        voltage: 74.39709
                      - current: 1.477721
                        voltage: 74.74595
                      - current: 1.46162
                        voltage: 75.11386
                      - current: 1.445106
                        voltage: 75.47912
                      - current: 1.427301
                        voltage: 75.82893
                      - current: 1.408461
                        voltage: 76.1953
                      - current: 1.388451
                        voltage: 76.57326
                      - current: 1.367779
                        voltage: 76.95535
                      - current: 1.345829
                        voltage: 77.32045
                      - current: 1.322418
                        voltage: 77.70255
                      - current: 1.297355
                        voltage: 78.09526
                      - current: 1.271246
                        voltage: 78.49223
                      - current: 1.243498
                        voltage: 78.87733
                      - current: 1.214249
                        voltage: 79.27168
                      - current: 1.183379
                        voltage: 79.69186
                      - current: 1.151163
                        voltage: 80.10628
                      - current: 1.116907
                        voltage: 80.51228
                      - current: 1.080594
                        voltage: 80.92535
                      - current: 1.042224
                        voltage: 81.3548
                      - current: 1.002047
                        voltage: 81.78822
                      - current: 0.9598784
                        voltage: 82.20805
                      - current: 0.9155341
                        voltage: 82.64005
                      - current: 0.8691744
                        voltage: 83.09194
                      - current: 0.820051
                        voltage: 83.55133
                      - current: 0.7681606
                        voltage: 83.99706
                      - current: 0.7136533
                        voltage: 84.45084
                      - current: 0.6565516
                        voltage: 84.91228
                      - current: 0.597256
                        voltage: 85.38618
                      - current: 0.5353064
                        voltage: 85.84328
                      - current: 0.4708288
                        voltage: 86.31159
                      - current: 0.4031724
                        voltage: 86.8019
                      - current: 0.3326936
                        voltage: 87.27722
                      - current: 0.2602936
                        voltage: 87.7439
                      - current: 0.18666
                        voltage: 88.20272
                      - current: 0.1154919
                        voltage: 88.65323
                      - current: 0.05414752
                        voltage: 89.02916
                  - temperature: 45
                    irradiance: 600
                    dataPoints:
                      - current: 0
                        voltage: 0
                      - current: 1.782696
                        voltage: -1.934324
                      - current: 1.780743
                        voltage: -1.870275
                      - current: 1.778793
                        voltage: -1.811602
                      - current: 1.777387
                        voltage: -1.722681
                      - current: 1.775993
                        voltage: -1.582704
                      - current: 1.775111
                        voltage: -1.405731
                      - current: 1.774823
                        voltage: -1.183132
                      - current: 1.774653
                        voltage: -0.8481559
                      - current: 1.774574
                        voltage: -0.3807269
                      - current: 1.774276
                        voltage: 0.205052
                      - current: 1.774513
                        voltage: 0.9079445
                      - current: 1.774015
                        voltage: 1.722589
                      - current: 1.773559
                        voltage: 2.664983
                      - current: 1.773329
                        voltage: 3.714867
                      - current: 1.773408
                        voltage: 4.87551
                      - current: 1.772824
                        voltage: 6.158923
                      - current: 1.772243
                        voltage: 7.50502
                      - current: 1.772267
                        voltage: 8.949987
                      - current: 1.771861
                        voltage: 10.44461
                      - current: 1.770965
                        voltage: 11.99515
                      - current: 1.770376
                        voltage: 13.59135
                      - current: 1.769913
                        voltage: 15.24493
                      - current: 1.769342
                        voltage: 16.88357
                      - current: 1.769038
                        voltage: 18.55881
                      - current: 1.768383
                        voltage: 20.3069
                      - current: 1.767473
                        voltage: 22.05931
                      - current: 1.76665
                        voltage: 23.62293
                      - current: 1.766042
                        voltage: 25.13033
                      - current: 1.765118
                        voltage: 26.68256
                      - current: 1.764315
                        voltage: 28.25562
                      - current: 1.763585
                        voltage: 29.84755
                      - current: 1.762628
                        voltage: 31.40558
                      - current: 1.76165
                        voltage: 32.91952
                      - current: 1.76092
                        voltage: 34.32148
                      - current: 1.760083
                        voltage: 35.63923
                      - current: 1.758715
                        voltage: 36.99877
                      - current: 1.757571
                        voltage: 38.25579
                      - current: 1.756455
                        voltage: 39.38716
                      - current: 1.75559
                        voltage: 40.64747
                      - current: 1.754188
                        voltage: 41.88117
                      - current: 1.752961
                        voltage: 43.12992
                      - current: 1.751749
                        voltage: 44.417
                      - current: 1.750658
                        voltage: 45.67098
                      - current: 1.749385
                        voltage: 46.94712
                      - current: 1.747744
                        voltage: 48.32195
                      - current: 1.746536
                        voltage: 49.69078
                      - current: 1.745153
                        voltage: 50.96887
                      - current: 1.743056
                        voltage: 52.20852
                      - current: 1.741349
                        voltage: 53.3908
                      - current: 1.739841
                        voltage: 54.49593
                      - current: 1.737801
                        voltage: 55.50145
                      - current: 1.736086
                        voltage: 56.41797
                      - current: 1.734116
                        voltage: 57.31064
                      - current: 1.732008
                        voltage: 58.05783
                      - current: 1.730424
                        voltage: 58.69126
                      - current: 1.727952
                        voltage: 59.42493
                      - current: 1.725736
                        voltage: 60.06834
                      - current: 1.723414
                        voltage: 60.71612
                      - current: 1.720896
                        voltage: 61.33414
                      - current: 1.718419
                        voltage: 61.85944
                      - current: 1.71571
                        voltage: 62.37487
                      - current: 1.712964
                        voltage: 62.92265
                      - current: 1.710477
                        voltage: 63.38798
                      - current: 1.707407
                        voltage: 63.82022
                      - current: 1.704336
                        voltage: 64.28298
                      - current: 1.701502
                        voltage: 64.68024
                      - current: 1.698386
                        voltage: 65.11548
                      - current: 1.694605
                        voltage: 65.48322
                      - current: 1.690855
                        voltage: 65.85932
                      - current: 1.687146
                        voltage: 66.2465
                      - current: 1.683733
                        voltage: 66.57354
                      - current: 1.679602
                        voltage: 66.90591
                      - current: 1.675078
                        voltage: 67.26862
                      - current: 1.670629
                        voltage: 67.58372
                      - current: 1.666355
                        voltage: 67.87814
                      - current: 1.661075
                        voltage: 68.19975
                      - current: 1.655858
                        voltage: 68.52807
                      - current: 1.650237
                        voltage: 68.83883
                      - current: 1.64474
                        voltage: 69.13969
                      - current: 1.638752
                        voltage: 69.45258
                      - current: 1.63234
                        voltage: 69.77399
                      - current: 1.625599
                        voltage: 70.10053
                      - current: 1.618559
                        voltage: 70.4045
                      - current: 1.610944
                        voltage: 70.71947
                      - current: 1.602873
                        voltage: 71.04424
                      - current: 1.594674
                        voltage: 71.3716
                      - current: 1.585879
                        voltage: 71.68966
                      - current: 1.576257
                        voltage: 72.01475
                      - current: 1.566365
                        voltage: 72.34869
                      - current: 1.555734
                        voltage: 72.69044
                      - current: 1.544749
                        voltage: 73.02423
                      - current: 1.532634
                        voltage: 73.35306
                      - current: 1.519888
                        voltage: 73.69888
                      - current: 1.506708
                        voltage: 74.0535
                      - current: 1.492797
                        voltage: 74.39709
                      - current: 1.477721
                        voltage: 74.74595
                      - current: 1.46162
                        voltage: 75.11386
                      - current: 1.445106
                        voltage: 75.47912
                      - current: 1.427301
                        voltage: 75.82893
                      - current: 1.408461
                        voltage: 76.1953
                      - current: 1.388451
                        voltage: 76.57326
                      - current: 1.367779
                        voltage: 76.95535
                      - current: 1.345829
                        voltage: 77.32045
                      - current: 1.322418
                        voltage: 77.70255
                      - current: 1.297355
                        voltage: 78.09526
                      - current: 1.271246
                        voltage: 78.49223
                      - current: 1.243498
                        voltage: 78.87733
                      - current: 1.214249
                        voltage: 79.27168
                      - current: 1.183379
                        voltage: 79.69186
                      - current: 1.151163
                        voltage: 80.10628
                      - current: 1.116907
                        voltage: 80.51228
                      - current: 1.080594
                        voltage: 80.92535
                      - current: 1.042224
                        voltage: 81.3548
                      - current: 1.002047
                        voltage: 81.78822
                      - current: 0.9598784
                        voltage: 82.20805
                      - current: 0.9155341
                        voltage: 82.64005
                      - current: 0.8691744
                        voltage: 83.09194
                      - current: 0.820051
                        voltage: 83.55133
                      - current: 0.7681606
                        voltage: 83.99706
                      - current: 0.7136533
                        voltage: 84.45084
                      - current: 0.6565516
                        voltage: 84.91228
                      - current: 0.597256
                        voltage: 85.38618
                      - current: 0.5353064
                        voltage: 85.84328
                      - current: 0.4708288
                        voltage: 86.31159
                      - current: 0.4031724
                        voltage: 86.8019
                      - current: 0.3326936
                        voltage: 87.27722
                      - current: 0.2602936
                        voltage: 87.7439
                      - current: 0.18666
                        voltage: 88.20272
                      - current: 0.1154919
                        voltage: 88.65323
                      - current: 0.05414752
                        voltage: 89.02916
      responses:
        '200':
          description: Processed IV curve result
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/ServerError'
components:
  responses:
    BadRequest:
      description: |
        The request was rejected. PlantPredict returns one of two shapes:

        * `application/json` with `{message, modelState}` for input
          validation errors (ASP.NET Web API model-state). The `modelState`
          map keys field names to lists of human-readable error messages.
        * `text/plain` with a free-form message for runtime / database
          errors that bubble up before validation completes.

        Clients should branch on the `Content-Type` header.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ModelStateError'
          example:
            message: The request is invalid.
            modelState:
              latitude:
                - The field Latitude must be between -90 and 90.
        text/plain:
          schema:
            type: string
          example: A successfully completed prediction cannot be cancelled.
    Unauthorized:
      description: >-
        Missing or invalid bearer token. The response body is empty and no
        `Content-Type` header is set; the 401 status code is the only signal.
        Fetch a fresh token (see the **Authentication** section of the API
        description) and retry.
    ServerError:
      description: |
        Unexpected server-side error. The body is usually a plain-text message
        but its structure is not guaranteed — treat it as opaque diagnostic
        text. Common causes: database constraint violation, downstream
        service timeout, internal exception. Retry-safe for idempotent
        requests; for non-idempotent ones, verify state before retrying.
      content:
        text/plain:
          schema:
            type: string
          example: An error has occurred.
  schemas:
    ModelStateError:
      type: object
      description: |
        ASP.NET Web API validation error. `modelState` maps the offending
        field name (or `request`) to a list of human-readable messages.
      properties:
        message:
          type: string
        modelState:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
      required:
        - message
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Pass `Authorization: Bearer <token>` on every request. See the
        **Authentication** section of the API description for how to fetch a
        token.

````