Οι λογαριασμοί με πλάνο Business ή Enterprise, χωρίς επιπλέον χρέωση για το ίδιο το API. Στο Standard δεν περιλαμβάνεται. Δημιουργείτε token από τις ρυθμίσεις του λογαριασμού σας και κάθε κλήση εκτελείται με τα δικά σας δικαιώματα: βλέπετε μόνο τα οχήματα που σας ανήκουν ή σας έχουν ανατεθεί.
MyGPS REST API
Τα δεδομένα του στόλου σας, μέσα στα δικά σας συστήματα. Ζωντανές θέσεις, ιστορικό, αναφορές και διαχείριση — σε JSON, με Bearer tokens και WebSocket για live ροή. Περιλαμβάνεται στα πλάνα Business και Enterprise, χωρίς επιπλέον χρέωση.
curl -H "Authorization: Bearer $TOKEN" \
"https://app.mygps.gr/api/devices"
[
{
"id": 42,
"name": "Βαν 1 — ΝΒΧ 1234",
"uniqueId": "350424061234567",
"status": "online",
"lastUpdate": "2026-08-03T09:14:22Z"
}
]
Γρήγορη εκκίνηση
Τρία βήματα από το μηδέν στην πρώτη επιτυχημένη κλήση.
- Δημιουργήστε token. Στην πλατφόρμα: Ρυθμίσεις λογαριασμού → Token. Ορίστε ημερομηνία λήξης και αντιγράψτε το.
- Καλέστε ένα endpoint με header
Authorization: Bearer <token>. - Αντιστοιχίστε ονόματα σε IDs. Το
/devicesσας δίνει τοidκάθε οχήματος — το χρειάζεστε παντού αλλού.
# 1. Τελευταία θέση όλων των οχημάτων
curl -H "Authorization: Bearer $TOKEN" \
"https://app.mygps.gr/api/positions"
# 2. Σύνοψη χιλιομέτρων για δύο οχήματα, τον Ιούλιο
curl -H "Authorization: Bearer $TOKEN" \
"https://app.mygps.gr/api/reports/summary?deviceId=42&deviceId=43\
&from=2026-07-01T00:00:00Z&to=2026-08-01T00:00:00Z"
# 3. Η ίδια αναφορά σε Excel
curl -H "Authorization: Bearer $TOKEN" \
-H "Accept: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" \
-o summary.xlsx \
"https://app.mygps.gr/api/reports/summary?deviceId=42&from=...&to=..."
Authentication
Δύο σχήματα στο header Authorization. Χωρίς έγκυρη ταυτοποίηση επιστρέφεται 401.
Authorization: Basic base64(email:password) λειτουργεί, αλλά εκθέτει τα διαπιστευτήριά σας σε κάθε κλήση. Μην το βάζετε ποτέ σε κώδικα, cron ή prompt AI εργαλείου.
/session/token
Δημιουργία token (με ενεργή συνεδρία). Form param: expiration ISO 8601. Επιστρέφει το token ως plain text.
/session/token/revoke
Ανάκληση token.
/session
Ο τρέχων χρήστης — χρήσιμο για έλεγχο εγκυρότητας.
Συμβάσεις
| Ημερομηνίες | ISO 8601 σε UTC — 2026-08-01T00:00:00Z. Ισχύει σε αιτήματα και αποκρίσεις. |
|---|---|
| Μονάδες | Ταχύτητα σε κόμβους, απόσταση σε μέτρα, course σε μοίρες, συντεταγμένες WGS84. |
| Πολλαπλές τιμές | Επαναλαμβανόμενες παράμετροι: ?deviceId=42&deviceId=43. |
| Φίλτρα συλλογών | all, userId, groupId, deviceId, limit, offset, keyword, excludeAttributes. |
attributes | Ελεύθερο αντικείμενο με ό,τι στέλνει η συσκευή: ignition, odometer, fuel, battery, sat. Το περιεχόμενο εξαρτάται από το μοντέλο και την εγκατάσταση — μην το θεωρείτε δεδομένο. |
Οχήματα
/devices
Όλα τα οχήματα του λογαριασμού. Φίλτρα: id, uniqueId, groupId, excludeAttributes.
/devices
Δημιουργία οχήματος — name, uniqueId (IMEI).
/devices/{id}
Ενημέρωση.
/devices/{id}
Διαγραφή — μη αναστρέψιμη.
/devices/{id}/accumulators
Οδόμετρο και ώρες λειτουργίας. PUT για διόρθωση.
Βασικά πεδία: id, name, uniqueId, status (online/offline/unknown), lastUpdate, positionId, groupId, disabled, attributes.
Θέσεις
/positions
Χωρίς παραμέτρους: η τελευταία γνωστή θέση κάθε οχήματος.
/positions?deviceId&from&to
Ιστορικές θέσεις διαστήματος για ένα όχημα.
Πεδία: deviceId, deviceTime, fixTime, serverTime, latitude, longitude, altitude, speed, course, address, valid, attributes.
Εναλλακτικές μορφές με header Accept: KML, CSV, XLSX, GPX.
WebSocket — ζωντανή ροή
Ο σωστός τρόπος για live χάρτη ή ειδοποιήσεις. Απαιτεί ενεργή συνεδρία (cookie).
wss://app.mygps.gr/api/socket
// Μηνύματα JSON, push σε κάθε μεταβολή
{ "positions": [ … ] } // νέα θέση
{ "devices": [ … ] } // αλλαγή κατάστασης οχήματος
{ "events": [ … ] } // συμβάν (γεωφράχτης, ταχύτητα, ανάφλεξη…)
GET /positions σε βρόχο ανά δευτερόλεπτο επιβαρύνει άσκοπα και τις δύο πλευρές. Στη σύνδεση λαμβάνετε τις τρέχουσες θέσεις και μετά μόνο τις μεταβολές.
Αναφορές
Κοινές παράμετροι: deviceId, groupId (επαναλαμβανόμενες), from, to. JSON από προεπιλογή· για Excel στείλτε Accept: …spreadsheetml.sheet.
/reports/summary
Σύνοψη ανά όχημα: απόσταση, μέγιστη/μέση ταχύτητα, ώρες κινητήρα, καύσιμο όπου υπάρχει. daily=true για ημερήσια ανάλυση.
/reports/trips
Ταξίδια: έναρξη/λήξη με χρόνο, θέση και διεύθυνση, απόσταση, διάρκεια, οδηγός.
/reports/stops
Στάσεις: θέση, άφιξη/αναχώρηση, διάρκεια, ώρες κινητήρα σε στάση.
/reports/events
Συμβάντα διαστήματος. Παράμετρος type (επαναλαμβανόμενη· allEvents για όλα).
/reports/route
Αναλυτικές θέσεις διαδρομής, για χαρτογράφηση.
/reports/summary. Η άθροιση raw σημείων δίνει διαφορετικό αποτέλεσμα και κοστίζει πολλαπλάσιο όγκο δεδομένων.
Τύποι συμβάντων
deviceOnline
deviceOffline
deviceUnknown
deviceInactive
deviceMoving
deviceStopped
deviceOverspeed
deviceFuelDrop
deviceFuelIncrease
geofenceEnter
geofenceExit
ignitionOn
ignitionOff
alarm
maintenance
maintenanceDue
driverChanged
commandResult
media
Γεωφράχτες
/geofences
Λίστα γεωφρακτών.
/geofences
Δημιουργία — name και area σε WKT.
/geofences/{id}
Ενημέρωση.
/geofences/{id}
Διαγραφή.
// Μορφή WKT στο πεδίο area
"CIRCLE (40.5231 22.9714, 250)"
"POLYGON ((40.52 22.97, 40.53 22.98, 40.52 22.99))"
// Σύνδεση γεωφράχτη με όχημα
POST /api/permissions
{ "deviceId": 42, "geofenceId": 7 }
Ειδοποιήσεις
/notifications
Υπάρχοντες κανόνες.
/notifications
Δημιουργία — type, notificators (CSV), always ή σύνδεση ανά όχημα μέσω permissions.
/notifications/types
Διαθέσιμοι τύποι συμβάντων.
/notifications/notificators
Διαθέσιμα κανάλια: web, mail, sms, firebase, telegram κ.ά. — ανάλογα με τη διαμόρφωση.
Οδηγοί, ομάδες, συντηρήσεις
/drivers
Οδηγοί — name, uniqueId (κωδικός κάρτας/iButton). Πλήρες CRUD.
/groups
Ομάδες οχημάτων. Πλήρες CRUD.
/maintenance
Κανόνες συντήρησης — type, start, period πάνω σε οδόμετρο ή ώρες.
/calendars
Χρονικά παράθυρα (iCalendar) για ειδοποιήσεις και κανόνες.
/attributes/computed
Υπολογιζόμενα χαρακτηριστικά από τα δεδομένα θέσης. /test για δοκιμή έκφρασης.
/permissions
Συνδέσεις αντικειμένων: device↔user, device↔geofence, device↔notification, device↔driver. /bulk για μαζικά.
/share/device
Προσωρινός σύνδεσμος κοινοποίησης οχήματος με χρονικό παράθυρο. /share/group για ομάδα.
Εντολές προς συσκευές
engineStop και outputControl μπορούν να ακινητοποιήσουν όχημα. Απαιτούν σωστή εγκατάσταση και ρητή ανθρώπινη επιβεβαίωση πριν από κάθε αποστολή — ποτέ αυτόματα από script ή agent. Η ευθύνη χρήσης ανήκει στον πελάτη.
/commands/types?deviceId
Υποστηριζόμενοι τύποι για το πρωτόκολλο της συγκεκριμένης συσκευής.
/commands/send?deviceId
Αποθηκευμένες εντολές που μπορούν να σταλούν στο όχημα.
/commands/send
Αποστολή εντολής.
POST /api/commands/send
{
"deviceId": 42,
"type": "positionSingle"
}
// Ενδεικτικοί τύποι
custom · positionSingle · positionPeriodic · engineStop · engineResume
outputControl · rebootDevice · setOdometer · requestPhoto · getDeviceStatus
Εργασίες & δρομολόγηση
Εργασίες με στάσεις, ανάθεση σε οδηγούς, αποδεικτικά παράδοσης και δρομολόγηση.
/dispatch/jobs
Λίστα εργασιών με φίλτρα κατάστασης, οχήματος και περιόδου.
/dispatch/jobs/{id}
Μία εργασία με στάσεις, κατάσταση και ιστορικό.
/dispatch/jobs/create
Δημιουργία εργασίας με στάσεις.
/dispatch/jobs/{id}/assign
Ανάθεση σε όχημα ή οδηγό.
/dispatch/jobs/{id}/stops
Προσθήκη στάσης. /{stopId}/status για κατάσταση στάσης.
/dispatch/jobs/{id}/proofs
Αποδεικτικά παράδοσης (υπογραφή, φωτογραφία, σημείωση).
/dispatch/jobs/calendar
Προβολή ημερολογίου. /export και /report για εξαγωγές.
/dispatch/jobs/recurring-rules
Κανόνες επαναλαμβανόμενων εργασιών.
/dispatch/navigation/route
Υπολογισμός διαδρομής για την πλοήγηση του οδηγού.
Webhooks & integration keys
Για διασύνδεση τρίτων συστημάτων: το ERP σας δημιουργεί εργασία, η MyGPS σας ειδοποιεί σε κάθε μεταβολή.
/dispatch/jobs/integrations/api-keys
Δημιουργία integration key με συγκεκριμένα δικαιώματα.
/dispatch/jobs/public-api/jobs
Δημιουργία εργασίας από εξωτερικό σύστημα, με integration key.
/dispatch/jobs/integrations/webhooks
Εγγραφή webhook — URL και τύποι συμβάντων.
/dispatch/jobs/integrations/webhook-deliveries
Ιστορικό αποστολών· επανάληψη με /{deliveryId}/retry.
# Το integration key πάει σε δικό του header
curl -X POST \
-H "X-MyGPS-Dispatch-Key: $KEY" \
-H "Content-Type: application/json" \
-d '{"job": { … }, "stops": [ … ]}' \
"https://app.mygps.gr/api/dispatch/jobs/public-api/jobs"
Τύποι συμβάντων webhook: job.created, job.updated, job.status.changed, stop.status.changed, proof.created, customer.feedback.created, customer.notification.created, control.alert, test.
Υπόλοιπες λειτουργίες — τεκμηρίωση κατόπιν αιτήματος
Η πλατφόρμα διαθέτει API και για τις υπόλοιπες λειτουργίες της: βιβλία στόλου, διαχείριση έργων, driver scoring, βίντεο και κάμερες, ενδοεπικοινωνία PTT, καθώς και τη Ψηφιακή Διακίνηση της ΑΑΔΕ.
Η τεκμηρίωσή τους δεν δημοσιεύεται. Δίνεται κατόπιν αιτήματος και σε συνεννόηση με την τεχνική μας ομάδα, στους πελάτες που έχουν συγκεκριμένη ανάγκη διασύνδεσης — ώστε να σχεδιαστεί σωστά η ροή, να δοθούν τα κατάλληλα δικαιώματα και να υπάρχει υποστήριξη σε κάθε αλλαγή.
Σφάλματα & όρια
| Κωδικός | Σημασία |
|---|---|
200 | Επιτυχία. |
400 | Λανθασμένη παράμετρος — συνήθως μορφή ημερομηνίας ή τύπος τιμής. |
401 | Απουσία ή λήξη token / συνεδρίας. |
403 | Το αντικείμενο δεν ανήκει στον λογαριασμό, ή ο λογαριασμός έχει περιορισμό (readonly, deviceReadonly, disableReports, limitCommands). |
404 | Το αντικείμενο δεν υπάρχει. |
deviceId στο query string μπορεί να ξεπεράσουν το όριο μήκους URL — σπάστε τις σε παρτίδες.
Τι δεν περιλαμβάνεται εδώ
Η σελίδα καλύπτει όσα χρειάζεται ένας πελάτης για να συνδέσει τα βασικά δεδομένα του στόλου του. Δεν τεκμηριώνονται δημόσια οι διαχειριστικές λειτουργίες του server (ρυθμίσεις, cache, στατιστικά, audit, διαχείριση SIM), ούτε οι υπόλοιπες λειτουργίες της πλατφόρμας — για εκείνες, η τεκμηρίωση δίνεται κατόπιν αιτήματος και σε συνεννόηση με την τεχνική μας ομάδα.
Πριν την πρώτη κλήση
Τα βασικά που ρωτούν οι τεχνικές ομάδες.
Πείτε μας τι θέλετε να συνδέσετε.
Dashboard, ERP, εσωτερικό εργαλείο ή AI agent — θα σας υποδείξουμε τα σωστά endpoints και τον ασφαλή τρόπο.