oneapi
Autentificare
Utile v1 / Timp

Conversie între fusuri

Acelaşi moment, citit în alt fus orar — cu decalajul dintre ele şi cu avertismentul când ora dată cade în gaura de primăvară sau în ora dublă de toamnă.

GET
https://oneapi.ro/api/utile/v1/timp/converteste

Parametri de interogare

NumeTipDescriereValori acceptate
dinobligatoriu string OBLIGATORIU. Fusul în care e exprimat momentul. max 64 car.
inobligatoriu string OBLIGATORIU. Fusul în care vrei rezultatul. max 64 car.
momentopțional string | null Momentul, ca 2026-12-24 18:00 sau ISO 8601. Fără el, se convertește ACUM. max 40 car.

Cum se comportă

  • Diferența de ore se dă explicit, ca număr. E întrebarea reală („cu cât e mai devreme acolo?"), iar scăderea a două offseturi e exact locul unde se greșește semnul.
  • Conversia e corectă și peste trecerile la ora de vară, fiindcă offsetul se citește pentru MOMENTUL dat, nu pentru ziua de azi. Un moment de vară convertit în decembrie dă alt decalaj decât același moment convertit în iulie — corect, nu o inconsecvență.
  • Atenție la momentele care nu există: la trecerea la ora de vară, ora 03:00 din 29 martie 2026 nu există în București. PHP o mută înainte; rezultatul e o oră validă, dar nu cea scrisă în cerere.

La ce folosește

  • Programezi o ședință cu participanți din trei țări și vrei ora fiecăruia.
  • Traduci un moment primit de la un partener în ora ta locală, corect și în ziua trecerii la ora de vară.
  • Verifici la ce oră locală ajunge un job programat în UTC.

Structura răspunsului

Toate câmpurile de mai jos sunt în data.

CâmpTipDescriere
sursa.zona string Zona la care se referă valoarea.
sursa.moment string Momentul interpretat în fusul de plecare.
sursa.offset string De la a câta înregistrare începe răspunsul.
sursa.ora_de_vara boolean Dacă la momentul cerut e în vigoare ora de vară.
tinta.zona string Zona la care se referă valoarea.
tinta.moment string Același moment, în fusul de destinație.
tinta.offset string De la a câta înregistrare începe răspunsul.
tinta.ora_de_vara boolean Dacă la momentul cerut e în vigoare ora de vară.
utc string Momentul în UTC — ancora care leagă cele două.
diferenta_ore integer Decalajul dintre fusuri, în ore. Negativ înseamnă că destinația e în urmă.

Exemple de răspuns

GEThttps://oneapi.ro/api/utile/v1/timp/converteste?din=Europe/Bucharest&in=UTC
{
    "data": {
        "sursa": {
            "zona": "Europe/Bucharest",
            "moment": "2026-10-06T23: 39: 54+03: 00",
            "offset": "+03: 00",
            "ora_de_vara": true
        },
        "tinta": {
            "zona": "UTC",
            "moment": "2026-10-06T20: 39: 54+00: 00",
            "offset": "+00: 00",
            "ora_de_vara": false
        },
        "utc": "2026-10-06T20: 39: 54+00: 00",
        "diferenta_ore": -3
    }
}

Coduri de eroare

CodSlugCând apare
401neautentificatToken lipsă, invalid, expirat sau revocat.
403feature_indisponibilPlanul curent nu include funcţia de care ţine ruta.
422validareUnul dintre fusuri nu există, sau momentul nu poate fi interpretat.
429cota_depasitaCota lunară a planului a fost depăşită (vezi Retry-After).

Toate erorile au aceeași formă. eroare.cod e stabil și e cel după care trebuie să ramifici în cod — nu după textul din mesaj, care se poate schimba.

{
    "eroare": {
        "cod": "validare",
        "mesaj": "Unul dintre fusuri nu există, sau momentul nu poate fi interpretat.",
        "detalii": {
            "din": [
                "Valoarea trimisă nu respectă regula parametrului."
            ]
        }
    }
}