You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
Our app has some minor differences between Confluence Server and Confluence Cloud (such as minor macro storage format differences and data being moved out of page attachments to our servers). We created an automated tool to go through all Confluence Cloud spaces and update our macros as well as grab attachments using the REST API. The problem is we see issues with some, but not all, REST API calls after users have run the Atlassian Cloud Migration Assistant and are running our automated tool in Confluence Cloud.
Our REST API calls to GET /rest/api/content/<page-id>, GET /rest/api/content/<page-d>/child/attachment and GET /download/attachments/<attachment> all work successfully. A call to PUT /rest/api/content/<page-id> however fails with a "HTTP/1.1 501 Not Implemented" response. The PUT call continues to fail even if run multiple times. The only way for the PUT call to succeed is to have a user manually view the Confluence Cloud page. Since users may have thousands of inserted macros on their Confluence Cloud instance this can be a major pain for them to have to manually visit every page before running our migration tool.
Why is the PUT operation failing with a "501 Not Implemented" until a user visits a page converted from Confluence Server to Confluence Cloud? Is there any workaround we can use to force whatever change happens when a user first visits the page and thus allow our PUT call to work?