---
title: "Connect JIRA and UpKeep - APIANT.ai"
description: "When \"New Issue\" fires in JIRA, your agent runs \"Create Purchase Order\" in UpKeep, or \"New Purchase Order\" in UpKeep to \"Add Comment to Issue\" in JIRA."
canonical: "https://apiant.ai/connect/jira-to-upkeep"
---

# Connect JIRA and UpKeep

When **New Issue** fires in [JIRA](https://apiant.ai/connections/jira), your agent runs **Create Purchase Order** in [UpKeep](https://apiant.ai/connections/upkeep), or **New Purchase Order** in UpKeep to **Add Comment to Issue** in JIRA. Describe the whole flow and it is built, tested on every scenario and kept running.

JIRA **2** triggers JIRA **138** actions UpKeep **2** triggers UpKeep **31** actions

What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.

## What do you want JIRA and UpKeep to do together?

Give your AI client this address.

`https://mcp.apiant.ai`

One connection does both: ask your client to act in an app once, or have it build an automation that keeps running. Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.

### Set it up in your client

### Claude Code

Run this in the directory you want to work in.

`claude mcp add --transport http -s project apiant-ai https://mcp.apiant.ai`

Start Claude Code there, approve the server, and sign in in the browser page it opens.

[Claude Code guide (opens in a new tab)](https://apiant.ai/docs/mcp/claude-code)

### Claude, web and desktop

Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Cursor

Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Zed

Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Codex and the ChatGPT desktop app

Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Any other MCP client

Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

Example flows

## What JIRA and UpKeep can do together

### From JIRA to UpKeep

- When **New Issue** in JIRA then **Create Purchase Order** in UpKeep
- When **New or Updated Issue** in JIRA then **Create Work Order** in UpKeep

### From UpKeep to JIRA

- When **New Purchase Order** in UpKeep then **Add Comment to Issue** in JIRA
- When **New Work Order** in UpKeep then **Add comment** in JIRA

Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.

Everything your agent can do with JIRA and UpKeep

## Triggers and actions 4 triggers · 169 actions

- Trigger

**New Issue**

Polls for newly created issues in a project (ordered by creation date).

- Trigger

**New or Updated Issue**

Polls for issues created or updated recently (ordered by updated date).

- Action

**Add attachment**

add an attachment to an issue

- Action

**Add comment**

add a comment to an issue

- Action

**Add Comment to Issue**

Adds a comment to the specified issue.

- Action

**Add filter as favorite**

Add filter as favorite

- Action

**Add gadget to dashboard**

Add gadget to dashboard

- Action

**Add user to group**

add a user to a group

- Action

**Add vote**

add the current user's vote to an issue

- Action

**Add worklog**

add a worklog to an issue

- Action

**Archive issues by ID or key**

archive issues by ID/key

- Action

**Archive issue(s) by JQL**

Archive issue(s) by JQL

- Action

**Assign Issue**

Assigns an issue to a user by account ID.

- Action

**Bulk create issue**

bulk create issues

- Action

**Bulk create statuses**

Bulk create statuses

- Action

**Bulk delete issues**

bulk delete issues

- Action

**Bulk delete Statuses**

Bulk delete Statuses

- Action

**Bulk delete worklogs**

bulk delete worklogs on an issue

- Action

**Bulk edit dashboards**

Bulk edit dashboards

- Action

**Bulk edit issues**

bulk edit issue fields

- Action

**Bulk fetch issues**

bulk fetch issues by ID/key

- Action

**Bulk move issues**

bulk move issues

- Action

**Bulk move worklogs**

bulk move worklogs

- Action

**Bulk transition issue statuses**

bulk transition issue statuses

- Action

**Bulk unwatch issues**

bulk unwatch issues

- Action

**Bulk watch issues**

bulk watch issues

- Action

**Change filter owner**

Change filter owner

- Action

**Copy dashboard**

Copy dashboard

- Action

**Create component**

Create component

- Action

**Create custom field**

Create custom field

- Action

**Create dashboard**

Create dashboard

- Action

**Create filter**

Create filter

- Action

**Create group**

Create group

- Action

**Create Issue**

Creates a new issue in the specified project.

- Action

**Create issue link**

create a link between two issues

- Action

**Create issue link type**

create an issue link type

- Action

**Create issue type**

create an issue type

- Action

**Create project**

create a project

- Action

**Create project category**

create a project category

- Action

**Create related work**

Create related work

- Action

**Create user**

create a user

- Action

**Create version**

Create version

- Action

**Delete and replace version**

Delete and replace version

- Action

**Delete attachment**

delete an attachment

- Action

**Delete comment**

delete a comment

- Action

**Delete component**

Delete component

- Action

**Delete custom field**

Delete custom field

- Action

**Delete dashboard**

Delete dashboard

- Action

**Delete filter**

Delete filter

- Action

**Delete Issue**

Deletes an issue by its key or ID.

- Action

**Delete issue link**

delete an issue link

- Action

**Delete issue link type**

delete an issue link type

- Action

**Delete issue type**

delete an issue type

- Action

**Delete project**

delete a project

- Action

**Delete project asynchronously**

delete a project asynchronously

- Action

**Delete project category**

delete a project category

- Action

**Delete related work**

Delete related work

- Action

**Delete user**

delete a user

- Action

**Delete version**

Delete version

- Action

**Delete vote**

remove the current user's vote from an issue

- Action

**Delete watcher**

remove a watcher from an issue

- Action

**Delete worklog**

delete a worklog

- Action

**Export Archived Issues**

Export archived issue(s)

- Action

**Get all dashboards**

Get all dashboards

- Action

**Get all projects**

Get all projects

- Action

**Get attachment content**

get attachment content

- Action

**Get attachment metadata**

get attachment metadata

- Action

**Get available transitions**

Get available transitions

- Action

**Get bulk available transitions**

get transitions available for bulk transition

- Action

**Get comment**

get a single comment

- Action

**Get comments by IDs**

get comments by IDs

- Action

**Get component**

Get component

- Action

**Get create issue metadata**

Get create issue metadata

- Action

**Get create metadata issue types for a project**

get create-metadata issue types for a project

- Action

**Get custom field**

Fetches a custom field's definition by its ID, including its name, description and field type. Returns found = false when no field has that ID.

- Action

**Get dashboard**

Get dashboard

- Action

**Get edit issue metadata**

get edit metadata for an issue

- Action

**Get favorite filters**

Get favorite filters

- Action

**Get filter**

Get filter

- Action

**Get group**

Get group

- Action

**Get Issue**

Returns the details of a single issue by its key or ID.

- Action

**Get Issue Comments**

Returns all comments for the specified issue.

- Action

**Get issue link**

get an issue link

- Action

**Get issue link type**

get an issue link type

- Action

**Get issue link types**

list issue link types

- Action

**Get Issue Transitions**

Returns the workflow transitions available for the specified issue.

- Action

**Get issue type**

get an issue type

- Action

**Get issue watchers**

get watchers of an issue

- Action

**Get issue worklogs**

get worklogs on an issue

- Action

**Get is watching issue bulk**

check watching status for multiple issues

- Action

**Get my filters**

Get my filters

- Action

**Get Project**

Returns the details of a single project by its key or ID.

- Action

**Get project category**

Fetches a project category by ID, with its name and description. An error occurs if the category is not found.

- Action

**Get project components**

get all components of a project

- Action

**Get project versions**

get all versions of a project

- Action

**Get recent projects**

get recently viewed projects

- Action

**Get related work**

Get related work

- Action

**Get status**

Get status

- Action

**Get status category**

Get status category

- Action

**Get transitions**

get available transitions for an issue

- Action

**Get user**

get a user

- Action

**Get user groups**

get groups a user belongs to

- Action

**Get users from group**

list members of a group

- Action

**Get version**

Get version

- Action

**Get votes**

get votes on an issue

- Action

**Get worklog**

get a worklog

- Action

**Get worklogs by IDs**

get worklogs by IDs

- Action

**Get worklogs by issue ID and worklog ID**

get worklogs by issue ID and worklog ID (internal)

- Action

**List Project Issue Types**

Returns the issue types available, optionally for a given project.

- Action

**List Projects**

Returns a paginated list of projects visible to the user.

- Action

**List users**

Lists the users visible to the connected Jira account. Takes no search criterion.

- Action

**Merge versions**

merge one version into another

- Action

**Move version**

Move version

- Action

**Remove filter as favorite**

Remove filter as favorite

- Action

**Remove gadget from dashboard**

Remove gadget from dashboard

- Action

**Remove group**

Remove group

- Action

**Remove user from group**

remove a user from a group

- Action

**Restore custom field from trash**

Restore custom field from trash

- Action

**Restore deleted or archived project**

restore a deleted or archived project

- Action

**Search for dashboards**

Search for dashboards

- Action

**Search for filters**

Search for filters

- Action

**Search for issues using JQL enhanced search (GET)**

Search for issues using JQL enhanced search (GET)

- Action

**Search for issues using JQL enhanced search (POST)**

search for issues using enhanced JQL (POST)

- Action

**Search Issues (JQL)**

Searches for issues using a JQL query.

- Action

**Transition Issue**

Moves an issue to a new status by performing a workflow transition.

- Action

**Unarchive issues by keys or ID**

unarchive issues by key/ID

- Action

**Update comment**

update a comment

- Action

**Update component**

Update component

- Action

**Update custom field**

Update custom field

- Action

**Update dashboard**

Update dashboard

- Action

**Update filter**

Update filter

- Action

**Update gadget on dashboard**

Update gadget on dashboard

- Action

**Update Issue**

edit an issue

- Action

**Update issue link type**

update an issue link type

- Action

**Update issue type**

update an issue type

- Action

**Update project**

update a project

- Action

**Update project category**

update a project category

- Action

**Update related work**

Update one related-work link on a Jira project version. Reads the version's existing related work, overlays only the fields you supply, then writes the merged object back — so anything you leave blank keeps its current value.

- Action

**Update version**

Update version

- Action

**Update worklog**

update a worklog

- Trigger

**New Purchase Order**

Triggers when a new purchase order is created.

- Trigger

**New Work Order**

Triggers when a new work order is created.

- Action

**Add Asset**

Create a new asset.

- Action

**Add Location**

Creates a new location in UpKeep.

- Action

**Add User**

Creates a new user in your UpKeep account.

- Action

**Add Vendor**

Create a new vendor.

- Action

**Create Purchase Order**

Creates a purchase order in UpKeep.

- Action

**Create Work Order**

Creates new work order.

- Action

**Delete Purchase Order**

Deletes a specific purchase order in UpKeep.

- Action

**Delete Work Order**

Deletes a specific work order in UpKeep.

- Action

**Find Asset**

Finds assets matching the given name, barcode, serial number, location, status, category or other criteria. Returns the first match plus the list of all matches on the first page of results.

- Action

**Find Location**

Returns the locations whose name matches the name you supply, optionally narrowed by parent location, creator, hierarchy level, custom field and created/updated dates.

- Action

**Find Part**

Finds parts in UpKeep by name.

- Action

**Find Vendor**

Returns the vendors whose business name matches the one supplied, with the first match broken out.

- Action

**Get Asset**

Gets a specific UpKeep asset by its ID, including its custom field values.

- Action

**Get Location**

Gets a specific UpKeep location by its ID.

- Action

**Get Part**

Gets a specific part from the UpKeep inventory by its ID.

- Action

**Get Purchase Order**

Gets a specific purchase order by its ID.

- Action

**Get User**

Gets a specific UpKeep user by ID.

- Action

**Get Vendor**

Gets a specific vendor by its ID.

- Action

**Get Work Order**

Retrieve a single work order by ID.

- Action

**List Assets**

Lists the assets in your UpKeep account, optionally filtered by name, barcode, serial number, location, status, category, assigned or creating user, downtime status, one custom field, and created/updated time ranges.

- Action

**List Locations**

Lists the locations in your UpKeep account, optionally filtered by name, creator, parent location, hierarchy level, custom field or created/updated date.

- Action

**List Purchase Orders**

Lists purchase orders in the UpKeep account, optionally filtered by status.

- Action

**List Vendors**

List/page all vendors.

- Action

**List Work Orders**

List/page all work orders with filters.

- Action

**Update Asset**

Updates the fields you supply on an existing UpKeep asset. Fields left blank are not changed.

- Action

**Update Location**

Updates an existing location in UpKeep. Only the fields you fill in are changed.

- Action

**Update Part**

Updates an existing part in UpKeep. Only the fields you fill in are changed.

- Action

**Update Purchase Order**

Updates an existing purchase order in UpKeep. Only the fields you fill in are changed.

- Action

**Update User**

Updates an existing UpKeep user. Only the fields you fill in are changed; blank fields are left as they are.

- Action

**Update Vendor**

Update fields on an existing vendor.

- Action

**Update Work Order**

Update fields on an existing work order.

## Each app on its own

- [ **JIRA** Atlassian JIRA Cloud — issue tracking and project management.](https://apiant.ai/connections/jira)
- [ **UpKeep** UpKeep is a maintenance management application for facility management teams.](https://apiant.ai/connections/upkeep)

Reviews

## What our customers say

## More from JIRA

- [ **JIRA to Salesforce** Salesforce is a leading enterprise customer relationship management (CRM) platform.](https://apiant.ai/connect/jira-to-salesforce)
- [ **JIRA to Google Sheets** Google Sheets is Google's online spreadsheet app for creating, editing and sharing spreadsheets.](https://apiant.ai/connect/jira-to-google-sheets)
- [ **JIRA to Google Drive** Google Drive is a cloud storage solution for uploading, sharing, and collaborating on files across devices...](https://apiant.ai/connect/jira-to-google-drive)
- [ **JIRA to Mailchimp** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/jira-to-mailchimp)
- [ **JIRA to Shopify** Shopify is a commerce platform for online stores and retail point-of-sale.](https://apiant.ai/connect/jira-to-shopify)
- [ **JIRA to Trello** Trello is a visual collaboration tool that organizes projects into boards, lists, and cards.](https://apiant.ai/connect/jira-to-trello)

## More into UpKeep

- [ **HubSpot to UpKeep** HubSpot is your all-in-one stop for all of your marketing software needs.](https://apiant.ai/connect/hubspot-to-upkeep)
- [ **Salesforce to UpKeep** Salesforce is a leading enterprise customer relationship management (CRM) platform.](https://apiant.ai/connect/salesforce-to-upkeep)
- [ **Slack to UpKeep** Slack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...](https://apiant.ai/connect/slack-to-upkeep)
- [ **Google Sheets to UpKeep** Google Sheets is Google's online spreadsheet app for creating, editing and sharing spreadsheets.](https://apiant.ai/connect/google-sheets-to-upkeep)
- [ **Gmail to UpKeep** Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...](https://apiant.ai/connect/gmail-to-upkeep)
- [ **Google Calendar to UpKeep** Google Calendar is a time management tool providing scheduling features, event reminders, and integration...](https://apiant.ai/connect/google-calendar-to-upkeep)

Questions

## JIRA and UpKeep, answered

###

### What can start an automation from JIRA?

Any of JIRA's 2 triggers in the catalog, including New Issue and New or Updated Issue. Describe the moment in plain language and your agent picks the right one.

###

### What can your agent do in UpKeep when something happens in JIRA?

Any of UpKeep's 31 actions, including Create Purchase Order, Create Work Order, Update Asset and Update Location. Your agent maps the data both ways and tests every scenario before it ships.

###

### Can it also run from UpKeep to JIRA?

Yes. When something happens in UpKeep, your agent can act in JIRA too. This page covers both directions: UpKeep's triggers and JIRA's actions are listed here as well.

###

### Do I have to build a connector for JIRA or UpKeep?

No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.

###

### Can my AI client use JIRA and UpKeep without building an automation?

Yes. With your AI client connected to APIANT, ask it to do something in either app once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running. One connection covers both.

###

### What happens when something fails?

Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.

###

### Is there a free plan?

Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.
