EnerSim API Documentatie

Energie-simulatie API voor ontwikkelaars en AI-systemen

Realtime Simulaties

Ontvang direct berekeningen voor batterijen, zonnepanelen en energiebesparing

Automatische Logging

Alle API-aanroepen worden automatisch gelogd voor analyse en monitoring

Geen API Key Nodig

Publiek toegankelijk endpoint, geen authenticatie vereist

API Endpoint

POST https://fbkhhcsplwxkorfhgqwr.supabase.co/functions/v1/public-simulate

Interactieve Test

Test de API direct vanuit deze pagina met voorbeelddata

Interactieve Code Generator

Vul je eigen test data in en krijg automatisch werkende code voorbeelden voor cURL, Python en JavaScript.

Test Data Invoeren

Tip: Pas de waarden hierboven aan en de code voorbeelden hieronder worden automatisch bijgewerkt met jouw data.

cURL (Gegenereerd met jouw data)

curl -X POST 'https://fbkhhcsplwxkorfhgqwr.supabase.co/functions/v1/public-simulate' \
  -H 'Content-Type: application/json' \
  -d '{
  "location_name": "Test Bedrijf BV",
  "annual_consumption_kwh": 50000,
  "location_address": "Hoofdstraat 1",
  "city": "Amsterdam",
  "solar_capacity_kwp": 30,
  "battery_capacity_kwh": 50,
  "battery_power_kw": 25,
  "ev_charger_power_kw": 22,
  "electricity_purchase_tariff": 0.3,
  "electricity_feed_in_tariff": 0.1
}'

Python (Gegenereerd met jouw data)

import requests

url = "https://fbkhhcsplwxkorfhgqwr.supabase.co/functions/v1/public-simulate"
payload = {
    "location_name": "Test Bedrijf BV",
    "annual_consumption_kwh": 50000,
    "location_address": "Hoofdstraat 1",
    "city": "Amsterdam",
    "solar_capacity_kwp": 30,
    "battery_capacity_kwh": 50,
    "battery_power_kw": 25,
    "ev_charger_power_kw": 22,
    "electricity_purchase_tariff": 0.3,
    "electricity_feed_in_tariff": 0.1
}

response = requests.post(url, json=payload)
data = response.json()
print(data)

JavaScript (Gegenereerd met jouw data)

const response = await fetch('https://fbkhhcsplwxkorfhgqwr.supabase.co/functions/v1/public-simulate', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
  "location_name": "Test Bedrijf BV",
  "annual_consumption_kwh": 50000,
  "location_address": "Hoofdstraat 1",
  "city": "Amsterdam",
  "solar_capacity_kwp": 30,
  "battery_capacity_kwh": 50,
  "battery_power_kw": 25,
  "ev_charger_power_kw": 22,
  "electricity_purchase_tariff": 0.3,
  "electricity_feed_in_tariff": 0.1
})
});

const data = await response.json();
console.log(data);

Request Parameters

Alle parameters die beschikbaar zijn in de API. Alleen location_name en annual_consumption_kwh zijn verplicht.

VERPLICHTBasis Locatie Gegevens

location_name(string)

Naam van de locatie of het bedrijf

annual_consumption_kwh(number)

Jaarverbruik in kWh

OPTIONEELLocatie Informatie

location_address(string)

Straatnaam en huisnummer

city(string)

Plaats

postal_code(string)

Postcode

country(string)

Land (standaard: "Nederland")

ean_code(string)

EAN code van de aansluiting

grid_operator(string)

Netbeheerder

business_type(string)

Type bedrijf (bijv. "Kantoor", "Productie", "Retail")

OPTIONEELNetaansluiting

contracted_import_power_kw(number)

Gecontracteerd importvermogen in kW

contracted_export_power_kw(number)

Gecontracteerd exportvermogen in kW

peak_power_kw(number)

Piekvermogen in kW

OPTIONEELZonnepanelen

solar_capacity_kwp(number)

PV-vermogen in kWp

solar_tilt_angle(number)

Hellingshoek in graden (standaard: 30)

solar_azimuth(number)

Azimuth in graden, 0=Zuid, 90=West, 270=Oost (standaard: 0)

solar_east_west_split(boolean)

Oost-West opstelling (standaard: false)

solar_azimuth_west(number)

Azimuth west kant bij oost-west opstelling (standaard: 270)

