Programación
Radzivon Aljovik
Entusiasta de la automatización de bajo código
23 de julio de 2024
Una plataforma de código bajo que combina la sencillez del código cero con la potencia del código completo 🚀.
Empezar gratis
23 de julio de 2024
-
8
min leer

Qué es la API REST de Jira: Cómo aprovechar la API REST y proteger la clave API de Jira

Radzivon Aljovik
Entusiasta de la automatización de bajo código
Índice

Jira, la versátil plataforma de seguimiento de incidencias y gestión de proyectos de Atlassian, se ha convertido en una herramienta indispensable para innumerables equipos de desarrollo de todo el mundo. Aunque su interfaz fácil de usar facilita la gestión de proyectos y el seguimiento de incidencias, el verdadero poder de Jira reside en sus amplias opciones de personalización y capacidades de integración. Para ello es fundamental la API REST de Jira, que abre un mundo de posibilidades para automatizar tareas, crear aplicaciones personalizadas e integrar Jira a la perfección con otras herramientas de tu ecosistema de desarrollo. En esta completa guía, nos adentraremos en la API REST de Jira, exploraremos sus capacidades y recorreremos ejemplos prácticos para ayudarte a empezar.

Puntos clave: La API REST de Jira es una herramienta versátil para automatizar tareas, crear aplicaciones personalizadas e integrar Jira con otras herramientas de desarrollo, tanto en las versiones Cloud como Server/Data Center. Ofrece una amplia gama de funciones, como gestión de incidencias, operaciones masivas e informes personalizados, con soporte para funciones avanzadas como paginación y expansión de datos. Aunque hay algunas diferencias entre las versiones, la funcionalidad básica de la API sigue siendo la misma, lo que permite a los equipos personalizar Jira de forma eficaz según sus necesidades específicas e integrarlo sin problemas con su ecosistema de desarrollo.

Puedes probar Jira sin usar API en Latenode

¿Qué es la API de Jira?

En esencia, una API (Interfaz de Programación de Aplicaciones) es un conjunto de protocolos y herramientas que especifican cómo deben interactuar los componentes de software. En el contexto de Jira, la API permite a las aplicaciones externas interactuar con Jira mediante programación, permitiendo la recuperación y manipulación de datos, así como la ejecución de acciones dentro de Jira. Jira proporciona dos tipos de API:

Qué es la API de Java

La API Java de Jira es una potente herramienta para los desarrolladores que crean aplicaciones o plugins personalizados de Jira. Proporciona acceso directo a los objetos y métodos Java subyacentes del servidor de Jira, permitiendo una profunda integración y personalización. Sin embargo, este nivel de acceso sólo está disponible para instalaciones de Jira in situ (Servidor o Centro de Datos), donde tienes acceso directo al servidor. Si trabajas con Jira Cloud o construyes una integración independiente, la API REST es el camino a seguir.

Qué es la API REST

REST (Representational State Transfer) es un estilo arquitectónico que define un conjunto de restricciones para crear servicios web. Una API REST expone un conjunto de puntos finales HTTP a los que se puede acceder enviando peticiones con métodos HTTP específicos (GET, POST, PUT, DELETE) para realizar operaciones sobre recursos.

La API REST de Jira sigue esta arquitectura, proporcionando un amplio conjunto de puntos finales para interactuar con casi todos los aspectos de Jira, desde las incidencias y los proyectos hasta los tableros y paneles ágiles. Devuelve datos en formato JSON y admite diversos métodos de autenticación para garantizar un acceso seguro.

Una de las principales ventajas de la API REST es su independencia de plataforma: puedes llamar a la API desde cualquier dispositivo o aplicación que pueda hacer peticiones HTTP, independientemente del lenguaje de programación utilizado. Esto la convierte en la opción ideal para crear integraciones entre Jira y otras herramientas, o para programar interacciones con Jira desde la línea de comandos.

¿Qué puedes hacer con la API REST de Jira?

