Programação
Radzivon Alkhovik
Entusiasta da automação de baixo código
23 de julho de 2024
Uma plataforma de baixo código que combina simplicidade sem código com potência de código completo 🚀 Você pode usar a plataforma de baixo código para obter mais informações.
Comece a usar gratuitamente
23 de julho de 2024
-
8
leitura mínima

O que é a API REST do Jira: como aproveitar a API REST e proteger a chave da API do Jira

Radzivon Alkhovik
Entusiasta da automação de baixo código
Tabela de conteúdo

O Jira, a versátil plataforma de rastreamento de problemas e gerenciamento de projetos da Atlassian, tornou-se uma ferramenta indispensável para inúmeras equipes de desenvolvimento em todo o mundo. Embora sua interface amigável facilite o gerenciamento de projetos e o acompanhamento de problemas, o verdadeiro poder do Jira está em suas amplas opções de personalização e recursos de integração. O ponto central disso é a API REST do Jira, que abre um mundo de possibilidades para automatizar tarefas, criar aplicativos personalizados e integrar perfeitamente o Jira a outras ferramentas do seu ecossistema de desenvolvimento. Neste guia abrangente, vamos nos aprofundar na API REST do Jira, explorar seus recursos e apresentar exemplos práticos para ajudar você a começar.

Principais conclusões: A API REST do Jira é uma ferramenta versátil para automatizar tarefas, criar aplicativos personalizados e integrar o Jira a outras ferramentas de desenvolvimento nas versões Cloud e Server/Data Center. Ela oferece uma ampla gama de recursos, incluindo gerenciamento de problemas, operações em massa e relatórios personalizados, com suporte para recursos avançados, como paginação e expansão de dados. Embora existam algumas diferenças entre as versões, a funcionalidade principal da API permanece consistente, permitindo que as equipes personalizem com eficiência o Jira de acordo com suas necessidades específicas e o integrem perfeitamente ao seu ecossistema de desenvolvimento.

Você pode experimentar o Jira Without Using API em Latenode

O que é a API do Jira?

Em sua essência, uma API (Interface de Programação de Aplicativos) é um conjunto de protocolos e ferramentas que especificam como os componentes de software devem interagir. No contexto do Jira, a API permite que aplicativos externos interajam com o Jira de forma programática, possibilitando a recuperação e a manipulação de dados, bem como a execução de ações dentro do Jira. O Jira oferece dois tipos de APIs:

O que é a API Java?

A API Java do Jira é uma ferramenta poderosa para os desenvolvedores que criam aplicativos ou plug-ins personalizados do Jira. Ela fornece acesso direto aos objetos e métodos Java subjacentes do servidor Jira, permitindo integração e personalização profundas. No entanto, esse nível de acesso só está disponível para instalações do Jira no local (Server ou Data Center), onde você tem acesso direto ao servidor. Se você estiver trabalhando com o Jira Cloud ou criando uma integração autônoma, a API REST é o caminho a seguir.

O que é a API REST?

REST (Representational State Transfer) é um estilo de arquitetura que define um conjunto de restrições para a criação de serviços da Web. Uma API REST expõe um conjunto de pontos de extremidade HTTP que podem ser acessados enviando solicitações com métodos HTTP específicos (GET, POST, PUT, DELETE) para realizar operações em recursos.

A API REST do Jira segue essa arquitetura, fornecendo um conjunto abrangente de pontos de extremidade para interagir com quase todos os aspectos do Jira, desde problemas e projetos até painéis e dashboards ágeis. Ela retorna dados no formato JSON e oferece suporte a uma variedade de métodos de autenticação para garantir o acesso seguro.

Uma das principais vantagens da API REST é sua independência de plataforma - você pode chamar a API de qualquer dispositivo ou aplicativo que possa fazer solicitações HTTP, independentemente da linguagem de programação usada. Isso a torna a escolha ideal para criar integrações entre o Jira e outras ferramentas, ou para criar scripts de interações com o Jira a partir da linha de comando.

O que você pode fazer com a API REST do Jira?

