I've tried just about everything. But I'm unable to log into the confluence server via the rest api with my credentials. I'm using a user name:api token and encoded it to base 64 per the instructions you see here:
but i keep getting error 401
Basic Authentication Failure - Reason : com.atlassian.crowd.exception.FailedAuthenticationException: com.atlassian.crowd.exception.InvalidAuthenticationException: Invalid credentials</p><p>Description The request has not been applied because it lacks valid authentication credentials for the target resource.</p><hr class="line" /><h3>Apache Tomcat/7.0.91</h3></body></html>
What's worse is that when I go to the token management page the token says "never accessed".
I know atlassian can find my account (because if I put a typo in my email address i get an error saying the account couldn't be found). My base url is https://<domain>.atlassian.net/wiki where <domain> is the name of my company.
I'm simply trying to execute https://<domain>.atlassian.net/wiki/rest/api/content. When I manually log in and type in https://<domain>.atlassian.net/wiki/rest/api/content I successfully get the Json string i'm expecting.
Oh and I'm using the cloud version.
Have you tried to do the same thing via Postman (online or via app)? This isolates whether the problem is with your code or the authentication process, so can be useful.
Another option is to show more of your code here, because I've often seen people using the incorrect settings or missing a setting.
Care to explain how this affected you. I am having the same issue, but I don't have any base64 encoding/decoding issue. I have the exact problem you have though, if I change the e-mail it recognizes that the account doesn't exist. If I run with my credentials that I can log into the website with, it just flat out 401s me. I run the API url in the web-browser when logged in and I get a nice API response.
In Postman I am running as an example a GET-call against <site>.atlassian.net/wiki/rest/api/content/
I have Type: Basic Auth, and create an Authorization header with my correct username and password. I leave the Body empty for the GET-request (I say this, because I actually want to POST and create a page, but easier to solve this issue with less complex variables).
Anyone know anything how to fix this or where the problem could be?
It's what Warren said I believe, since this was almost a year ago, I don't really recall the exact details. But the error I was experiencing was trying to use Basic Authentication and using a password, you have to use/produce an API token instead. Sorry for not being clear before, but the "other page" I speak of just repeated what Warren said to me in his reply, that I can't use a password and have to use an API token. I believe it's because they changed how their system worked or something like it.
Just an FYI, tokens only work with Confluence cloud. If you are having issues with the REST api, make sure your username:password is encoded correctly. Also, if your company uses MITM inspection for packets and uses its own certs, this can mess with postman calls giving a 500 error. Use the curl method to make sure that it works and reset your failed logins frequently if you keep messing up in admin. There are lots of limitations to on-prem/server/datacenter instances of confluence, such as not being able to use the templates endpoint, but there are workarounds.
- Create your own custom emoji 🔥 - "Shake for Feedback" on mobile 📱 - An endless supply of GIFs via GIPHY 🤩 Is there anything quite as nice as a pleasant surprise? Comment below with what...
Connect with like-minded Atlassian users at free events near you!Find an event
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no Community Events near you at the moment.Host an event
You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events