Agent skill
eptr2-api-discovery
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/eptr2-api-discovery
SKILL.md
eptr2 API Discovery Guide
Overview
This skill helps you discover and explore the 213+ API endpoints available in eptr2 for Turkish electricity market data. Use this when you need to find the right endpoint for your data needs.
Quick Start
from eptr2 import EPTR2
# Initialize
eptr = EPTR2(use_dotenv=True, recycle_tgt=True)
# List all available API calls
all_calls = eptr.get_available_calls()
print(f"Total available calls: {len(all_calls)}")
print(all_calls[:20]) # First 20 calls
Discovery Methods
1. Get All Available Calls
# List all endpoint names
calls = eptr.get_available_calls()
print(calls)
2. Get Number of Calls
# Get count of available endpoints
count = eptr.get_number_of_calls()
print(f"Available endpoints: {count}")
3. Get Aliases
# Some endpoints have shorthand aliases
aliases = eptr.get_aliases()
print(aliases)
# Example: 'ptf' is alias for 'mcp', 'smf' is alias for 'smp'
4. Get Help for Specific Call
from eptr2.mapping.help import get_help_d
# Get detailed info about an endpoint
help_info = get_help_d("mcp")
print(f"Category: {help_info['category']}")
print(f"Title (EN): {help_info['title']['en']}")
print(f"Title (TR): {help_info['title']['tr']}")
print(f"Description: {help_info['desc']['en']}")
print(f"URL: {help_info['url']}")
API Categories
| Category | Turkish | Description | Example Calls |
|---|---|---|---|
| GÖP | Gün Öncesi Piyasası | Day-Ahead Market | mcp, dam-clearing, dam-volume |
| GİP | Gün İçi Piyasası | Intraday Market | wap, idm-qty, idm-log |
| DGP | Dengeleme Güç Piyasası | Balancing Power Market | smp, bpm-up, bpm-down |
| Üretim | Üretim | Generation | rt-generation, uevm, dpp |
| Tüketim | Tüketim | Consumption | rt-cons, uecm, load-plan |
| Dengesizlik | Dengesizlik | Imbalance | imbalance-price, imb-qty, imb-vol |
| İA | İkili Anlaşmalar | Bilateral Contracts | bi-long, bi-short |
| Barajlar | Barajlar | Dams/Reservoirs | dams-daily-level, dams-active-fullness |
| Kurulu Güç | Kurulu Güç | Installed Capacity | installed-capacity, lic-pp-list |
Common Endpoint Patterns
Price Data
mcp/ptf- Market Clearing Pricesmp/smf- System Marginal Pricewap- Weighted Average Price (IDM)imbalance-price- Imbalance prices
Quantity Data
rt-generation- Real-time generationrt-cons- Real-time consumptiondam-clearing- DAM cleared quantityidm-qty- IDM matched quantity
Plan Data
load-plan- Demand forecastdpp/kgup- Daily production plankudup- Settlement production plan
Settlement Data
uevm- Settlement generationuecm- Settlement consumption
Finding the Right Endpoint
Search by Keyword
from eptr2.mapping.help import get_help_d
# Get all help entries
all_help = get_help_d()
# Search for keywords
keyword = "price" # or "fiyat" for Turkish
matches = {
k: v for k, v in all_help.items()
if keyword.lower() in v['title']['en'].lower()
or keyword.lower() in v['desc']['en'].lower()
}
for call, info in matches.items():
print(f"{call}: {info['title']['en']}")
List by Category
all_help = get_help_d()
# Filter by category
category = "GÖP" # Day-Ahead Market
gop_calls = {
k: v for k, v in all_help.items()
if v['category'] == category
}
print(f"GÖP (Day-Ahead Market) endpoints:")
for call, info in gop_calls.items():
print(f" {call}: {info['title']['en']}")
Parameter Requirements
Get Required Parameters
from eptr2.mapping.parameters import get_required_parameters, get_optional_parameters
# Check what parameters an endpoint needs
required = get_required_parameters("mcp")
optional = get_optional_parameters("mcp")
print(f"Required: {required}")
print(f"Optional: {optional}")
Common Parameters
| Parameter | Type | Description |
|---|---|---|
start_date |
str | Start date (YYYY-MM-DD) |
end_date |
str | End date (YYYY-MM-DD) |
org_id |
int/str | Organization ID |
pp_id |
int/str | Power plant ID |
uevcb_id |
int/str | Production unit ID |
Quick Reference Tables
Most Used Price Endpoints
| Call | Description |
|---|---|
mcp |
Market Clearing Price |
smp |
System Marginal Price |
wap |
IDM Weighted Average Price |
imbalance-price |
Imbalance prices |
mcp-smp-imb |
Combined MCP, SMP, Imbalance |
Most Used Quantity Endpoints
| Call | Description |
|---|---|
rt-generation |
Real-time generation by type |
rt-cons |
Real-time consumption |
load-plan |
Demand forecast |
dam-clearing |
DAM cleared volume |
idm-qty |
IDM matched volume |
Production Plan Endpoints
| Call | Description |
|---|---|
dpp / kgup |
Daily Production Plan (KGÜP) |
kgup-v1 |
KGUP Version 1 |
kudup |
Settlement Production Plan |
uevm |
Settlement Generation (UEVM) |
For More Details
- See endpoint-categories.md for complete category listings
- Run the helper script in
scripts/list_endpoints.pyfor interactive discovery
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?