Skip to content

HTTP 401 on download_attachments_from_page() but not get_attachments_from_content() #1601

@jacenat

Description

@jacenat

I am trying to download attachments from confluence pages. Because I have been getting 401 errors when calling download_attachments_from_page() (it worked yesterday?) I also included get_attachments_from_content().

def downloadFileFromConfluence(logger, Confluence, confluencePageID, dlFolder):
    logger.info("[" + str(datetime.datetime.now()) + "] --- Start of download from Confluence.")
    try:        
        # Download all attachments from the given page
        attachments = Confluence.get_attachments_from_content(confluencePageID, start=0, limit=50, expand=None, filename=None, media_type=None)
        print(attachments)
        Confluence.download_attachments_from_page(confluencePageID, path=dlFolder)
    except Exception as e:
        print(str(e))
        logger.error("[" + str(datetime.datetime.now()) + "] --- An error occured while accessing Confluence!")
        logger.error("[" + str(datetime.datetime.now()) + "] " + str(e))

The console output from this piece of code is

{'results': [{'id': 'att67907559', 'type': 'attachment', 'ari': 'ari:cloud:confluence:8babfdf0-f329-48b6-9de1-52a8a936740f:attachment/67907559', 'base64EncodedAri': 'YXJpOmNsb3VkOmNvbmZsdWVuY2U6OGJhYmZkZjAtZjMyOS00OGI2LTlkZTEtNTJhOGE5MzY3NDBmOmF0dGFjaG1lbnQvNjc5MDc1NTk=', 'status': 'current', 'title': 'Amaris Overview 220221.pdf', 'macroRenderedOutput': {}, 'metadata': {'mediaType': 'application/pdf'}, 'extensions': {'mediaType': 'application/pdf', 'fileSize': 1519699, 'comment': '', 'mediaTypeDescription': 'PDF Document', 'fileId': '08f7fe95-ad82-42db-9af9-1413c54d3742', 'collectionName': 'contentId-67895904'}, '_expandable': {'container': '/rest/api/content/67895904', 'restrictions': '/rest/api/content/att67907559/restriction/byOperation', 'history': '/rest/api/content/att67907559/history', 'body': '', 'version': '', 'descendants': '/rest/api/content/att67907559/descendant', 'space': '/rest/api/space/IT', 'childTypes': '', 'schedulePublishInfo': '', 'operations': '', 'schedulePublishDate': '', 'children': '/rest/api/content/att67907559/child', 'ancestors': '', 'draftVersion': ''}, '_links': {'webui': '/pages/viewpageattachments.action?pageId=67895904&preview=%2F67895904%2F67907559%2FAmaris+Overview+220221.pdf', 'self': 'https://<our org>.atlassian.net/wiki/rest/api/content/att67907559', 'download': '/download/attachments/67895904/Amaris%20Overview%20220221.pdf?version=1&modificationDate=1646135898000&cacheVersion=1&api=v2'}}], 'start': 0, 'limit': 50, 'size': 1, '_links': {'base': 'https://<our org>.atlassian.net/wiki', 'context': '/wiki', 'self': 'https://<our org>.atlassian.net/wiki/rest/api/content/67895904/child/attachment'}}
HTTP error occurred while downloading attachments: Unauthorized (401)

Getting the list of the (one) attachment(s) works. But once I want to download them, the call gives me an "Unauthorized (401)". I checked this also via stepping through, just so I am sure that download_attachments_from_page() is throwing that 401.
I MUST be doing something wrong. The user and api token can curl the page without problems on the command line.

Before I re-write the rest calls myself (which I'd rather not), I thought it can't hurt to ask here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions