Programmation
Radzivon Alkhovik
Adepte de l'automatisation en code bas
23 juillet 2024
Une plateforme low-code mêlant la simplicité du no-code à la puissance du full-code 🚀
Commence gratuitement
23 juillet 2024
-
8
min lire

Qu'est-ce que l'API REST de Jira : comment tirer parti de l'API REST et sécuriser la clé API de Jira ?

Radzivon Alkhovik
Adepte de l'automatisation en code bas
Table des matières

Jira, la plateforme polyvalente de suivi des problèmes et de gestion de projet 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 vastes options de personnalisation et ses capacités d'intégration. Au centre de tout cela se trouve l'API REST de Jira, qui ouvre un monde de possibilités pour l'automatisation des tâches, la création d'applications personnalisées et l'intégration transparente de Jira à d'autres outils de ton écosystème de développement. Dans ce guide complet, nous allons nous plonger dans l'API REST de Jira, explorer ses capacités et parcourir des exemples pratiques pour t'aider à démarrer.

Principaux enseignements : L'API Jira REST est un outil polyvalent qui permet d'automatiser des tâches, de créer des apps personnalisées et d'intégrer Jira à d'autres outils de développement sur les versions Cloud et Server/Data Center. Elle offre un large éventail de fonctionnalités, notamment la gestion des problèmes, les opérations en masse et les rapports personnalisés, avec la prise en charge de fonctions avancées telles que la pagination et l'expansion des données. Bien qu'il y ait quelques 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.

Tu peux essayer Jira sans utiliser l'API sur Latenode

Qu'est-ce que l'API Jira ?