Las posibilidades son casi infinitas. Éstos son sólo algunos ejemplos de lo que puedes conseguir con la API REST de Jira:

  • Automatiza la creación de incidencias: Integra Jira con tu sistema de seguimiento de errores o herramienta de atención al cliente para crear automáticamente incidencias en Jira cuando se produzcan determinados eventos, con todos los detalles relevantes.
  • Sincroniza datos entre sistemas: Mantén Jira sincronizado con otras herramientas de tu proceso de desarrollo, como sistemas de control de código fuente, herramientas CI/CD o suites de gestión de pruebas. La API te permite reflejar cambios en Jira a otros sistemas y viceversa.
  • Operaciones masivas: ¿Necesitas actualizar un gran número de incidencias a la vez? La API REST admite operaciones masivas de creación, actualización y eliminación, ahorrándote incontables horas de trabajo manual.
  • Cuadros de mando e informes personalizados: Recupera datos de Jira y utilízalos para crear cuadros de mando personalizados, informes o visualizaciones de datos adaptados a las necesidades específicas de tu equipo.
  • Amplía la funcionalidad de Jira: Crea aplicaciones e integraciones personalizadas que amplíen las capacidades de Jira, añadan nuevas funciones o agilicen los flujos de trabajo específicos de tu organización.
  • Migrar datos: ¿Te mudas de otro sistema de seguimiento de incidencias a Jira? Utiliza la API para importar mediante programación tus datos existentes a Jira.
  • Copia de seguridad y archivo: Configura secuencias de comandos para hacer copias de seguridad periódicas de tus datos de Jira o archivar proyectos y problemas antiguos.

Estos son sólo algunos ejemplos: la API REST de Jira proporciona un amplio conjunto de puntos finales que cubren casi todas las características y funciones disponibles en la interfaz de usuario de Jira. Si puedes hacerlo en Jira, lo más probable es que puedas hacerlo a través de la API.

Principales diferencias entre la API REST de Jira Cloud y la API REST de Data Center

Aunque la API REST de Jira proporciona en gran medida las mismas capacidades en Jira Cloud, Server y Data Center, hay algunas diferencias clave que debes conocer:

  • Autenticación: Jira Cloud utiliza OAuth 2.0 o tokens de API para la autenticación, proporcionando un método seguro y basado en estándares para conceder acceso a la API. Jira Data Center, por otro lado, utiliza principalmente autenticación básica o cookies de sesión.
  • Versionado de la API: La API REST de Jira Cloud está versionada (actualmente en la versión 3), lo que permite a Atlassian evolucionar y mejorar la API con el tiempo sin romper las integraciones existentes. Jira Data Center, sin embargo, no tiene un versionado explícito: la API está vinculada a la versión específica de Jira.
  • Limitación de tarifas: Para garantizar un uso justo y mantener el rendimiento, Jira Cloud aplica límites de velocidad más estrictos a las solicitudes de API en comparación con Data Center. Las integraciones deben diseñarse teniendo en cuenta estos límites e implementar un estrangulamiento y una gestión de errores adecuados.
  • Formato de URL: Las URL de los puntos finales de la API REST difieren ligeramente entre Cloud y Data Center. Para Jira Cloud, la URL base tiene el formato https://your-domain.atlassian.net/rest/api/3/, mientras que para Data Center es https://your-jira-instance.com/rest/api/latest/.

A pesar de estas diferencias, los conceptos básicos y los patrones de uso de la API REST siguen siendo en gran medida los mismos en todas las implantaciones. Las habilidades y conocimientos que adquieras trabajando con una versión de la API serán fácilmente transferibles a otras.

¿Qué necesitas para trabajar con la API REST de Jira?

Para empezar a utilizar la API REST de Jira, necesitarás

  • Una instancia de Jira: Puede ser un sitio de Jira Cloud o una instancia autoalojada de Jira Server o Data Center. Necesitarás acceso de administrador para configurar y gestionar tus integraciones API.
  • Credenciales de autenticación: Dependiendo de tu despliegue de Jira, podría ser un token OAuth 2.0, un token de API o credenciales de autenticación básicas (nombre de usuario y contraseña).
  • Cliente API: Para hacer peticiones HTTP a la API, necesitarás un cliente API. Puede ser una herramienta de pruebas de API como Postman, una herramienta de línea de comandos como cURL, o la biblioteca HTTP del lenguaje de programación que elijas (por ejemplo, la biblioteca de peticiones de Python o la API fetch de JavaScript).
  • Referencia de la documentación de la API de Jira: Atlassian proporciona una amplia documentación para la API REST de Jira, detallando cada punto final, sus parámetros y ejemplos de solicitudes y respuestas. Tenla a mano mientras exploras la API.

Con estos elementos en su sitio, estás listo para empezar a hacer tus primeras peticiones a la API.

Cómo utilizar la API REST de Jira 

Veamos un ejemplo práctico de uso de la API REST de Jira para crear, recuperar, actualizar y buscar incidencias. Utilizaremos Postman para nuestros ejemplos, pero los principios se aplican a cualquier cliente API.

