ForHosting KIT · Outils pour développeurs

Vérifiez les conflits horaires de votre itinéraire

Le vérificateur de conflits horaires examine vos activités planifiées et repère chaque paire occupant le même créneau.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Indiquez un nom ainsi que les heures de début et de fin au format 24 heures HH:MM. Le résultat précise la présence et le nombre de conflits, les activités concernées et leur intervalle commun. Toute activité finissant avant son début est refusée afin d’éviter un diagnostic trompeur.

Saisissez un itinéraire journalier sans ambiguïté

Donnez un nom explicite à chaque activité et saisissez son début et sa fin au format 24 heures HH:MM. Toutes les lignes sont réputées appartenir au même jour : l’outil convient donc à une visite touristique, un congrès, une excursion ou une journée de transport. Choisissez des noms reconnaissables dans le résultat ; « Visite guidée du musée » sera plus utile que « Visite ». L’ordre chronologique n’est pas obligatoire. Le vérificateur compare toutes les paires et conserve l’indice initial, à partir de 0, afin qu’un logiciel puisse retrouver exactement l’enregistrement transmis. Une heure de fin égale à l’heure de début décrit une activité sans durée et ne crée aucun chevauchement. Une activité nocturne allant de 23:00 à 01:00 sort du modèle journalier, car sa fin paraît antérieure à son début. Répartissez ces activités par date avant de lancer le contrôle.

Sachez précisément ce qui constitue un conflit

Deux activités sont en conflit seulement si elles partagent une durée strictement positive. Si une visite finit à 11:00 et que le déjeuner commence à 11:00, leurs limites se touchent sans se chevaucher. Un début à 10:59 crée en revanche un conflit d’une minute. Pour chaque collision, la réponse fournit les noms et indices des deux activités, le début et la fin du créneau commun et sa durée en minutes. Le relevé reste exhaustif : lorsque trois activités occupent le même créneau, les trois paires apparaissent au lieu d’un bloc imprécis. Chaque relation peut ainsi être traitée séparément par une personne ou un programme. Les paires suivent un ordre déterministe fondé sur la saisie, sans classement par gravité. Une activité entièrement incluse dans une autre reste un conflit ; toute sa durée devient le créneau commun. Deux horaires identiques se chevauchent également sur toute leur durée.

Corrigez les plages invalides et exploitez la réponse

Chaque heure est validée avant toute comparaison. Elle doit comporter deux chiffres pour l’heure, un deux-points et deux chiffres pour les minutes, entre 00:00 et 23:59. Une fin antérieure au début provoque immédiatement une erreur de saisie. Aucun passage de nuit ni aucune correction automatique ne sont supposés, car cela pourrait masquer une réservation erronée. Avec une liste valide, consultez `has_conflicts` pour une décision simple, `conflict_count` pour résumer le planning et `conflicts` pour afficher les détails près des lignes d’origine. Un organisateur peut demander un choix pour chaque paire, tandis qu’un tableur peut signaler les indices concernés. Après modification, renvoyez la liste complète : zéro conflit confirme l’absence de chevauchement de durée positive. Le calcul est déterministe, sans réseau ni horloge actuelle. L’utilisation dans le navigateur est gratuite et chaque requête API est facturée au tarif de base publié de $0.002.

Contrôler une journée touristique

Vérifiez billets horodatés, visites, repas et transferts avant de confirmer une journée chargée.

Valider le programme d’un congrès

Repérez les séances, réunions et réceptions qui mobilisent la même personne simultanément.

Équiper un planificateur

Exploitez les indices stables et les paires complètes pour signaler les éléments à reprogrammer.

Quel format horaire faut-il employer ?

Utilisez le format 24 heures HH:MM, de 00:00 à 23:59, par exemple 09:30 ou 18:05.

Deux activités consécutives sont-elles en conflit ?

Non. Si l’une finit exactement au début de l’autre, les intervalles se touchent seulement et aucun conflit n’est signalé.

Que se passe-t-il si la fin précède le début ?

La requête échoue avec une erreur de saisie indiquant la position. L’outil ne suppose pas que l’activité se poursuit pendant la nuit.

Plusieurs conflits peuvent-ils être signalés ?

Oui. Chaque paire qui se chevauche est renvoyée, avec toutes les combinaisons lorsque trois activités ou plus coïncident.

Puis-je contrôler des activités à des dates différentes ?

Pas directement. Le contrôle compare les heures d’un même jour. Regroupez les activités par date et vérifiez chaque journée séparément.

Combien coûte une requête API ?

Une requête API suit le tarif de base publié de $0.002. La version en ligne exécute gratuitement le même contrôle déterministe.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/travel2/itinerary-time-conflict-check

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/travel2/itinerary-time-conflict-check \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"activities":[{"name":"Museum visit","start":"09:00","end":"11:00"},{"name":"Walking tour","start":"10:30","end":"12:00"}]}'
{
  "activities": [
    {
      "name": "Museum visit",
      "start": "09:00",
      "end": "11:00"
    },
    {
      "name": "Walking tour",
      "start": "10:30",
      "end": "12:00"
    }
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "travel2.itinerary_time_conflict_check",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →