my code:
output:
<html>
<head>
<title>Unauthorized (401)</title>
<!--[if IE]><![endif]-->
<script type="text/javascript">
(function() {
var contextPath = '';
function printDeprecatedMsg() {
if (console && console.warn) {
console.warn('DEPRECATED JS - contextPath global variable has been deprecated since 7.4.0. Use `wrm/context-path` module instead.');
}
}
Object.defineProperty(window, 'contextPath', {
get: function() {
printDeprecatedMsg();
return contextPath;
},
set: function(value) {
printDeprecatedMsg();
contextPath = value;
}
});
})();
</script>
<script data-wrm-key="com.atlassian.plugins.atlassian-plugins-webresource-rest:data-collector-perf-observer,jira.webresources:resource-phase-checkpoint-init" data-wrm-batch-type="resource" data-initially-rendered>
window.__resourcePhaseCheckpointResolvers={resolveDeferPhaseCheckpoint:null,resolveInteractionPhaseCheckpoint:null};if(window.performance&&window.performance.mark){window.DeferScripts||(window.DeferScripts={});window.DeferScripts.totalClicks=0;window.DeferScripts.totalKeydowns=0;window.DeferScripts.clickListener=function(){"use strict";window.DeferScripts.totalClicks+=1};window.addEventListener("click",window.DeferScripts.clickListener);window.DeferScripts.keydownListener=function(){"use strict";window.DeferScripts.totalKeydowns+=1};window.addEventListener("keydown",window.DeferScripts.keydownListener)}window.resourcePhaseCheckpoint=Object.freeze({defer:new Promise((function(e){"use strict";window.__resourcePhaseCheckpointResolvers.resolveDeferPhaseCheckpoint=e})),interaction:new Promise((function(e){"use strict";window.__resourcePhaseCheckpointResolvers.resolveInteractionPhaseCheckpoint=e}))});Object.freeze(window.__resourcePhaseCheckpointResolvers);
!function(){"use strict";if("PerformanceObserver"in window){const e=[];window.__observedResources=e;const r=e=>"script"===e?"script":"css";new PerformanceObserver((n=>{n.getEntries().filter((({initiatorType:e,name:r})=>{const n="script"===e||((e,r)=>"link"===e&&"css"===new URL(r).pathname.split(".").pop())(e,r),i=new URL(location.href).origin===new URL(r).origin;return n&&i})).forEach((({name:n,transferSize:i,encodedBodySize:s,initiatorType:o})=>{e.push([i,s,n,r(o)])}))})).observe({type:"resource"})}}();
</script>
<script>
window.WRM=window.WRM||{};window.WRM._unparsedData=window.WRM._unparsedData||{};window.WRM._unparsedErrors=window.WRM._unparsedErrors||{};
WRM._unparsedData["jira.core:default-comment-security-level-data.DefaultCommentSecurityLevelHelpLink"]="{\u0022extraClasses\u0022:\u0022default-comment-level-help\u0022,\u0022title\u0022:\u0022Commenting on an Issue\u0022,\u0022url\u0022:\u0022https://docs.atlassian.com/jira/jcore-docs-0912/Editing+and+collaborating+on+issues#Editingandcollaboratingonissues-restrictacomment\u0022,\u0022isLocal\u0022:false}";
WRM._unparsedData["jira.core:feature-flags-data.feature-flag-data"]="{\u0022enabled-feature-keys\u0022:[\u0022com.atlassian.jira.agile.darkfeature.editable.detailsview\u0022,\u0022nps.survey.inline.dialog\u0022,\u0022com.atlassian.jira.agile.darkfeature.edit.closed.sprint.enabled\u0022,\u0022jira.plugin.devstatus.phasetwo\u0022,\u0022jira.frother.reporter.field\u0022,\u0022atlassian.rest.xsrf.legacy.enabled\u0022,\u0022jira.issue.status.lozenge\u0022,\u0022com.atlassian.jira.projects.issuenavigator\u0022,\u0022jira.plugin.devstatus.phasetwo.enabled\u0022,\u0022com.atlassian.jira.config.PDL\u0022,\u0022atlassian.aui.raphael.disabled\u0022,\u0022crowd.sync.nested.groups.group.membership.changes.batching.enabled\u0022,\u0022app-switcher.new\u0022,\u0022frother.assignee.field\u0022,\u0022com.atlassian.jira.projects.ProjectCentricNavigation.Switch\u0022,\u0022jira.onboarding.cyoa\u0022,\u0022com.atlassian.jira.agile.darkfeature.kanplan.enabled\u0022,\u0022com.atlassian.jira.projects.sidebar.DEFER_RESOURCES\u0022,\u0022com.atlassian.jira.config.ProjectConfig.MENU\u0022,\u0022com.atlassian.jira.agile.darkfeature.kanplan.epics.and.versions.enabled\u0022,\u0022com.atlassian.jira.agile.darkfeature.sprint.goal.enabled\u0022,\u0022jira.zdu.admin-updates-ui\u0022,\u0022jira.zdu.jmx-monitoring\u0022,\u0022com.atlassian.portfolio.simpleplans.dependencytab\u0022,\u0022mail.batching.enabled\u0022,\u0022sd.new.settings.sidebar.location.disabled\u0022,\u0022crowd.event.transformer.directory.manager.cache\u0022,\u0022jira.zdu.cluster-upgrade-state\u0022,\u0022com.atlassian.jira.email.templates.readFromJiraHome\u0022,\u0022com.atlassian.jira.agile.darkfeature.splitissue\u0022,\u0022crowd.sync.delete.user.memberships.batching.enabled\u0022,\u0022com.atlassian.jira.config.CoreFeatures.LICENSE_ROLES_ENABLED\u0022,\u0022jira.export.csv.enabled\u0022],\u0022feature-flag-states\u0022:{\u0022com.atlassian.jira.use.same.site.none.for.xsrf.token.cookie\u0022:true,\u0022com.atlassian.jira.leaked.all.anonymous.access\u0022:true,\u0022com.atlassian.jira.in.product.diagnostics.extended.logging\u0022:false,\u0022com.atlassian.jira.agile.darkfeature.handle.ug.usernames\u0022:true,\u0022com.atlassian.jira.security.rest.menu.anonymous.access.denied\u0022:true,\u0022com.atlassian.jira.mailHandlerImapMessageQueryLegacy\u0022:false,\u0022com.atlassian.diagnostics.scheduler.monitor\u0022:true,\u0022com.atlassian.jira.webhookEventsAsyncProcessing\u0022:false,\u0022jira.customfields.dual.list.box\u0022:true,\u0022com.atlassian.jira.serAllowShareWithNonMember\u0022:true,\u0022com.atlassian.jira.diagnostics.perflog\u0022:true,\u0022com.atlassian.jira.dbr\u0022:true,\u0022com.atlassian.jira.bc.user.search.MeasuringUserPickerSearchService\u0022:false,\u0022com.atlassian.jira.agile.darkfeature.legacy.epic.picker\u0022:false,\u0022com.atlassian.jira.issuetable.move.links.hidden\u0022:true,\u0022jira.renderer.consider.variable.format\u0022:true,\u0022jira.no.frother.multiuserpicker.field\u0022:false,\u0022com.atlassian.jira.plugin.issuenavigator.jql.autocomplete.eagerlyLoaded\u0022:false,\u0022com.atlassian.jira.user.dbIdBasedKeyGenerationStrategy\u0022:true,\u0022com.atlassian.portfolio.dcBundling\u0022:true,\u0022com.atlassian.jira.rest.enable.new.session.creation.endpoint\u0022:true,\u0022com.atlassian.jira.sharedEntityEditRights\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.sprint.goal\u0022:true,\u0022com.atlassian.jira.thumbnailsDeferredGeneration\u0022:true,\u0022jira.cluster.monitoring.show.offline.nodes\u0022:true,\u0022com.atlassian.jira.projects.ProjectCentricNavigation.ProjectShortcutOrder\u0022:true,\u0022com.atlassian.jira.commentReactions\u0022:true,\u0022data.pipeline.feature.jira.issue.links.export\u0022:true,\u0022com.atlassian.jira.web.action.admin.integrity.checker.task.cleanup\u0022:true,\u0022com.atlassian.jira.custom.csv.escaper\u0022:true,\u0022com.atlassian.jira.fixedCommentDeletionNotifications\u0022:true,\u0022com.atlassian.jira.allThumbnailsDeferred\u0022:false,\u0022com.atlassian.jira.plugin.issuenavigator.filtersUxImprovment\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.kanplan.epics.and.versions\u0022:true,\u0022com.atlassian.jira.jsd.mobile\u0022:true,\u0022com.atlassian.jira.TextUtilsWrapper.deserialization\u0022:false,\u0022jira.customfields.cleanup.identification\u0022:false,\u0022data.pipeline.feature.jira.all.exportable.custom.fields\u0022:true,\u0022com.atlassian.jira.in.product.diagnostics.wip\u0022:false,\u0022com.atlassian.jira.defaultValuesForSystemFields\u0022:true,\u0022jira.dc.cleanup.cluser.tasks\u0022:true,\u0022jira.customfields.bulk.delete\u0022:false,\u0022mail.batching.override.core\u0022:true,\u0022com.atlassian.jira.issues.archiving.filters\u0022:false,\u0022jira.users.and.roles.page.in.react\u0022:true,\u0022jira.security.csp.sandbox\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.synced.sprints\u0022:false,\u0022com.atlassian.jira.agile.darkfeature.velocity.chart.ui\u0022:true,\u0022com.atlassian.jira.returnDefaultAvatarsForBrokenAvatars\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.sprint.auto.management\u0022:true,\u0022jira.jql.suggestrecentfields\u0022:false,\u0022com.atlassian.jira.gdpr.rtbf\u0022:true,\u0022com.atlassian.jira.ignoreBrowseUsersPermissionsInUserPickers\u0022:true,\u0022com.atlassian.jira.issue.comments.updateIssueObjectBeforeEventTrigger\u0022:true,\u0022com.atlassian.jira.security.xsrf.session.token\u0022:true,\u0022com.atlassian.jira.rest.search.filter.user.input.preserve\u0022:true,\u0022com.atlassian.jira.security.project.admin.revoke.with.application.access\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.optimistic.transitions\u0022:true,\u0022com.atlassian.jiranomenclature\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.kanplan\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.boards.find.on.board\u0022:true,\u0022com.atlassian.diagnostics.http.monitor\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.future.sprint.dates\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.complete.sprint.in.backlog\u0022:true,\u0022jira.customfields.paginated.ui\u0022:true,\u0022com.atlassian.jira.filtersAndDashboardsShareableWithAllGroupsAndRoles\u0022:true,\u0022com.atlassian.jira.in.product.diagnostics\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.edit.closed.sprint\u0022:true,\u0022jira.create.linked.issue\u0022:true,\u0022jira.customfields.configure.modern.ui\u0022:false,\u0022jira.sal.host.connect.accessor.existing.transaction.will.create.transactions\u0022:true,\u0022com.atlassian.jira.advanced.audit.log\u0022:true,\u0022com.atlassian.jira.security.csv.export.injection.protection\u0022:true,\u0022jira.quick.search\u0022:true,\u0022external.links.new.window\u0022:true,\u0022jira.jql.smartautoselectfirst\u0022:false,\u0022jira.jql.membersof.ignoreGlobalPermissionsForAnonymous\u0022:false,\u0022jira.create.linked.issue.show.all.fields\u0022:true,\u0022data.pipeline.feature.jira.issue.history.export\u0022:true,\u0022jira.webactions.request.method.recognition\u0022:true,\u0022jira.richeditor.bidi.warning\u0022:true,\u0022atlassian.cdn.static.assets\u0022:true,\u0022com.atlassian.jira.lazyload.activity.tabs\u0022:true,\u0022mail.batching\u0022:true,\u0022com.atlassian.jira.safeguards\u0022:true,\u0022com.atlassian.jira.issue.index.db.filter.out.archive.issues\u0022:true,\u0022com.atlassian.jira.xml.deserializerAllowlist\u0022:true,\u0022com.atlassian.jira.privateEntitiesEditable\u0022:true,\u0022com.atlassian.jira.cfoIncludeArchivedIssuesAndAlwaysKeepContext\u0022:true,\u0022jira.priorities.per.project.edit.default\u0022:false,\u0022com.atlassian.jira.projectArchivedIssuesAreMarkedInIssueTable\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.issues.in.epic.details.view\u0022:true,\u0022com.atlassian.jira.attachments.storage.configurable\u0022:false,\u0022com.atlassian.jira.plugin.issuenavigator.anonymousPreventCfData\u0022:false,\u0022jira.priorities.per.project.jsd\u0022:true,\u0022com.atlassian.jira.safeguards.email.notifications\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.rapid.boards.bands\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.flexible.boards\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.sprint.picker.allsprints.suggestion\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.epic.validate.visibility\u0022:true,\u0022data.pipeline.feature.jira.issue.rank.export\u0022:true,\u0022data.pipeline.feature.jira.jsm.approvals.export\u0022:true,\u0022jira.dc.lock.leasing\u0022:true,\u0022com.atlassian.jira.accessibility.personal.settings\u0022:true,\u0022mail.batching.create.section.cf\u0022:true,\u0022com.atlassian.jira.send.email.notifications.to.user.without.application.access\u0022:false,\u0022com.atlassian.mail.server.managers.hostname.verification\u0022:true,\u0022com.atlassian.advancedroadmaps.rebrand\u0022:true,\u0022com.atlassian.diagnostics.monitors\u0022:true,\u0022com.atlassian.jira.upgrade.startup.fix.index\u0022:true,\u0022com.atlassian.jira.cacheResource\u0022:false,\u0022com.atlassian.jira.pin.comments\u0022:true,\u0022jira.redirect.anonymous.404.errors\u0022:true,\u0022com.atlassian.jira.issuetable.draggable\u0022:true,\u0022data.pipeline.feature.jira.jsm.canned.responses.export\u0022:true,\u0022com.atlassian.diagnostics.operating.system.monitor\u0022:false,\u0022com.atlassian.jira.attachments.generate.unique.suffix\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.kanban.hide.old.done.issues\u0022:true,\u0022jira.version.based.node.reindex.service\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.backlog.showmore\u0022:true,\u0022com.atlassian.diagnostics.database.monitor\u0022:true,\u0022com.atlassian.jira.quick.search.mode.settable\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.sprint.plan\u0022:false,\u0022com.atlassian.diagnostics.garbage.collection.monitor\u0022:true,\u0022jira.jql.membersof.ignoreGlobalPermissionsForLoggedUsers\u0022:false,\u0022com.atlassian.jira.safeguards.work.in.progress\u0022:false,\u0022com.atlassian.jira.commentStickyFooter\u0022:true,\u0022com.atlassian.jira.security.LegacyJiraTypeResolver.WARN_ONLY\u0022:false,\u0022data.pipeline.feature.jira.schema.version.2\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.burnupchart\u0022:true,\u0022com.atlassian.jira.issues.archiving.browse\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.velocity.sprint.picker\u0022:false,\u0022jira.instrumentation.laas\u0022:false,\u0022com.atlassian.jira.security.ChartUtils.browse.projects.permission.check\u0022:false,\u0022com.atlassian.jira.security.text.gadget.output.sanitization\u0022:true,\u0022data.pipeline.feature.jira.jsm.kb.stats.events.export\u0022:true,\u0022mail.batching.user.notification\u0022:true,\u0022com.atlassian.diagnostics.jql.monitor\u0022:true,\u0022com.atlassian.portfolio.permission.check.for.permissions\u0022:true,\u0022com.atlassian.jira.agile.darkfeature.dataonpageload\u0022:true,\u0022com.atlassian.jira.issue.watchers.filterUsersWithoutProjectAccess\u0022:true,\u0022jira.webactions.request.method.dependent.xsrf.checks\u0022:true,\u0022data.pipeline.feature.jira.archived.issue.export\u0022:false,\u0022com.atlassian.jira.projects.per.project.permission.query\u0022:true,\u0022com.atlassian.jira.issues.archiving\u0022:true,\u0022jira.priorities.per.project\u0022:true,\u0022index.use.snappy\u0022:true}}";
WRM._unparsedData["jira.core:terminology-data.terminology"]="{\u0022terminologyEntries\u0022:[{\u0022originalName\u0022:\u0022sprint\u0022,\u0022originalNamePlural\u0022:\u0022sprints\u0022,\u0022newName\u0022:\u0022sprint\u0022,\u0022newNamePlural\u0022:\u0022sprints\u0022,\u0022isDefault\u0022:true},{\u0022originalName\u0022:\u0022epic\u0022,\u0022originalNamePlural\u0022:\u0022epics\u0022,\u0022newName\u0022:\u0022epic\u0022,\u0022newNamePlural\u0022:\u0022epics\u0022,\u0022isDefault\u0022:true}],\u0022isTerminologyActive\u0022:false}";
WRM._unparsedData["com.atlassian.plugins.helptips.jira-help-tips:help-tip-manager.JiraHelpTipData"]="{\u0022anonymous\u0022:true}";
WRM._unparsedData["jira.core:avatar-picker-data.data"]="{}";
WRM._unparsedData["com.atlassian.analytics.analytics-client:programmatic-analytics-init.programmatic-analytics-data-provider"]="false";
WRM._unparsedData["com.atlassian.plugins.atlassian-plugins-webresource-plugin:context-path.context-path"]="\u0022\u0022";
WRM._unparsedData["com.atlassian.analytics.analytics-client:policy-update-init.policy-update-data-provider"]="false";
WRM._unparsedData["com.atlassian.jira.jira-header-plugin:newsletter-signup-tip-init.newsletterSignup"]="{\u0022signupDescription\u0022:\u0022Get updates, inspiration and best practices from the team behind Jira.\u0022,\u0022formUrl\u0022:\u0022https://www.atlassian.com/apis/exact-target/{0}/subscribe?mailingListId=1401671\u0022,\u0022signupTitle\u0022:\u0022Sign up!\u0022,\u0022signupId\u0022:\u0022newsletter-signup-tip\u0022,\u0022showNewsletterTip\u0022:false}";
WRM._unparsedData["jira.core:dateFormatProvider.allFormats"]="{\u0022dateFormats\u0022:{\u0022meridiem\u0022:[\u0022AM\u0022,\u0022PM\u0022],\u0022eras\u0022:[\u0022BC\u0022,\u0022AD\u0022],\u0022months\u0022:[\u0022January\u0022,\u0022February\u0022,\u0022March\u0022,\u0022April\u0022,\u0022May\u0022,\u0022June\u0022,\u0022July\u0022,\u0022August\u0022,\u0022September\u0022,\u0022October\u0022,\u0022November\u0022,\u0022December\u0022],\u0022monthsShort\u0022:[\u0022Jan\u0022,\u0022Feb\u0022,\u0022Mar\u0022,\u0022Apr\u0022,\u0022May\u0022,\u0022Jun\u0022,\u0022Jul\u0022,\u0022Aug\u0022,\u0022Sep\u0022,\u0022Oct\u0022,\u0022Nov\u0022,\u0022Dec\u0022],\u0022weekdaysShort\u0022:[\u0022Sun\u0022,\u0022Mon\u0022,\u0022Tue\u0022,\u0022Wed\u0022,\u0022Thu\u0022,\u0022Fri\u0022,\u0022Sat\u0022],\u0022weekdays\u0022:[\u0022Sunday\u0022,\u0022Monday\u0022,\u0022Tuesday\u0022,\u0022Wednesday\u0022,\u0022Thursday\u0022,\u0022Friday\u0022,\u0022Saturday\u0022]},\u0022lookAndFeelFormats\u0022:{\u0022relativize\u0022:\u0022true\u0022,\u0022time\u0022:\u0022h:mm a\u0022,\u0022day\u0022:\u0022EEEE h:mm a\u0022,\u0022dmy\u0022:\u0022dd/MMM/yy\u0022,\u0022complete\u0022:\u0022dd/MMM/yy h:mm a\u0022}}";
WRM._unparsedData["com.atlassian.jira.jira-header-plugin:dismissedFlags.flags"]="{\u0022dismissed\u0022:[]}";
WRM._unparsedData["com.atlassian.jira.project-templates-plugin:project-templates-plugin-resources.ptAnalyticsData"]="{\u0022instanceCreatedDate\u0022:\u00222017-08-08\u0022}";
WRM._unparsedData["jira.core:user-message-flags-data.adminLockout"]="{}";
if(window.WRM._dataArrived)window.WRM._dataArrived();</script>
<link rel="stylesheet" href="/s/e598e96aadf4b4daec00a5646c49e2ed-CDN/-gi64fh/9120001/1dlckms/6c465cad1ddec5eb821ea7d89991f806/_/download/contextbatch/css/_super,-com.atlassian.plugins.atlassian-plugins-webresource-rest:data-collector-perf-observer,-jira.webresources:resource-phase-checkpoint-init/batch.css" data-wrm-key="_super,-com.atlassian.plugins.atlassian-plugins-webresource-rest:data-collector-perf-observer,-jira.webresources:resource-phase-checkpoint-init" data-wrm-batch-type="context" media="all">
<link rel="stylesheet" href="/s/e01afe8f67f2a046e7c5c38854eddefd-CDN/-gi64fh/9120001/1dlckms/982a9cbc93ff1332b127645b74c91552/_/download/contextbatch/css/atl.general,jira.global,-_super/batch.css?agile_global_admin_condition=true&jag=true" data-wrm-key="atl.general,jira.global,-_super" data-wrm-batch-type="context" media="all">
<link rel="stylesheet" href="/s/03960ee81a17b93a7ec89760b8fe385e-CDN/-gi64fh/9120001/1dlckms/13a89c0c152fd02e84dc9aa1811da77f/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css" data-wrm-key="jira.global.look-and-feel,-_super" data-wrm-batch-type="context" media="all">
<script src="/s/e63dd1984c973e2e5500e19e6cdbf738-CDN/-gi64fh/9120001/1dlckms/6c465cad1ddec5eb821ea7d89991f806/_/download/contextbatch/js/_super,-com.atlassian.plugins.atlassian-plugins-webresource-rest:data-collector-perf-observer,-jira.webresources:resource-phase-checkpoint-init/batch.js?locale=en-US" data-wrm-key="_super,-com.atlassian.plugins.atlassian-plugins-webresource-rest:data-collector-perf-observer,-jira.webresources:resource-phase-checkpoint-init" data-wrm-batch-type="context" data-initially-rendered></script>
<script src="/s/b5ddd180975f25aaaac2ee341950e9bf-CDN/-gi64fh/9120001/1dlckms/982a9cbc93ff1332b127645b74c91552/_/download/contextbatch/js/atl.general,jira.global,-_super/batch.js?agile_global_admin_condition=true&jag=true&locale=en-US" data-wrm-key="atl.general,jira.global,-_super" data-wrm-batch-type="context" data-initially-rendered></script>
<script src="/s/8b746e746fc0b0d112924feecdb7c7f1-CDN/-gi64fh/9120001/1dlckms/617a59e11f68e2d9c544ef6d6306533b/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en-US" data-wrm-key="atl.global,-_super" data-wrm-batch-type="context" data-initially-rendered></script>
<script type="module">WRM.requireLazily(["wr!com.atlassian.plugins.atlassian-plugins-webresource-rest:data-collector-async"])</script>
<meta name="application-name" content="JIRA" data-name="jira" data-version="9.12.1">
</head>
<body id="jira" class="aui-layout aui-style-default page-type-message " data-version="9.12.1" >
<!-- HTTPError401 -->
<div class="aui-page-panel" ><div class="aui-page-panel-inner">
<main role="main" id="main" class="aui-page-panel-content" >
<div class="aui-page-header" ><div class="aui-page-header-inner">
<div class="aui-page-header-main" >
<h1>Unauthorized (401)</h1>
</div>
</div></div>
<div class="aui-message aui-message-warning warning">
<p>Encountered a <code>"401 - Unauthorized"</code> error while loading this page.</p>
<p>Basic Authentication Failure - Reason : AUTHENTICATED_FAILED</p>
<p><a href="/secure/MyJiraHome.jspa">Go to Jira home</a></p>
</div>
</main>
</div></div>
</body>
</html>
The "401 Unauthorized" error typically indicates an issue with authentication. Here are some steps to troubleshoot and resolve the problem:
1. Verify Credentials: Double-check the username and password being used for authentication. Ensure that they are correct and have the necessary permissions to access the API endpoint at `https://my-domain.net/rest/api/2/myself`.
2. Authentication Method: Confirm whether the API endpoint requires Basic Authentication or any other authentication method. If Basic Authentication is required, make sure you're providing the credentials properly.
3. URL Formatting: Check the URL format for any errors or inconsistencies. Ensure that there are no extra spaces, incorrect characters, or missing components in the URL.
4. Testing with Postman or cURL: Test the API endpoint separately using tools like Postman or cURL to verify if the issue persists outside of your Python code. This can help isolate whether the problem is with the code or the endpoint itself.
5. Handle Redirects: Sometimes, the server may respond with a redirect (e.g., HTTP 302) to another URL. Make sure your code can handle redirects appropriately if they are expected.
6. API Permissions: Ensure that the user associated with the provided credentials has the necessary permissions to access the `/myself` endpoint. If not, adjust the user's permissions accordingly.
7. Network Connectivity: Check if there are any network issues preventing your Python script from reaching the API endpoint. Ensure that there are no firewall restrictions or proxy issues blocking the connection.
8. Error Handling: Implement error handling in your Python code to handle different HTTP status codes gracefully. This includes handling the "401 Unauthorized" error specifically and providing informative error messages for troubleshooting.
By following these steps and addressing any issues identified, you should be able to resolve the "401 Unauthorized" error and successfully authenticate with the Organization API in Python.
Here are some great places to learn: 1. W3 School 2. Iqra Technology 3. JavaPoint
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.