Développeurs

Une API REST conçue pour des données multi-locataires

Vingt-trois points de terminaison versionnés sous /api/v1. Authentification Bearer, permissions limitées, quotas par jeton et journal d’audit à chaque appel.

Authentification
# Generate a token in Dashboard → Integrations.
# The secret is shown once and stored as a SHA-256 hash.

curl https://kourtiva.com/api/v1/me \
  -H "Authorization: Bearer $KOURTIVA_TOKEN"

# 401 on an invalid, expired or revoked token.
# 403 when the token lacks the required ability.
# 429 once the rate limit is exceeded.

Une sécurité qui n’est pas optionnelle

  • Secrets stockés hachés — une fuite de base ne donne aucun jeton exploitable
  • HTTPS imposé ; le HTTP simple est rejeté et non redirigé
  • Des permissions par jeton : une intégration de reporting ne peut pas écrire
  • Dates d’expiration optionnelles et révocation immédiate
  • Locataire résolu côté serveur — aucun identifiant de complexe n’est accepté d’un client
  • Méthode, chemin, statut, durée et jeton enregistrés pour chaque requête
Ressources

Ce que vous pouvez lire et écrire

Réservations

Listez, inspectez et filtrez les réservations de vos terrains, y compris l’état d’arrivée.

Terrains et créneaux

Définitions des terrains et créneaux réservables, avec disponibilité par date.

Sports et installations

Les sports que vous proposez et les installations rattachées à chaque complexe.

Membres

Les joueurs inscrits dans votre complexe, avec leur historique de réservation.

Factures et paiements

Des enregistrements financiers rattachés aux réservations qui les ont générés.

Tournois

Compétitions, équipes inscrites et rencontres.

Visiteurs

Comptages de fréquentation et synthèses pour le reporting d’occupation.

Profil du complexe

Votre propre fiche complexe — le locataire auquel le jeton renvoie.

Versionnée, pour que vous planifiiez vos montées de version

Tout vit sous /api/v1. Les changements cassants sortent en nouvelle version plutôt que d’arriver sans prévenir dans celle que vous avez intégrée.

Demander l’accès à l’API
Disponibilité des terrains
GET /api/v1/courts/12/slots?date=2026-08-09

{
  "data": [
    { "starts_at": "08:00", "available": true  },
    { "starts_at": "09:00", "available": false },
    { "starts_at": "10:00", "available": true  }
  ]
}

Besoin d’un point de terminaison que nous n’avons pas ?

Dites-nous avec quoi vous intégrez et nous étudierons la question.