# Corrently

Corrently provides a suite of APIs offering real-time and forecasted data on renewable energy availability, CO₂ emissions, and electricity pricing, enabling users to optimize energy consumption and reduce carbon footprints.

- **Category:** analytics
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 23
- **Triggers:** 0
- **Slug:** `CORRENTLY`
- **Version:** 20260312_00

## Tools

### CO₂ Meter Update

**Slug:** `CORRENTLY_CO2_METER_UPDATE_READING`

Tool to create or update a CO₂ meter reading for emissions tracking. Use when sending new or updated electricity consumption readings to Corrently.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | Yes | German 5-digit postal code indicating the meter's location. |
| `time` | integer | No | Unix timestamp of the reading in seconds since epoch. Defaults to current server time if omitted. |
| `value` | number | Yes | New meter reading value (in watt-hours). |
| `source` | string | Yes | Unique identifier for the CO₂ meter. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Commit Strom-Quittung

**Slug:** `CORRENTLY_COMMIT_QUITTUNG`

Tool to finalize a Strom-Quittung (electricity receipt) after collecting transaction data. Use after gathering seller, buyer, and transaction details to create the final receipt.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | string | No | Quittung session account identifier. Optional identifier for linking the receipt to a session. |
| `tx_energy` | number | Yes | Amount of energy transferred in the transaction in kWh. |
| `tx_number` | string | Yes | Unique identifier for the transaction associated with this receipt. |
| `buyer_name` | string | Yes | Name of the buyer (energy consumer receiving the receipt). |
| `seller_name` | string | Yes | Name of the seller (energy provider or entity issuing the receipt). |
| `tx_duration` | number | Yes | Duration of the transaction in seconds. |
| `seller_email` | string | Yes | Email address of the seller for contact and receipt delivery. |
| `seller_zipcode` | string | Yes | Five-digit German postal code of the seller's location. |
| `seller_yrconsumption` | number | Yes | Yearly energy consumption of the seller in kWh. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Geocode Location

**Slug:** `CORRENTLY_GEOCODE_LOCATION`

Tool to geocode a free-text location into coordinates. Use when you need latitude and longitude from a place name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | Free-form location string (e.g., city, address, landmark). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Energy Schedule Computation

**Slug:** `CORRENTLY_GET_ENERGY_SCHEDULE`

Create an optimized operation schedule for energy-consuming devices based on the GrünstromIndex (Green Power Index). This tool determines the best time slots to run energy-intensive devices (heat pumps, EV chargers, etc.) by analyzing regional renewable energy availability, electricity prices, and CO2 emissions forecasts. Use this after collecting: - German postal code (required for regional data) - Desired optimization goal (price, co2, or comfort) - Number of hours the device needs to run

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | Yes | German 5-digit postal code (Postleitzahl) for location-specific green energy scheduling. Example: '69168'. |
| `requirements` | object | Yes | Device energy usage requirements and optimization preferences. |
| `coverageHours` | integer | No | Planning horizon in hours. Defaults to 24 hours (one day). Maximum typically 168 hours (one week). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Metering Reading

**Slug:** `CORRENTLY_GET_METERING_READING`

Tool to retrieve metered electricity reading with green/grey energy split and CO2 emissions data. Use when you need to check current meter readings or analyze energy consumption patterns for a Stromkonto.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | string | Yes | Account/Address (Stromkonto) to retrieve reading for. Must be a valid Ethereum address format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Stromkonto Balances

**Slug:** `CORRENTLY_GET_STROMKONTO_BALANCES`

Retrieve Stromkonto account balances from the energy blockchain ledger. Stromkonto is a ledger for green energy related transactions backed by Energychain blockchain to provide consensus of balances and transactions. Returns balance details across multiple sub-account types (green power bonus, generation, self-consumption, carbon offset, trees planted).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | string | No | Ethereum style address referencing a valid account (AKA Stromkonto). If not provided, returns balances for all accounts or default account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Stromkonto Choices

**Slug:** `CORRENTLY_GET_STROMKONTO_CHOICES`

Tool to get selectable contract choices for a Stromkonto customer. Use when you need to retrieve available balance and transaction options for an account.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | string | Yes | Ethereum-style address referencing a valid Stromkonto account (e.g., 0x0000000000000000000000000000000000000000). This parameter is required to avoid 502 errors. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get WiM Process Status

