K
Kord2mo ago
marian

Use access token from oauth

Does kord support using an access token gained from the oauth flow instead of a bot token? I want to fetch the user from which I received an access token but I'm getting the following error
Jul 12 22:20:40 java[2272185]: dev.kord.rest.request.KtorRequestException: REST request returned an error: 401 401: Unauthorized null
Jul 12 22:20:40 java[2272185]: at dev.kord.rest.request.KtorRequestHandler.handle(KtorRequestHandler.kt:60)
Jul 12 22:20:40 java[2272185]: at dev.kord.rest.request.KtorRequestHandler$handle$1.invokeSuspend(KtorRequestHandler.kt)
Jul 12 22:20:40 java[2272185]: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
Jul 12 22:20:40 java[2272185]: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
Jul 12 22:20:40 java[2272185]: at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:998)
Jul 12 22:20:40 java[2272185]: at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
Jul 12 22:20:40 java[2272185]: at java.base/java.lang.Thread.run(Thread.java:1583)
Jul 12 22:20:40 java[2272185]: dev.kord.rest.request.KtorRequestException: REST request returned an error: 401 401: Unauthorized null
Jul 12 22:20:40 java[2272185]: at dev.kord.rest.request.KtorRequestHandler.handle(KtorRequestHandler.kt:60)
Jul 12 22:20:40 java[2272185]: at dev.kord.rest.request.KtorRequestHandler$handle$1.invokeSuspend(KtorRequestHandler.kt)
Jul 12 22:20:40 java[2272185]: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
Jul 12 22:20:40 java[2272185]: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
Jul 12 22:20:40 java[2272185]: at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:998)
Jul 12 22:20:40 java[2272185]: at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
Jul 12 22:20:40 java[2272185]: at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
Jul 12 22:20:40 java[2272185]: at java.base/java.lang.Thread.run(Thread.java:1583)
with the following code
val discordRestClient = RestClient(accessToken.accessToken)
val discordSelfUser = discordRestClient.user.getCurrentUser()
val discordRestClient = RestClient(accessToken.accessToken)
val discordSelfUser = discordRestClient.user.getCurrentUser()
Solution:
it's a different type of authorization token, so the header would need to be modified
Jump to solution
4 Replies
gdude
gdude2mo ago
Kord's a bot library, so while I'm not 10000% sure, I doubt it would
Solution
gdude
gdude2mo ago
it's a different type of authorization token, so the header would need to be modified
gdude
gdude2mo ago
and yeah those tokens don't really have anything to do with the bot API
marian
marianOP2mo ago
yeah true though the selfuser route is the same was worth a try ill just quickly write this myself, thank you

Did you find this page helpful?