Abonnements
PRODUIT
SOLUTIONS
par cas d'utilisation
AI Gestion du leadFacturationRéseaux SociauxGestion de projetGestion des donnéespar industrie
en savoir plus
BlogGabaritsVidéosYoutubeRESSOURCES
COMMUNAUTÉS ET RÉSEAUX SOCIAUX
PARTENAIRES
Jira, la plateforme polyvalente de gestion de projets et de suivi des problèmes d'Atlassian, est devenue un outil indispensable pour d'innombrables équipes de développement dans le monde entier. Si son interface conviviale facilite la gestion des projets et le suivi des problèmes, la véritable puissance de Jira réside dans ses nombreuses options de personnalisation et ses capacités d'intégration. Au cœur de tout cela se trouve l'API REST de Jira, qui ouvre un monde de possibilités pour automatiser les tâches, créer des applications personnalisées et intégrer de manière transparente Jira à d'autres outils de votre écosystème de développement. Dans ce guide complet, nous allons plonger dans l'API REST de Jira, explorer ses capacités et passer en revue des exemples pratiques pour vous aider à démarrer.
Principaux plats à emporter: L'API REST de Jira est un outil polyvalent permettant d'automatiser des tâches, de créer des applications personnalisées et d'intégrer Jira à d'autres outils de développement dans les versions Cloud et Server/Data Center. Elle offre un large éventail de fonctionnalités, notamment la gestion des problèmes, les opérations groupées et la création de rapports personnalisés, avec prise en charge de fonctionnalités avancées telles que la pagination et l'extension des données. Bien qu'il existe certaines différences entre les versions, les fonctionnalités de base de l'API restent cohérentes, ce qui permet aux équipes de personnaliser efficacement Jira en fonction de leurs besoins spécifiques et de l'intégrer de manière transparente à leur écosystème de développement.
À la base, une API (Application Programming Interface) est un ensemble de protocoles et d'outils qui spécifient la manière dont les composants logiciels doivent interagir. Dans le contexte de Jira, l'API permet aux applications externes d'interagir avec Jira par programmation, permettant la récupération et la manipulation de données, ainsi que l'exécution d'actions dans Jira. Jira propose deux types d'API :
L'API Java Jira est un outil puissant pour les développeurs qui créent des applications ou des plugins Jira personnalisés. Elle fournit un accès direct aux objets et méthodes Java sous-jacents du serveur Jira, ce qui permet une intégration et une personnalisation approfondies. Cependant, ce niveau d'accès n'est disponible que pour les installations Jira sur site (serveur ou centre de données) où vous avez un accès direct au serveur. Si vous travaillez avec Jira Cloud ou créez une intégration autonome, l'API REST est la solution idéale.
REST (Representational State Transfer) est un style architectural qui définit un ensemble de contraintes pour la création de services Web. Une API REST expose un ensemble de points de terminaison HTTP accessibles en envoyant des requêtes avec des méthodes HTTP spécifiques (GET, POST, PUT, DELETE) pour effectuer des opérations sur des ressources.
L'API REST de Jira suit cette architecture, fournissant un ensemble complet de points de terminaison pour interagir avec presque tous les aspects de Jira, des problèmes et projets aux tableaux de bord et tableaux de bord agiles. Elle renvoie des données au format JSON et prend en charge diverses méthodes d'authentification pour garantir un accès sécurisé.
L'un des principaux avantages de l'API REST est son indépendance vis-à-vis de la plateforme : vous pouvez appeler l'API à partir de n'importe quel appareil ou application capable d'effectuer des requêtes HTTP, quel que soit le langage de programmation utilisé. Cela en fait le choix idéal pour créer des intégrations entre Jira et d'autres outils, ou pour créer des scripts d'interactions avec Jira à partir de la ligne de commande.
Les possibilités sont presque infinies. Voici quelques exemples de ce que vous pouvez réaliser avec l'API REST de Jira :
Ce ne sont là que quelques exemples : l'API REST de Jira fournit un ensemble complet de points de terminaison qui couvrent presque toutes les fonctionnalités et fonctions disponibles dans l'interface utilisateur de Jira. Si vous pouvez le faire dans Jira, il y a de fortes chances que vous puissiez le faire via l'API.
Bien que l'API REST Jira offre en grande partie les mêmes fonctionnalités sur Jira Cloud, Server et Data Center, il existe quelques différences clés à prendre en compte :
Malgré ces différences, les concepts de base et les modèles d'utilisation de l'API REST restent en grande partie les mêmes d'un déploiement à l'autre. Les compétences et les connaissances acquises en travaillant avec une version de l'API seront facilement transférables à d'autres.
Pour démarrer avec l'API REST Jira, vous aurez besoin de :
Une fois ces éléments en place, vous êtes prêt à commencer à effectuer vos premières requêtes API.
Examinons un exemple pratique d'utilisation de l'API REST Jira pour créer, récupérer, mettre à jour et rechercher des problèmes. Nous utiliserons Postman pour nos exemples, mais les principes s'appliquent à n'importe quel client API.
Si vous ne disposez pas encore d'une instance Jira avec laquelle travailler, le moyen le plus simple de commencer est de vous inscrire à une instance Jira Cloud gratuite sur https://www.atlassian.com/software/jiraUne fois votre site configuré, créez un nouveau projet avec lequel travailler.
Pour authentifier nos requêtes API, nous utiliserons un jeton API. Voici comment en générer un :
Commençons par récupérer les détails d’un problème existant :
Créons maintenant un nouveau problème via l'API :
Passez à l'onglet « Corps », sélectionnez le bouton radio « brut » et saisissez le JSON suivant, en remplaçant les valeurs project.key, issuetype.name, summary et description selon le cas :
3. Cliquez sur « Envoyer ». Jira répondra avec un statut 201 Créé et les détails complets du problème nouvellement créé.
Pour mettre à jour un problème existant, nous utilisons la méthode PUT :
Dans le corps de la requête, incluez les champs que vous souhaitez mettre à jour, par exemple :
2. Cliquez sur « Envoyer ». Jira répondra avec un statut 204 Aucun contenu pour indiquer que la mise à jour a réussi.
Les puissantes capacités de recherche de Jira sont également accessibles via l'API REST à l'aide de JQL (Jira Query Language) :
Dans le corps de la requête, incluez une requête JQL et tous les paramètres supplémentaires :
Cette requête renverra les 10 problèmes les plus récemment créés avec le statut « À faire » à partir du projet spécifié, y compris uniquement les champs de résumé, de statut et de responsable.
Ces exemples ne sont qu'un aperçu de ce qu'il est possible de faire avec l'API REST de Jira. À mesure que vous vous familiariserez avec les points de terminaison et les paramètres disponibles, vous serez en mesure de créer des intégrations de plus en plus complexes et puissantes.
L'une des applications les plus puissantes de l'API REST de Jira est l'automatisation de la création et de la mise à jour des tâches. Avec Latenode, vous pouvez configurer des workflows sophistiqués qui créent et mettent à jour automatiquement des tâches dans Jira en fonction de données provenant de sources externes ou de déclencheurs spécifiques. Cela garantit que les informations de votre système de gestion de projet restent à jour et opportunes, améliorant ainsi l'efficacité de l'équipe.
Par exemple, vous pouvez créer un workflow qui crée automatiquement une nouvelle tâche dans Jira lorsqu'un message d'erreur est reçu d'un système de surveillance, en remplissant tous les champs nécessaires et en attribuant la tâche au développeur approprié. Au fur et à mesure que les mises à jour arrivent, la tâche peut être automatiquement mise à jour et, une fois le problème résolu, elle peut être fermée. Cette approche simplifiée améliore non seulement le suivi des problèmes, mais fait également gagner du temps à votre équipe, lui permettant de se concentrer sur la résolution des problèmes plutôt que sur leur administration.
Vous pouvez en apprendre davantage sur ce script et l'intégration avec Latenode dans cet article. L'intégration avec Latenode offre quelques avantages clés :
Imaginez que chaque e-mail important d'un client se transforme automatiquement en tâche dans Jira. Avec Latenode, cela devient une réalité. Notre plateforme assure la création d'une nouvelle tâche dans le bon projet avec des champs renseignés en fonction du contenu de l'e-mail, garantissant qu'aucune demande importante ne soit manquée.
Voici un exemple de la manière dont un workflow Latenode automatise la création et les mises à jour de tâches Jira en fonction des données de courrier électronique entrantes provenant d'une source externe.
Cette image montrerait une représentation visuelle du flux de travail dans l'interface de Latenode, avec des nœuds connectés représentant chaque étape du processus, de la réception de l'e-mail à la création de la tâche Jira.
Ce n'est qu'un exemple de la façon dont Latenode peut transformer votre approche de l'utilisation de l'API Jira grâce à une automatisation puissante. En fait, les capacités de la plateforme sont pratiquement illimitées : vous pouvez créer tous les scénarios d'automatisation nécessaires pour améliorer l'efficacité de votre entreprise. Qu'il s'agisse de distribution automatique de tâches, d'envoi de notifications, de suivi des indicateurs de performance clés ou de toute autre tâche, Latenode fournit les outils pour leur donner vie.
En tirant parti du générateur de flux de travail visuel de Latenode et de l'intégration transparente avec l'API REST Jira, vous pouvez facilement concevoir et mettre en œuvre des scénarios d'automatisation complexes, augmentant ainsi l'efficacité de la gestion de projet et accélérant les flux de travail de votre équipe.
Si vous avez besoin d'aide ou de conseils pour créer votre propre script ou si vous souhaitez reproduire celui-ci, contactez notre communauté Discord, où se trouvent les experts en automatisation Low-code.
À mesure que vous commencez à travailler avec des ensembles de données plus volumineux dans Jira, vous devez savoir comment l'API REST gère la pagination, l'extension des ressources imbriquées et le classement des résultats.
De nombreuses ressources Jira contiennent des références à d'autres ressources imbriquées. Par exemple, un ticket contient des références à son projet, son type de ticket, son créateur, son rapporteur, son responsable, ses commentaires, ses pièces jointes, etc. Par défaut, ces ressources imbriquées sont renvoyées sous forme de stubs, contenant uniquement quelques champs de base et un lien automatique vers la ressource complète.
Si vous avez besoin des détails complets d'une ressource imbriquée, vous pouvez utiliser le paramètre de requête expand pour demander à Jira d'inclure la ressource complète dans la réponse. Par exemple, pour inclure les détails complets du projet et du responsable d'un problème :
Vous pouvez étendre plusieurs ressources en les séparant par des virgules. Sachez que les extensions peuvent augmenter considérablement la taille de la charge utile de la réponse, alors utilisez-les judicieusement.
Les requêtes susceptibles de renvoyer un grand nombre de résultats (comme les recherches JQL) sont paginées par défaut. L'API renverra un nombre maximal de résultats par page (par défaut 50, mais personnalisable jusqu'à 100) ainsi que des liens vers les pages suivantes et précédentes.
Vous pouvez contrôler la pagination à l'aide des paramètres startAt et maxResults :
Par exemple, pour récupérer la deuxième page de résultats avec une taille de page de 20 :
Votre application devra gérer plusieurs requêtes pour récupérer toutes les pages de résultats.
Vous pouvez contrôler l'ordre des résultats à l'aide du paramètre orderBy, qui accepte une liste de champs séparés par des virgules pour le tri. Chaque champ peut être préfixé par un - pour indiquer l'ordre décroissant.
Par exemple, pour classer les problèmes par date de création décroissante, puis par priorité croissante :
OBTENIR .../rest/api/3/search?jql=project=VOTRE_CLÉ_DE_PROJET&orderBy=-created,priority
Tous les champs ne prennent pas en charge la commande : reportez-vous à la documentation du point de terminaison spécifique pour voir ce qui est disponible.
Voici quelques exemples plus avancés démontrant la puissance de l’API REST Jira pour les opérations en masse.
Supposons que vous ayez un fichier CSV contenant des données pour plusieurs tickets que vous souhaitez créer ou mettre à jour dans Jira. Vous pouvez utiliser un outil comme Postman pour automatiser ce processus :
Dans l'onglet Corps, sélectionnez le bouton radio « brut » et saisissez un modèle pour vos données de problème, en utilisant des variables pour les champs qui proviendront de votre CSV :
2. Passez à l'onglet « Script de pré-requête » et ajoutez du code pour lire votre fichier CSV et définir les variables correspondantes :
3. Dans la fenêtre « Runner », sélectionnez votre fichier CSV comme fichier de données et démarrez l'exécution. Postman créera une nouvelle requête pour chaque ligne de votre fichier CSV, en remplaçant les variables du fichier.
Il s'agit d'une technique puissante pour importer en masse des données dans Jira à partir de sources externes.
Si vos données sources sont déjà au format JSON, vous pouvez utiliser le point de terminaison de création/mise à jour en masse pour traiter plusieurs problèmes dans une seule requête :
POST https://votre-domaine.atlassian.net/rest/api/3/issue/bulk
Le corps de la requête doit contenir un tableau d'objets de création/mise à jour de problème, chacun suivant le même format qu'une seule demande de création/mise à jour de problème :
Cela créera deux problèmes dans une seule demande : une tâche dans le projet PROJ1 et un bogue dans le projet PROJ2. Vous pouvez inclure jusqu'à 50 problèmes dans une seule demande groupée.
Le point de terminaison en masse est également utile pour effectuer des transitions, des mises à jour et des suppressions en masse. Par exemple, pour faire passer plusieurs problèmes au statut « Terminé » :
Cela suppose que « 31 » est l'ID de votre transition « Terminé » ; vous pouvez trouver les transitions disponibles pour un type de problème via le point de terminaison /rest/api/3/issue/{issueIdOrKey}/transitions.
L'API REST de Jira est un outil extrêmement puissant pour intégrer Jira à d'autres systèmes, automatiser des tâches et étendre les capacités de Jira. Dans ce guide, nous avons abordé les principes fondamentaux de l'API, notamment :
Mais nous n'avons fait qu'effleurer la surface. L'API REST de Jira fournit des points de terminaison pour travailler avec presque tous les aspects de Jira, des projets et des tableaux aux utilisateurs et aux autorisations. Au fur et à mesure que vous créez vos intégrations, assurez-vous de vous référer à la documentation officielle d'Atlassian pour obtenir les informations les plus récentes et les plus complètes.
Avec l'API REST Jira dans votre boîte à outils, les possibilités de Jira sont quasiment infinies. Que vous souhaitiez créer un tableau de bord de reporting personnalisé, synchroniser des données avec un autre système ou automatiser des workflows complexes, l'API vous offre la flexibilité et la puissance dont vous avez besoin pour y parvenir.
Jira Cloud prend en charge OAuth 2.0 et les jetons API pour l'authentification. Pour OAuth, vous devez enregistrer votre application dans la console développeur d'Atlassian pour obtenir un ID client et un secret. Les jetons API sont une option plus simple pour les scripts et les intégrations personnelles. Jira Server et Data Center prennent en charge l'authentification de base (nom d'utilisateur et mot de passe) et l'authentification basée sur la session à l'aide de cookies.
Bien que les principaux points de terminaison et fonctionnalités soient en grande partie les mêmes, il existe quelques différences clés :
Reportez-vous toujours à la documentation spécifique à votre déploiement Jira pour vous assurer que vous utilisez les URL et les paramètres corrects.
Jira Cloud applique des limites de débit pour garantir la stabilité et les performances du service. Si vous dépassez la limite de débit, vous recevrez une réponse 429 Too Many Requests.
Pour éviter d’atteindre les limites de débit :
Les déploiements de serveur et de centre de données ont la limitation de débit désactivée par défaut, mais les administrateurs peuvent choisir d'activer et de configurer des limites de débit si nécessaire.
Oui, Jira Server et Data Center disposent d'une API REST qui est en grande partie similaire à l'API Jira Cloud. Les principales différences sont les suivantes :
Reportez-vous à la documentation de l'API REST spécifique au serveur/centre de données pour obtenir les informations les plus précises pour votre version de Jira.
L'API REST de Jira est un moyen puissant et flexible d'intégrer Jira à votre flux de travail de développement. Que vous travailliez dans le cloud ou que vous gériez votre propre serveur, l'API fournit les outils dont vous avez besoin pour automatiser, personnaliser et étendre Jira afin de répondre aux besoins uniques de votre équipe. Avec un peu d'exploration et d'expérimentation, vous pourrez exploiter tout le potentiel de Jira et faire passer votre gestion de projet au niveau supérieur.
Première demande + Deuxième demande