OPTIONEELBatterij Systeem

battery_capacity_kwh(number)

Batterijcapaciteit in kWh

battery_power_kw(number)

Batterijvermogen in kW

battery_efficiency_percentage(number)

Round-trip efficiency percentage (standaard: 90)

battery_cycle_warranty(number)

Cycle garantie aantal (standaard: 6000)

battery_dod_percentage(number)

Depth of Discharge percentage (standaard: 90)

enable_peak_shaving(boolean)

Peak shaving activeren (standaard: false)

enable_solar_optimization(boolean)

Zonne-energie optimalisatie (standaard: false)

enable_battery_trading(boolean)

Batterijhandel activeren (standaard: false)

trading_markets(string)

Handelsmarkten: "Nee", "Imbalans", of "FCR" (standaard: "Nee")

OPTIONEELElektrisch Vervoer

ev_charger_power_kw(number)

Laadvermogen per laadpaal in kW

ev_usage_type(string)

Type gebruik: "Eigen gebruik", "Derden", "Gemengd"

ev_charging_tariff(number)

Laadtarief in EUR/kWh (standaard: 0.25)

ev_own_use_percentage(number)

Percentage eigen gebruik (standaard: 100)

ev_third_party_percentage(number)

Percentage gebruik door derden (standaard: 0)

ev_alternative_location_tariff(number)

Alternatief locatie tarief in EUR/kWh (standaard: 0.35)

ev_charge_from_battery(boolean)

Laden vanuit batterij toestaan (standaard: false)

OPTIONEELWarmtepomp

heat_pump_power_kw(number)

Warmtepomp vermogen in kW

heat_pump_cop(number)

Coefficient of Performance (standaard: 4)

heat_pump_type(string)

Type: "All electric" of "Hybride" (standaard: "All electric")

current_gas_consumption_m3(number)

Huidig gasverbruik in m³ per jaar

OPTIONEELOverige Assets

wind_turbine_power_kw(number)

Windturbine vermogen in kW

generator_power_kw(number)

Generator vermogen in kW

generator_fuel_type(string)

Brandstoftype: "Diesel", "Gas", "Bio" (standaard: "Diesel")

OPTIONEELExtra Verbruik / Productie

extra_consumption_kwh(number)

Extra jaarverbruik in kWh

extra_consumption_type(string)

Type: "Continu 24/7", "Blokprofiel", "Dagelijks" (standaard: "Continu 24/7")

extra_consumption_power_kw(number)

Extra vermogen in kW (voor blokprofiel)

extra_consumption_days(array)

Dagen: ["ma","di","wo","do","vr","za","zo"]

extra_consumption_start_hour(number)

Start uur (0-23, standaard: 0)

extra_consumption_end_hour(number)

Eind uur (0-23, standaard: 23)

extra_consumption_description(string)

Beschrijving van het extra verbruik

OPTIONEELEnergie Tarieven & Kosten

electricity_purchase_tariff(number)

Inkoop tarief in EUR/kWh (standaard: 0.30)

electricity_feed_in_tariff(number)

Teruglevering tarief in EUR/kWh (standaard: 0.10)

installation_costs(number)

Installatiekosten in EUR

operational_costs_per_year(number)

Operationele kosten per jaar in EUR

OPTIONEELSimulatie Instellingen

simulation_name(string)

Naam voor deze simulatie

description(string)

Beschrijving van de simulatie

optimize_for(string)

Optimalisatie doel: "cost", "peak_shaving", "self_consumption" (standaard: "cost")

Response Format

{
  "simulation_id": "uuid",
  "status": "success",
  "results": {
    "annual_cost_savings": 4500,
    "annual_energy_savings_kwh": 15000,
    "peak_reduction_kw": 25,
    "self_consumption_percentage": 60,
    "co2_reduction_kg": 6000,
    "payback_period_years": 5.5,
    "battery_cycles_per_year": 300,
    "import_reduction_percentage": 30,
    "export_reduction_percentage": 50
  }
}

OpenAPI Specificatie

Download de volledige OpenAPI 3.0 specificatie voor gebruik met API tools zoals Postman, Swagger, of AI-systemen.