Paso 1: Crear una cuenta de Jira Cloud

Si aún no tienes una instancia de Jira con la que trabajar, la forma más fácil de empezar es registrarte para obtener una instancia gratuita de Jira Cloud en https://www.atlassian.com/software/jira. Una vez configurado tu sitio, crea un nuevo proyecto con el que trabajar.

Paso 2: Generar un token de API de Jira

Para autenticar nuestras peticiones a la API, utilizaremos un token de API. He aquí cómo generar uno:

  1. Accede a tu cuenta Atlassian y navega hasta https://id.atlassian.com/manage-profile/security/api-tokens.
  2. Haz clic en "Crear token de API", dale a tu token una etiqueta descriptiva y haz clic en "Crear".
  1. Copia el token generado y guárdalo de forma segura. No podrás volver a verlo después de salir de esta página.

Paso 3: Realiza tu primera solicitud API con Postman

Empecemos por recuperar los detalles de una incidencia existente:

  1. Abre Postman y crea una nueva solicitud.
  2. Establece el método HTTP como GET e introduce la URL del punto final de detalle de la incidencia, sustituyendo your-domain por el dominio de tu sitio Jira e ISSUE-KEY por la clave de una incidencia de tu proyecto: https://your-domain.atlassian.net/rest/api/3/issue/ISSUE-KEY
  3. En la pestaña "Autorización", selecciona "Basic Auth" como tipo. Introduce la dirección de correo electrónico de tu cuenta de Atlassian como nombre de usuario y pega tu token de API como contraseña.
  4. Haz clic en "Enviar". Si todo está configurado correctamente, deberías ver una respuesta JSON con todos los detalles de la incidencia especificada, incluidos sus campos, comentarios, archivos adjuntos y mucho más.

Paso 4: Crear una incidencia

Ahora vamos a crear una nueva incidencia a través de la API:

  1. En Postman, cambia el método HTTP a POST y actualiza la URL al punto final de creación de incidencias: https://your-domain.atlassian.net/rest/api/3/issue
  2. En la pestaña "Cabeceras", añade un nuevo par clave-valor: "Content-Type" y "application/json". Esto indica a Jira que estamos enviando una carga JSON.

Cambia a la pestaña "Cuerpo", selecciona el botón de opción "sin procesar" e introduce el siguiente JSON, sustituyendo los valores project.key, issuetype.name, summary y description según corresponda:



 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. Haz clic en "Enviar". Jira responderá con un estado 201 Creado y los detalles completos de la incidencia recién creada.

Paso 5: Actualizar una edición

Para actualizar una incidencia existente, utilizamos el método PUT:

  1. Cambia el método HTTP a PUT y actualiza la URL para que apunte a la incidencia que quieres actualizar: https://your-domain.atlassian.net/rest/api/3/issue/ISSUE-KEY

En el cuerpo de la solicitud, incluye los campos que quieras actualizar, por ejemplo:



 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. Haz clic en "Enviar". Jira responderá con un estado 204 Sin contenido para indicar que la actualización se ha realizado correctamente.

Paso 6: Buscar problemas utilizando JQL

Las potentes capacidades de búsqueda de Jira también son accesibles a través de la API REST mediante JQL (Lenguaje de consulta de Jira):

  1. Cambia el método HTTP de nuevo a POST y actualiza la URL al punto final de búsqueda: https://your-domain.atlassian.net/rest/api/3/search

En el cuerpo de la petición, incluye una consulta JQL y cualquier parámetro adicional:



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

 Esta consulta devolverá las 10 incidencias creadas más recientemente en el estado "Por hacer" del proyecto especificado, incluyendo sólo los campos resumen, estado y asignatario.

  1. Haz clic en "Enviar". Jira responderá con una matriz JSON de incidencias que coincidan con tus criterios de búsqueda.

Estos ejemplos sólo arañan la superficie de lo que es posible con la API REST de Jira. A medida que te familiarices con los puntos finales y parámetros disponibles, podrás crear integraciones cada vez más complejas y potentes.

Puedes Automatizar Jira sin usar API en Latenode

Cómo Automatizar la Creación y Actualización de Incidencias en Jira Utilizando Latenode

Una de las aplicaciones más potentes de la API REST de Jira es la automatización de la creación y actualización de tareas. Con Latenode, puedes configurar sofisticados flujos de trabajo que creen y actualicen automáticamente tareas en Jira basándose en datos de fuentes externas o en activadores específicos. Esto garantiza que la información de tu sistema de gestión de proyectos permanezca actualizada y oportuna, mejorando la eficiencia del equipo.

Por ejemplo, puedes crear un flujo de trabajo que cree automáticamente una nueva tarea en Jira cuando se reciba un mensaje de error de un sistema de monitorización, rellenando todos los campos necesarios y asignando la tarea al desarrollador adecuado. A medida que lleguen actualizaciones, la tarea puede actualizarse automáticamente, y cuando se resuelva la incidencia, puede cerrarse. Este enfoque racionalizado no sólo mejora el seguimiento de las incidencias, sino que también ahorra tiempo a tu equipo, permitiéndole centrarse en resolver problemas en lugar de administrarlos.

Puedes obtener más información sobre este script y la integración con Latenode en este artículo. La integración con Latenode ofrece algunas ventajas clave:

  • Facilidad de uso Latenode simplifica el proceso de uso de la API de Jira, facilitando a los usuarios no técnicos la automatización de las tareas de gestión de proyectos.
  • Precios flexibles Los usuarios pueden elegir entre diferentes planes de Latenode , con distintos costes y prestaciones, para adaptarse mejor a sus necesidades.
  • Soluciones integrales La integración deLatenodecon Jira proporciona acceso a una amplia gama de funciones de gestión de proyectos y seguimiento de incidencias.
  • Personalización Los usuarios pueden adaptar las integraciones de Jira a sus necesidades específicas, lo que permite soluciones de automatización a medida alineadas con los objetivos empresariales.

Imagina que cada correo importante de un cliente se convierte automáticamente en una tarea en Jira. Con Latenode, esto se hace realidad. Nuestra plataforma garantiza la creación de una nueva tarea en el proyecto adecuado con campos rellenados en función del contenido del correo electrónico, garantizando que no se pase por alto ninguna solicitud importante.

He aquí un ejemplo de cómo un flujo de trabajo de Latenode automatiza la creación y actualización de tareas de Jira basándose en datos de correo electrónico entrantes de una fuente externa.

Esta imagen mostraría una representación visual del flujo de trabajo en la interfaz de Latenode, con nodos conectados que representarían cada paso del proceso, desde la recepción del correo electrónico hasta la creación de la tarea en Jira.

Éste es sólo un ejemplo de cómo Latenode puede transformar tu enfoque del uso de la API de Jira con una potente automatización. De hecho, las capacidades de la plataforma son prácticamente ilimitadas: puedes crear cualquier escenario de automatización necesario para mejorar la eficiencia de tu negocio. Ya se trate de distribución automática de tareas, envío de notificaciones, seguimiento de indicadores clave de rendimiento o cualquier otra tarea, Latenode proporciona las herramientas para darles vida.

Aprovechando el constructor visual de flujos de trabajo de Latenode y su perfecta integración con la API REST de Jira, puedes diseñar e implementar fácilmente escenarios de automatización complejos, aumentando la eficacia de la gestión de proyectos y acelerando los flujos de trabajo de tu equipo.

Si necesitas ayuda o consejo sobre cómo crear tu propio script o si quieres replicar éste, ponte en contacto con nuestra comunidad de Discord, donde se encuentran los expertos en automatización de Low-code.

Paginación, expansión y ordenación de la API REST de Jira

Cuando empieces a trabajar con conjuntos de datos más grandes en Jira, tendrás que ser consciente de cómo la API REST gestiona la paginación, la expansión de recursos anidados y el orden de los resultados.

Expansión

Muchos recursos de Jira contienen referencias a otros recursos anidados. Por ejemplo, una incidencia contiene referencias a su proyecto, tipo de incidencia, creador, reportero, asignatario, comentarios, archivos adjuntos, etc. Por defecto, estos recursos anidados se devuelven como stubs, que contienen sólo unos pocos campos básicos y un autoenlace al recurso completo.

Si necesitas los detalles completos de un recurso anidado, puedes utilizar el parámetro de consulta expandir para solicitar que Jira incluya el recurso completo en la respuesta. Por ejemplo, para incluir los detalles completos del proyecto y el asignatario de una incidencia:



GET .../rest/api/3/issue/ISSUE-KEY?expand=proyecto,cesionario

Puedes expandir varios recursos separándolos por comas. Ten en cuenta que las expansiones pueden aumentar significativamente el tamaño de la carga útil de la respuesta, así que utilízalas con criterio.

Paginación