As possibilidades são quase infinitas. Aqui estão apenas alguns exemplos do que você pode conseguir com a API REST do Jira:

  • Automatize a criação de problemas: Integre o Jira ao seu sistema de controle de erros ou à ferramenta de suporte ao cliente para criar automaticamente problemas no Jira quando determinados eventos ocorrerem, com todos os detalhes relevantes.
  • Sincronização de dados entre sistemas: Mantenha o Jira em sincronia com outras ferramentas do seu pipeline de desenvolvimento, como sistemas de controle de origem, ferramentas de CI/CD ou suítes de gerenciamento de testes. A API permite que você reflita as alterações no Jira para outros sistemas e vice-versa.
  • Operações em massa: Você precisa atualizar um grande número de problemas de uma só vez? A API REST oferece suporte a operações de criação, atualização e exclusão em massa, poupando a você inúmeras horas de trabalho manual.
  • Dashboards e relatórios personalizados: Recupere dados do Jira e use-os para criar painéis, relatórios ou visualizações de dados personalizados, adaptados às necessidades específicas da sua equipe.
  • Amplie a funcionalidade do Jira: Crie aplicativos personalizados e integrações que ampliem os recursos do Jira, adicionem novos recursos ou simplifiquem os fluxos de trabalho específicos da sua organização.
  • Migrar dados: Você está migrando de outro sistema de controle de problemas para o Jira? Use a API para importar programaticamente seus dados existentes para o Jira.
  • Backup e arquivamento: Configure scripts para fazer backup regularmente dos dados do Jira ou arquivar projetos e problemas antigos.

Esses são apenas alguns exemplos - a API REST do Jira oferece um conjunto extenso de pontos de extremidade que cobrem quase todos os recursos e funções disponíveis na interface do usuário do Jira. Se você pode fazer isso no Jira, é provável que possa fazê-lo por meio da API.

Principais diferenças entre a API REST do Jira Cloud e a API REST do Data Center

Embora a API REST do Jira ofereça basicamente os mesmos recursos no Jira Cloud, Server e Data Center, você deve estar ciente de algumas diferenças importantes:

  • Autenticação: O Jira Cloud usa OAuth 2.0 ou tokens de API para autenticação, fornecendo um método seguro e baseado em padrões para conceder acesso à API. O Jira Data Center, por outro lado, usa principalmente autenticação básica ou cookies de sessão.
  • Controle de versão da API: A API REST do Jira Cloud é versionada (atualmente na versão 3), permitindo que a Atlassian evolua e melhore a API ao longo do tempo sem interromper as integrações existentes. O Jira Data Center, no entanto, não tem controle de versão explícito - a API está vinculada à versão específica do Jira.
  • Limitação de taxa: Para garantir o uso justo e manter o desempenho, o Jira Cloud impõe limites de taxa mais rígidos nas solicitações de API em comparação com o Data Center. As integrações precisam ser projetadas com esses limites em mente e implementar a limitação adequada e o tratamento de erros.
  • Formato do URL: Os URLs do ponto de extremidade para a API REST diferem ligeiramente entre o Cloud e o Data Center. No Jira Cloud, o URL básico está no formato https://your-domain.atlassian.net/rest/api/3/, enquanto no Data Center é https://your-jira-instance.com/rest/api/latest/.

Apesar dessas diferenças, os principais conceitos e padrões de uso da API REST permanecem praticamente os mesmos em todas as implementações. As habilidades e o conhecimento que você adquirir trabalhando com uma versão da API serão prontamente transferíveis para outras.

O que você precisa para trabalhar com a API REST do Jira?

Para começar a usar a API REST do Jira, você precisará de:

  • Uma instância do Jira: Você pode usar um site do Jira Cloud ou uma instância do Jira Server ou Data Center auto-hospedada. Você precisará de acesso de administrador para configurar e gerenciar suas integrações de API.
  • Credenciais de autenticação: Dependendo da sua implementação do Jira, pode ser um token OAuth 2.0, um token de API ou credenciais básicas de autenticação (nome de usuário e senha).
  • Cliente de API: Para fazer solicitações HTTP para a API, você precisará de um cliente de API. Pode ser uma ferramenta de teste de API dedicada, como o Postman, uma ferramenta de linha de comando, como o cURL, ou a biblioteca HTTP na linguagem de programação que você escolher (por exemplo, a biblioteca de solicitações do Python ou a API de busca do JavaScript).
  • Referência da documentação da API do Jira: A Atlassian fornece uma extensa documentação para a API REST do Jira, detalhando cada ponto de extremidade, seus parâmetros e exemplos de solicitações e respostas. Tenha isso sempre à mão enquanto você explora a API.

