Hello, I am trying to update a template via the REST-API using Postman.
I am using basic auth and GET requests work fine.
Any Idea what could be going wrong?
Hello, I am trying to update a template via the REST-API using Postman.
I am using basic auth and GET requests work fine.
Any Idea what could be going wrong?
Hello @MichaelIlewicz
What is the value of the {{baseUrl}} variable?
Are your PUT requests working with all the other update type endpoints?
baseUrl is mydomain.atlassian.net/wiki/rest
I tried the update space endpoint, which returns OK but the value doesn’t change (I tried to change the descriptionof a space)
That complete URL of https://{yourdomain}.atlassian.net/wiki/rest/api/template is a valid endpoint path and the body of the request looks correct, so you have some other problem somewhere else in your request.
Perhaps a bad header definition? Perhaps a misconfiguration of the Basic auth structure. Sorry, but they are too many possibilities for me to randomly guess what it might be. I can only say that all the v1 API Content Template management endpoints work just fine for me (and probably everyone else) using either Basic Auth or OAuth.
I suggest you do some classic, step-by-step experiments to isolate the fault
If in doubt, rebuild your Postman requests or re-import the Postman Collection from the REST API documentation. Trying using cURL as an alternative tool to test the requests.
Be systematic.
The status code is quite specific: 405 Method Not Allowed. What troubles me is the URL pattern doesn’t look right for a PUT. For example, if you want to update a space the docs show PUT /wiki/rest/api/space/{spaceKey}. The resource’s identification is typically part of the path for a PUT.
I’m guessing the OpenAPI spec might be wrong. Can you try PUT /wiki/rest/api/template/{templateId}? If that works, let us know and I’ll get a bug filed.
Howdy @ibuchanan
I can advise that the PUT request path that @MichaelIlewicz is using for updating a Content Template is correct. Yes, I know it’s very strange that the endpoint requires that templateId is not declared as a URL parameter but is declared in the request body, but that is what works:
If I attempt to use PUT /wiki/rest/api/template/{templateId}, as you would assume, then it fails with a 405 Method Not Allowed error.
Check the Update Content Template documentation.
Apparently, postman automatically redirects 3XX calls without maintaining the type, changing it to a GET in the process. After disabling automatic redirects, the original PUT request returns 301 permantently moved. The solution was, to specify https:// before mydomain ![]()