**Slug:** `CORRENTLY_GET_WIM_PROCESS_STATUS`

Retrieve status information for WiM (Wechselprozesse im Messwesen) metering change processes. WiM processes handle meter changes and allocation workflows in the German electricity system. Use this tool to check the current status of ongoing or completed metering change processes, track process progress, or verify when a WiM process was initiated.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `vid` | string | No | VID (Vorgangsidentifikation) key of the metering change process to query. If not provided, returns status for all processes accessible with the current authentication. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### GrünstromIndex Forecast

**Slug:** `CORRENTLY_GRUNSTROM_INDEX_FORECAST`

Tool to retrieve hourly green power forecast and CO2 data. Use after obtaining the user API key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | User/account identifier provided for API access. |
| `zip` | string | Yes | Five-digit German postal code of the location to query. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### GSI Best Hour

**Slug:** `CORRENTLY_GSI_BEST_HOUR`

Determines if now is the best time to turn on a device based on regional green energy (GrünstromIndex) forecasts in Germany. Returns true if the current hour has high renewable energy availability within the specified timeframe, false if waiting would be more sustainable.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | Stromkonto account address or API key for personalized forecasts. |
| `zip` | string | Yes | German 5-digit postal code (PLZ) for location-based green energy forecast. Required. |
| `hours` | integer | No | Number of consecutive hours the device needs to run. |
| `timeframe` | integer | No | Number of hours ahead to scan for the best green-energy window (default 24). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Login to Stromkonto

**Slug:** `CORRENTLY_LOGIN_STROMKONTO`

Tool to initiate login to Stromkonto via email. Use when authenticating a user with their email address.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | Email address for login to Stromkonto account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Electricity Market Data

**Slug:** `CORRENTLY_MARKET_DATA`

Retrieve real-time and forecast electricity pricing data for Germany by postal code (Postleitzahl). Returns wholesale market prices (EUR/MWh) and localized prices for specific grid areas. Data is provided in time intervals with timestamps in milliseconds since Unix epoch. Use this tool when you need current or forecasted electricity prices for energy optimization, cost analysis, or smart grid applications in Germany.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | Yes | Five-digit German postal code (Postleitzahl) for electricity market data lookup. Example: '69168' for Wiesloch, '80331' for Munich, '10115' for Berlin. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### PHEV Navigator

**Slug:** `CORRENTLY_PHEV_NAVIGATOR`

Tool to get PHEV charge-or-fuel recommendation for German locations. Compares real-time fuel prices at nearby stations with electricity costs to recommend whether charging or fueling is more economical and eco-friendly. Requires a German postal code (PLZ).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | Optional Stromkonto account address or API key for authenticated access with higher rate limits. |
| `soc` | integer | No | Battery state of charge as percentage (0-100). Optional but recommended for accurate cost calculations. |
| `zip` | string | Yes | German 5-digit postal code (PLZ) for the location. This is required to determine local fuel prices and electricity rates. |
| `fuel_consumption` | number | No | Vehicle fuel consumption in liters per 100 km. Used to calculate fuel costs per 100 km. |
| `power_consumption` | number | No | Vehicle electric power consumption in kWh per 100 km. Used to calculate electricity costs per 100 km. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post Metering Reading

**Slug:** `CORRENTLY_POST_METERING_READING`

Tool to post a meter reading and get it decorated with green/grey energy split. Use when you need to split consumption readings into green power (1.8.1) and grey power (1.8.2) according to the local GreenPowerIndex value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | No | German postal code (5 digits) of the metered location. |
| `energy` | integer | No | Meter reading value in watt-hours (Wh). This is an alias for the '1.8.0' OBIS code field. Provide either 'energy' or '1_8_0', not both. |
| `secret` | string | No | Private password for meter updates. Required if the meter is protected. |
| `account` | string | No | Stromkonto account (address) associated with this metering. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Prepare Receipt Data

**Slug:** `CORRENTLY_PREPARE_RECEIPT_DATA`