À la base, une API (interface de programmation d'applications) est un ensemble de protocoles et d'outils qui spécifient la façon dont les composants logiciels doivent interagir. Dans le contexte de Jira, l'API permet aux applications externes d'interagir avec Jira de manière programmatique, permettant la récupération et la manipulation de données, ainsi que l'exécution d'actions au sein de Jira. Jira propose deux types d'API :

Qu'est-ce que l'API Java ?

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ù tu as un accès direct au serveur. Si tu travailles avec Jira Cloud ou si tu construis une intégration autonome, l'API REST est la voie à suivre.

Qu'est-ce que l'API REST ?

REST (Representational State Transfer) est un style architectural qui définit un ensemble de contraintes pour créer des services web. Une API REST expose un ensemble de points d'extrémité HTTP auxquels on peut accéder 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 Jira REST suit cette architecture et fournit un ensemble complet de points de terminaison pour interagir avec presque tous les aspects de Jira, des problèmes et des projets aux tableaux agiles et aux tableaux de bord. Elle renvoie les 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 - tu peux 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 construire des intégrations entre Jira et d'autres outils, ou pour créer des interactions par script avec Jira à partir de la ligne de commande.

Que peux-tu faire avec l'API REST de Jira ?

Les possibilités sont presque infinies. Voici quelques exemples de ce que tu peux réaliser avec l'API REST de Jira :

  • Automatiser la création de problèmes: Intègre Jira à ton système de suivi des erreurs ou à ton outil d'assistance à la clientèle pour créer automatiquement des problèmes dans Jira lorsque certains événements se produisent, avec tous les détails pertinents.
  • Synchroniser les données entre les systèmes: Garde Jira synchronisé avec les autres outils de ton pipeline de développement, tels que les systèmes de contrôle de source, les outils CI/CD ou les suites de gestion des tests. L'API te permet de refléter les changements dans Jira vers d'autres systèmes et vice versa.
  • Opérations en masse: Tu as besoin de mettre à jour un grand nombre de questions en une seule fois ? L'API REST prend en charge les opérations de création, de mise à jour et de suppression en masse, ce qui te permet d'économiser d'innombrables heures de travail manuel.
  • Tableaux de bord et rapports personnalisés: Récupère les données de Jira et utilise-les pour créer des tableaux de bord, des rapports ou des visualisations de données personnalisés, adaptés aux besoins spécifiques de ton équipe.
  • Étendre les fonctionnalités de Jira: Construis des apps et des intégrations personnalisées qui étendent les capacités de Jira, ajoutent de nouvelles fonctionnalités ou rationalisent les flux de travail spécifiques à ton organisation.
  • Migrer les données: Tu passes d'un autre système de suivi des problèmes à Jira ? Utilise l'API pour importer par programme tes données existantes dans Jira.
  • Sauvegarde et archivage: Configure des scripts pour sauvegarder régulièrement tes données Jira ou archiver les anciens projets et problèmes.

Il ne s'agit là que de quelques exemples - l'API REST de Jira fournit un ensemble étendu de points de terminaison qui couvrent presque toutes les caractéristiques et fonctions disponibles dans l'interface utilisateur de Jira. Si tu peux le faire dans Jira, il y a de fortes chances que tu puisses le faire via l'API.

Principales différences entre l'API REST de Jira Cloud et l'API REST du centre de données

Bien que l'API Jira REST offre en grande partie les mêmes capacités dans Jira Cloud, Server et Data Center, il y a quelques différences clés à connaître :

  • Authentification: Jira Cloud utilise OAuth 2.0 ou des jetons d'API pour l'authentification, ce qui constitue une méthode sécurisée et basée sur des normes pour accorder l'accès à l'API. Le centre de données Jira, quant à lui, utilise principalement l'authentification de base ou les cookies de session.
  • Versionnement de l'API: L'API REST de Jira Cloud est versionnée (actuellement à la version 3), ce qui permet à Atlassian d'évoluer et d'améliorer l'API au fil du temps sans rompre les intégrations existantes. Jira Data Center, cependant, n'a pas de versionnement explicite - l'API est liée à la version spécifique de Jira.
  • Limitation du débit: Pour garantir une utilisation équitable et maintenir les performances, Jira Cloud applique des limites de débit plus strictes sur les demandes d'API par rapport au centre de données. Les intégrations doivent être conçues en tenant compte de ces limites et mettre en œuvre un étranglement et une gestion des erreurs appropriés.
  • Format de l'URL: Les URL des points de terminaison pour l'API REST diffèrent légèrement entre Cloud et Data Center. Pour Jira Cloud, l'URL de base est au format https://your-domain.atlassian.net/rest/api/3/, tandis que pour Data Center, il s'agit de https://your-jira-instance.com/rest/api/latest/.

Malgré ces différences, les concepts de base et les modèles d'utilisation de l'API REST restent largement les mêmes d'un déploiement à l'autre. Les compétences et les connaissances que tu as acquises en travaillant avec une version de l'API seront facilement transférables à d'autres.

De quoi as-tu besoin pour travailler avec l'API REST de Jira ?

Pour commencer à utiliser l'API REST de Jira, tu auras besoin de :

  • Une instance Jira: Il peut s'agir d'un site Jira Cloud ou d'une instance Jira Server ou Data Center auto-hébergée. Tu auras besoin d'un accès administrateur pour configurer et gérer tes intégrations API.
  • Références d'authentification: Selon ton déploiement Jira, il peut s'agir d'un jeton OAuth 2.0, d'un jeton API ou d'informations d'authentification de base (nom d'utilisateur et mot de passe).
  • Client API: Pour effectuer des requêtes HTTP à l'API, tu auras besoin d'un client API. Il peut s'agir d'un outil de test d'API dédié comme Postman, d'un outil de ligne de commande comme cURL ou de la bibliothèque HTTP du langage de programmation de ton choix (par exemple, la bibliothèque de requêtes de Python ou l'API fetch de JavaScript).
  • Référence de la documentation de l'API Jira: Atlassian fournit une documentation complète pour l'API REST de Jira, détaillant chaque point de terminaison, ses paramètres et des exemples de demandes et de réponses. Garde cette documentation à portée de main lorsque tu exploreras l'API.

Avec ces éléments en place, tu es prêt à faire tes premières demandes d'API.

Comment utiliser l'API REST de Jira 

Passons en revue un exemple pratique d'utilisation de l'API REST de 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.

Étape 1 : créer un compte Jira Cloud

Si tu n'as pas encore d'instance Jira avec laquelle travailler, le moyen le plus simple de commencer est de t'inscrire à une instance Jira Cloud gratuite sur https://www.atlassian.com/software/jira. Une fois ton site configuré, crée un nouveau projet avec lequel travailler.

Étape 2 : Générer un jeton API Jira

Pour authentifier nos demandes d'API, nous utiliserons un jeton d'API. Voici comment en générer un :

  1. Connecte-toi à ton compte Atlassian et navigue vers https://id.atlassian.com/manage-profile/security/api-tokens.
  2. Clique sur "Créer un jeton API", donne à ton jeton une étiquette descriptive et clique sur "Créer".
  1. Copie le jeton généré et stocke-le en toute sécurité. Tu ne pourras plus le consulter après avoir quitté cette page.

Étape 3 : Effectue ta première demande d'API avec Postman

Commençons par récupérer les détails d'un problème existant :

  1. Ouvre Postman et crée une nouvelle demande.
  2. Définis la méthode HTTP sur GET et saisis l'URL du point de terminaison des détails de la question, en remplaçant ton-domaine par le domaine de ton site Jira et la clé ISSUE-KEY par la clé d'une question dans ton projet : https://your-domain.atlassian.net/rest/api/3/issue/ISSUE-KEY.
  3. Sous l'onglet "Autorisation", sélectionne "Auth de base" comme type. Saisis l'adresse électronique de ton compte Atlassian comme nom d'utilisateur et colle ton jeton API comme mot de passe.
  4. Clique sur "Envoyer". Si tout est configuré correctement, tu devrais voir une réponse JSON avec tous les détails du problème spécifié, y compris ses champs, ses commentaires, ses pièces jointes, et plus encore.

Étape 4 : Créer un problème

Maintenant, créons une nouvelle question par l'intermédiaire de l'API :

  1. Dans Postman, change la méthode HTTP en POST et mets à jour l'URL du point de terminaison de la création de la question : https://your-domain.atlassian.net/rest/api/3/issue.
  2. Sous l'onglet "En-têtes", ajoute une nouvelle paire clé-valeur : "Content-Type" et "application/json". Cela indique à Jira que nous envoyons une charge utile JSON.

Passe à l'onglet "Corps", sélectionne le bouton radio "raw" et saisis le JSON suivant, en remplaçant les valeurs project.key, issuetype.name, summary et description comme il convient :



 json

{
  "fields": {
    "project": {
      "key": "YOUR_PROJECT_KEY"
    },
    "issuetype": {
       "name": "Task"
    },
    "summary": "Issue created via REST API",
    "description": {
      "type": "doc",
      "version": 1,
      "content": [
        {
          "type": "paragraph",
          "content": [
            {
              "type": "text",
              "text": "This is a test issue created using the Jira REST API."
            }
          ]
        }
      ]
    }
  }
}

3. Clique sur "Envoyer". Jira répondra avec un statut 201 Créé et les détails complets du problème nouvellement créé.

Étape 5 : Mettre à jour un problème

Pour mettre à jour un numéro existant, nous utilisons la méthode PUT :

  1. Change la méthode HTTP en PUT et actualise l'URL pour qu'elle pointe vers le problème que tu veux mettre à jour : https://your-domain.atlassian.net/rest/api/3/issue/ISSUE-KEY

Dans le corps de la demande, inclus les champs que tu veux mettre à jour, par exemple :



 json

{
  "fields": {
    "summary": "Updated summary",
    "description": {
      "type": "doc",
      "version": 1,
      "content": [
        {
          "type": "paragraph",
          "content": [
            {
              "type": "text",
              "text": "This issue has been updated via the REST API."
            }
          ]
        }
      ]
    }
  }
}


2. Clique sur "Envoyer". Jira répondra avec un statut 204 Pas de contenu pour indiquer que la mise à jour a réussi.

Étape 6 : Recherche de problèmes à l'aide de JQL

Les puissantes capacités de recherche de Jira sont également accessibles via l'API REST à l'aide de JQL (Jira Query Language) :

  1. Remplace la méthode HTTP par POST et mets à jour l'URL du point de terminaison de la recherche : https://your-domain.atlassian.net/rest/api/3/search

Dans le corps de la requête, inclus une requête JQL et tout paramètre supplémentaire :



 json
Copy
{
  "jql": "project = YOUR_PROJECT_KEY AND status = 'To Do' ORDER BY created DESC",
  "fields": ["summary", "status", "assignee"],
  "maxResults": 10
}

 Cette requête renvoie les 10 derniers problèmes créés dans l'état "À faire" du projet spécifié, en incluant uniquement les champs résumé, état et attributaire.

  1. Clique sur "Envoyer". Jira répondra avec un tableau JSON des problèmes correspondant à tes critères de recherche.

Ces exemples ne font qu'effleurer la surface de ce qui est possible avec l'API REST de Jira. Au fur et à mesure que tu te familiariseras avec les points de terminaison et les paramètres disponibles, tu pourras construire des intégrations de plus en plus complexes et puissantes.

Tu peux automatiser Jira sans utiliser d'API sur Latenode

Comment automatiser la création et la mise à jour des problèmes dans Jira à l'aide de Latenode

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, tu peux mettre en place des flux de travail 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 permet de s'assurer que les informations contenues dans ton système de gestion de projet restent à jour et opportunes, ce qui améliore l'efficacité de l'équipe.

Par exemple, tu peux créer un flux de travail 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 lorsque le problème est résolu, il peut être fermé. Cette approche rationalisée améliore non seulement le suivi des problèmes, mais fait également gagner du temps à ton équipe, en lui permettant de se concentrer sur la résolution des problèmes plutôt que sur leur administration.

Tu peux en savoir plus sur ce script et sur l'intégration avec Latenode dans cet article. L'intégration avec Latenode offre quelques avantages clés :

  • Facilité d'utilisation Latenode simplifie le processus d'utilisation de l'API de Jira, ce qui permet aux utilisateurs non techniques d'automatiser plus facilement les tâches de gestion de projet.
  • Tarification flexible Les utilisateurs peuvent choisir entre différents plans Latenode , avec des coûts et des caractéristiques variables, pour répondre au mieux à leurs besoins.
  • Comprehensive Solutions Latenode'intégration avec Jira permet d'accéder à un large éventail de fonctionnalités de gestion de projet et de suivi des problèmes.
  • Personnalisation Les utilisateurs peuvent adapter les intégrations Jira à leurs besoins spécifiques, ce qui permet de mettre en place des solutions d'automatisation sur mesure alignées sur les objectifs de l'entreprise.

Imagine que chaque courriel 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 remplis en fonction du contenu de l'email, ce qui garantit qu'aucune demande importante n'est manquée.

Voici un exemple de la façon dont un flux de travail Latenode automatise la création et la mise à jour des tâches Jira en fonction des données des courriels entrants 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 ton approche de l'utilisation de l'API Jira grâce à une puissante automatisation. En fait, les capacités de la plateforme sont pratiquement illimitées - tu peux créer tous les scénarios d'automatisation nécessaires pour améliorer l'efficacité de ton entreprise. Qu'il s'agisse de la distribution automatique des tâches, de l'envoi de notifications, du suivi des indicateurs clés de performance ou de toute autre tâche - Latenode fournit les outils nécessaires pour leur donner vie.

En tirant parti du constructeur visuel de flux de travail de Latenode et de l'intégration transparente avec l'API REST de Jira, tu peux facilement concevoir et mettre en œuvre des scénarios d'automatisation complexes, en augmentant l'efficacité de la gestion de projet et en accélérant les flux de travail de ton équipe.

Si tu as besoin d'aide ou de conseils pour créer ton propre script ou si tu veux reproduire celui-ci, contacte notre communauté Discord, où se trouvent les experts en automatisation Low-code.

Jira REST API Pagination, expansion et classement

Lorsque tu commenceras à travailler avec des ensembles de données plus importants dans Jira, tu devras savoir comment l'API REST gère la pagination, l'expansion des ressources imbriquées et l'ordre des résultats.

Expansion

De nombreuses ressources Jira contiennent des références à d'autres ressources imbriquées. Par exemple, une question contient des références à son projet, à son type d'émission, à son créateur, à son rapporteur, à son destinataire, à ses commentaires, à ses pièces jointes, etc. Par défaut, ces ressources imbriquées sont renvoyées sous forme de stubs, ne contenant que quelques champs de base et un lien automatique vers la ressource complète.

Si tu as besoin de tous les détails d'une ressource imbriquée, tu peux 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 de l'assigné d'une question :



GET .../rest/api/3/issue/ISSUE-KEY?expand=project,assignee

Tu peux développer plusieurs ressources en les séparant par une virgule. Sache que les expansions peuvent augmenter de manière significative la taille de la charge utile de la réponse, alors utilise-les judicieusement.

Pagination

Les demandes qui pourraient potentiellement renvoyer un grand nombre de résultats (comme les recherches JQL) sont paginées par défaut. L'API renvoie un nombre maximum de résultats par page (50 par défaut, mais personnalisable jusqu'à 100) ainsi que des liens vers les pages suivantes et précédentes.

Tu peux contrôler la pagination à l'aide des paramètres startAt et maxResults :

  • startAt : L'index du premier résultat à retourner (basé sur 0).
  • maxResults : Le nombre maximum de résultats à renvoyer par page

Par exemple, pour récupérer la deuxième page de résultats avec une taille de page de 20 :



GET .../rest/api/3/search?jql=project=Votre_clé_de_projet&startAt=20&maxResults=20

Ton application devra gérer le fait de faire plusieurs demandes pour récupérer toutes les pages de résultats.

Commander

Tu peux 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. Chaque champ peut être préfixé par un - pour indiquer un ordre décroissant.

Par exemple, pour classer les questions par date de création en ordre décroissant, puis par priorité en ordre croissant :

GET .../rest/api/3/search?jql=project=Votre_clé_de_projet&orderBy=-created,priority

Tous les champs ne prennent pas en charge les commandes - reporte-toi à la documentation du point de terminaison spécifique pour voir ce qui est disponible.

Exemples d'utilisation de l'API Jira

Voici quelques exemples plus avancés qui démontrent la puissance de l'API REST de Jira pour les opérations en masse.

Création/mise à jour en masse de questions à partir d'un fichier CSV

Supposons que tu disposes d'un fichier CSV contenant les données de plusieurs problèmes que tu souhaites créer ou mettre à jour dans Jira. Tu peux utiliser un outil comme Postman pour automatiser ce processus :

  1. Dans Postman, crée une nouvelle demande pour le point de terminaison de création ou de mise à jour de la question.

Dans l'onglet Corps, sélectionne le bouton radio "brut" et saisis un modèle pour tes données d'émission, en utilisant des variables pour les champs qui proviendront de ton CSV :



{
  "fields": {
    "project": {"key": "{{project_key}}"},
    "issuetype": {"name": "{{issue_type}}"},
    "summary": "{{summary}}",
    "description": {
      "type": "doc",
      "version": 1,
      "content": [
        {
          "type": "paragraph",
          "content": [
            {
              "type": "text",
              "text": "{{description}}"
            }
          ]
        }
      ]
    },
    "assignee": {"name": "{{assignee}}"},
    "priority": {"name": "{{priority}}"}
  }
}

2. Passe à l'onglet "Script de pré-requête" et ajoute du code pour lire ton fichier CSV et définir les variables correspondantes :



const csvFile = pm.iterationData.readCSV() ;
pm.variables.set('project_key', csvFile[0]) ;
pm.variables.set('issue_type', csvFile[1]) ;
pm.variables.set('summary', csvFile[2]) ;
pm.variables.set('description', csvFile[3]) ;
pm.variables.set('assignee', csvFile[4]) ;
pm.variables.set('priorité', csvFile[5]) ;

3. Dans la fenêtre "Runner", sélectionne ton fichier CSV comme fichier de données et lance l'exécution. Postman créera une nouvelle requête pour chaque ligne de ton 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.

Création/mise à jour en masse de problèmes à partir de JSON

Si tes données sources sont déjà au format JSON, tu peux utiliser le point de terminaison de création/mise à jour en vrac pour traiter plusieurs questions en une seule demande :

POST https://your-domain.atlassian.net/rest/api/3/issue/bulk

Le corps de la demande doit contenir un tableau d'objets de création/mise à jour de numéro, chacun suivant le même format qu'une demande de création/mise à jour de numéro unique :



{
  "issueUpdates": [
    {
      "fields": {
        "project": {"key": "PROJ1"},
        "issuetype": {"name": "Task"},
        "summary": "Issue 1",
        "description": {
          "type": "doc",
          "version": 1,
          "content": [
            {
              "type": "paragraph",
              "content": [
                {
                  "type": "text",
                  "text": "First issue created via bulk update"
                }
              ]
            }
          ]
        }
      }
    },
    {
      "fields": {
        "project": {"key": "PROJ2"},
        "issuetype": {"name": "Bug"},
        "summary": "Issue 2",
        "description": {
          "type": "doc",
          "version": 1,
          "content": [
            {
              "type": "paragraph",
              "content": [
                {
                  "type": "text",
                  "text": "Second issue created via bulk update"
                }
              ]
            }
          ]
        },
        "priority": {"name": "High"},
        "labels": ["bulk-import", "api-test"]
      }
    }
  ]
}

Cela créera deux problèmes en une seule demande - une tâche dans le projet PROJ1 et un bogue dans le projet PROJ2. Tu peux inclure jusqu'à 50 problèmes dans une seule demande groupée.

Le point de terminaison en vrac est également utile pour effectuer des transitions, des mises à jour et des suppressions en vrac. Par exemple, pour faire passer plusieurs questions à l'état "Terminé" :



{
  "transition": {
    "id": "31"
  },
  "issues": [
    {"key": "ISSUE-1"},
    {"key": "ISSUE-2"},
    {"key": "ISSUE-3"}
  ]
}

Cela suppose que "31" est l'ID de ta transition "Terminé" - tu peux trouver les transitions disponibles pour un type de question via le point de terminaison /rest/api/3/issue/{issueIdOrKey}/transitions.

Résumé

L'API REST de Jira est un outil immensément 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 :

  • La différence entre les API Java et REST, et quand utiliser chacune d'entre elles.
  • Principales différences entre les API du nuage et du serveur/centre de données.
  • Comment s'authentifier auprès de l'API à l'aide des jetons API ou de l'authentification de base ?
  • Fais tes premières demandes d'API à l'aide de Postman
  • Création, récupération, mise à jour et recherche de questions
  • Gestion de la pagination, de l'expansion et de l'ordre des résultats
  • Cas d'utilisation avancés comme la création/mise à jour en masse à partir de données CSV et JSON.

Cependant, nous n'avons fait qu'effleurer la surface. L'API Jira REST 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 tu construis tes intégrations, veille à te 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 de Jira dans ta boîte à outils, les possibilités de ce que tu peux faire avec Jira sont presque infinies. Qu'il s'agisse de créer un tableau de bord de rapports personnalisé, de synchroniser des données avec un autre système ou d'automatiser des flux de travail complexes, l'API t'offre la flexibilité et la puissance dont tu as besoin pour y parvenir.

Tu peux essayer Jira sans utiliser l'API sur Latenode

FAQ

Quelles sont les méthodes d'authentification prises en charge par l'API REST Jira ?

Jira Cloud prend en charge OAuth 2.0 et les jetons d'API pour l'authentification. Pour OAuth, tu devras enregistrer ton application dans la console du développeur d'Atlassian pour obtenir un identifiant et un secret client. 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.

L'API REST de Jira est-elle différente entre Jira Cloud et Jira Data Center ?

Bien que les points finaux et les fonctionnalités de base soient en grande partie les mêmes, il y a quelques différences clés :

  • L'URL de base pour l'API est différente - Cloud utilise https://your-domain.atlassian.net/rest/api/3/, tandis que Server/Data Center utilise https://your-jira-instance.com/rest/api/latest/.
  • Cloud applique des limites de débit plus strictes et exige une authentification pour toutes les demandes, tandis que Server/Data Center a des valeurs par défaut plus indulgentes.
  • Certaines fonctionnalités avancées, comme les API Agile et Service Desk, présentent des différences au niveau des points de terminaison disponibles et des formats de demande/réponse entre le Cloud et le Serveur/Centre de données.

Reporte-toi toujours à la documentation spécifique à ton déploiement de Jira pour t'assurer que tu utilises les URL et les paramètres corrects.

Comment gérer la limitation du taux de l'API ?

Jira Cloud applique des limites de taux pour assurer la stabilité et la performance du service. Si tu dépasses la limite de débit, tu recevras une réponse 429 Trop de demandes.

Pour éviter d'atteindre les limites de taux :

  • Mets les données en cache lorsque c'est possible pour éviter de faire des demandes répétitives.
  • Utilise la pagination pour récupérer de grands ensembles de résultats sur plusieurs requêtes au lieu d'essayer de tout récupérer en même temps.
  • Implémente un backoff exponentiel dans ton code client pour augmenter progressivement le délai entre les tentatives lorsqu'une limite de débit est rencontrée.
  • Si tu as un besoin légitime d'une limite de taux plus élevée, contacte l'assistance d'Atlassian pour discuter de tes options.

Les déploiements de serveurs et de centres 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 les limites de débit si nécessaire.

Puis-je utiliser l'API REST de Jira pour le serveur/centre de données ?

Oui, Jira Server et Data Center disposent d'une API REST qui est en grande partie similaire à l'API de jira Cloud. Les principales différences sont :

  • L'URL de base utilise /rest/api/latest/ au lieu de /rest/api/3/.
  • Certains points de terminaison peuvent avoir des paramètres ou des formats de réponse légèrement différents.
  • L'authentification se fait généralement via Basic Auth ou des cookies de session plutôt que via OAuth ou des jetons d'API.

Reporte-toi à la documentation rest api spécifique au serveur/centre de données pour obtenir les informations les plus précises pour ta version de Jira.

L'API Jira REST est un moyen puissant et flexible d'intégrer Jira dans ton flux de travail de développement. Que tu travailles dans le cloud ou que tu gères ton propre serveur, l'API fournit les outils dont tu as besoin pour automatiser, personnaliser et étendre Jira afin de répondre aux besoins uniques de ton équipe. Avec un peu d'exploration et d'expérimentation, tu pourras libérer tout le potentiel de Jira et faire passer ta gestion de projet au niveau supérieur.

Blogs associés

Cas d'utilisation

Soutenu par