Documentatie TrackGPS

Documentatie TrackGPS

Subsecțiuni ale Documentatie TrackGPS

Public API

Cuprins

Pentru a putea vizualiza metodele care se pot accesa utilizând API-ul AROBS TrackGPS se parcurg următorii pași:

  1. Se accesează aplicația AROBS TrackGPS și se dă click pe “Contul meu”
  2. Se accesează “Preferințe platformă”
  3. Se dă click pe linkul care apare în câmpul “API Link”

După ce se dă click pe linkul care apare în câmpul ‘API Link” în browser-ul folosit se va deschide o pagină nouă denumită Swagger unde se vor putea regăsi informații suplimentare în ceea ce privește metodele de API care se pot accesa. Este important ca din colțul dreapta sus să se selecteze versiunea “V2” a webservice-ului. Pagina arată în felul următor: Swagger Swagger

Subsecțiuni ale Public API

Informații generale

Interfața de programare a aplicațiilor (API) este o interfață software care permite interacționarea între două aplicații fără intervenția utilizatorului. API este o colecție de funcții și proceduri software. În termeni simpli, API înseamnă un cod software care poate fi accesat sau executat. API-ul este definit ca un cod care ajută două software-uri diferite să comunice și să schimbe date între ele.

diagram.png diagram.png

Un API Web este o interfață de programare a aplicației care este utilizată fie pentru serverul web, fie pentru un browser web.
API-ul are 2 componente:

  • Partea serverului (AROBS TrackGPS)
  • Partea clientului (Client final)

Partea serverului:
API-ul web, partea serverului, este o interfață programată care constă din unul sau mai multe puncte finale expuse public la un sistem de mesaje cerere-răspuns (request-response) definit. API-ul AROBS TrackGPS este unul de tip REST care returnează informația (datele brute) în format JSON utilizând anumite metode existente.

Partea clientului:
Clientul final va putea extrage datele brute (utilizând metodele mai sus menționate) și le poate folosi în diverse aplicații, rapoarte și/sau funcționalități.

Limită requesturi

Limită de requesturi pentru REST API-ul TrackGPS

REST API-ul TrackGPS are o limită de requesturi implicită pentru a asigura performanța și stabilitatea serviciului. În prezent, limita este de 1 cerere la fiecare 30 de secunde. Aceasta înseamnă că fiecare utilizator poate trimite o cerere la API la fiecare 30 de secunde.

Excepție: Endpoint-ul de login nu este supus acestei limite și poate fi accesat fără restricții de rate.

Depășirea limitei de requesturi pentru REST API-ul TrackGPS

În cazul în care limita de requesturi de 1 cerere la fiecare 30 de secunde este depășită, serverul va returna un HTTP status code 429 (Too Many Requests). Acest cod indică faptul că utilizatorul a trimis prea multe cereri într-un interval de timp prea scurt.

Pe lângă codul de status, utilizatorii vor primi și un mesaj de eroare specific.

Utilizatorii sunt sfătuiți să aștepte înainte de a trimite cereri suplimentare pentru a evita primirea acestui cod de eroare.

Modificarea limitei de requesturi

În anumite situații, dacă este necesară modificarea limitei de requesturi, vă rugăm să luați legătura cu departamentul de suport pentru a discuta opțiunile disponibile.

Creare user API

Pentru autentificare utilizatorul trebuie să dețină un utilizator și o parolă. Credențialele de logare pentru API nu sunt identice cu credențialele de logare în platforma de fleet management AROBS TrackGPS, așa că este necesar să se creeze utilizatori speciali pentru acces la API. Crearea de utilizatori API se poate face direct din platforma web AROBS TrackGPS urmând pașii de mai jos:

  1. Se accesează aplicația AROBS TrackGPS, iar din meniul din stânga se selectează “Administrare” și apoi “Adrese de e-mail”step1.png step1.png
  2. Din fereastra care se deschide, se apasă pe butonul “Adaugă Email” (din colțul dreapta jos al ferestrei)step2.png step2.png
  3. Se accesează aplicația AROBS TrackGPS, iar din meniul din stânga se selectează “Administrare” și apoi “Utilizatori”step1.png step1.png
  4. Din fereastra care se deschide, se apasă pe butonul “Adaugă” (din colțul dreapta jos al ferestrei)step2.png step2.png
  5. După apăsarea butonului “Adaugă” se va deschide o fereastră nouă unde se vor regăsi opțiunile de creare a unui utilizator nou. Pentru crearea unui utilizator API se va bifa căsuța “Utilizator API” din Detalii utilizator, după care unele opțiuni cum ar fi “Drepturi pe șoferi” sau “Drepturi pe utilizatori” vor fi ascunse. Practic, în fereastra ‘Detalii utilizator” vor trebui completate doar 4 informații: • Nume utilizator – acesta va reprezenta utilizatorul de autentificare în API • Prenume – folosit pentru identificarea utilizatorului • Nume – folosit pentru identificarea utilizatorului • Email – adresa de email asociată utilizatorului cu ajutorul căreia se va activa utilizatorul și se va seta parola de acces

Atenție: Acest utilizator nu se va putea folosi pentru logarea în platforma AROBS TrackGPS. De asemenea, un utilizator care nu are bifată opțiunea “Utilizator API” nu se poate folosi pentru acces date API.step3.png step3.png

  1. După completarea informațiilor din “Detalii utilizator”, se trece la selecția vehiculelor pentru care se doresc a fi accesate datele API. Selecția se face prin accesarea opțiunii “Drepturi pe vehicule” și apoi bifarea vehiculelor necesare din listă, așa cum se vede și în imaginea de mai jos: step4.png step4.png
  2. În momentul în care sunt completate toate detaliile necesare (detalii utilizator și selecție vehicule), se apasă pe butonul “Salvează”step8.png step8.png
  3. Imediat ce butonul a fost apăsat și toate datele completate sunt corecte, se salvează utilizatorul și se trimite un email de activare. Pentru validare, se poate verifica în lista de utilizatori dacă utilizatorul creat are bifa pe coloana utilizator API.step5.png step5.png
  4. După ce mail-ul de activare a ajuns pe adresa de email asociată utilizatorului, se apasă pe butonul „Activează contul”. step6.png step6.png Imediat după apăsarea butonului, se va deschide o pagină de setare a parolei, așa cum se observă în imaginea de mai jos: step7.png step7.png
  5. Se completează parola dorită care trebuie să conțină:
  • Minim 8 caractere
  • Minim o literă mică
  • Minim o cifră
  • Minim o literă mare
  1. La final se apasă pe butonul „Salvează” după care utilizatorul este pregătit pentru a fi folosit pentru acces date API.

Metode API

Documentație Metode API

Limitări: Minim 30 de secunde între două request-uri succesive sau conform limitei stabilite pentru utilizator.

Autentificare

Metodă URL Descriere
POST https://api.trackgps.ro/api/authentication/login?api-version=2.0 Autentificare

Vehicule

API-ul permite obținerea datelor brute despre vehicule prin următoarele endpoint-uri:

Metodă URL Descriere
GET https://api.trackgps.ro/api/carriers/company-vehicles?api-version=2.0 Listare vehicule
POST https://api.trackgps.ro/api/carriers/way?api-version=2.0 Rute vehicule
POST https://api.trackgps.ro/api/carriers/stops?api-version=2.0 Staționări
POST https://api.trackgps.ro/api/carriers/consumption?api-version=2.0 Consum combustibil
POST https://api.trackgps.ro/api/carriers/refills?api-version=2.0 Alimentări
POST https://api.trackgps.ro/api/carriers/temperatures?api-version=2.0 Temperatură vehicule

e-Transport

API-ul permite managementul transporturilor din contul companiei prin următoarele endpoint-uri:

Metodă URL Descriere
POST https://api.trackgps.ro/api/eTransport/add-transport?api-version=2.0 Adăugare transport
POST https://api.trackgps.ro/api/eTransport/update-transport?api-version=2.0 Actualizare transport
POST https://api.trackgps.ro/api/eTransport/load-transports?api-version=2.0 Listare transporturi
POST https://api.trackgps.ro/api/eTransport/remove-transports?api-version=2.0 Ștergere transporturi
POST https://api.trackgps.ro/api/eTransport/start-transports?api-version=2.0 Pornire transporturi
POST https://api.trackgps.ro/api/eTransport/end-transports?api-version=2.0 Finalizare transporturi
POST https://api.trackgps.ro/api/eTransport/pause-transports?api-version=2.0 Pauză transporturi

