# I need the most basic help

**URL:** <https://discuss.dev.twitch.com/t/i-need-the-most-basic-help/18044>\
**Category:** API\
**Created:** [October 4, 2018, 3:23am UTC](https://discuss.dev.twitch.com/t/i-need-the-most-basic-help/18044 "2018-10-04T03:23:27Z")\
**Posts on this page:** 1\
**Showing post:** 3

<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 4, 2018, 9:04am UTC](https://discuss.dev.twitch.com/t/i-need-the-most-basic-help/18044/3 "2018-10-04T09:04:49Z")

</div>

> [@masterjx9](#):
>
> I need a link that will point me to the very beginning of understanding for Twitch development and API. I mean the very beginning. I tried learning this for weeks now and I have not gotten anywhere.

> **[Home](https://dev.twitch.tv/)**
>
> Live Streaming, Meet Developers.

or

> **[Twitch API](https://dev.twitch.tv/docs/api/)**
>
> Twitch API

> [@masterjx9](#):
>
> I tried installing the development kit and it say, It can’t find the path the open SSL so it closes when I run the configure.cmd.

Thats rig is for Extension development, not for jumping in to the API.

> [@masterjx9](#):
>
> Why can’t you just give me the Redirect URL?

Both Discord and Twitch oAuth require YOU to give Discord/Twitch the redirectURL you want to use for token exchange.

See `Registration`:

> **[Authentication](https://dev.twitch.tv/docs/authentication/#registration)**
>
> Authentication

Discord gives you a token to use for your Bot to login, thats if you are making a bot, and set your client to be/have a bot

If you want to make a bot then we can discuss that further or check the docs:

> **[Chat & Chatbots](https://dev.twitch.tv/docs/irc/)**
>
> Twitch Chat & Chatbots

TMI is essentially IRCv3 compatible IRC over Websockets (or the IRC port), so if you have a working IRC parser/library, again, in your language of choice (any will do it just needs a IRC or a Websockets module) you can do it in Brainfuck if you really want.

> [@masterjx9](#):
>
> I can’t understand ANYTHING about the Oath for Twitch.

oAuth is easy, on $service make a client (for Twitch this is [Twitch Developers](https://dev.twitch.tv/dashboard)), tell the client what your redirectURI is.

Plumb the loginRedirectURL (place you redirect a user to), tokenExchangeURL (the place you post a returned code to, to get a token), from the docs into your oAuth client/code and away you go…

Documentation for oAuth is here

> **[Authentication](https://dev.twitch.tv/docs/authentication/#getting-tokens)**
>
> Authentication

It’s the same as everywhere else that implements oAuth, and you need three bits of information, two URL’s and what scopes exist…

For “standard” oAuth aka “OAuth Authorization Code Flow”

- send user to $service aka loginRedirectURL `https://id.twitch.tv/oauth2/authorize`
- user accepts (or rejects) app connection
- user is sent to your redirectURI with a code `https://<your registered redirect URI>/?code=<authorization code>`
- you exchange the code for a token, aka tokenExchangeURL `https://id.twitch.tv/oauth2/token`

> [@masterjx9](#):
>
> At this point, I have no clue what else to do. I need something basic, very very very very basic that can should be the very basics of twitch API. I need the know the language, I need an example code that is fully written and I want the language its written in.

> [@masterjx9](#):
>
> I can’t understand what language Twitch API needs to be written in.

The TwitchAPI is _just_ an HTTP based get/post API. (Ignoring chat as thats websockets and arguable “not” API). It speaks JSON, so you just need a JSON parser, which is included in most languages these days, and/or writing your own (de)serializer is childs play in your language of choice.

For example, you can use a command line curl client:

> **[Twitch API](https://dev.twitch.tv/docs/api/#step-2-sample-code)**
>
> Twitch API

> This gets information about the most active streams for game ID 33214.

```auto
curl -H 'Client-ID: p0gch4mp101fy451do9uod1s1x9i4a' \
-X GET 'https://api.twitch.tv/helix/streams?game_id=33214'

```

You can use whatever language you want as long as it can make a cURL/web request. Language is completely irrelevant.

Since you cited Discord I can link two a couple of libraries that are nodeJS based that can help, but then it’s just a “dumb” cURL client wrapped in a helper function. Personally I don’t bother, I generally just write out the cURL requests and use nodeJS request module to make them.

> [@masterjx9](#):
>
> Any links to the most basic tutorial will be greatly appreciated. Please assume I have no code experience.

What are you trying to do, you’ve touched on about three or four wildly different things in your post.

---

_[View the full topic](https://discuss.dev.twitch.com/t/i-need-the-most-basic-help/18044)._
