# Getting Bot User ID

**URL:** <https://discuss.dev.twitch.com/t/getting-bot-user-id/64363>\
**Category:** API\
**Created:** [October 10, 2025, 7:50pm UTC](https://discuss.dev.twitch.com/t/getting-bot-user-id/64363 "2025-10-10T19:50:26Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Forbidden\_Soul](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/forbidden_soul/32/31108_2.png) [@Forbidden\_Soul](https://discuss.dev.twitch.com/u/Forbidden_Soul)\
**Post date:** [October 10, 2025, 7:50pm UTC](https://discuss.dev.twitch.com/t/getting-bot-user-id/64363/1 "2025-10-10T19:50:26Z")

</div>

Hello there,

The App I’m currently working on needs to send messages as a bot. I have gotten a User Access Token and cand send messages directly as that user no problem.

The issue I have is sometimes I want to send the message as a bot and not that user. I am not sure how to get the ID of my App, if you even can, to use as the user\_id in my HttpRequest.

The user\_id for the User Account I obtain using the User Access Token and call the Get Users endpoint without issue. If I call the same endpoint using my App Access Token token is says I must supply the login or id as a query parameter.

In another post I found I am told:

> And if you make a request to the Get Users endpoint [https://dev.twitch.tv/docs/api/reference#get-users](https://dev.twitch.tv/docs/api/reference#get-users) using your bots name as the `login` param you will get a result back containing your bots user ID.

I tried to use my Apps Name as the login parameter, but my response was and empty array.

Elsewhere I read that you need to create a new Twitch account to specifically use as a bot, but that doesn’t seem right to me.

I am under the impression that your app itself can act as a bot user just so long as the proper scope is provided (which it is).

How do I figure out what the App / Bot user\_id is so I can send messages as a bot?

Thanks for any help you can provide.

---

<div class="post-metadata">

**Author:** ![BarryCarlyon](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/barrycarlyon/32/253_2.png) [@BarryCarlyon](https://discuss.dev.twitch.com/u/BarryCarlyon)\
**Post date:** [October 10, 2025, 8:10pm UTC](https://discuss.dev.twitch.com/t/getting-bot-user-id/64363/2 "2025-10-10T20:10:37Z")

</div>

> [@Forbidden\_Soul](#):
>
> I am not sure how to get the ID of my App

An App doesn’t have an ID.

(also The owner of the App is irrelevant)

> [@Forbidden\_Soul](#):
>
> The issue I have is sometimes I want to send the message as a bot and not that user

Then auth the bot account to your ClientID

Then use the user access token for the bot.

Or use App Access token (after authing relevant parties)

> [@Forbidden\_Soul](#):
>
> If I call the same endpoint using my App Access Token token is says I must supply the login or id as a query parameter.

Becuase App Access tokens don’t have a userID. (or attachable scopes)

> [@Forbidden\_Soul](#):
>
> Elsewhere I read that you need to create a new Twitch account to specifically use as a bot, but that doesn’t seem right to me.

No that is correct. You need to register the bot account just like another other user.

> [@Forbidden\_Soul](#):
>
> bot user just so long as the proper scope is provided (which it is).

Only if you have authed the bot user to your ClientID

> [@Forbidden\_Soul](#):
>
> How do I figure out what the App / Bot user\_id is so I can send messages as a bot?

So for example:

I own my ClientID:

I have authed the streamer `cohhcarnage` (26610234) to my ClientID with channel:bot scopes

I have authed the user `cohhilitionbot` (45522171) to my ClientID with user:bot (and other scopes for send/recieve chat)

Then I use those two userID’s with my app acess token (which has no scopes) to send chat messages.

> [@Forbidden\_Soul](#):
>
> Elsewhere I read that you need to create a new Twitch account to specifically use as a bot, but that doesn’t seem right to me.

All bots on Twitch are created Twitch accounts.

Twitch is _not_ like Discord where a Discord ClientID can have a bot acount generated/attahed to it.

---

<div class="post-metadata">

**Author:** ![Forbidden\_Soul](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/forbidden_soul/32/31108_2.png) [@Forbidden\_Soul](https://discuss.dev.twitch.com/u/Forbidden_Soul)\
**Post date:** [October 10, 2025, 8:27pm UTC](https://discuss.dev.twitch.com/t/getting-bot-user-id/64363/3 "2025-10-10T20:27:23Z")

</div>

Alright thanks so much, this helped me out a lot.

I was expecting it to be more like Discord like you said.

I guess my best option is to simply send the messages as the user, I don’t want people to have to authorize two separate accounts.

Appreciate the quick response

---

<div class="post-metadata">

**Author:** ![BarryCarlyon](https://d3ovvz0v2ajtpu.cloudfront.net/user_avatar/discuss.dev.twitch.com/barrycarlyon/32/253_2.png) [@BarryCarlyon](https://discuss.dev.twitch.com/u/BarryCarlyon)\
**Post date:** [October 10, 2025, 10:21pm UTC](https://discuss.dev.twitch.com/t/getting-bot-user-id/64363/4 "2025-10-10T22:21:26Z")

</div>

> [@Forbidden\_Soul](#):
>
> I guess my best option is to simply send the messages as the user, I don’t want people to have to authorize two separate accounts.

That is what I do (two accounts) and I feel that is what broadcasters expect.

Or to use your bot account instead. So you auth your bot account to your clientID.

---

<div class="post-metadata">

**Author:** ![system](https://d2opxh93rbxzdn.cloudfront.net/original/2X/0/05909729875cce3b53e59d5561c4d23bb14948fc.png) [@system](https://discuss.dev.twitch.com/u/system)\
**Post date:** [November 9, 2025, 10:21pm UTC](https://discuss.dev.twitch.com/t/getting-bot-user-id/64363/5 "2025-11-09T22:21:29Z")

</div>

Closed on November 9, 2025, 10:21pm UTC

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