Subsecțiuni ale Metode API

Autentificare

După obținerea credențialelor pentru API (utilizator și parolă), se folosește endpoint-ul login pentru generarea unui token de autentificare cu o valabilitate de 1 oră. Utilizând acest token de autentificare se vor putea extrage date brute folosind celelalte endpoint-uri.

După fiecare oră trebuie generat un alt token pentru a putea extrage date brute din sistemul AROBS TrackGPS.

Subsecțiuni ale Autentificare

Login

Descriere Generală

Endpoint-ul login este utilizat pentru autentificarea utilizatorilor în cadrul API-ului. Acesta primește în corpul cererii un username și o parolă, iar în cazul în care autentificarea este validă, returnează un token de acces (JWT) împreună cu un token de reîmprospătare. Aceste token-uri trebuie utilizate pentru autorizarea cererilor către resurse protejate din API.

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/authentication/login?api-version=2.0

Parametri Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă:

  • Parametru de query:

    • api-version: versiunea API-ului. Valoare recomandată: 2.0.
  • Payload-ul trebuie trimis în corpul cererii ca form data cu următoarea structură:

{
  "username": "utilizator@example.com",
  "password": "parolaSecreta123"
}

Descrierea Parametrilor

  • username: Numele de utilizator sau adresa de email utilizată la autentificare.
  • password: Parola asociată contului.

Structura Răspunsului

Un răspuns de succes (HTTP 200) va avea următorul format:

{
    "access_token": "eyJhbGciOavJZdtmkv3s9OW4ljE2V225_uTkntrDo-SDYwFGgYLbpQ",
    "expires_in": 28800,
    "token_type": "Bearer",
    "refresh_token": "8E65181908146821C79E26259683DF6F-1",
    "scope": "CarPoolingAPI IdentityServerApi offline_access openid profile TrackGPSV4Api"
}

Descrierea Proprietăților

  • access_token: Tokenul JWT utilizat pentru autorizarea cererilor ulterioare către API.
  • expires_in: Durata de valabilitate a tokenului (în secunde).
  • token_type: Tipul tokenului, în general “Bearer”.
  • refresh_token: Token ce poate fi utilizat pentru reîmprospătarea sesiunii fără reautentificare.
  • scope: Lista de permisiuni asociate tokenului.

Răspunsuri de Eroare

  • 400 Bad Request – Parametri lipsă sau structură incorectă a cererii.
  • 401 Unauthorized – Credențiale invalide sau utilizator inactiv.
  • 429 Too Many Requests – Limită de rată depășită pentru utilizatorul curent.

Vehicule

În acest moment, API-ul pus la dispoziție de AROBS TrackGPS permite folosirea a 5 endpoint-uri pentru obținerea datelor brute:

Metodă URL Descriere
GET https://api.trackgps.ro/api/carriers/company-vehicles?api-version=2.0 Listare vehicule
POST https://api.trackgps.ro/api/carriers/way?api-version=2.0 Rute vehicule
POST https://api.trackgps.ro/api/carriers/stops?api-version=2.0 Staționări
POST https://api.trackgps.ro/api/carriers/consumption?api-version=2.0 Consum combustibil
POST https://api.trackgps.ro/api/carriers/refills?api-version=2.0 Alimentări
POST https://api.trackgps.ro/api/carriers/temperatures?api-version=2.0 Temperatură vehicule

Intervalul de timp dintre 2 request-uri succesive poate fi de minim 30 de secunde.

Subsecțiuni ale Vehicule

Vehiculele companiei

Descriere Generală

Metoda CompanyVehicles returnează lista cu vehicule și detaliile acestora. Aceasta returnează doar vehiculele la care utilizatorul are acces.
Din răspunsul acestei metode se pot reține vehicleId-urile vehiculelor, care pot fi folosite ulterior la apelul celorlalte metode din API.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: GET https://api.trackgps.ro/api/carriers/company-vehicles?api-version=2.0

⚠️ Notă: Toate datele calendaristice transmise sau returnate de acest endpoint sunt în fusul orar local al companiei.


Structura Răspunsului