Las solicitudes que podrían devolver un gran número de resultados (como las búsquedas JQL) se paginan por defecto. La API devolverá un número máximo de resultados por página (por defecto 50, pero personalizable hasta 100) junto con enlaces a las páginas siguiente y anterior.

Puedes controlar la paginación utilizando los parámetros startAt y maxResults:

  • inicioEn: El índice del primer resultado a devolver (basado en 0)
  • maxResultados: El número máximo de resultados a devolver por página

Por ejemplo, para recuperar la segunda página de resultados con un tamaño de página de 20:



GET .../rest/api/3/search?jql=project=TU_PROYECTO_KEY&startAt=20&maxResults=20

Tu aplicación tendrá que gestionar la realización de múltiples peticiones para recuperar todas las páginas de resultados.

Pedidos

Puedes controlar el orden de los resultados utilizando el parámetro orderBy, que acepta una lista de campos separados por comas para ordenarlos. Cada campo puede ir precedido de un - para indicar un orden descendente.

Por ejemplo, para ordenar las incidencias por fecha de creación de forma descendente, y luego por prioridad de forma ascendente:

GET .../rest/api/3/search?jql=project=TU_KEY_PROYECTO&orderBy=-creado,prioridad

No todos los campos admiten la ordenación: consulta la documentación del punto final específico para ver qué hay disponible.

Ejemplos de uso de la API de Jira

Aquí tienes un par de ejemplos más avanzados que demuestran la potencia de la API REST de Jira para operaciones masivas.

Creación/actualización masiva de incidencias desde CSV

Supón que tienes un archivo CSV que contiene datos de varias incidencias que quieres crear o actualizar en Jira. Puedes utilizar una herramienta como Postman para automatizar este proceso:

  1. En Postman, crea una nueva petición para el punto final de creación o actualización de incidencias.

En la pestaña Cuerpo, selecciona el botón de opción "sin procesar" e introduce una plantilla para los datos de tu edición, utilizando variables para los campos que provendrán de tu 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. Cambia a la pestaña "Script de pre-solicitud" y añade código para leer tu archivo CSV y establecer las variables correspondientes:



const csvFile = pm.iterationData.readCSV();
pm.variables.set('clave_proyecto', csvFile[0]);
pm.variables.set('tipo_emisión', csvFile[1]);
pm.variables.set('resumen', csvFile[2]);
pm.variables.set('descripción', csvFile[3]);
pm.variables.set('asignatario', csvFile[4]);
pm.variables.set('prioridad', csvFile[5]);

3. En la ventana "Ejecutor", selecciona tu archivo CSV como archivo de datos e inicia la ejecución. Postman creará una nueva petición para cada fila de tu CSV, sustituyendo las variables del archivo.

Se trata de una potente técnica para la importación masiva de datos a Jira desde fuentes externas.

Creación/actualización masiva de incidencias desde JSON

Si tus datos de origen ya están en formato JSON, puedes utilizar el punto final de creación/actualización masiva para procesar varias incidencias en una sola solicitud:

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

El cuerpo de la solicitud debe contener una matriz de objetos de creación/actualización de incidencias, cada uno de ellos siguiendo el mismo formato que una solicitud de creación/actualización de una sola incidencia:



{
  "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"]
      }
    }
  ]
}

Esto creará dos incidencias en una solicitud: una Tarea en el proyecto PROJ1 y un Error en el proyecto PROJ2. Puedes incluir hasta 50 incidencias en una única solicitud masiva.

El punto final masivo también es útil para realizar transiciones, actualizaciones y eliminaciones masivas. Por ejemplo, para pasar varias incidencias al estado "Terminado":



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

Esto supone que "31" es el ID de tu transición "Terminado"; puedes encontrar las transiciones disponibles para un tipo de incidencia a través del punto final /rest/api/3/issue/{issueIdOrKey}/transitions.

Resumen

La API REST de Jira es una herramienta inmensamente potente para integrar Jira con otros sistemas, automatizar tareas y ampliar las capacidades de Jira. En esta guía, hemos cubierto los fundamentos de la API, incluyendo:

  • La diferencia entre las API Java y REST, y cuándo utilizar cada una
  • Diferencias clave entre las API de la nube y las del servidor/centro de datos
  • Cómo autenticarse en la API utilizando tokens API o Basic Auth
  • Hacer tus primeras peticiones a la API con Postman
  • Crear, recuperar, actualizar y buscar asuntos
  • Manejo de la paginación, expansión y ordenación de los resultados
  • Casos de uso avanzados como la creación/actualización masiva a partir de datos CSV y JSON

