Jira full reference
This is the full reference documentation for the Jira agent connector.
Supported entities and actions
The Jira connector supports the following entities and actions.
| Entity | Actions |
|---|---|
| Issues | API Search, Get, Search |
| Projects | API Search, Get, Search |
| Users | Get, List, API Search, Search |
| Issue Fields | List, API Search, Search |
| Issue Comments | List, Get, Search |
| Issue Worklogs | List, Get, Search |
Issues
Issues API Search
Retrieve issues based on JQL query with pagination support
Python SDK
await jira.issues.api_search()
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issues",
"action": "api_search"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
jql | string | No | JQL query string to filter issues |
nextPageToken | string | No | The token for a page to fetch that is not the first page. The first page has a nextPageToken of null. Use the nextPageToken to fetch the next page of issues. The nextPageToken field is not included in the response for the last page, indicating there is no next page. |
maxResults | integer | No | The maximum number of items to return per page. To manage page size, API may return fewer items per page where a large number of fields or properties are requested. The greatest number of items returned per page is achieved when requesting id or key only. It returns max 5000 issues. |
fields | string | No | A comma-separated list of fields to return for each issue. By default, all navigable fields are returned. To get a list of all fields, use the Get fields operation. |
expand | string | No | A comma-separated list of parameters to expand. This parameter accepts multiple values, including renderedFields, names, schema, transitions, operations, editmeta, changelog, and versionedRepresentations. |
properties | string | No | A comma-separated list of issue property keys. To get a list of all issue property keys, use the Get issue operation. A maximum of 5 properties can be requested. |
fieldsByKeys | boolean | No | Whether the fields parameter contains field keys (true) or field IDs (false). Default is false. |
failFast | boolean | No | Fail the request early if all field data cannot be retrieved. Default is false. |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
key | string | |
self | string | |
expand | string | null | |
fields | object |
Meta
| Field Name | Type | Description |
|---|---|---|
nextPageToken | string | null | |
isLast | boolean | null | |
total | integer |
Issues Get
Retrieve a single issue by its ID or key
Python SDK
await jira.issues.get(
issue_id_or_key="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issues",
"action": "get",
"params": {
"issueIdOrKey": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
issueIdOrKey | string | Yes | The issue ID or key (e.g., "PROJ-123" or "10000") |
fields | string | No | A comma-separated list of fields to return for the issue. By default, all navigable and Jira default fields are returned. Use it to retrieve a subset of fields. |
expand | string | No | A comma-separated list of parameters to expand. This parameter accepts multiple values, including renderedFields, names, schema, transitions, operations, editmeta, changelog, and versionedRepresentations. |
properties | string | No | A comma-separated list of issue property keys. To get a list of all issue property keys, use the Get issue operation. A maximum of 5 properties can be requested. |
fieldsByKeys | boolean | No | Whether the fields parameter contains field keys (true) or field IDs (false). Default is false. |
updateHistory | boolean | No | Whether the action taken is added to the user's Recent history. Default is false. |
failFast | boolean | No | Fail the request early if all field data cannot be retrieved. Default is false. |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
key | string | |
self | string | |
expand | string | null | |
fields | object |
Issues Search
Search and filter issues records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await jira.issues.search(
query={"filter": {"eq": {"changelog": {}}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issues",
"action": "search",
"params": {
"query": {"filter": {"eq": {"changelog": {}}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's next_cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|---|---|
changelog | object | Details of changelogs associated with the issue |
created | string | The timestamp when the issue was created |
editmeta | object | The metadata for the fields on the issue that can be amended |
expand | string | Expand options that include additional issue details in the response |
fields | object | Details of various fields associated with the issue |
fieldsToInclude | object | Specify the fields to include in the fetched issues data |
id | string | The unique ID of the issue |
key | string | The unique key of the issue |
names | object | The ID and name of each field present on the issue |
operations | object | The operations that can be performed on the issue |
projectId | string | The ID of the project containing the issue |
projectKey | string | The key of the project containing the issue |
properties | object | Details of the issue properties identified in the request |
renderedFields | object | The rendered value of each field present on the issue |
schema | object | The schema describing each field present on the issue |
self | string | The URL of the issue details |
transitions | array | The transitions that can be performed on the issue |
updated | string | The timestamp when the issue was last updated |
versionedRepresentations | object | The versions of each field on the issue |
Response Schema
| Field Name | Type | Description |
|---|---|---|
hits | array | List of matching records |
hits[].id | string | Record identifier |
hits[].score | number | Relevance score |
hits[].data | object | Record data containing the searchable fields listed above |
hits[].data.changelog | object | Details of changelogs associated with the issue |
hits[].data.created | string | The timestamp when the issue was created |
hits[].data.editmeta | object | The metadata for the fields on the issue that can be amended |
hits[].data.expand | string | Expand options that include additional issue details in the response |
hits[].data.fields | object | Details of various fields associated with the issue |
hits[].data.fieldsToInclude | object | Specify the fields to include in the fetched issues data |
hits[].data.id | string | The unique ID of the issue |
hits[].data.key | string | The unique key of the issue |
hits[].data.names | object | The ID and name of each field present on the issue |
hits[].data.operations | object | The operations that can be performed on the issue |
hits[].data.projectId | string | The ID of the project containing the issue |
hits[].data.projectKey | string | The key of the project containing the issue |
hits[].data.properties | object | Details of the issue properties identified in the request |
hits[].data.renderedFields | object | The rendered value of each field present on the issue |
hits[].data.schema | object | The schema describing each field present on the issue |
hits[].data.self | string | The URL of the issue details |
hits[].data.transitions | array | The transitions that can be performed on the issue |
hits[].data.updated | string | The timestamp when the issue was last updated |
hits[].data.versionedRepresentations | object | The versions of each field on the issue |
next_cursor | string | null | Cursor for next page of results |
took_ms | number | Query execution time in milliseconds |
Projects
Projects API Search
Search and filter projects with advanced query parameters
Python SDK
await jira.projects.api_search()
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "projects",
"action": "api_search"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
startAt | integer | No | The index of the first item to return in a page of results (page offset) |
maxResults | integer | No | The maximum number of items to return per page (max 100) |
orderBy | "category" | "-category" | "+category" | "key" | "-key" | "+key" | "name" | "-name" | "+name" | "owner" | "-owner" | "+owner" | "issueCount" | "-issueCount" | "+issueCount" | "lastIssueUpdatedDate" | "-lastIssueUpdatedDate" | "+lastIssueUpdatedDate" | "archivedDate" | "+archivedDate" | "-archivedDate" | "deletedDate" | "+deletedDate" | "-deletedDate" | No | Order the results by a field (prefix with + for ascending, - for descending) |
id | array<integer> | No | Filter by project IDs (up to 50) |
keys | array<string> | No | Filter by project keys (up to 50) |
query | string | No | Filter using a literal string (matches project key or name, case insensitive) |
typeKey | string | No | Filter by project type (comma-separated) |
categoryId | integer | No | Filter by project category ID |
action | "view" | "browse" | "edit" | "create" | No | Filter by user permission (view, browse, edit, create) |
expand | string | No | Comma-separated list of additional fields (description, projectKeys, lead, issueTypes, url, insight) |
status | array<"live" | "archived" | "deleted"> | No | EXPERIMENTAL - Filter by project status |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
key | string | |
name | string | |
self | string | |
expand | string | null | |
description | string | null | |
lead | object | null | |
avatarUrls | object | |
projectTypeKey | string | |
simplified | boolean | |
style | string | |
isPrivate | boolean | |
properties | object | |
projectCategory | object | null | |
entityId | string | null | |
uuid | string | null | |
url | string | null | |
assigneeType | string | null | |
components | array | null | |
issueTypes | array | null | |
versions | array | null | |
roles | object | null |
Meta
| Field Name | Type | Description |
|---|---|---|
nextPage | string | null | |
total | integer |
Projects Get
Retrieve a single project by its ID or key
Python SDK
await jira.projects.get(
project_id_or_key="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "projects",
"action": "get",
"params": {
"projectIdOrKey": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
projectIdOrKey | string | Yes | The project ID or key (e.g., "PROJ" or "10000") |
expand | string | No | Comma-separated list of additional fields to include (description, projectKeys, lead, issueTypes, url, insight) |
properties | string | No | A comma-separated list of project property keys to return. To get a list of all project property keys, use Get project property keys. |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
key | string | |
name | string | |
self | string | |
expand | string | null | |
description | string | null | |
lead | object | null | |
avatarUrls | object | |
projectTypeKey | string | |
simplified | boolean | |
style | string | |
isPrivate | boolean | |
properties | object | |
projectCategory | object | null | |
entityId | string | null | |
uuid | string | null | |
url | string | null | |
assigneeType | string | null | |
components | array | null | |
issueTypes | array | null | |
versions | array | null | |
roles | object | null |
Projects Search
Search and filter projects records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await jira.projects.search(
query={"filter": {"eq": {"archived": True}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "projects",
"action": "search",
"params": {
"query": {"filter": {"eq": {"archived": True}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's next_cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|---|---|
archived | boolean | Whether the project is archived |
archivedBy | object | The user who archived the project |
archivedDate | string | The date when the project was archived |
assigneeType | string | The default assignee when creating issues for this project |
avatarUrls | object | The URLs of the project's avatars |
components | array | List of the components contained in the project |
deleted | boolean | Whether the project is marked as deleted |
deletedBy | object | The user who marked the project as deleted |
deletedDate | string | The date when the project was marked as deleted |
description | string | A brief description of the project |
email | string | An email address associated with the project |
entityId | string | The unique identifier of the project entity |
expand | string | Expand options that include additional project details in the response |
favourite | boolean | Whether the project is selected as a favorite |
id | string | The ID of the project |
insight | object | Insights about the project |
isPrivate | boolean | Whether the project is private |
issueTypeHierarchy | object | The issue type hierarchy for the project |
issueTypes | array | List of the issue types available in the project |
key | string | The key of the project |
lead | object | The username of the project lead |
name | string | The name of the project |
permissions | object | User permissions on the project |
projectCategory | object | The category the project belongs to |
projectTypeKey | string | The project type of the project |
properties | object | Map of project properties |
retentionTillDate | string | The date when the project is deleted permanently |
roles | object | The name and self URL for each role defined in the project |
self | string | The URL of the project details |
simplified | boolean | Whether the project is simplified |
style | string | The type of the project |
url | string | A link to information about this project |
uuid | string | Unique ID for next-gen projects |
versions | array | The versions defined in the project |
Response Schema
| Field Name | Type | Description |
|---|---|---|
hits | array | List of matching records |
hits[].id | string | Record identifier |
hits[].score | number | Relevance score |
hits[].data | object | Record data containing the searchable fields listed above |
hits[].data.archived | boolean | Whether the project is archived |
hits[].data.archivedBy | object | The user who archived the project |
hits[].data.archivedDate | string | The date when the project was archived |
hits[].data.assigneeType | string | The default assignee when creating issues for this project |
hits[].data.avatarUrls | object | The URLs of the project's avatars |
hits[].data.components | array | List of the components contained in the project |
hits[].data.deleted | boolean | Whether the project is marked as deleted |
hits[].data.deletedBy | object | The user who marked the project as deleted |
hits[].data.deletedDate | string | The date when the project was marked as deleted |
hits[].data.description | string | A brief description of the project |
hits[].data.email | string | An email address associated with the project |
hits[].data.entityId | string | The unique identifier of the project entity |
hits[].data.expand | string | Expand options that include additional project details in the response |
hits[].data.favourite | boolean | Whether the project is selected as a favorite |
hits[].data.id | string | The ID of the project |
hits[].data.insight | object | Insights about the project |
hits[].data.isPrivate | boolean | Whether the project is private |
hits[].data.issueTypeHierarchy | object | The issue type hierarchy for the project |
hits[].data.issueTypes | array | List of the issue types available in the project |
hits[].data.key | string | The key of the project |
hits[].data.lead | object | The username of the project lead |
hits[].data.name | string | The name of the project |
hits[].data.permissions | object | User permissions on the project |
hits[].data.projectCategory | object | The category the project belongs to |
hits[].data.projectTypeKey | string | The project type of the project |
hits[].data.properties | object | Map of project properties |
hits[].data.retentionTillDate | string | The date when the project is deleted permanently |
hits[].data.roles | object | The name and self URL for each role defined in the project |
hits[].data.self | string | The URL of the project details |
hits[].data.simplified | boolean | Whether the project is simplified |
hits[].data.style | string | The type of the project |
hits[].data.url | string | A link to information about this project |
hits[].data.uuid | string | Unique ID for next-gen projects |
hits[].data.versions | array | The versions defined in the project |
next_cursor | string | null | Cursor for next page of results |
took_ms | number | Query execution time in milliseconds |
Users
Users Get
Retrieve a single user by their account ID
Python SDK
await jira.users.get(
account_id="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "get",
"params": {
"accountId": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | The account ID of the user |
expand | string | No | Comma-separated list of additional fields to include (groups, applicationRoles) |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
self | string | |
accountId | string | |
accountType | string | |
emailAddress | string | null | |
avatarUrls | object | |
displayName | string | |
active | boolean | |
timeZone | string | null | |
locale | string | null | |
expand | string | null | |
groups | object | null | |
applicationRoles | object | null |
Users List
Returns a paginated list of users
Python SDK
await jira.users.list()
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
startAt | integer | No | The index of the first item to return in a page of results (page offset) |
maxResults | integer | No | The maximum number of items to return per page (max 1000) |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
self | string | |
accountId | string | |
accountType | string | |
emailAddress | string | null | |
avatarUrls | object | |
displayName | string | |
active | boolean | |
timeZone | string | null | |
locale | string | null | |
expand | string | null | |
groups | object | null | |
applicationRoles | object | null |
Users API Search
Search for users using a query string
Python SDK
await jira.users.api_search()
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "api_search"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
query | string | No | A query string to search for users (matches display name, email, account ID) |
startAt | integer | No | The index of the first item to return in a page of results (page offset) |
maxResults | integer | No | The maximum number of items to return per page (max 1000) |
accountId | string | No | Filter by account IDs (supports multiple values) |
property | string | No | Property key to filter users |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
self | string | |
accountId | string | |
accountType | string | |
emailAddress | string | null | |
avatarUrls | object | |
displayName | string | |
active | boolean | |
timeZone | string | null | |
locale | string | null | |
expand | string | null | |
groups | object | null | |
applicationRoles | object | null |
Users Search
Search and filter users records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await jira.users.search(
query={"filter": {"eq": {"accountId": "<str>"}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "search",
"params": {
"query": {"filter": {"eq": {"accountId": "<str>"}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's next_cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|---|---|
accountId | string | The account ID of the user, uniquely identifying the user across all Atlassian products |
accountType | string | The user account type (atlassian, app, or customer) |
active | boolean | Indicates whether the user is active |
applicationRoles | object | The application roles assigned to the user |
avatarUrls | object | The avatars of the user |
displayName | string | The display name of the user |
emailAddress | string | The email address of the user |
expand | string | Options to include additional user details in the response |
groups | object | The groups to which the user belongs |
key | string | Deprecated property |
locale | string | The locale of the user |
name | string | Deprecated property |
self | string | The URL of the user |
timeZone | string | The time zone specified in the user's profile |
Response Schema
| Field Name | Type | Description |
|---|---|---|
hits | array | List of matching records |
hits[].id | string | Record identifier |
hits[].score | number | Relevance score |
hits[].data | object | Record data containing the searchable fields listed above |
hits[].data.accountId | string | The account ID of the user, uniquely identifying the user across all Atlassian products |
hits[].data.accountType | string | The user account type (atlassian, app, or customer) |
hits[].data.active | boolean | Indicates whether the user is active |
hits[].data.applicationRoles | object | The application roles assigned to the user |
hits[].data.avatarUrls | object | The avatars of the user |
hits[].data.displayName | string | The display name of the user |
hits[].data.emailAddress | string | The email address of the user |
hits[].data.expand | string | Options to include additional user details in the response |
hits[].data.groups | object | The groups to which the user belongs |
hits[].data.key | string | Deprecated property |
hits[].data.locale | string | The locale of the user |
hits[].data.name | string | Deprecated property |
hits[].data.self | string | The URL of the user |
hits[].data.timeZone | string | The time zone specified in the user's profile |
next_cursor | string | null | Cursor for next page of results |
took_ms | number | Query execution time in milliseconds |
Issue Fields
Issue Fields List
Returns a list of all custom and system fields
Python SDK
await jira.issue_fields.list()
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_fields",
"action": "list"
}'
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
key | string | null | |
name | string | |
custom | boolean | null | |
orderable | boolean | null | |
navigable | boolean | null | |
searchable | boolean | null | |
clauseNames | array | null | |
schema | object | null | |
untranslatedName | string | null | |
typeDisplayName | string | null | |
description | string | null | |
searcherKey | string | null | |
screensCount | integer | null | |
contextsCount | integer | null | |
isLocked | boolean | null | |
lastUsed | string | null |
Issue Fields API Search
Search and filter issue fields with query parameters
Python SDK
await jira.issue_fields.api_search()
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_fields",
"action": "api_search"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
startAt | integer | No | The index of the first item to return in a page of results (page offset) |
maxResults | integer | No | The maximum number of items to return per page (max 100) |
type | array<"custom" | "system"> | No | The type of fields to search for (custom, system, or both) |
id | array<string> | No | List of field IDs to search for |
query | string | No | String to match against field names, descriptions, and field IDs (case insensitive) |
orderBy | "contextsCount" | "-contextsCount" | "+contextsCount" | "lastUsed" | "-lastUsed" | "+lastUsed" | "name" | "-name" | "+name" | "screensCount" | "-screensCount" | "+screensCount" | No | Order the results by a field (contextsCount, lastUsed, name, screensCount) |
expand | string | No | Comma-separated list of additional fields to include (searcherKey, screensCount, contextsCount, isLocked, lastUsed) |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
maxResults | integer | |
startAt | integer | |
total | integer | |
isLast | boolean | |
values | array<object> | |
values[].id | string | |
values[].key | string | null | |
values[].name | string | |
values[].custom | boolean | null | |
values[].orderable | boolean | null | |
values[].navigable | boolean | null | |
values[].searchable | boolean | null | |
values[].clauseNames | array | null | |
values[].schema | object | null | |
values[].untranslatedName | string | null | |
values[].typeDisplayName | string | null | |
values[].description | string | null | |
values[].searcherKey | string | null | |
values[].screensCount | integer | null | |
values[].contextsCount | integer | null | |
values[].isLocked | boolean | null | |
values[].lastUsed | string | null |
Issue Fields Search
Search and filter issue fields records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await jira.issue_fields.search(
query={"filter": {"eq": {"clauseNames": []}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_fields",
"action": "search",
"params": {
"query": {"filter": {"eq": {"clauseNames": []}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's next_cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|---|---|
clauseNames | array | The names that can be used to reference the field in an advanced search |
custom | boolean | Whether the field is a custom field |
id | string | The ID of the field |
key | string | The key of the field |
name | string | The name of the field |
navigable | boolean | Whether the field can be used as a column on the issue navigator |
orderable | boolean | Whether the content of the field can be used to order lists |
schema | object | The data schema for the field |
scope | object | The scope of the field |
searchable | boolean | Whether the content of the field can be searched |
untranslatedName | string | The untranslated name of the field |
Response Schema
| Field Name | Type | Description |
|---|---|---|
hits | array | List of matching records |
hits[].id | string | Record identifier |
hits[].score | number | Relevance score |
hits[].data | object | Record data containing the searchable fields listed above |
hits[].data.clauseNames | array | The names that can be used to reference the field in an advanced search |
hits[].data.custom | boolean | Whether the field is a custom field |
hits[].data.id | string | The ID of the field |
hits[].data.key | string | The key of the field |
hits[].data.name | string | The name of the field |
hits[].data.navigable | boolean | Whether the field can be used as a column on the issue navigator |
hits[].data.orderable | boolean | Whether the content of the field can be used to order lists |
hits[].data.schema | object | The data schema for the field |
hits[].data.scope | object | The scope of the field |
hits[].data.searchable | boolean | Whether the content of the field can be searched |
hits[].data.untranslatedName | string | The untranslated name of the field |
next_cursor | string | null | Cursor for next page of results |
took_ms | number | Query execution time in milliseconds |
Issue Comments
Issue Comments List
Retrieve all comments for a specific issue
Python SDK
await jira.issue_comments.list(
issue_id_or_key="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_comments",
"action": "list",
"params": {
"issueIdOrKey": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
issueIdOrKey | string | Yes | The issue ID or key (e.g., "PROJ-123" or "10000") |
startAt | integer | No | The index of the first item to return in a page of results (page offset) |
maxResults | integer | No | The maximum number of items to return per page |
orderBy | "created" | "-created" | "+created" | No | Order the results by created date (+ for ascending, - for descending) |
expand | string | No | Comma-separated list of additional fields to include (renderedBody, properties) |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
self | string | |
body | object | |
author | object | |
updateAuthor | object | |
created | string | |
updated | string | |
jsdPublic | boolean | |
visibility | object | null | |
renderedBody | string | null | |
properties | array | null |
Meta
| Field Name | Type | Description |
|---|---|---|
startAt | integer | |
maxResults | integer | |
total | integer |
Issue Comments Get
Retrieve a single comment by its ID
Python SDK
await jira.issue_comments.get(
issue_id_or_key="<str>",
comment_id="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_comments",
"action": "get",
"params": {
"issueIdOrKey": "<str>",
"commentId": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
issueIdOrKey | string | Yes | The issue ID or key (e.g., "PROJ-123" or "10000") |
commentId | string | Yes | The comment ID |
expand | string | No | Comma-separated list of additional fields to include (renderedBody, properties) |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
self | string | |
body | object | |
author | object | |
updateAuthor | object | |
created | string | |
updated | string | |
jsdPublic | boolean | |
visibility | object | null | |
renderedBody | string | null | |
properties | array | null |
Issue Comments Search
Search and filter issue comments records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await jira.issue_comments.search(
query={"filter": {"eq": {"author": {}}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_comments",
"action": "search",
"params": {
"query": {"filter": {"eq": {"author": {}}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's next_cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|---|---|
author | object | The ID of the user who created the comment |
body | object | The comment text in Atlassian Document Format |
created | string | The date and time at which the comment was created |
id | string | The ID of the comment |
issueId | string | Id of the related issue |
jsdPublic | boolean | Whether the comment is visible in Jira Service Desk |
properties | array | A list of comment properties |
renderedBody | string | The rendered version of the comment |
self | string | The URL of the comment |
updateAuthor | object | The ID of the user who updated the comment last |
updated | string | The date and time at which the comment was updated last |
visibility | object | The group or role to which this item is visible |
Response Schema
| Field Name | Type | Description |
|---|---|---|
hits | array | List of matching records |
hits[].id | string | Record identifier |
hits[].score | number | Relevance score |
hits[].data | object | Record data containing the searchable fields listed above |
hits[].data.author | object | The ID of the user who created the comment |
hits[].data.body | object | The comment text in Atlassian Document Format |
hits[].data.created | string | The date and time at which the comment was created |
hits[].data.id | string | The ID of the comment |
hits[].data.issueId | string | Id of the related issue |
hits[].data.jsdPublic | boolean | Whether the comment is visible in Jira Service Desk |
hits[].data.properties | array | A list of comment properties |
hits[].data.renderedBody | string | The rendered version of the comment |
hits[].data.self | string | The URL of the comment |
hits[].data.updateAuthor | object | The ID of the user who updated the comment last |
hits[].data.updated | string | The date and time at which the comment was updated last |
hits[].data.visibility | object | The group or role to which this item is visible |
next_cursor | string | null | Cursor for next page of results |
took_ms | number | Query execution time in milliseconds |
Issue Worklogs
Issue Worklogs List
Retrieve all worklogs for a specific issue
Python SDK
await jira.issue_worklogs.list(
issue_id_or_key="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_worklogs",
"action": "list",
"params": {
"issueIdOrKey": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
issueIdOrKey | string | Yes | The issue ID or key (e.g., "PROJ-123" or "10000") |
startAt | integer | No | The index of the first item to return in a page of results (page offset) |
maxResults | integer | No | The maximum number of items to return per page |
expand | string | No | Comma-separated list of additional fields to include (properties) |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
self | string | |
author | object | |
updateAuthor | object | |
comment | object | |
created | string | |
updated | string | |
started | string | |
timeSpent | string | |
timeSpentSeconds | integer | |
issueId | string | |
visibility | object | null | |
properties | array | null |
Meta
| Field Name | Type | Description |
|---|---|---|
startAt | integer | |
maxResults | integer | |
total | integer |
Issue Worklogs Get
Retrieve a single worklog by its ID
Python SDK
await jira.issue_worklogs.get(
issue_id_or_key="<str>",
worklog_id="<str>"
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_worklogs",
"action": "get",
"params": {
"issueIdOrKey": "<str>",
"worklogId": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
issueIdOrKey | string | Yes | The issue ID or key (e.g., "PROJ-123" or "10000") |
worklogId | string | Yes | The worklog ID |
expand | string | No | Comma-separated list of additional fields to include (properties) |
Response Schema
Records
| Field Name | Type | Description |
|---|---|---|
id | string | |
self | string | |
author | object | |
updateAuthor | object | |
comment | object | |
created | string | |
updated | string | |
started | string | |
timeSpent | string | |
timeSpentSeconds | integer | |
issueId | string | |
visibility | object | null | |
properties | array | null |
Issue Worklogs Search
Search and filter issue worklogs records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.
Python SDK
await jira.issue_worklogs.search(
query={"filter": {"eq": {"author": {}}}}
)
API
curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issue_worklogs",
"action": "search",
"params": {
"query": {"filter": {"eq": {"author": {}}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's next_cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|---|---|
author | object | Details of the user who created the worklog |
comment | object | A comment about the worklog in Atlassian Document Format |
created | string | The datetime on which the worklog was created |
id | string | The ID of the worklog record |
issueId | string | The ID of the issue this worklog is for |
properties | array | Details of properties for the worklog |
self | string | The URL of the worklog item |
started | string | The datetime on which the worklog effort was started |
timeSpent | string | The time spent working on the issue as days, hours, or minutes |
timeSpentSeconds | integer | The time in seconds spent working on the issue |
updateAuthor | object | Details of the user who last updated the worklog |
updated | string | The datetime on which the worklog was last updated |
visibility | object | Details about any restrictions in the visibility of the worklog |
Response Schema
| Field Name | Type | Description |
|---|---|---|
hits | array | List of matching records |
hits[].id | string | Record identifier |
hits[].score | number | Relevance score |
hits[].data | object | Record data containing the searchable fields listed above |
hits[].data.author | object | Details of the user who created the worklog |
hits[].data.comment | object | A comment about the worklog in Atlassian Document Format |
hits[].data.created | string | The datetime on which the worklog was created |
hits[].data.id | string | The ID of the worklog record |
hits[].data.issueId | string | The ID of the issue this worklog is for |
hits[].data.properties | array | Details of properties for the worklog |
hits[].data.self | string | The URL of the worklog item |
hits[].data.started | string | The datetime on which the worklog effort was started |
hits[].data.timeSpent | string | The time spent working on the issue as days, hours, or minutes |
hits[].data.timeSpentSeconds | integer | The time in seconds spent working on the issue |
hits[].data.updateAuthor | object | Details of the user who last updated the worklog |
hits[].data.updated | string | The datetime on which the worklog was last updated |
hits[].data.visibility | object | Details about any restrictions in the visibility of the worklog |
next_cursor | string | null | Cursor for next page of results |
took_ms | number | Query execution time in milliseconds |
Configuration
The Jira connector requires the following configuration variables. These variables are used to construct the base API URL. Pass them via the config parameter when initializing the connector.
| Variable | Type | Required | Default | Description |
|---|---|---|---|---|
subdomain | string | Yes | {subdomain} | Your Jira Cloud subdomain |
Authentication
The Jira connector supports the following authentication methods.
Jira API Token Authentication
| Field Name | Type | Required | Description |
|---|---|---|---|
username | str | Yes | Your Atlassian account email address |
password | str | Yes | Your Jira API token from https://id.atlassian.com/manage-profile/security/api-tokens |
Example
Python SDK
JiraConnector(
auth_config=JiraAuthConfig(
username="<Your Atlassian account email address>",
password="<Your Jira API token from https://id.atlassian.com/manage-profile/security/api-tokens>"
)
)
API
curl --location 'https://api.airbyte.ai/api/v1/integrations/sources' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"workspace_id": "{your_workspace_id}",
"source_template_id": "{source_template_id}",
"auth_config": {
"username": "<Your Atlassian account email address>",
"password": "<Your Jira API token from https://id.atlassian.com/manage-profile/security/api-tokens>"
},
"name": "My Jira Connector"
}'