{
  "openapi": "3.0.0",
  "info": {
    "title": "EnerSim Simulation API",
    "version": "1.0.0",
    "description": "API voor energie-simulaties met batterijen, zonnepanelen en elektrische voertuigen",
    "contact": {
      "name": "EnerSim Support",
      "url": "https://www.enersim.nl"
    }
  },
  "servers": [
    {
      "url": "https://fbkhhcsplwxkorfhgqwr.supabase.co/functions/v1",
      "description": "Production server"
    }
  ],
  "paths": {
    "/public-simulate": {
      "post": {
        "summary": "Voer een energie-simulatie uit",
        "description": "Berekent besparingen en impact van batterijen, zonnepanelen en andere energie-assets",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "location_name",
                  "annual_consumption_kwh"
                ],
                "properties": {
                  "location_name": {
                    "type": "string",
                    "example": "Mijn Bedrijf BV"
                  },
                  "location_address": {
                    "type": "string",
                    "example": "Hoofdstraat 1, Amsterdam"
                  },
                  "annual_consumption_kwh": {
                    "type": "number",
                    "example": 50000
                  },
                  "contracted_import_power_kw": {
                    "type": "number",
                    "example": 35
                  },
                  "contracted_export_power_kw": {
                    "type": "number",
                    "example": 25
                  },
                  "solar_capacity_kwp": {
                    "type": "number",
                    "example": 30
                  },
                  "battery_capacity_kwh": {
                    "type": "number",
                    "example": 50
                  },
                  "battery_power_kw": {
                    "type": "number",
                    "example": 25
                  },
                  "battery_dod_percentage": {
                    "type": "number",
                    "example": 90
                  },
                  "ev_chargers_count": {
                    "type": "number",
                    "example": 2
                  },
                  "ev_charger_power_kw": {
                    "type": "number",
                    "example": 22
                  },
                  "ev_annual_kwh": {
                    "type": "number",
                    "example": 10000
                  },
                  "has_heat_pump": {
                    "type": "boolean",
                    "example": false
                  },
                  "heat_pump_type": {
                    "type": "string",
                    "example": "lucht-water"
                  },
                  "annual_gas_consumption_m3": {
                    "type": "number",
                    "example": 0
                  },
                  "has_generator": {
                    "type": "boolean",
                    "example": false
                  },
                  "generator_power_kw": {
                    "type": "number",
                    "example": 0
                  },
                  "electricity_purchase_tariff": {
                    "type": "number",
                    "example": 0.3
                  },
                  "electricity_feed_in_tariff": {
                    "type": "number",
                    "example": 0.1
                  },
                  "network_tariff": {
                    "type": "number",
                    "example": 0.1
                  },
                  "optimize_for": {
                    "type": "string",
                    "enum": [
                      "cost",
                      "peak_shaving",
                      "self_consumption"
                    ],
                    "example": "cost"
                  },
                  "enable_battery_trading": {
                    "type": "boolean",
                    "example": false
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Simulatie succesvol uitgevoerd",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "simulation_id": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "success",
                        "error"
                      ]
                    },
                    "results": {
                      "type": "object",
                      "properties": {
                        "annual_cost_savings": {
                          "type": "number",
                          "description": "Jaarlijkse kostenbesparing in EUR"
                        },
                        "annual_energy_savings_kwh": {
                          "type": "number",
                          "description": "Jaarlijkse energiebesparing in kWh"
                        },
                        "peak_reduction_kw": {
                          "type": "number",
                          "description": "Piekreductie in kW"
                        },
                        "self_consumption_percentage": {
                          "type": "number",
                          "description": "Eigen verbruik percentage"
                        },
                        "co2_reduction_kg": {
                          "type": "number",
                          "description": "CO2 reductie in kg"
                        },
                        "payback_period_years": {
                          "type": "number",
                          "description": "Terugverdientijd in jaren"
                        },
                        "battery_cycles_per_year": {
                          "type": "number",
                          "description": "Aantal batterijcycli per jaar"
                        },
                        "import_reduction_percentage": {
                          "type": "number",
                          "description": "Import reductie percentage"
                        },
                        "export_reduction_percentage": {
                          "type": "number",
                          "description": "Export reductie percentage"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Ongeldige parameters"
          },
          "500": {
            "description": "Server error"
          }
        }
      }
    }
  }
}

Vragen of Hulp Nodig?

Neem contact op met ons team voor ondersteuning, aangepaste integraties of enterprise oplossingen.

Contact Opnemen