Sin embargo, sólo hemos arañado la superficie. La API REST de Jira proporciona puntos finales para trabajar con casi todos los aspectos de Jira, desde proyectos y tablones hasta usuarios y permisos. A medida que construyas tus integraciones, asegúrate de consultar la documentación oficial de Atlassian para obtener la información más actualizada y completa.

Con la API REST de Jira en tu kit de herramientas, las posibilidades de lo que puedes hacer con Jira son casi infinitas. Tanto si estás creando un panel de informes personalizado, sincronizando datos con otro sistema o automatizando flujos de trabajo complejos, la API te proporciona la flexibilidad y la potencia que necesitas para hacerlo realidad.

Puedes probar Jira sin usar API en Latenode

PREGUNTAS FRECUENTES

¿Qué métodos de autenticación admite la API REST de Jira?

Jira Cloud admite OAuth 2.0 y tokens de API para la autenticación. Para OAuth, tendrás que registrar tu aplicación en la consola de desarrollador de Atlassian para obtener un ID de cliente y un secreto. Los tokens de API son una opción más sencilla para scripts e integraciones personales. Jira Server y Data Center admiten Basic Auth (nombre de usuario y contraseña) y autenticación basada en sesión mediante cookies.

¿Es diferente la API REST de Jira entre Jira Cloud y Jira Data Center?

Aunque los puntos finales básicos y las funcionalidades son en gran medida los mismos, hay algunas diferencias clave:

  • La URL base de la API es diferente: Nube utiliza https://your-domain.atlassian.net/rest/api/3/, mientras que Servidor/Centro de Datos utiliza https://your-jira-instance.com/rest/api/latest/.
  • La Nube impone límites de velocidad más estrictos y requiere autenticación para todas las solicitudes, mientras que el Servidor/Centro de Datos tiene valores por defecto más indulgentes.
  • Algunas funciones avanzadas, como las API de Agile y Service Desk, tienen diferencias en los puntos finales disponibles y en los formatos de solicitud/respuesta entre la Nube y el Servidor/Centro de Datos.

Consulta siempre la documentación específica de tu implementación de Jira para asegurarte de que utilizas las URL y los parámetros correctos.

¿Cómo gestionar la limitación de velocidad de la API?

Jira Cloud impone límites de velocidad para garantizar la estabilidad y el rendimiento del servicio. Si superas el límite de velocidad, recibirás una respuesta 429 Demasiadas solicitudes.

Para evitar llegar a los límites de velocidad:

  • Almacena los datos en caché siempre que sea posible para evitar hacer peticiones repetitivas.
  • Utiliza la paginación para recuperar grandes conjuntos de resultados en varias peticiones, en lugar de intentar recuperarlo todo de una vez.
  • Implementa el backoff exponencial en el código de tu cliente para aumentar progresivamente el retardo entre reintentos cuando se encuentre un límite de velocidad.
  • Si tienes una necesidad legítima de un límite de tarifa superior, ponte en contacto con el servicio de asistencia de Atlassian para discutir tus opciones.

Las implantaciones de Servidores y Centros de Datos tienen la limitación de velocidad desactivada por defecto, pero los administradores pueden optar por activarla y configurarla si es necesario.

¿Puedo utilizar la API REST de Jira para el Servidor/Centro de Datos?

Sí, Jira Server y Data Center tienen una API REST que es en gran medida similar a la API de Jira Cloud. Las principales diferencias son:

  • La URL base utiliza /rest/api/latest/ en lugar de /rest/api/3/.
  • Algunos puntos finales pueden tener parámetros o formatos de respuesta ligeramente diferentes.
  • La autenticación suele hacerse mediante Basic Auth o cookies de sesión, en lugar de OAuth o tokens de API.

Consulta la documentación de la api rest específica del Servidor/Centro de Datos para obtener la información más precisa para tu versión de Jira.

La API REST de Jira es una forma potente y flexible de integrar Jira en tu flujo de trabajo de desarrollo. Tanto si trabajas en la nube como si gestionas tu propio servidor, la API te proporciona las herramientas que necesitas para automatizar, personalizar y ampliar Jira para que se adapte a las necesidades únicas de tu equipo. Con un poco de exploración y experimentación, podrás liberar todo el potencial de Jira y llevar tu gestión de proyectos al siguiente nivel.

Blogs relacionados

Caso práctico

Respaldado por