diff --git a/airbyte-integrations/connectors/source-jira/metadata.yaml b/airbyte-integrations/connectors/source-jira/metadata.yaml index 255249d84092..b4424d655e13 100644 --- a/airbyte-integrations/connectors/source-jira/metadata.yaml +++ b/airbyte-integrations/connectors/source-jira/metadata.yaml @@ -10,7 +10,7 @@ data: connectorSubtype: api connectorType: source definitionId: 68e63de2-bb83-4c7e-93fa-a8a9051e3993 - dockerImageTag: 0.14.0 + dockerImageTag: 0.14.1 dockerRepository: airbyte/source-jira documentationUrl: https://docs.airbyte.com/integrations/sources/jira githubIssueLabel: source-jira diff --git a/airbyte-integrations/connectors/source-jira/source_jira/streams.py b/airbyte-integrations/connectors/source-jira/source_jira/streams.py index c11bc28f28d5..a93b2fbf3bbe 100644 --- a/airbyte-integrations/connectors/source-jira/source_jira/streams.py +++ b/airbyte-integrations/connectors/source-jira/source_jira/streams.py @@ -33,6 +33,7 @@ def reasons_for_unavailable_status_codes(self, stream: Stream, logger: Logger, s reasons_for_codes: Dict[int, str] = { requests.codes.FORBIDDEN: "Please check the 'READ' permission(Scopes for Connect apps) and/or the user has Jira Software rights and access.", requests.codes.UNAUTHORIZED: "Invalid creds were provided, please check your api token, domain and/or email.", + requests.codes.NOT_FOUND: "Please check the 'READ' permission(Scopes for Connect apps) and/or the user has Jira Software rights and access.", } return reasons_for_codes @@ -961,6 +962,12 @@ class ProjectAvatars(JiraStream): https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-project-avatars/#api-rest-api-3-project-projectidorkey-avatars-get """ + skip_http_status_codes = [ + # Project is not found or the user does not have permission to view the project. + requests.codes.UNAUTHORIZED, + requests.codes.NOT_FOUND, + ] + def __init__(self, **kwargs): super().__init__(**kwargs) self.projects_stream = Projects(authenticator=self.authenticator, domain=self._domain, projects=self._projects) @@ -986,6 +993,12 @@ class ProjectCategories(JiraStream): https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-project-categories/#api-rest-api-3-projectcategory-get """ + skip_http_status_codes = [ + # Project is not found or the user does not have permission to view the project. + requests.codes.UNAUTHORIZED, + requests.codes.NOT_FOUND, + ] + def path(self, **kwargs) -> str: return "projectCategory" diff --git a/docs/integrations/sources/jira.md b/docs/integrations/sources/jira.md index 2c25b8b88d6d..e66486659c30 100644 --- a/docs/integrations/sources/jira.md +++ b/docs/integrations/sources/jira.md @@ -124,6 +124,7 @@ The Jira connector should not run into Jira API limitations under normal usage. | Version | Date | Pull Request | Subject | |:--------|:-----------|:-----------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------| +| 0.14.1 | 2023-12-19 | [33625](https://github.com/airbytehq/airbyte/pull/33625) | Skip 404 error | | 0.14.0 | 2023-12-15 | [33532](https://github.com/airbytehq/airbyte/pull/33532) | Add lookback window | | 0.13.0 | 2023-12-12 | [33353](https://github.com/airbytehq/airbyte/pull/33353) | Fix check command to check access for all available streams | | 0.12.0 | 2023-12-01 | [33011](https://github.com/airbytehq/airbyte/pull/33011) | Fix BoardIssues stream; increase number of retries for backoff policy to 10 |