סקירה כללית
ה-API של Water & Energy Engineering מאפשר חיבור מלא בין מערכות SCADA, ERP וכלי ניהול תשתיות לפלטפורמה המקצועית לניהול נצילות משאבות ואנרגיה. כל ה-endpoints מחזירים JSON ותומכים ב-CORS לגישה מהדפדפן.
https://api.water-energy.co.il/v1
אימות — Authentication
כל הבקשות חייבות לכלול API Key ב-Header. ה-Key מתחיל ב-wek_live_ (production) או wek_test_ (sandbox).
API Key Header
X-API-Key: wek_live_xxxxxxxxxxxxxxxxxxxx
cURL — דוגמת בקשה מאומתת
"https://api.water-energy.co.il/v1/stations" \
-H "X-API-Key: wek_live_xxxxxxxxxxxxxxxxxxxx" \
-H "Accept: application/json"
OAuth2 — לאינטגרציות Enterprise
לאינטגרציות עם SAP, Priority או מערכות enterprise נוספות, נתמך גם OAuth2 Client Credentials flow. צור קשר לקבלת Client ID + Secret.
POST https://api.water-energy.co.il/oauth/token
{
"grant_type": "client_credentials",
"client_id": "your_client_id",
"client_secret": "your_client_secret"
}
Pump Tests API
יצירה, שליחה ושליפה של תוצאות בדיקות נצילות משאבות לפי תקן ISO 9906.
/v1/pump-tests
שליחת תוצאת בדיקה חדשה
Request Body
| שדה | סוג | חובה | תיאור |
|---|---|---|---|
| station_id | string | ✅ | מזהה תחנת השאיבה |
| pump_id | string | ✅ | מזהה המשאבה |
| test_date | ISO 8601 | ✅ | תאריך הבדיקה |
| flow_m3h | number | ✅ | ספיקה במ"ק לשעה |
| head_m | number | ✅ | עומד בדינמי במטרים |
| power_kw | number | ✅ | הספק חשמלי ב-kW |
| speed_rpm | number | — | מהירות סיבוב (אם VFD) |
| notes | string | — | הערות שדה |
Request Example
"station_id": "ST-MEI-001",
"pump_id": "P-003",
"test_date": "2026-04-21T09:30:00+03:00",
"flow_m3h": 285.4,
"head_m": 42.8,
"power_kw": 45.2,
"speed_rpm": 1470,
"notes": "בדיקה רגילה — ללא חריגות"
}
Response — 201 Created
"test_id": "tst_9f3a7b2c",
"efficiency_pct": 78.3,
"sec_kwh_m3": 0.441,
"iso_grade": "Grade 2",
"regulatory_status": "PASS",
"next_test_due": "2028-10-21",
"created_at": "2026-04-21T09:31:02Z"
}
✓ 201 Created — הבדיקה נקלטה ועובדה בהצלחה
/v1/pump-tests/{id}
שליפת בדיקה לפי ID
Path Parameters
| פרמטר | סוג | תיאור |
|---|---|---|
| id | string | מזהה הבדיקה (מתחיל ב-tst_) |
Response
"test_id": "tst_9f3a7b2c",
"station_id": "ST-MEI-001",
"pump_id": "P-003",
"efficiency_pct": 78.3,
"flow_m3h": 285.4,
"head_m": 42.8,
"power_kw": 45.2,
"sec_kwh_m3": 0.441,
"test_date": "2026-04-21T09:30:00+03:00",
"regulatory_status": "PASS"
}
Stations API
שליפת רשימת תחנות שאיבה עם מצב נצילות עדכני.
/v1/stations
שליפת כל התחנות
Query Parameters
| פרמטר | ברירת מחדל | תיאור |
|---|---|---|
| limit | 50 | מספר תוצאות מקסימלי (1-200) |
| offset | 0 | דף Pagination |
| status | all | סינון: all | active | overdue |
Response
"total": 41,
"stations": [
{
"station_id": "ST-MEI-001",
"name": "מי נתניה — תחנה ראשית",
"pump_count": 5,
"avg_efficiency_pct": 72.4,
"next_test_due": "2028-04-10",
"status": "active"
}
]
}
Telemetry API — Sensor Data
שליחת נתוני חיישנים בזמן אמת או Batch. תומך ב-HTTP POST לבקשות מצטברות וב-WebSocket לסטרימינג רציף.
/v1/telemetry/ingest
שליחת נתוני חיישנים
Batch ingest — עד 1,000 נקודות מדידה בבקשה אחת.
Request Body
"gateway_id": "GW-DALTON-01",
"readings": [
{
"sensor_id": "FLOW-001",
"timestamp": "2026-04-21T09:00:00Z",
"metric": "flow_m3h",
"value": 283.1
},
{
"sensor_id": "PWR-001",
"timestamp": "2026-04-21T09:00:00Z",
"metric": "power_kw",
"value": 44.8
}
]
}
Response — 202 Accepted
wss://api.water-energy.co.il/v1/telemetry/stream
Real-time stream
WebSocket stream לנתוני חיישנים בזמן אמת. שלח auth message ב-connection ואז קבל push messages כשמגיעים קריאות חדשות.
const ws = new WebSocket('wss://api.water-energy.co.il/v1/telemetry/stream');
ws.onopen = () => {
ws.send(JSON.stringify({ type: 'auth', api_key: 'wek_live_xxx' }));
};
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
console.log(`חיישן: ${data.sensor_id} = ${data.value}`);
};
Reports API
יצירה והורדה של דוחות PDF מקצועיים — דוח נצילות ISO, Fleet Health Score, סקר אנרגיה.
/v1/reports/{id}/download
הורדת דוח PDF
מחזיר redirect לקובץ PDF חתום עם תוקף של 10 דקות.
Path Parameters
| פרמטר | תיאור |
|---|---|
| id | מזהה הדוח (מתחיל ב-rpt_) |
cURL Example
"https://api.water-energy.co.il/v1/reports/rpt_abc123/download" \
-H "X-API-Key: wek_live_xxxxxxxxxxxx"
✓ 302 Redirect → Signed URL (10 min TTL)
Alert Webhooks
קבלת Push notifications כשאירועים קורים — נצילות מתחת לסף, אנומליה, בדיקה קרובה.
/v1/webhooks/subscribe
הרשמה ל-webhook
Request Body
"url": "https://your-system.com/hooks/water-energy",
"events": ["efficiency.below_threshold", "anomaly.detected", "test.due_soon"],
"secret": "your_webhook_secret_for_hmac"
}
Payload שמגיע ל-URL שלך
X-WEK-Signature: sha256=abc123...
Content-Type: application/json
{
"event": "efficiency.below_threshold",
"occurred_at": "2026-04-21T11:32:00Z",
"data": {
"pump_id": "P-003",
"station_id": "ST-MEI-001",
"efficiency_pct": 59.2,
"threshold_pct": 65.0,
"severity": "HIGH"
}
}
HMAC Verification (Python)
def verify_webhook(payload_bytes, signature, secret):
expected = hmac.new(secret.encode(), payload_bytes, hashlib.sha256).hexdigest()
return hmac.compare_digest(f"sha256={expected}", signature)
Rate Limits
הגבלות קצב לפי תוכנית:
| תוכנית | בקשות / יום | בקשות / דקה | WebSocket connections | מחיר |
|---|---|---|---|---|
| Free / Sandbox | 100 | 10 | 1 | חינם |
| Professional | 10,000 | 100 | 10 | ₪490/חודש |
| Enterprise | Unlimited | 1,000 | Unlimited | בהסכמה |
X-RateLimit-Limit: 10000X-RateLimit-Remaining: 9847X-RateLimit-Reset: 1745280000
קודי שגיאה
| HTTP Status | קוד שגיאה | תיאור |
|---|---|---|
| 400 | INVALID_PARAMS | שדה חסר או ערך לא תקין |
| 401 | UNAUTHORIZED | API Key חסר או שגוי |
| 403 | FORBIDDEN | אין הרשאה למשאב זה |
| 404 | NOT_FOUND | המשאב המבוקש לא נמצא |
| 429 | RATE_LIMITED | חריגה ממגבלת הקצב |
| 500 | SERVER_ERROR | שגיאה פנימית — נסה שוב |
Error Response Format
"error": "INVALID_PARAMS",
"message": "flow_m3h is required",
"request_id": "req_8f4a1e2d"
}
Changelog
- ✅ Pump Tests API — POST + GET endpoints
- ✅ Stations API — GET /v1/stations
- ✅ Telemetry API — HTTP Batch ingest + WebSocket stream
- ✅ Reports API — PDF download endpoint
- ✅ Webhooks — subscribe, efficiency.below_threshold, anomaly.detected
- ✅ OAuth2 — Client Credentials flow לאינטגרציות Enterprise
- ✅ HMAC Signatures — webhook payload verification
- Internal alpha — Efficiency Pro integration only
- Basic pump test ingest