Com esses elementos instalados, você está pronto para começar a fazer suas primeiras solicitações de API.

Como usar a API REST do Jira 

Vamos examinar um exemplo prático de uso da API REST do Jira para criar, recuperar, atualizar e pesquisar problemas. Usaremos o Postman em nossos exemplos, mas os princípios se aplicam a qualquer cliente de API.

Etapa 1: Criar uma conta do Jira Cloud

Se você ainda não tem uma instância do Jira para trabalhar, a maneira mais fácil de começar é se inscrever em uma instância gratuita do Jira Cloud em https://www.atlassian.com/software/jira. Quando seu site estiver configurado, crie um novo projeto para trabalhar com você.

Etapa 2: Gerar um token de API do Jira

Para autenticar nossas solicitações de API, usaremos um token de API. Veja como você pode gerar um:

  1. Faça login na sua conta da Atlassian e acesse https://id.atlassian.com/manage-profile/security/api-tokens.
  2. Clique em "Create API token" (Criar token de API), dê ao seu token um rótulo descritivo e clique em "Create" (Criar).
  1. Copie o token gerado e armazene-o com segurança. Você não poderá visualizá-lo novamente depois de sair desta página.

Etapa 3: Faça sua primeira solicitação de API com o Postman

Vamos começar recuperando os detalhes de um problema existente:

  1. Abra o Postman e crie uma nova solicitação.
  2. Defina o método HTTP como GET e insira o URL para o ponto de extremidade de detalhes do problema, substituindo your-domain pelo domínio do site do Jira e ISSUE-KEY pela chave de um problema em seu projeto: https://your-domain.atlassian.net/rest/api/3/issue/ISSUE-KEY
  3. Na guia "Authorization" (Autorização), selecione "Basic Auth" (Autenticação básica) como o tipo. Digite o endereço de e-mail da sua conta Atlassian como nome de usuário e cole o token de API como senha.
  4. Clique em "Send" (Enviar). Se tudo estiver configurado corretamente, você verá uma resposta JSON com todos os detalhes do problema especificado, incluindo seus campos, comentários, anexos e muito mais.

Etapa 4: Criar um problema

Agora, vamos criar um novo problema por meio da API:

  1. No Postman, altere o método HTTP para POST e atualize a URL para o ponto de extremidade de criação de problemas: https://your-domain.atlassian.net/rest/api/3/issue
  2. Na guia "Headers" (Cabeçalhos), adicione um novo par de valores-chave: "Content-Type" e "application/json". Isso informa ao Jira que estamos enviando uma carga útil JSON.

Vá para a guia "Body" (Corpo), selecione o botão de opção "raw" (bruto) e insira o seguinte JSON, substituindo os valores project.key, issuetype.name, summary e description conforme apropriado:



 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 em "Enviar". O Jira responderá com o status 201 Created e os detalhes completos do problema recém-criado.

Etapa 5: Atualizar um problema

Para atualizar um problema existente, usamos o método PUT:

  1. Altere o método HTTP para PUT e atualize o URL para apontar para o problema que você deseja atualizar: https://your-domain.atlassian.net/rest/api/3/issue/ISSUE-KEY

No corpo da solicitação, inclua os campos que você deseja atualizar, por exemplo:



 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 em "Send" (Enviar). O Jira responderá com o status 204 No Content para indicar que a atualização foi bem-sucedida.

Etapa 6: pesquisar problemas usando JQL

Os recursos avançados de pesquisa do Jira também podem ser acessados por meio da API REST usando JQL (Jira Query Language):

  1. Altere o método HTTP de volta para POST e atualize o URL para o ponto de extremidade de pesquisa: https://your-domain.atlassian.net/rest/api/3/search

No corpo da solicitação, inclua uma consulta JQL e quaisquer parâmetros adicionais:



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

 Essa consulta retornará os 10 problemas criados mais recentemente no status "A fazer" do projeto especificado, incluindo apenas os campos de resumo, status e responsável.

  1. Clique em "Enviar". O Jira responderá com uma matriz JSON de problemas que correspondem aos seus critérios de pesquisa.