Tool to collect data for a receipt before finalizing. During the first call, an account parameter will be returned. Use this when you need to incrementally build receipt data through multiple requests. Call without an account parameter first to create a new session, then use the returned account identifier in subsequent calls to add more data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account` | string | No | Quittung session account identifier returned from the first call. Omit this parameter on the first request to create a new session. Include it in subsequent requests to extend or update the existing collection. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### PV Generation Forecast

**Slug:** `CORRENTLY_PV_GENERATION_GET_FORECAST`

Get hourly solar PV generation forecasts for a German location. Returns predicted energy output in watt-hours (Wh) for each hour over the specified forecast period. Use this tool when you need to optimize energy scheduling, estimate solar production, or plan energy storage based on expected PV generation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `d` | integer | No | Number of days to forecast (1-7). Defaults to 7 days if not specified. |
| `w` | number | Yes | Installed photovoltaic system capacity in watts (W). Typical residential systems range from 3000 to 10000 watts. |
| `zip` | string | Yes | German postal code (PLZ) for the location. Must be a valid 5-digit German ZIP code. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Register Stromkonto Account

**Slug:** `CORRENTLY_REGISTER_STROMKONTO`

Tool to register a new Stromkonto energy account in the Corrently system. Use when creating a new account with email, name, and location details. All balances are initialized to zero upon registration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | Email address for the new account holder. |
| `zipcode` | string | Yes | Five-digit German postal code (Postleitzahl) for the account location. |
| `last_name` | string | Yes | Last name of the account holder. |
| `first_name` | string | Yes | First name of the account holder. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Renewable Energy Dispatch

**Slug:** `CORRENTLY_RENEWABLE_ENERGY_DISPATCH`

Tool to get renewable energy flow and mix for a German ZIP code. Use when you need import/export and dispatch sources/destinations breakdown.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | Yes | German postal (ZIP) code to analyze. |
| `token` | string | No | Optional access token for extended or paid access; if provided, sent as query parameter 'token'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Electricity Generation Mix

**Slug:** `CORRENTLY_STROMMIX`

Tool to retrieve real-time electricity generation mix in Germany. Use when you need the current breakdown of generation by source.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Tariff Components

**Slug:** `CORRENTLY_TARIFF_COMPONENTS`

Retrieve detailed German electricity tariff cost breakdown by postal code. Returns comprehensive cost components including: - Grundgebühr (base monthly fee) - Arbeitspreis (energy price per kWh) - Network fees (Netznutzungsentgelt) - Taxes (Stromsteuer, Mehrwertsteuer) - Levies (EEG, KWKG, Offshore-Netzumlage) - Renewable energy credits Use this tool to understand electricity pricing transparency in Germany.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `wh` | integer | No | Energy amount in watt-hours for a specific event. Requires 'milliseconds' to be set. |
| `kwha` | integer | No | Annual energy consumption in kWh/year. Used to calculate total annual costs. Typical household: 2000-4000 kWh. |
| `email` | string | Yes | Email address for API request attribution (required by API). Can be any valid email format. |
| `zipcode` | string | Yes | German postal code (5-digit PLZ) to get local tariff components. Example: '80331' for Munich. |
| `milliseconds` | integer | No | Timeframe in milliseconds for scaling calculations. Use with 'wh' for specific energy events. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Standard Load Profile Tariff SLPH0

**Slug:** `CORRENTLY_TARIFF_SLPH0`

Tool to retrieve standard load profile H0 tariff information. Use after providing a German postal code to get local SLPH0 tariffs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zipcode` | string | No | German postal code (Postleitzahl) to scope the SLPH0 tariff (5 digits). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Weather Forecast

**Slug:** `CORRENTLY_WEATHER_FORECAST`

Tool to retrieve hourly weather forecasts (wind speed and UV index) by geographic coordinates. Use when you need wind and UV data for a specific location. Returns up to 5 days of hourly forecasts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `lat` | number | Yes | Latitude in decimal degrees (-90 to 90). Required. |
| `lon` | number | Yes | Longitude in decimal degrees (-180 to 180). Required. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### TyDID Consent Status

**Slug:** `CORRENTLY_WIM_STATUS`

Check TyDID consent/grant status for an SSI (Self-Sovereign Identity). This tool queries the Corrently TyDID API to verify whether a given Ethereum-based identity has granted consent or if the consent has been revoked. Use cases: - Verify user consent before processing data - Check if a user has revoked access to their data - Monitor consent status changes in blockchain-based identity systems

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `identity` | string | Yes | Ethereum-based SSI (Self-Sovereign Identity) address to check consent status for. Format: 0x followed by 40 hexadecimal characters (e.g., '0x95Bee09c395c60883Fa8bb95F05404a71f7ee7F7'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
