기존글이 복잡하다는 의견이 있는거 같아서 부차적인거 다 빼고 제일 자주 사용되는 Get Users API 사용법까지 최대한 간단히 설명함


==================================================


1. 트위치 콘솔 응용 프로그램 등록 (https://dev.twitch.tv/console) → 클라이언트 아이디 & 클라이언트 시크릿


트위치 개발자 콘솔 (https://dev.twitch.tv/console) 에서 "내 응용 프로그램 등록" 버튼 클릭



- 이름 : (아무거나)

- OAuth 리디렉션 URL : http://localhost/

- 범주 : Others


필요하면 나중에 수정 가능하니 일단 적고 넘어가면 됨

그럼 클라이언트 ID 와 클라이언트 시크릿이 나오는데 해당 값을 저장 (메모)


==================================================


2. 토큰 발급 (https://id.twitch.tv/oauth2/token + 클라이언트 아이디 + 클라이언트 시크릿)  → 토큰


import requests
response = requests.post("https://id.twitch.tv/oauth2/token",{"client_id":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","client_secret":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","grant_type":"client_credentials"})
print(response.json())


- client_id : 1번에서 발급한 클라이언트 아이디

- client_secret : 1번에서 발급한 클라이언트 시크릿


정상적으로 입력했다면 {"access_token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","expires_in":xxxxxxx,"token_type":"bearer"} 처럼 출력될텐데 해당 토큰값을 저장 (메모)


==================================================


3. API 요청 (https://api.twitch.tv/helix/~~~ + 클라이언트 아이디 + 토큰) -> API 응답


import requests
response = requests.get("https://api.twitch.tv/helix/users",{"login":"xxxxx"},headers = {"Client-Id":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx""Authorization" : "Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"})
print(response.json())


- login : 조회할 유저의 아이디

- Client-Id : 1번에서 발급한 클라이언트 아이디

- Authorization : 2번에서 발급한 토큰


정상적으로 입력했다면 {'data': [{'id': 'xxxxx', 'login': 'xxxxx', 'display_name': 'xxxxx', 'type': '', 'broadcaster_type': '', 'description': 'xxxxx', 'profile_image_url': 'https://static-cdn.jtvnw.net/jtv_user_pictures/xxxxxxxxxx.png', 'offline_image_url': '', 'view_count': 0, 'created_at': 'xxxxx'}]} 과 같은 출력이 나올거임


==================================================


* 레퍼런스 페이지 : https://dev.twitch.tv/docs/api/reference/


다른 API 를 사용하고싶거나 API에 들어가는 파라미터값을 알고싶다면 해당 페이지 참고

해당 방식으로는 Requires an app access token 과 같이 적힌 API 만 사용 가능


==================================================


* user access token 이 필요한 API 는?


user access token 은 주로 계정의 권한 (scope) 이 필요한 경우임 (user access token 이 필요없는 경우 넘겨도 됨)



트게더, 트윕, 투네 같은거 처음 로그인할때 권한 요청하는 페이지가 뜨는데 이게 user_token 을 발급받는 방식임

user token 은 계정의 권한이 필요하기에 트위치에 로그인된 브라우저에서 권한 요청페이지가 뜨는거임

해당 토큰 발급 방법은 https://dev.twitch.tv/docs/authentication/ 를 참고하면 됨