Esses exemplos apenas arranham a superfície do que é possível fazer com a API REST do Jira. À medida que você se familiarizar mais com os pontos de extremidade e parâmetros disponíveis, poderá criar integrações cada vez mais complexas e poderosas.

Você pode automatizar o Jira sem usar a API em Latenode

Como automatizar a criação e as atualizações de problemas no Jira usando Latenode

Um dos aplicativos mais poderosos da API REST do Jira é a automação da criação e atualização de tarefas. Com o Latenode, você pode configurar fluxos de trabalho sofisticados que criam e atualizam automaticamente tarefas no Jira com base em dados de fontes externas ou acionadores específicos. Isso garante que as informações no seu sistema de gerenciamento de projetos permaneçam atualizadas e oportunas, aumentando a eficiência da equipe.

Por exemplo, você pode criar um fluxo de trabalho que crie automaticamente uma nova tarefa no Jira quando uma mensagem de erro for recebida de um sistema de monitoramento, preenchendo todos os campos necessários e atribuindo a tarefa ao desenvolvedor apropriado. À medida que as atualizações chegam, a tarefa pode ser atualizada automaticamente e, quando o problema for resolvido, ele pode ser fechado. Essa abordagem simplificada não apenas melhora o rastreamento de problemas, mas também economiza o tempo da sua equipe, permitindo que ela se concentre em resolver problemas em vez de administrá-los.

Você pode saber mais sobre esse script e a integração com Latenode neste artigo. A integração com Latenode oferece alguns benefícios importantes:

  • Facilidade de uso O siteLatenode simplifica o processo de uso da API do Jira, facilitando a automatização das tarefas de gerenciamento de projetos para usuários não técnicos.
  • Preços flexíveis Os usuários podem escolher entre diferentes planos Latenode , com custos e recursos variados, para melhor atender às suas necessidades.
  • Soluções abrangentes A integração doLatenodecom o Jira fornece acesso a uma ampla gama de recursos de gerenciamento de projetos e rastreamento de problemas.
  • Personalização Os usuários podem adaptar as integrações do Jira para atender às suas necessidades específicas, permitindo soluções de automação personalizadas alinhadas às metas de negócios.

Imagine que cada e-mail importante de um cliente se transforme automaticamente em uma tarefa no Jira. Com o Latenode, isso se torna realidade. Nossa plataforma assegura a criação de uma nova tarefa no projeto certo com campos preenchidos com base no conteúdo do e-mail, garantindo que nenhuma solicitação importante seja perdida.

Aqui está um exemplo de como um fluxo de trabalho do Latenode automatiza a criação e as atualizações de tarefas do Jira com base nos dados de e-mail recebidos de uma fonte externa.

Essa imagem mostraria uma representação visual do fluxo de trabalho na interface do Latenode, com nós conectados representando cada etapa do processo, desde o recebimento do e-mail até a criação da tarefa do Jira.

Esse é apenas um exemplo de como o Latenode pode transformar sua abordagem de uso da API do Jira com automação avançada. Na verdade, os recursos da plataforma são praticamente ilimitados - você pode criar qualquer cenário de automação necessário para aumentar a eficiência dos negócios. Seja para distribuição automática de tarefas, envio de notificações, rastreamento de indicadores-chave de desempenho ou qualquer outra tarefa, o Latenode fornece as ferramentas para que você possa realizá-las.

Aproveitando o construtor de fluxo de trabalho visual do Latenode e a integração perfeita com a API REST do Jira, você pode projetar e implementar facilmente cenários complexos de automação, aumentando a eficiência do gerenciamento de projetos e acelerando os fluxos de trabalho da sua equipe.

Se você precisar de ajuda ou orientação sobre como criar seu próprio script ou se quiser replicar este, entre em contato com nossa comunidade Discord, onde estão os especialistas em automação Low-code.

Paginação, expansão e ordenação da API REST do Jira

Ao começar a trabalhar com conjuntos de dados maiores no Jira, você precisará estar ciente de como a API REST lida com a paginação, a expansão de recursos aninhados e a ordenação de resultados.

Expansão

Muitos recursos do Jira contêm referências a outros recursos aninhados. Por exemplo, um problema contém referências ao seu projeto, tipo de problema, criador, relator, responsável, comentários, anexos e muito mais. Por padrão, esses recursos aninhados são retornados como stubs, contendo apenas alguns campos básicos e um link próprio para o recurso completo.

