ForHosting KIT · Strumenti per sviluppatori

Calcolo della durata sovrapposta tra due intervalli

Questo calcolatore misura con precisione quanto tempo condividono due intervalli espliciti di data e ora.

● BetaGratis · nel tuo browser
Usalo da WebAPIEmailTelegramApp presto

Inserisca l’inizio e la fine di ciascun intervallo in formato ISO 8601, includendo Z oppure un offset UTC numerico. Il calcolo porta ogni estremo sulla stessa linea temporale UTC, sceglie l’inizio più tardo e la fine più anticipata e restituisce la durata comune in millisecondi, secondi, minuti e ore. Intervalli separati o che si toccano soltanto restituiscono zero, rendendo il risultato pratico per pianificazione, fatturazione, monitoraggio e reportistica.

Definisca entrambi gli intervalli senza ambiguità

Inserisca quattro valori: inizio e fine del primo intervallo, quindi inizio e fine del secondo. Ogni valore deve essere una data e ora ISO 8601 completa, con data di calendario, orario comprensivo di secondi e Z oppure un offset esplicito come +02:00 o -05:30. Rendere obbligatorio l’offset impedisce che un orario locale venga interpretato diversamente su un altro computer. Ogni inizio deve precedere la relativa fine. Il calcolatore considera gli intervalli semiaperti: l’inizio appartiene all’intervallo, mentre la fine è un limite escluso. Questa convenzione evita di conteggiare due volte lo stesso istante quando prenotazioni, turni o finestre consecutivi si incontrano. Sono accettate da una a tre cifre decimali per i secondi, normalizzate in millisecondi. Date e componenti orarie vengono convalidati direttamente, quindi valori impossibili producono un errore di input. Utilizzi sempre gli stessi quattro campi, indipendentemente dal fatto che si aspetti o meno una sovrapposizione.

Comprenda il calcolo deterministico in UTC

Prima del confronto, il calcolo colloca i quattro estremi su un’unica linea temporale UTC. Un valore che termina con Z è già espresso in UTC. Da un valore con offset positivo viene sottratto l’offset, mentre a uno con offset negativo esso viene aggiunto. Due date scritte diversamente possono quindi indicare lo stesso istante. La sovrapposizione comincia dal più tardo dei due inizi e termina alla più anticipata delle due fini. Se tale fine è successiva all’inizio calcolato, la differenza costituisce la durata comune; altrimenti il risultato è esattamente zero. L’implementazione usa aritmetica del calendario gregoriano e millisecondi interi, senza consultare orologio, impostazioni locali, archivio dei fusi, rete, casualità o Date di JavaScript. Input identici producono sempre risultati identici. L’output esprime la stessa durata in millisecondi, secondi, minuti e ore, così Lei può scegliere l’unità più adatta al proprio sistema.

Applichi il risultato in modo sicuro

Utilizzi la durata di sovrapposizione quando deve confrontare due finestre note: un turno con un’assenza autorizzata, il funzionamento di un’apparecchiatura con una fascia tariffaria, un incidente con l’orario di assistenza o una prenotazione con una disponibilità. Un valore positivo indica quanto tempo è condiviso, non soltanto l’esistenza dell’intersezione. Zero significa che gli intervalli sono separati oppure che uno finisce nell’istante esatto in cui comincia l’altro; in entrambi i casi non condividono tempo trascorso secondo la convenzione semiaperta. Per importi o quote, usi overlap_milliseconds o overlap_seconds come valore sorgente e applichi solo dopo la propria regola di arrotondamento documentata. Non arrotondi preventivamente gli estremi salvo necessità aziendale. L’endpoint accetta soltanto offset espliciti, non nomi come America/New_York, e non deduce regole stagionali. Converta prima gli orari locali. Ogni richiesta API costa $0.002; il browser offre anche verifiche interattive locali.

Misurare la copertura dei turni

Calcoli quanta parte di un turno ricade in una finestra operativa presidiata, retribuita o approvata.

Attribuire il tempo di un incidente

Misuri la parte di un disservizio avvenuta durante un periodo contrattuale di assistenza o servizio.

Verificare conflitti tra prenotazioni

Quantifichi il tempo condiviso da due prenotazioni invece di ricevere soltanto una risposta positiva o negativa.

Che cosa accade se gli intervalli non si sovrappongono?

Tutti e quattro i campi della durata restituiscono zero. Accade anche quando uno termina esattamente all’inizio dell’altro.

Sono supportati offset UTC differenti?

Sì. Ogni estremo può usare Z o il proprio offset numerico e tutti vengono confrontati sulla stessa linea temporale UTC.

Gli estremi dell’intervallo sono inclusi?

Il calcolo usa intervalli semiaperti: l’inizio è incluso e la fine esclusa. Gli intervalli adiacenti hanno quindi durata comune zero.

Il calcolo usa il fuso orario del server?

No. Usa aritmetica gregoriana e degli offset senza Date, archivio dei fusi, orologio del computer o impostazioni locali.

Quanto costa una richiesta API?

Il prezzo è $0.002 per richiesta. L’esecuzione interattiva nel browser non comporta alcun addebito API.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/date/overlap-duration

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/date/overlap-duration \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"first_start":"2026-07-25T09:00:00Z","first_end":"2026-07-25T12:30:00Z","second_start":"2026-07-25T11:15:00+00:00","second_end":"2026-07-25T14:00:00+00:00"}'
{
  "first_start": "2026-07-25T09:00:00Z",
  "first_end": "2026-07-25T12:30:00Z",
  "second_start": "2026-07-25T11:15:00+00:00",
  "second_end": "2026-07-25T14:00:00+00:00"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.overlap_duration",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Leggi la documentazione completa del KIT →