{
  "payload": [
    {
      "vehicleId": 0,
      "vehicleUId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "vehicleName": "string",
      "vehicleRegistrationNumber": "string",
      "latitude": 0,
      "longitude": 0,
      "gpsDate": "2024-09-09T08:52:55.005",
      "address": "string",
      "speed": 0,
      "course": 0,
      "engineEvent": 0,
      "engineRpm": 0,
      "engineEventDate": "2024-09-09T08:52:55.005",
      "serverDate": "2024-09-09T08:52:55.005",
      "isPrivate": true,
      "vehicleIdentificationNumber": "string",
      "externalPowerVoltage": 0,
      "vehicleManufacturer": "string",
      "vehicleModel": "string",
      "manufactureYear": 0
    }
  ],
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

  • payload: Lista vehiculelor și detaliile acestora.
    • vehicleId: ID-ul unic al vehiculului.
    • vehicleUId: ID-ul unic universal al vehiculului.
    • vehicleName: Numele vehiculului.
    • vehicleRegistrationNumber: Numărul de înmatriculare al vehiculului.
    • latitude: Latitudinea locației vehiculului.
    • longitude: Longitudinea locației vehiculului.
    • gpsDate: Data și ora ultimei actualizări GPS.
    • address: Adresa locației vehiculului.
    • speed: Viteza vehiculului.
    • course: Direcția de deplasare a vehiculului.
    • engineEvent: Evenimentul motorului.
    • engineRpm: Turația motorului.
    • engineEventDate: Data și ora evenimentului motorului.
    • serverDate: Data și ora serverului la momentul răspunsului.
    • isPrivate: Indicator dacă vehiculul este în mod privat.
    • vehicleIdentificationNumber: Numărul de identificare al vehiculului (VIN).
    • externalPowerVoltage: Tensiunea de alimentare.
    • vehicleManufacturer: Producătorul vehiculului.
    • vehicleModel: Modelul vehiculului.
    • manufactureYear: Anul de fabricație al vehiculului.
  • correlationId: ID-ul unic pentru corelarea cererii și răspunsului.
  • failureReasons: Lista motivelor de eșec, dacă există.
    • errorCode: Codul de eroare.
    • errorParameters: Parametrii suplimentari pentru eroare.
  • isSuccess: Indicator dacă cererea a fost procesată cu succes.

Traseu

Descriere Generală

Metoda Way returnează lista cu locațiile vehiculelor din perioada transmisă ca parametru. Aceasta returnează doar vehiculele la care utilizatorul are acces. Metoda acceptă ca parametri o listă de maxim 10 vehicleId și o perioadă de maxim 31 de zile.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/carriers/way?api-version=2.0

⚠️ Notă: Toate datele calendaristice transmise sau returnate de acest endpoint sunt în fusul orar local al companiei.


Parametri Request

{
  "vehiclesList": [
    0
  ],
  "startDate": "2024-09-09T09:21:50.133",
  "endDate": "2024-09-09T09:21:50.133"
}
  • vehiclesList: Lista de vehicleId-uri pentru care se dorește obținerea locațiilor.
  • startDate: Data și ora de început a perioadei pentru care se solicită locațiile.
  • endDate: Data și ora de sfârșit a perioadei pentru care se solicită locațiile.

Structura Răspunsului

{
  "payload": [
    {
      "vehicleId": 0,
      "gpsDate": "2024-09-09T09:21:50.134~~~~",
      "latitude": 0,
      "longitude": 0,
      "speed": 0,
      "course": 0
    }
  ],
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

  • payload: Lista locațiilor vehiculelor.
    • vehicleId: ID-ul unic al vehiculului.
    • gpsDate: Data și ora ultimei actualizări GPS.
    • latitude: Latitudinea locației vehiculului.
    • longitude: Longitudinea locației vehiculului.
    • speed: Viteza vehiculului.
    • course: Direcția de deplasare a vehiculului.
  • correlationId: ID-ul unic pentru corelarea cererii și răspunsului.
  • failureReasons: Lista motivelor de eșec, dacă există.
    • errorCode: Codul de eroare.
    • errorParameters: Parametrii suplimentari pentru eroare.
  • isSuccess: Indicator dacă cererea a fost procesată cu succes.

Staționări

Descriere Generală

Metoda Stops returnează o listă cu staționările vehiculelor în perioada pentru care se face apelul. Aceasta returnează doar datele pentru vehiculele la care utilizatorul are acces. În cazul în care lista conține cel puțin un vehicul la care utilizatorul nu are acces, se va returna un răspuns cu cod de eroare 401.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/carriers/stops?api-version=2.0

⚠️ Notă: Toate datele calendaristice transmise sau returnate de acest endpoint sunt în fusul orar local al companiei.


Parametri Request

{
  "vehiclesList": [
    0
  ],
  "startDate": "2024-09-09T09:49:19.549",
  "endDate": "2024-09-09T09:49:19.549",
  "stationaryMargin": 0
}
  • vehiclesList: Lista de ID-uri ale vehiculelor pentru care se solicită staționările (maxim 10 vehicule).
  • startDate: Data și ora de început a perioadei pentru care se solicită staționările.
  • endDate: Data și ora de sfârșit a perioadei pentru care se solicită staționările.
  • stationaryMargin: Timpul de staționare exprimat în minute (nu poate fi mai mic de 1 minut).

Structura Răspunsului

{
  "payload": [
    {
      "results": {
        "additionalProp1": [
          {
            "vehicleId": 0,
            "startDate": "2025-04-11T14:33:30.175",
            "endDate": "2025-04-11T14:33:30.175",
            "latitude": 0,
            "longitude": 0,
            "stationaryEngineOnTime": 0,
            "distance": 0,
            "maxSpeed": 0,
            "averageSpeed": 0,
            "speedCount": 0,
            "indexKm": 0,
            "indexHours": 0,
            "address": "string",
            "stopDuration": 0,
            "engineOnStops": [
              {
                "startDate": "2025-04-11T14:33:30.175",
                "endDate": "2025-04-11T14:33:30.175",
                "duration": 0
              }
            ],
            "hotSpot": "string",
            "functioningTime": 0,
            "isPrivate": true,
            "drivers": [
              {
                "firstName": "string",
                "lastName": "string"
              }
            ],
            "fuelConsumption": 0
          }
        ],
        "additionalProp2": [
          {
            "vehicleId": 0,
            "startDate": "2025-04-11T14:33:30.175",
            "endDate": "2025-04-11T14:33:30.175",
            "latitude": 0,
            "longitude": 0,
            "stationaryEngineOnTime": 0,
            "distance": 0,
            "maxSpeed": 0,
            "averageSpeed": 0,
            "speedCount": 0,
            "indexKm": 0,
            "indexHours": 0,
            "address": "string",
            "stopDuration": 0,
            "engineOnStops": [
              {
                "startDate": "2025-04-11T14:33:30.175",
                "endDate": "2025-04-11T14:33:30.175",
                "duration": 0
              }
            ],
            "hotSpot": "string",
            "functioningTime": 0,
            "isPrivate": true,
            "drivers": [
              {
                "firstName": "string",
                "lastName": "string"
              }
            ],
            "fuelConsumption": 0
          }
        ],
        "additionalProp3": [
          {
            "vehicleId": 0,
            "startDate": "2025-04-11T14:33:30.175",
            "endDate": "2025-04-11T14:33:30.175",
            "latitude": 0,
            "longitude": 0,
            "stationaryEngineOnTime": 0,
            "distance": 0,
            "maxSpeed": 0,
            "averageSpeed": 0,
            "speedCount": 0,
            "indexKm": 0,
            "indexHours": 0,
            "address": "string",
            "stopDuration": 0,
            "engineOnStops": [
              {
                "startDate": "2025-04-11T14:33:30.175",
                "endDate": "2025-04-11T14:33:30.175",
                "duration": 0
              }
            ],
            "hotSpot": "string",
            "functioningTime": 0,
            "isPrivate": true,
            "drivers": [
              {
                "firstName": "string",
                "lastName": "string"
              }
            ],
            "fuelConsumption": 0
          }
        ]
      }
    }
  ],
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

  • payload: Lista staționărilor vehiculelor.
    • results: Rezultatele staționărilor pentru fiecare vehicul.
      • vehicleId: ID-ul vehiculului.
      • startDate: Data și ora de început a staționării.
      • endDate: Data și ora de sfârșit a staționării.
      • latitude: Latitudinea locației staționării.
      • longitude: Longitudinea locației staționării.
      • stationaryEngineOnTime: Timpul de staționare cu motorul pornit.
      • distance: Distanța parcursă.
      • maxSpeed: Viteza maximă atinsă.
      • averageSpeed: Viteza medie.
      • speedCount: Numărul de măsurători de viteză.
      • indexKm: Indexul de kilometri.
      • indexHours: Indexul de ore.
      • address: Adresa locației staționării.
      • stopDuration: Durata staționării.
      • engineOnStops: Lista evenimentelor cu motorul pornit.
        • startDate: Data și ora de început a staționării cu motorul pornit.
        • endDate: Data și ora de sfârșit a staționării cu motorul pornit.
        • duration: Durata staționării cu motorul pornit.
      • hotSpot: Numele hotspotului daca stationarea s-a produs în unul din hotspoturile definite.
      • functioningTime: Timpul de funcționare.
      • isPrivate: Indicator dacă staționarea este privată.
      • drivers: Lista șoferilor.
        • firstName: Prenumele șoferului.
        • lastName: Numele de familie al șoferului.
      • fuelConsumption: Consumul de combustibil pe deplasarea anterioară şi staţionarea curentă (dacă s-a staţionat cu motorul pornit).
  • correlationId: ID-ul unic pentru corelarea cererii și răspunsului.
  • failureReasons: Lista motivelor de eșec, dacă există.
    • errorCode: Codul de eroare.
    • errorParameters: Parametrii suplimentari pentru eroare.
  • isSuccess: Indicator dacă cererea a fost procesată cu succes.

Consum

Descriere Generală

Metoda Consumption returnează informații despre consumul, distanța, orele de funcționare, cât și consumul mediu la 100 km al unui vehicul în perioada pentru care se face apelul la metodă. Metoda poate fi apelată pentru o listă de maximum 10 vehicule și o perioadă de maximum 31 zile. Dacă vehiculul este echipat cu GPL, vor fi returnate date pentru ambele surse.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/carriers/consumption?api-version=2.0

⚠️ Notă: Toate datele calendaristice transmise sau returnate de acest endpoint sunt în fusul orar local al companiei.


Structura JSON a Cererii

{
  "vehiclesList": [
    0
  ],
  "startDate": "2024-09-09T07:15:14.124",
  "endDate": "2024-09-09T07:15:14.124"
}
Proprietăți ale Cererii
  • vehiclesList: Listă de vehicule pentru care se face apelul (tip array de vehicleId).
  • startDate: Data de început a perioadei pentru care se face apelul.
  • endDate: Data de sfârșit a perioadei pentru care se face apelul.

Structura JSON a Răspunsului

{
  "payload": [
    {
      "vehicleName": "string",
      "licensePlate": "string",
      "distance": 0,
      "hours": "string",
      "consumptionValue": 0,
      "averageConsumption100Km": 0,
      "secondarySource": {
        "distance": 0,
        "hours": "string",
        "consumptionValue": 0,
        "averageConsumption100Km": 0
      }
    }
  ],
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}
Proprietăți ale Răspunsului
Proprietăți Primare
  • vehicleName: Numele vehiculului (tip string).
  • licensePlate: Numărul de înmatriculare (tip string).
  • distance: Distanța parcursă în km (tip numeric).
  • hours: Orele de funcționare în format timespan ore:minute:secunde (tip string).
  • consumptionValue: Valoarea consumului în litri (tip numeric).
  • averageConsumption100Km: Consum mediu la 100 km în l/100km (tip numeric).
Proprietăți Sursă Secundară
  • secondarySource.distance: Distanța parcursă de sursa secundară în km (tip numeric).
  • secondarySource.hours: Orele de funcționare ale sursei secundare în format timespan ore:minute:secunde (tip string).
  • secondarySource.consumptionValue: Valoarea consumului pentru sursa secundară în litri (tip numeric).
  • secondarySource.averageConsumption100Km: Consum mediu la 100 km pentru sursa secundară în l/100km (tip numeric).

Calcularea Totalurilor

În cazul în care sursa secundară conține date, pentru obținerea totalurilor trebuie însumate datele din sursa primară și sursa secundară. De exemplu:

{
  "payload": [
    {
      "vehicleName": "Vehicul A",
      "licensePlate": "AB-12-BCD",
      "distance": 100,
      "hours": "10:00:00",
      "consumptionValue": 50,
      "averageConsumption100Km": 5,
      "secondarySource": {
        "distance": 50,
        "hours": "5:00:00",
        "consumptionValue": 20,
        "averageConsumption100Km": 4
      }
    }
  ],
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "isSuccess": true
}

Totaluri:

  • distance: 100 + 50 = 150 km
  • hours: 10:00:00 + 5:00:00 = 15:00:00
  • consumptionValue: 50 + 20 = 70 litri
  • averageConsumption100Km: (5 + 4) / 2 = 4.5 l/100km

Alimentări

Descriere Generală

Metoda Refills returnează o listă cu evenimentele de alimentare sau scădere a nivelului de carburant detectate în perioada pentru care se face apelul. Aceasta returnează doar datele pentru vehiculele la care utilizatorul are acces.
În cazul în care lista conține cel puțin un vehicul la care utilizatorul nu are acces, se va returna un răspuns cu cod de eroare 401.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/carriers/refills?api-version=2.0

⚠️ Notă: Toate datele calendaristice transmise sau returnate de acest endpoint sunt în fusul orar local al companiei.


Parametri Request

{
  "carrierId": 0,
  "startDate": "2024-09-09T09:42:51.835",
  "endDate": "2024-09-09T09:42:51.835"
}
  • carrierId: ID-ul unic al vehiculului pentru care se dorește obținerea evenimentelor de alimentare sau scădere a nivelului de carburant.
  • startDate: Data și ora de început a perioadei pentru care se solicită evenimentele.
  • endDate: Data și ora de sfârșit a perioadei pentru care se solicită evenimentele.

Structura Răspunsului

{
  "payload": [
    {
      "date": "string",
      "event": "string",
      "location": "string",
      "estimation": 0,
      "isPrivate": true
    }
  ],
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

  • payload: Lista evenimentelor de alimentare sau scădere a nivelului de carburant.
    • date: Data și ora evenimentului.
    • event: Tipul evenimentului (alimentare sau scădere a nivelului de carburant).
    • location: Locația unde a avut loc evenimentul.
    • estimation: Estimarea cantității de carburant implicate în eveniment.
    • isPrivate: Indicator dacă evenimentul s-a efectuat în mod privat.
  • correlationId: ID-ul unic pentru corelarea cererii și răspunsului.
  • failureReasons: Lista motivelor de eșec, dacă există.
    • errorCode: Codul de eroare.
    • errorParameters: Parametrii suplimentari pentru eroare.
  • isSuccess: Indicator dacă cererea a fost procesată cu succes.

Lista Posibile Evenimente

  • FuelStart: Nivel început
  • Fueling: Alimentare
  • PossibleFuelTheft: Posibil furt de carburant
  • TotalRefill: Total alimentări
  • TotalPossibleTheft: Total posibile furturi de carburant
  • RemainingFuel: Carburant rămas
  • TotalFuelConsumption: Consum total de carburant
  • FuelStartSecondarySource: Începutul alimentării din sursă secundară
  • FuelingSecondarySource: Alimentare din sursă secundară
  • PossibleFuelTheftSecondarySource: Posibil furt de carburant din sursă secundară
  • TotalRefillSecondarySource: Total alimentări din sursă secundară
  • TotalPossibleTheftSecondarySource: Total posibile furturi din sursă secundară
  • RemainingFuelSecondarySource: Carburant rămas din sursă secundară
  • TotalFuelConsumptionSecondarySource: Consum total de carburant din sursă secundară

Temperaturi

Descrierea Metodei Generale

Metoda Temperatures returnează o listă de temperaturi înregistrate pentru perioada pentru care se face apelul. Returnează date doar pentru vehiculele la care utilizatorul are acces. Dacă lista conține cel puțin un vehicul la care utilizatorul nu are acces, se va returna un răspuns cu codul de eroare 401.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/carriers/temperatures?api-version=2.0

⚠️ Notă: Toate datele calendaristice transmise sau returnate de acest endpoint sunt în fusul orar local al companiei.


Parametri Cererii

{
  "vehiclesList": [
    0
  ],
  "startDate": "2024-09-09T09:49:19.549",
  "endDate": "2024-09-09T09:49:19.549"
}
  • vehiclesList: Lista vehiculelor pentru care se solicită datele de temperatură.
  • startDate: Data de început a perioadei pentru care se solicită datele.
  • endDate: Data de sfârșit a perioadei pentru care se solicită datele.

Structura Răspunsului

{
  "payload": [
    {
      "temperature": [
        {
          "vehicleId": 0,
          "date": "2025-04-11T12:33:11.817",
          "value": 0,
          "sensorNumber": 0
        }
      ],
      "humidity": [
        {
          "vehicleId": 0,
          "date": "2025-04-11T12:33:11.817",
          "value": 0,
          "sensorNumber": 0
        }
      ]
    }
  ],
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}
  • payload: Conține rezultatele cu datele de temperatură.
  • correlationId: Un identificator unic pentru corelarea cererii și răspunsului.
  • failureReasons: Motivele pentru care cererea a eșuat, dacă există.
  • isSuccess: Indică dacă cererea a fost de succes.

e-Transport

În acest moment, API-ul pus la dispoziție de AROBS TrackGPS permite folosirea a 7 endpoint-uri pentru a putea face management la transporturile din contul companiei:

Metodă URL Descriere
POST https://api.trackgps.ro/api/eTransport/add-transport?api-version=2.0 Adăugare transport
POST https://api.trackgps.ro/api/eTransport/update-transport?api-version=2.0 Actualizare transport
POST https://api.trackgps.ro/api/eTransport/load-transports?api-version=2.0 Listare transporturi
POST https://api.trackgps.ro/api/eTransport/remove-transports?api-version=2.0 Ștergere transporturi
POST https://api.trackgps.ro/api/eTransport/start-transports?api-version=2.0 Pornire transporturi
POST https://api.trackgps.ro/api/eTransport/end-transports?api-version=2.0 Finalizare transporturi
POST https://api.trackgps.ro/api/eTransport/pause-transports?api-version=2.0 Pauză transporturi

Intervalul de timp dintre 2 request-uri succesive poate fi de minim 30 de secunde.

Subsecțiuni ale e-Transport

Adăugare transport

Descriere Generală

Endpoint-ul add-transport permite adăugarea unui transport nou în sistem. Utilizatorul poate specifica toate detaliile legate de transport, inclusiv vehiculul asociat, datele de început și sfârșit, locațiile și informațiile suplimentare precum trailerul asociat.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/eTransport/add-transport?api-version=2.0


Parametri Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă următorii parametri:

  • Parametru de query:

    • api-version (string, obligatoriu) – Versiunea API-ului. Valoare recomandată: 2.0
  • Body (JSON):

{
  "vehicleUId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "startDate": "2025-04-09T07:38:24.380Z",
  "endDate": "2025-04-09T07:38:24.380Z",
  "codeUit": "string",
  "notes": "string",
  "startLocation": "string",
  "endLocation": "string",
  "vatNumber": "string",
  "validityStartDate": "2025-04-09T07:38:24.380Z",
  "validityEndDate": "2025-04-09T07:38:24.380Z",
  "trailer1Code": "string",
  "trailer2Code": "string"
}
Parametru Tip Obligatoriu Descriere
vehicleUId string Da Identificatorul unic al vehiculului asociat transportului.
startDate string Nu Data și ora de început a transmisiei datelor gps în platforma ANAF (format ISO 8601, UTC).
endDate string Nu Data și ora de sfârșit a transmisiei datelor gps în platforma ANAF (format ISO 8601, UTC).
codeUit string Da Codul UIT generat de ANAF.
notes string Nu Observații suplimentare despre transport.
startLocation string Nu Locația de început a transportului.
endLocation string Nu Locația de final a transportului.
vatNumber string Da Codul fiscal al transportatorului (CIF).
validityStartDate string Da Data de început a validității codului UIT. Această dată este generată de platforma ANAF (format ISO 8601, UTC).
validityEndDate string Da Data de sfârșit a validității codului UIT. Această dată este generată de platforma ANAF (format ISO 8601, UTC).
trailer1Code string Nu Numărul de înmatriculare pentru prima remorcă.
trailer2Code string Nu Numărul de înmatriculare pentru a doua remorcă.

🕒 Important: Toate câmpurile de tip dată (ex. startDate, endDate, validityStartDate, validityEndDate) trebuie trimise în format UTC.

Structura Răspunsului

{
  "payload": true,
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

Proprietate Tip Descriere
payload boolean Indică dacă transportul a fost adăugat cu succes (true sau false).
correlationId string Identificatorul cererii pentru corelarea răspunsurilor.
failureReasons array Lista motivelor de eroare (dacă există), cu detalii suplimentare.
isSuccess boolean Indică dacă cererea a fost procesată cu succes (true) sau nu (false).

Răspunsuri de Eroare

Cod HTTP Descriere
400 Parametri lipsă sau structură invalidă.
401 Credențiale incorecte sau utilizator neautorizat.
429 Limită de rată depășită pentru utilizator.

Modificare transport

Descriere Generală

Endpoint-ul update-transport permite modificarea unui transport deja existent în sistem. Poți actualiza detalii precum perioada de desfășurare, locațiile, observațiile sau informațiile despre remorci.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/eTransport/update-transport?api-version=2.0


Parametri Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă următorii parametri:

  • Parametru de query:

    • api-version (string, obligatoriu) – Versiunea API-ului. Valoare recomandată: 2.0
  • Body (JSON):

{
  "transportUId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "vehicleUId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "startDate": "2025-04-09T07:38:24.380Z",
  "endDate": "2025-04-09T07:38:24.380Z",
  "notes": "string",
  "startLocation": "string",
  "endLocation": "string",
  "vatNumber": "string",
  "validityStartDate": "2025-04-09T07:38:24.380Z",
  "validityEndDate": "2025-04-09T07:38:24.380Z",
  "trailer1Code": "string",
  "trailer2Code": "string"
}
Parametru Tip Obligatoriu Descriere
transportUId string Da Identificatorul transportului ce urmează să fie actualizat.
vehicleUId string Da Identificatorul vehiculului asociat transportului.
startDate string Nu Data și ora de început a transmisiei datelor gps în platforma ANAF (format ISO 8601, UTC).
endDate string Nu Data și ora de sfârșit a transmisiei datelor gps în platforma ANAF (format ISO 8601, UTC).
validityStartDate string Da Data de început a validității codului UIT. Această dată este generată de platforma ANAF (format ISO 8601, UTC).
validityEndDate string Da Data de sfârșit a validității codului UIT. Această dată este generată de platforma ANAF (format ISO 8601, UTC).
notes string Nu Observații adiționale.
startLocation string Nu Locația de început.
endLocation string Nu Locația de sfârșit.
vatNumber string Da Codul fiscal al transportatorului (CIF).
trailer1Code string Nu Numărul de înmatriculare pentru prima remorcă.
trailer2Code string Nu Numărul de înmatriculare pentru a doua remorcă.

🕒 Important: Câmpurile de tip dată (startDate, endDate, validityStartDate, validityEndDate) trebuie transmise în format UTC.


Structura Răspunsului

{
  "payload": true,
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

Proprietate Tip Descriere
payload boolean Indică dacă actualizarea transportului a fost efectuată cu succes.
correlationId string Identificatorul unic al cererii (pentru trasabilitate și debugging).
failureReasons array Lista motivelor de eroare (dacă există), cu coduri și parametri.
isSuccess boolean Indică dacă cererea a fost procesată fără erori (true sau false).

Răspunsuri de Eroare

Cod HTTP Descriere
400 Parametri lipsă sau structură invalidă.
401 Credențiale incorecte sau utilizator neautorizat.
429 Limită de rată depășită pentru utilizator.

Listă transporturi

Descriere Generală

Endpoint-ul load-transports este utilizat pentru a extrage lista transporturilor disponibile în contul unui utilizator, pe baza drepturilor de acces la vehicule. Utilizatorul poate specifica parametri pentru filtrarea transporturilor, precum statutul acestora sau o valoare de căutare specifică.

Este supus restricțiilor din Rate Limit

⚠️ Toate datele calendaristice ale transporturilor, afișate în răspuns, sunt înregistrate în fusul orar al companiei, nu în UTC. Asigurați-vă că transporturile sunt gestionate conform setărilor fusului orar al companiei atunci când sunt preluate din sistem.

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/eTransport/load-transports?api-version=2.0

⚠️ Transporturile aflate în statusul “Eroare” afișate în aplicația mobilă și web nu sunt returnate de acest endpoint.


Parametrii Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă următorii parametri:

  • Parametru de query:

    • api-version (string, obligatoriu) – Versiunea API-ului. Valoare recomandată: 2.0
  • Body (JSON):

{
  "pageSize": 0,
  "pageIndex": 0,
  "statusIds": [
    1
  ],
  "searchValue": "string"
}
Parametru Tip Obligatoriu Descriere
pageSize number Nu Numărul de elemente pe care le returnează pagina.
pageIndex number Nu Indexul paginii pentru cererea efectuată.
statusIds array Da Lista de ID-uri ale statusurilor transporturilor căutate.
searchValue string Nu Cuvântul sau fraza pentru căutare în lista transporturilor.

Lista Statusurilor transportului

Id Descriere
1 În așteptare
2 În desfășurare
3 Finalizat
4 Finalizat automat
5 Eroare
6 Pauză

Structura Răspunsului

{
  "payload": {
    "totalRecords": 0,
    "transports": [
      {
        "uId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "carrierCode": "string",
        "carrierName": "string",
        "carrierUId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "trailer1Code": "string",
        "trailer2Code": "string",
        "codeUit": "string",
        "statusId": 0,
        "startDate": "2025-05-16T14:35:04.862Z",
        "endDate": "2025-05-16T14:35:04.862Z",
        "validityStartDate": "2025-05-16T14:35:04.862Z",
        "validityEndDate": "2025-05-16T14:35:04.862Z",
        "notes": "string",
        "startLocation": "string",
        "endLocation": "string",
        "externalId": 0,
        "externalResponse": "string",
        "lastSyncDate": "2025-05-16T14:35:04.862Z",
        "transmissionStatusCode": "string",
        "transmissionStatusErrorDescription": "string",
        "lastTransmissionDate": "2025-05-16T14:35:04.862Z",
        "lastGpsDate": "2025-05-16T14:35:04.862Z",
        "changeRequestMessage": "string",
        "changeRequestStatusCode": "string",
        "changeRequestCreatedAt": "2025-05-16T14:35:04.862Z",
        "changeRequestDate": "2025-05-16T14:35:04.862Z",
        "changeRequestAnafStatus": "string",
        "changeRequestAnafMessage": "string",
        "changeRequestAnafDate": "2025-05-16T14:35:04.862Z"
      }
    ]
  },
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

Proprietate Tip Descriere
payload object Obiect care conține transporturile returnate și alte informații relevante.
totalRecords number Numărul total de transporturi disponibile.
transports array Lista transporturilor disponibile, fiecare cu detaliile specifice.
uId string Identificatorul unic al transportului.
carrierCode string Numărul de înmatriculare al vehiculului folosit pentru transmiterea datelor de localizare către ANAF.
carrierName string Numele vehiculului folosit pentru transmiterea datelor de localizare către ANAF.
carrierUId string Identificatorul unic al vehiculului.
trailer1Code string Numărul de înmatriculare pentru prima remorcă.
trailer2Code string Numărul de înmatriculare pentru a doua remorcă.
codeUit string Codul UIT generat de ANAF.
statusId number Statusul transportului.
startDate string Data și ora de inceput a transmisiei datelor gps în platforma ANAF.
endDate string Data și ora de sfârșit a transmisiei datelor gps în platforma ANAF.
validityStartDate string Data de început a validității codului UIT. Această dată este generată de platforma ANAF.
validityEndDate string Data de sfârșit a validității codului UIT. Această dată este generată de platforma ANAF.
notes string Observații suplimentare despre transport.
startLocation string Locația de început a transportului.
endLocation string Locația de sfărșit a transportului.
externalId number Identificatorul răspunsului transportului din platforma ANAF.
externalResponse string Mesajul de răspuns al transportului din platforma ANAF.
lastSyncDate string Data preluării transportului din platforma ANAF.
transmissionStatusCode string Status transmisie date GPS către platforma ANAF.
transmissionStatusErrorDescription string Descriere status eroare al transmisiei datelor GPS către platforma ANAF.
lastTransmissionDate string Data ultimei coordonate GPS transmise către platforma ANAF.
lastGpsDate string Data ultimei coordonate GPS recepționată de la vehicul.
changeRequestMessage string Mesajul de răspuns pentru crearea cererii de modificare a datelor transportului.
changeRequestStatusCode string Statusul cererii de modificare a datelor transportului.
changeRequestCreatedAt string Data creării cererii de modificare date ale transportului.
changeRequestDate string Data recepționării răspunsului din platforma ANAF pentru cererea de modificare date transport.
changeRequestAnafStatus string Statusul cerererii de modificare date transport primit de la plaforma ANAF.
changeRequestAnafMessage string Mesajul de răspuns pentru procesarea cererii de modificare date transport primit de la platforma ANAF.
changeRequestAnafDate string Data recepționării răspunsului din platforma ANAF pentru procesarea cererii de modificare date transport.
correlationId string Identificatorul cererii pentru corelarea răspunsurilor.
failureReasons array Lista motivelor de eroare (dacă există), cu detalii suplimentare.
isSuccess boolean Indică dacă cererea a fost procesată cu succes (true) sau nu (false).

Lista statusurilor de transmisie a datelor GPS in platforma ANAF

Cod Descriere
Active Transmisie activă
Finalized Transmisie finalizată
NotInRomania Nu este pe teritoriul României
NotStarted Transmisie în aşteptare
Error Eroare transmisie date
MissingETransportConfiguration Eroare configurare e-Transport, vă rugăm apelați echipa de suport
OldData Date mai vechi de 6 ore
NoGPSCoordinates Fără semnal GPS
WithoutTransmission Fără transmisie GPS activă

Lista statusurilor pentru cererile de modificare a datelor transportului

Cod Descriere
RequestCreated Cerere creata
RequestSent Cerere trimisa cu succes
RequestErrorSent Eroare la trimiterea cererii
ResponseSuccess Cerere finalizata cu succes
ResponseError Cerere finalizata cu eroare

Răspunsuri de Eroare

Cod HTTP Descriere
400 Parametri lipsă sau structură invalidă.
401 Credențiale incorecte sau utilizator neautorizat.
429 Limită de rată depășită pentru utilizator.

Ștergere transporturi

Descriere Generală

Endpoint-ul remove-transports permite ștergerea unuia sau mai multor transporturi din sistem, pe baza identificatorilor unici (transportUId). Această acțiune este ireversibilă și necesită drepturi de acces corespunzătoare asupra transporturilor vizate.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/eTransport/remove-transports?api-version=2.0


Parametri Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă următorii parametri:

  • Parametru de query:

    • api-version (string, obligatoriu) – Versiunea API-ului. Valoare recomandată: 2.0
  • Body (JSON):

{
  "transportsUids": [
    "3fa85f64-5717-4562-b3fc-2c963f66afa6"
  ]
}
Parametru Tip Obligatoriu Descriere
transportsUids array Da Lista de identificatori unici (GUID) ai transporturilor ce urmează a fi șterse.

Structura Răspunsului

{
  "payload": true,
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

Proprietate Tip Descriere
payload boolean Rezultatul operației de ștergere (true dacă a reușit).
correlationId string Identificator unic al cererii, util pentru trasabilitate.
failureReasons array Lista cu erori apărute (dacă există), fiecare cu cod și parametri.
isSuccess boolean Indică dacă cererea a fost procesată cu succes (true sau false).

Răspunsuri de Eroare

Cod HTTP Descriere
400 Parametri lipsă, invalidi sau format incorect.
401 Utilizator neautentificat sau fără permisiuni.
429 A fost depășit rate limit-ul pentru utilizator.

Start sesiune date

Descriere Generală

Endpoint-ul start-transports permite pornirea (activarea) unuia sau mai multor transporturi deja create. Această acțiune setează data de început a transportului și îl marchează ca fiind activ în sistem.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/eTransport/start-transports?api-version=2.0


Parametri Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă următorii parametri:

  • Parametru de query:

    • api-version (string, obligatoriu) – Versiunea API-ului. Valoare recomandată: 2.0
  • Body (JSON):

{
  "transports": [
    {
      "codeUit": "string"
    }
  ]
}
Parametru Tip Obligatoriu Descriere
transports array Da Lista transporturilor ce urmează să fie pornite.
codeUit string Da Codul unic de identificare UIT al transportului.

🕒 Important: Toate datele (startDate) trebuie trimise în format UTC.


Structura Răspunsului

{
  "payload": {
    "codeUit": "string",
    "isSuccess": true,
    "errors": [
      "string"
    ]
  },
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

Proprietate Tip Descriere
payload boolean Rezultatul operației de pornire (true dacă a reușit).
correlationId string Identificator unic al cererii, util pentru trasabilitate.
failureReasons array Lista cu erori apărute (dacă există), fiecare cu cod și parametri.
isSuccess boolean Indică dacă cererea a fost procesată cu succes (true sau false).

Răspunsuri de Eroare

Cod HTTP Descriere
400 Parametri lipsă, invalidi sau format incorect.
401 Utilizator neautentificat sau fără permisiuni.
429 A fost depășit rate limit-ul pentru utilizator.

Stop sesiune date

Descriere Generală

Endpoint-ul end-transports permite oprirea unuia sau mai multor transporturi active, pe baza codului UIT. Prin această acțiune, transporturile sunt marcate ca încheiate în sistem și nu mai pot fi modificate ulterior.

Este supus restricțiilor din Rate Limit

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/eTransport/end-transports?api-version=2.0


Parametri Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă următorii parametri:

  • Parametru de query:

    • api-version (string, obligatoriu) – Versiunea API-ului. Valoare recomandată: 2.0
  • Body (JSON):

{
  "transports": [
    {
      "codeUit": "string"
    }
  ]
}
Parametru Tip Obligatoriu Descriere
transports array Da Lista transporturilor ce urmează să fie oprite.
codeUit string Da Codul unic de identificare UIT al transportului.

🕒 Important: Toate datele (endDate) trebuie trimise în format UTC.


Structura Răspunsului

{
  "payload": {
    "codeUit": "string",
    "isSuccess": true,
    "errors": [
      "string"
    ]
  },
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

Proprietate Tip Descriere
payload boolean Rezultatul operației de oprire (true dacă a reușit).
correlationId string Identificator unic al cererii, util pentru trasabilitate.
failureReasons array Lista cu erori apărute (dacă există), fiecare cu cod și parametri.
isSuccess boolean Indică dacă cererea a fost procesată cu succes (true sau false).

Răspunsuri de Eroare

Cod HTTP Descriere
400 Parametrii lipsă, invalizi sau format incorect.
401 Utilizator neautentificat sau fără permisiuni.
429 A fost depășit rate limit-ul pentru utilizator.

Pauză sesiune date

Descriere Generală

Endpoint-ul pause-transports permite întreruperea transmiterii poziţiei unui transport activ, pe baza codului UIT. Similar cu start și stop, transporturile sunt întrerupte temporar.

Este supus restricțiilor din Rate Limit.

⚠️ Toate cererile către acest endpoint trebuie să includă parametrul api-version=2.0 în URL.
URL: POST https://api.trackgps.ro/api/eTransport/pause-transports?api-version=2.0


Parametrii Cerere

Cererile către acest endpoint trebuie să fie de tip POST și să includă următorii parametri:

  • Parametru de query:

    • api-version (string, obligatoriu) – Versiunea API-ului. Valoare recomandată: 2.0
  • Body (JSON):

{
  "transports": [
    {
      "codeUit": "string"
    }
  ]
}
Parametru Tip Obligatoriu Descriere
transports array Da Lista transporturilor ce urmează să fie puse pe pauză.
codeUit string Da Codul unic de identificare UIT al transportului.

Structura Răspunsului

{
  "payload": true,
  "correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "failureReasons": [
    {
      "errorCode": "string",
      "errorParameters": [
        "string"
      ]
    }
  ],
  "isSuccess": true
}

Descrierea Proprietăților

Proprietate Tip Descriere
payload boolean Rezultatul operației de pauză (true dacă a reușit).
correlationId string Identificator unic al cererii, util pentru trasabilitate.
failureReasons array Lista cu erori apărute (dacă există), fiecare cu cod și parametrii.
isSuccess boolean Indică dacă cererea a fost procesată cu succes (true sau false).

Răspunsuri de Eroare

Cod HTTP Descriere
400 Parametri lipsă, invalizi sau format incorect.
401 Utilizator neautentificat sau fără permisiuni.
429 A fost depășit rate limit-ul pentru utilizator.

Integrari

Pentru a vă oferi mai mult sprijin în activitate, aplicația TrackGPS permite integrarea cu anumite sisteme:

Subsecțiuni ale Integrari

Rompetrol

Integrarea datelor Rompetrol în Aplicația TrackGPS

Acest document descrie pașii necesari pentru integrarea datelor Rompetrol în aplicația TrackGPS. Vă rugăm să urmați instrucțiunile cu atenție pentru a asigura o integrare lină.

1. Obținerea Datelor de Acces

  1. Contactați echipa de vânzări Rompetrol pentru a cere acces la datele dvs.
  2. În urma cererii, ar trebui să primiți următoarele informații:
    • Nume utilizator
    • Parola

2. Configurarea în Aplicația TrackGPS

  1. Adăugați informațiile obținute în secțiunea Setări companie -> Connectori -> Rompetrol din aplicația TrackGPS. connectors.png connectors.png

  2. Bifati “Sincronizare date”.

  3. Salvaţi.

Info

In cazul în care doriţi să opriţi sincronizarea automată a datelor, debifaţi opţiunea “Sincronizare date” şi salvaţi.

DKV

Integrarea datelor DKV în Aplicația TrackGPS

Acest document descrie pașii necesari pentru integrarea datelor DKV în aplicația TrackGPS. Vă rugăm să urmați instrucțiunile cu atenție pentru a asigura o integrare lină.

1. Creare utilizator platforma DKV

  1. Accesați pagina de înscriere DKV.
  2. Completați formularul cu următoarele informații:
    • Adresa de email
    • Nume
    • Prenume
    • Parola

SignUp.png SignUp.png

  1. După crearea utilizatorului, veți primi un email de activare a contului. Urmați pașii din email pentru a activa contul.

2. Abonarea la Enterprise API

  1. După activarea contului, logați-vă în portalul DKV.
  2. Navigați la pagina Products -> Enterprise API.
  3. În secțiunea Your subscriptions, adăugați o cerere de abonare la produsul Enterprise API: transactions and passages - v2.0.0.
  4. Apăsați butonul Subscribe.
  5. După abonare, portalul vă va redirecționa către pagina Profile.

subscribe.png subscribe.png

3. Obținerea Datelor de Acces

  1. Contactați echipa de vânzări DKV pentru a solicita acces la datele dvs. Specificati adresa de email folosita in procesul de creare a utilizatorului.
  2. În urma cererii, veți obține următoarele informații:
    • Client ID
    • Client Secret
    • Customer ID
    • Subscription Key

4. Configurarea în Aplicația TrackGPS

  1. Adăugați informațiile obținute în secțiunea Setări companie -> Connectori -> DKV din aplicația TrackGPS. connectors.png connectors.png

  2. Bifaţi “Sincronizare date”.

  3. Salvaţi

Info

In cazul în care doriţi să opriţi sincronizarea automată a datelor, debifaţi opţiunea “Sincronizare date” şi salvaţi.

e-Transport

Funcționalitatea e-Transport se găsește în secțiunea “Conformitate” din meniul principal.

La accesarea functionalității e-Transport, se deschide un tabel cu toate transporturile care le aducem automat din platforma ANAF dar și pe cele adăugate manual de utilizator (vezi sectiunea Adăugare Transport).

Info

Platforma ANAF este interogată la un interval de 5 minute pentru a vedea dacă sunt transporturi noi sau dacă s-a modificat un transport existent, actualizând constant lista cu transporturi din platforma TrackGPS.

Subsecțiuni ale e-Transport

Conectori

Autorizarea

Atenție

Este foarte important ca utilizatorul care dorește să realizeze autorizarea să aibă acces la certificatul digital cu care se loghează în platforma ANAF și să aibă semnătura digitală instalată pe calculator.

Info

Platforma ANAF este interogată la un interval de 5 minute pentru a vedea dacă sunt transporturi noi sau dacă s-a modificat un transport existent, actualizând constant lista cu transporturi din platforma TrackGPS.

Pentru a realiza autorizarea interogării platformei ANAF trebuie să parcurgeți următorii pași:

  1. Accesați din partea dreaptă sus, meniul „Setări companie”, tab-ul „Connectori”
  2. Introduceți CUI-ul transportatorului ssconectori.png ssconectori.png
  3. Click pe „Autorizează”, selectați din lista afișată certificatul digital ANAF iar după introducerea parolei/pinului, se va realiza autorizarea în platformă.
  4. ANAF va furniza un rezultat în baza certificatului digital transmis și se va obține un token de acces. Acesta este valabil timp de un an calendaristic. După expirarea acestei perioade, trebuie reluat procesul de autorizare.
  5. Se pot genera mai multe coduri de autorizare în situația în care sunt mai multe companii într-un singur cont sau dacă sunt mai mulți utilizatori cu drept de administrare. Autorizarea se realizează la nivel de utilizator.
  6. După realizarea autorizării, la Status va apărea mesajul „Autorizat”
Notă

În cazul în care în cele 5 minute nu se realizează sincronizarea transporturilor vă rugăm să verificați statusul conectorului să fie “Autorizat”.

! Există și situația în care platforma ANAF nu este disponibilă, în acest caz nu se va putea efectua sincronizarea, vă rugăm așteptați 30 minute iar în caz contrar apelați la echipa de suport.

Dashboard

Statistici transporturi

Accesați meniul „Statistici” și la click pe Statistici e-Transport puteți să vizualizați lista vehiculelor alocate pe transpoturi în regim e-Transport, cât și lista vehiculelor fără transporturi în desfășurare.

c7cc04e2-d752-432e-86d1-f5fc8bd94633.png c7cc04e2-d752-432e-86d1-f5fc8bd94633.png

Management transporturi

În sectiunea de managment există un tabel cu lista cu toate transporturile care le aducem automat din platforma ANAF dar și pe cele adăugate manual de utilizator.
Tot din această pagină există posibilitatea de a adăuga sau edita un transport.

Lista Lista

Subsecțiuni ale Management transporturi

Lista transporturi

Management transporturi

În partea de sus a listei există un meniu de căutare de tip quichsearch, unde puteți efectua o căutare pe câmpurile pe care doriți să le afișați (ex. cod UIT, numărul de înmatriculare, etc).

În partea stângă, din lista de tip drop-down, puteți efectua filtrarea transporturilor în funcție de statusul acestora Lista Lista

Tabelul conține următoarele coloane: Lista Lista

  • Status transport: Status transport.
  • Cod UIT: codul UIT generat de ANAF pentru fiecare transport în parte
  • Status transmisie date: afișează statusul transmisiei datelor catre ANAF pentru fiecare transport
  • Status cerere modificare date: afișează statusul cererii de modificare a datelor unui transport (numărul de înmatriculare al vehiculului sau al remorcii) trimise către ANAF. Acest status este furnizat de ANAF.
  • Dată început sesiune: data și ora de început a transmisiei datelor gps în platforma ANAF
  • Dată sfârșit sesiune: data și ora de sfârșit a transmisiei datelor gps în platforma ANAF
  • Număr de înmatriculare: numărul de înmatriculare al vehiculului folosit pentru transmiterea datelor de localizare către Anaf
  • Nume vehicul: numele vehiculului folosit pentru transmiterea datelor de localizare către Anaf
  • Remorci: numerele de înmatriculare ale remorcilor asociate transporturilor
  • Observații
  • Locația de început: locația de plecare a transportului conform celei declarate în platforma ANAF
  • Locația de sfârșit: locația de sosire a transportului conform celei declarate în platforma ANAF
  • Dată început validitare UIT: data de început a validității codului UIT. Această dată este generată de platforma ANAF
  • Dată sfârșit validitate UIT: data de sfârșit a validității codului UIT. Această dată este generată de platforma ANAF
  • Dată sincronizare: data cand s-a facut ultima sincronizare a datelor din platforma ANAF

Lista cu transporturile se poate sorta după coloanele: Status transport, Cod UIT, Dată început sesiune, Dată sfârșit sesiune, Număr de înmatriculare, Nume vehicul, Remorci, Dată început validitate UIT, Dată sfârșit validitate UIT, Dată sincronizare.

Pentru a edita un transport se face click pe codul UIT din listă.

Info

Cele adăugate automat din sincronizarea cu platforma ANAF nu pot fi editate. Pentru a face modificări asupra lor, va trebui să vă logați în platforma ANAF. După salvarea modificărilor în platforma ANAF, acestea vor fi vizibile și în platforma TrackGPS.

Pentru a adăuga manual un trasnport se apasă butonul Adaugă din partea dreapta sus.

Exceptând transporturile cu statusul În desfășurare, toate transporturile din listă pot fi șterse. Selectați transporturile vizate bifând check-box-urile și click pe butonul Șterge din meniul din partea de sus a paginii.

Se poate verifica de către cine a fost efectuată ștergerea, accesând meniul Administrare, Istoric activitate.

Adaugare Transport

Adaugare manuala transporturi

Pentru a adauga un transport nou, din pagina de management se apasa butonul Adauga

În afară de transporturile care apar automat în lista meniului e-Transport prin autorizarea cu platforma ANAF, se mai poate realiza realiza și adăugarea manuală a unui transport.

Click pe Adaugă, se deschide o fereastră unde este obligatoriu să fie completate câmpurile: numărul de înmatriculare, codul fiscal (se completează automat dacă există autorizare cu ANAF), codul UIT, data început validitate UIT, dată sfârșit validitate UIT. Formular Formular

Dacă avem codul UIT și dacă s-a realizat autorizarea cu platforma ANAF, la click pe butonul ANAF download, câmpurile se vor completa automat prin interogarea cu platforma autorității.

După completarea câmpurilor, click pe Salvează și transportul a fost salvat. Transporturile vor fi ordonate în funcție de data început sesiune.

O altă opțiune de a adăuga transporturile este prin intermediul unui fișier de import. Trebuie să descărcați template-ul de import, să completați coloanele cu aceleași informații și apoi să salvați. import.png import.png

Ulterior, click pe „Importă”, selectați fișierul salvat anterior și va apărea o fereastră cu Rezultat import unde puteți verifica daca s-a reușit procesarea lui.

Editare Transport

Pentru a edita un transport, se face click pe codul UIT al unui transport din listă. Astfel, se va deschide formularul de editare transport.

Dacă transportul a fost adăugat manual, se pot edita toate câmpurile, exceptând codul UIT.

La transporturile adăugate prin sincronizarea cu platforma ANAF, se poate edita doar data de început și sfârșit sesiune.
De asemenea, un transport în status “Finalizat” nu se mai poate edita.

În formularul de editare transport, afișăm un mesaj de atenționare prin care informăm utilizatorii că orice modificare făcută în aplicația TrackGPS la informațiile preluate direct de la ANAF despre un anumit transport nu va actualiza informațiile în platforma ANAF. Picture1.png Picture1.png

Start/Stop/Pauză transport

Executia unui transport

Odată ce toate transporturile au fost salvate în modulul e-Transport, trebuie să urmăriți execuția acestora.

Important

Oprirea transmisiei datelor nu trebuie să se realizeze mai târziu de data de expirare a validității codului UIT. Dacă se omite oprirea prin apăsarea butonului Stop, acest lucru se va realiza automat din platforma TrackGPS, la expirarea validității codului UIT și va apărea statusul „Finalizat automat”.

Pornirea sesiunii unui transport

Selectați transportul vizat prin click pe codul UIT și porniți sesiunea prin click pe butonul Start. Acest pas va fi realizat doar în cazul în care vehiculul urmează să pornească din locația de plecare. Transmisia datelor se va face imediat.

start transport start transport

Dacă doriți să porniți mai multe transporturi, le puteți selecta bifând checkbox-urile din stânga acestora și apăsând butonul Start din meniul din partea de sus.

start lista start lista

Întreruperea sesiunii unui transport

Selectați transportul vizat prin click pe codul UIT și întrerupeți sesiunea prin click pe butonul Pauză. În acel moment, statusul transportului se va schimba „În pauză”.

pauza-transport pauza-transport

Dacă doriți să întrerupeți mai multe transporturi, le puteți selecta bifând checkbox-urile din stânga acestora și apăsând butonul Pauză din meniul din partea de sus.

pauza lista pauza lista

Oprirea sesiunii unui transport

În mod similar, se procedează când se dorește oprirea transportului, prin click pe butonul Stop. În acel moment, statusul transportului se va schimba în „Finalizat”.

stop transport.png stop transport.png

stop-lista.png stop-lista.png

Status transport

Afisează statusul fiecărui transport.

Statusurile disponibile în sistemul TrackGPS sunt prezentate mai jos, alături de semnificația fiecăruia.

Status Descriere
In așteptare Acest status îi este atribuit unui transport care încă nu a început, fie nu are data de început sesiune setată fie are planificată o dată de început în viitor. La acest transport, s-a reușit identificarea vehiculului care e alocat pe transportul respectiv.
În desfășurare Acest status ăi este atribuit unui transport care a început deja, iar alicația TrackGPS transmite date gps către ANAF. Transportul rămane în acest status până la finalizarea lui.
Finalizat Se afișează acest status la transporturile care s-au finalizat. Un transport e finalizat atunci când se ajunge la data de sfârșit sesiune introdusă de utilizator la transportul respectiv sau atunci când utilizatorul oprește transmisia datelor făcând click pe butonul “Stop” din formularul cu detaliile transportului sau din lista cu transporturi. Odată finalizat transportul, nu se mai trimit date gps către ANAF.
Finalizat automat Se atribuie transporturilor care ajung la data de sfărșit a validității codului UIT. Când se ajunge la această dată, oprim automat transmisia datelor gps către ANAF.
Eroare Este atribuit transporturilor pentru care nu reusim să identificăm vehiculul care vine din platforma ANAF. Numărul de înmatriculare care vine din platforma ANAF fie nu există în TrackGPS fie nu e scris corect. La click pe acest status, afisăm un mesaj de atentionare cu privire la vehiculul care nu s-a identificat în aplicația TrackGPS.

Status transmisie date

status_transmisie.png status_transmisie.png

Statusurile disponibile în sistemul TrackGPS sunt prezentate mai jos, alături de semnificația fiecăruia.

Status Descriere
Transmisie finalizată Transportul este în unul dintre următoarele statusuri: Finalizat/Finalizat automat (transport încheiat).
Transmisie în așteptare Transportul este în unul dintre următoarele statusuri: În așteptare (planificat, dar neinițiat).
Fără transmisie GPS activă Apare la transporturile aflate în desfășurare, dar fără transmisie de date GPS. Cauze posibile:
- Transportul a fost pornit, dar vehiculul este în staționare cu motorul oprit.
- O posibilă eroare în sistemul TrackGPS (contactați echipa de suport).
Transmisie activă Datele sunt transmise cu succes către ANAF.
Eroare transmisie date Datele nu au fost transmise către ANAF din cauza:
- Numărului de înmatriculare introdus greșit la transporturile manuale.
- Problemelor sistemului ANAF în recepționarea datelor.
Nu este pe teritoriul României Vehiculul are sesiunea de date activă, dar nu se află în România. Transmiterea către ANAF nu este necesară.
Eroare configurare e-Transport Vehiculul nu este configurat corect în TrackGPS. Contactați echipa de suport.
Date mai vechi de 6 ore * Datele primite au o vechime mai mare de 6 ore și nu pot fi transmise către ANAF. Cauze posibile:
- Vehiculul a pierdut semnalul GSM pentru mai mult de 6 ore.
- Probleme de rețea ale operatorului GSM.
Fără semnal GPS * Vehiculul se află într-o zonă cu semnal GPS slab sau inexistent. Transmisia către ANAF nu se poate efectua.

🔔 Recomandare

* Pentru a evita problemele de transmisie, setați o notificare de tip “Întrerupere transmisie date către ANAF” la un interval de 30 de minute. Dacă apar erori, puteți folosi aplicația ANAF pentru transmiterea manuală a datelor de localizare.

Status cerere modificare date

La modificarea numărului de înmatriculare al vehiculului și/sau al remorcilor de pe un transport care este adus din platforma ANAF se va trimite o cerere de modificare date către ANAF, iar pe coloana “Status cerere modificare date” se va vedea statusul cererii respective.

status_cerere.png status_cerere.png

Statusurile cererii de modificare a datelor sunt prezentate mai jos, alături de semnificația fiecăruia.

Status Descriere
Cerere creată Cererea de modificare date transport a fost creată și salvată în platforma TrackGPS
Cerere trimisă cu succes Cererea de modificare date transport a fost trimisă către platforma ANAF
Eroare la trimiterea cererii Cererea de modificare date transport nu a putut fi recepționată de platforma ANAF
Cerere finalizată cu succes Cererea de modificare date transport a fost procesată cu succes de platforma ANAF
Cerere finalizată cu eroare Cererea de modificare date transport a fost procesată cu eroare de platforma ANAF