Se precisar dos detalhes completos de um recurso aninhado, você pode usar o parâmetro de consulta expand para solicitar que o Jira inclua o recurso completo na resposta. Por exemplo, para incluir os detalhes completos do projeto e do responsável de um problema:



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

Você pode expandir vários recursos separando-os por vírgulas. Lembre-se de que as expansões podem aumentar significativamente o tamanho da carga útil da resposta, portanto, use-as criteriosamente.

Paginação

As solicitações que podem retornar um grande número de resultados (como pesquisas JQL) são paginadas por padrão. A API retornará um número máximo de resultados por página (padrão 50, mas personalizável até 100), juntamente com links para as páginas seguinte e anterior.

Você pode controlar a paginação usando os parâmetros startAt e maxResults:

  • startAt: O índice do primeiro resultado a ser retornado (baseado em 0)
  • maxResults: O número máximo de resultados a serem retornados por página

Por exemplo, para recuperar a segunda página de resultados com um tamanho de página de 20:



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

Seu aplicativo precisará lidar com várias solicitações para recuperar todas as páginas de resultados.

Pedidos

Você pode controlar a ordem dos resultados usando o parâmetro orderBy, que aceita uma lista separada por vírgulas de campos para ordenar. Cada campo pode ser prefixado com um - para indicar ordem decrescente.

Por exemplo, para ordenar os problemas por data de criação decrescente e, em seguida, por prioridade crescente:

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

Nem todos os campos suportam pedidos - consulte a documentação do endpoint específico para ver o que está disponível.

Exemplos de uso da API do Jira

Aqui estão alguns exemplos mais avançados que demonstram o poder da API REST do Jira para operações em massa.

Criação/atualização em massa de problemas a partir de CSV

Suponha que você tenha um arquivo CSV contendo dados de vários problemas que deseja criar ou atualizar no Jira. Você pode usar uma ferramenta como o Postman para automatizar esse processo:

  1. No Postman, crie uma nova solicitação para o endpoint de criação ou atualização do problema.

Na guia Body (Corpo), selecione o botão de opção "raw" (bruto) e insira um modelo para os dados do seu problema, usando variáveis para os campos que virão do seu 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 para a guia "Pre-request Script" e adicione o código para ler o arquivo CSV e definir as variáveis correspondentes:



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

3. Na janela "Runner", selecione o arquivo CSV como o arquivo de dados e inicie a execução. O Postman criará uma nova solicitação para cada linha do CSV, substituindo as variáveis do arquivo.

Essa é uma técnica poderosa para importar dados em massa de fontes externas para o Jira.

Criação/atualização de problemas em massa a partir de JSON

Se os seus dados de origem já estiverem no formato JSON, você poderá usar o endpoint de criação/atualização em massa para processar vários problemas em uma única solicitação:

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

O corpo da solicitação deve conter uma matriz de objetos de criação/atualização de problemas, cada um seguindo o mesmo formato de uma única solicitação de criação/atualização de problemas:



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

Isso criará dois problemas em uma única solicitação - uma tarefa no projeto PROJ1 e um bug no projeto PROJ2. Você pode incluir até 50 problemas em uma única solicitação em massa.

O ponto de extremidade em massa também é útil para realizar transições, atualizações e exclusões em massa. Por exemplo, para fazer a transição de vários problemas para o status "Concluído":



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

Você pode encontrar as transições disponíveis para um tipo de problema por meio do ponto de extremidade /rest/api/3/issue/{issueIdOrKey}/transitions.

Resumo

A API REST do Jira é uma ferramenta extremamente poderosa para integrar o Jira a outros sistemas, automatizar tarefas e ampliar os recursos do Jira. Neste guia, abordamos os fundamentos da API, incluindo:

  • A diferença entre as APIs Java e REST e quando você deve usar cada uma delas
  • Principais diferenças entre as APIs de nuvem e de servidor/data center
  • Como você pode se autenticar na API usando tokens de API ou autenticação básica
  • Fazendo suas primeiras solicitações de API usando o Postman
  • Criação, recuperação, atualização e pesquisa de problemas
  • Manipulação de paginação, expansão e ordenação de resultados
  • Casos de uso avançados, como criação/atualização em massa a partir de dados CSV e JSON

