Référence de l'API REST
L'application inclut un service web RESTful pour l'intégration avec d'autres applications. L'API est accessible à /api.
Authentification
Authentification basique : Toutes les appels API requièrent des en-têtes d'autorisation basique avec nom d'utilisateur et mot de passe encodés en Base64. Exemple : Authorization: Basic YWRtaW46YWRtaW4=
Authentification par jeton : Utilisez des jetons Bearer via Authorization: Bearer <User-Token>. Les jetons expirent lorsque les utilisateurs changent leur mot de passe.
Codes de réponse
- 200 (OK) — Requête réussie
- 400 (Requête incorrecte) — Paramètres manquants ou mal formés
- 404 (Non trouvé) — Ressource inexistante
- 429 (Trop de requêtes) — Limite de taux dépassée
Méthodes Ticket
- GET /api/Tickets — Récupérer les tickets avec filtrage par catégorie, statut, assigné, plages de dates.
- GET /api/ticket?id=123 — Obtenir les détails complets d'un ticket.
- POST /api/ticket — Créer un nouveau ticket avec categoryId, corps, sujet, priorityId, pièces jointes optionnelles.
- POST /api/UpdateTicket — Modifier les propriétés du ticket (catégorie, priorité, date d’échéance, affectation, statut).
- GET /api/Close?id=321 — Clôturer un ticket (optionnel suppressNotification=true).
- POST /api/SetCustomField — Définir les valeurs individuelles des champs personnalisés.
- GET /api/Stats — Obtenir les statistiques des tickets.
- GET /api/Search?query=TEXT — Rechercher les tickets par texte avec filtrage.
Relations entre tickets
- MergeTickets — Fusionner deux tickets (irréversible).
- LinkTickets — Associer des tickets comme items liés.
- AddSubTicket / RemoveSubTicket — Gérer les relations parent-enfant.
Pièces jointes
- GET /api/Attachments?id=123 — Lister toutes les pièces jointes d’un ticket.
- POST /api/AttachFile — Télécharger des fichiers en utilisant un formulaire multipart.
- GET /api/DeleteFile?id=123 — Supprimer des pièces jointes.
Commentaires
- POST /api/comment — Ajouter des réponses avec pièces jointes optionnelles. Supporte forTechsOnly, isSystem, recipientIds.
- POST /api/updatecomment — Modifier des commentaires existants.
- GET /api/comments?id=123 — Obtenir tous les commentaires d’un ticket.
- GET /api/CommentTemplates — Lister les réponses préenregistrées.
Gestion des utilisateurs
- POST /api/CreateUser — Créer des comptes (email, nom d’utilisateur, mot de passe, etc.).
- POST /api/UpdateUser?userId=123 — Modifier les propriétés utilisateur.
- POST /api/DeleteUser?userId=123 — Supprimer définitivement des utilisateurs.
- GET /api/User?userId=123 — Obtenir les détails d’un utilisateur.
- GET /api/UserByEmail?email=x — Recherche par email.
- GET /api/Users — Liste paginée des utilisateurs.
- POST /api/MergeUsers — Fusionner des comptes utilisateurs (irréversible).
Entreprises & Départements
- GET /api/Companies — Lister toutes les entreprises.
- POST /api/Company — Créer des entreprises.
- GET /api/Departments — Lister tous les départements.
Base de connaissances
- GET /api/Articles — Lister les résumés d’articles.
- GET /api/Article/{id} — Obtenir l’article complet.
- POST /api/article — Créer une entrée dans la base de connaissances.
Actifs
- GET /api/Assets — Lister les actifs avec filtrage.
- GET /api/Asset?id={id} — Obtenir un actif unique.
- POST /api/Asset — Créer un actif.
- POST /api/UpdateAsset — Modifier un actif.
- AssignAssetToUser / UnAssignAssetToUser — Gérer les affectations utilisateur.
Limitation du taux
La plupart des méthodes API limitent les appels à 90 par minute ; Search et UserByEmail sont limités à 60 par minute. Dépasser les limites retourne un statut 429.