No entanto, você está apenas começando. A API REST do Jira oferece pontos de extremidade para você trabalhar com quase todos os aspectos do Jira, desde projetos e quadros até usuários e permissões. À medida que você cria suas integrações, não deixe de consultar a documentação oficial da Atlassian para obter as informações mais atualizadas e abrangentes.

Com a API REST do Jira em seu kit de ferramentas, as possibilidades do que você pode fazer com o Jira são praticamente infinitas. Quer você esteja criando um painel de relatórios personalizado, sincronizando dados com outro sistema ou automatizando fluxos de trabalho complexos, a API oferece a flexibilidade e o poder de que você precisa para fazer isso acontecer.

Você pode experimentar o Jira Without Using API em Latenode

PERGUNTAS FREQUENTES

Quais métodos de autenticação são compatíveis com a API REST do Jira?

O Jira Cloud é compatível com OAuth 2.0 e tokens de API para autenticação. Para o OAuth, você precisará registrar seu aplicativo no console do desenvolvedor da Atlassian para obter um ID e um segredo do cliente. Os tokens de API são uma opção mais simples para scripts e integrações pessoais. O Jira Server e o Data Center suportam autenticação básica (nome de usuário e senha) e autenticação baseada em sessão usando cookies.

A API REST do Jira é diferente entre o Jira Cloud e o Jira Data Center?

Embora os pontos de extremidade e as funcionalidades principais sejam praticamente os mesmos, há algumas diferenças importantes:

  • O URL básico da API é diferente: a nuvem usa https://your-domain.atlassian.net/rest/api/3/, enquanto o servidor/data center usa https://your-jira-instance.com/rest/api/latest/.
  • A nuvem impõe limites de taxa mais rígidos e exige autenticação para todas as solicitações, enquanto o Server/Data Center tem padrões mais brandos.
  • Alguns recursos avançados, como as APIs Agile e Service Desk, têm diferenças nos pontos de extremidade disponíveis e nos formatos de solicitação/resposta entre a nuvem e o servidor/data center.

Consulte sempre a documentação específica da sua implantação do Jira para garantir que você esteja usando os URLs e parâmetros corretos.

Como lidar com a limitação de taxa de API?

O Jira Cloud impõe limites de taxa para garantir a estabilidade e o desempenho do serviço. Se você exceder o limite de taxa, receberá uma resposta 429 Too Many Requests.

Para evitar que você atinja os limites da taxa:

  • Armazene dados em cache sempre que possível para evitar solicitações repetitivas.
  • Use a paginação para recuperar grandes conjuntos de resultados em várias solicitações, em vez de tentar recuperar tudo de uma vez.
  • Implemente o backoff exponencial no código do cliente para aumentar progressivamente o atraso entre as novas tentativas quando um limite de taxa for encontrado.
  • Se você tiver uma necessidade legítima de um limite de taxa mais alto, entre em contato com o suporte da Atlassian para discutir suas opções.

As implementações de servidor e data center têm o limite de taxa desativado por padrão, mas os administradores podem optar por ativar e configurar limites de taxa, se necessário.

Posso usar a API REST do Jira para o Server/Data Center?

Sim, o Jira Server e o Data Center têm uma API REST que é muito semelhante à API do jira Cloud. As principais diferenças são:

  • O URL básico usa /rest/api/latest/ em vez de /rest/api/3/.
  • Alguns endpoints podem ter parâmetros ou formatos de resposta ligeiramente diferentes.
  • Normalmente, a autenticação é feita por meio do Basic Auth ou de cookies de sessão, em vez de OAuth ou tokens de API.

Consulte a documentação da API de descanso específica do servidor/centro de dados para obter as informações mais precisas para sua versão do Jira.

A API REST do Jira é uma maneira poderosa e flexível de integrar o Jira ao seu fluxo de trabalho de desenvolvimento. Quer você esteja trabalhando na nuvem ou gerenciando seu próprio servidor, a API fornece as ferramentas necessárias para automatizar, personalizar e estender o Jira para atender às necessidades exclusivas da sua equipe. Com um pouco de exploração e experimentação, você poderá desbloquear todo o potencial do Jira e levar seu gerenciamento de projetos para o próximo nível.

Blogs relacionados

Caso de uso

Com o apoio de