브롤스타즈 API 전적 사이트 : 토큰 키 발급 및 클럽 플레이어 정보 불러오기

브롤스타즈 API 전적 사이트 : 토큰 키 발급 및 클럽 플레이어 정보 불러오기

목차

토큰 키 발급

브롤스타즈 API 페이지에 회원 가입하고 로그인하여, 오른쪽 상단에 My Account 버튼을 클릭하고 Create New Key 버튼을 클릭해 새로운 토큰 키 발급 과정을 진행할 수 있다.

키 이름과 설명을 작성한 다음 작업할 IP 주소를 넣어 Create Key버튼을 누르면 토큰 키가 발급 완료된다.

새로 생긴 토큰 키를 클릭하면 토큰 값을 확인할 수 있다. 해당 토큰 값을 이용해 데이터를 불러올 수 있다.

API로 클럽 내 플레이어 정보 불러오기

Club API 문서 확인

Documentation 메뉴로 이동하면 API 목록을 확인할 수 있다. API 목록의 대분류는 23년 7월 1일 기준으로 사진과 같이 있으며, 클럽 플레이어에 대한 정보를 불러올 것이기 때문에 clubs 목록을 펼친다.

/clubs/{clubTag}/members를 통해 클럽 내 멤버 정보를 불러올 수 있다.
Parameters에 있는 clubTag클럽 태그를 입력해 실행(Execute) 버튼을 누르면 요청 URL응답 결과를 확인할 수 있다.
요청 URL의 #태그의 경우 %23태그로 변환되며, 성공적으로 불러오면 사진과 같이 json 배열을 확인할 수 있다.

Club Members json 배열 요소

  • tag : 플레이어 태그
  • name : 플레이어 닉네임
  • nameColor : 플레이어 닉네임 색상
  • role : 플레이어 클럽 역할(member, senior, vicePresident, president)
  • trophies : 현재 트로피 개수
  • icon : 플레이어 프로필 아이콘

Club Members 태그 목록 배열 코드

node,js에서 클럽 멤버 태그 목록으로 이루어진 배열을 아래와 같이 불러올 수 있다.

await fetch(`https://api.brawlstars.com/v1/clubs/%23태그/members`, {
    method: "GET",
    headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer ' + 토큰 값
    }
}).then(async res => {
    const members = await res.json(); // json으로 불러오기
    return members.items.map(club => club.tag); // map 함수로 플레이어 태그만 배열로 불러오기
});


클럽 멤버들의 플레이어 태그를 위 사진과 같이 불러온 모습이다.

Player API 문서 확인

/players/{playerTag}를 통해 플레이어 정보를 불러올 수 있으며, 플레이어 태그를 입력하면 요청 URL응답 결과를 확인할 수 있다.

Player json 요소

지금도 사용되는 플레이어 json 요소들을 정리해보았다.

  • tag : 플레이어 태그
  • name : 플레이어 닉네임
  • nameColor : 플레이어 닉네임 색상
  • icon : 플레이어 프로필 아이콘
  • trophies : 현재 트로피 개수
  • highestTrophies : 현재 트로피 개수
  • isQualifiedFromChampionshipChallenge : 챔피언십 챌린지 완료 여부
  • 3vs3Victories : 3vs3 모드 승리 횟수
  • soloVictories : 솔로 모드 승리 횟수
  • duoVictories : 듀오 모드 승리 횟수
  • club : 플레이어 클럽 정보(태그, 클럽 이름)
  • brawlers : 소유 브롤러 정보(브롤러 ID, 브롤러 이름, 파워 레벨, 랭크, 현재 트로피/최대 트로피 개수, 소유한 기어/스타 파워/가젯)

Player 정보 코드

위에서 불러온 Club Members 태그 목록 배열을 이용해 반복문으로 플레이어 정보를 불러왔다.

// members : 클럽 멤버 태그 목록으로 이루어진 배열
for (const member of members) {
    ...
        const responseMember = await fetch(`https://api.brawlstars.com/v1/players/${member.replace("#", "%23")}`, {
            method: "GET",
            headers: {
                'Content-Type': 'application/json',
                'Authorization': 'Bearer ' + 토큰 값
            }
    }).then(res => res.json());
        ... 
        // responseMember에서 위에서 정리한 json 요소들로 접근이 가능하다.
        // ex ) const tag = responseMember.tag;
}

다음에 다룰 내용

다음 글은 플레이어의 최근 전투 기록을 불러오는 것과 최근 전투 기록을 통해 추가적인 플레이어 정보를 불러오는 과정에 대해 정리해보려 한다.

이 글이 도움이 되었나요?

신고하기
0분 전
작성된 댓글이 없습니다. 첫 댓글을 달아보세요!
    댓글을 작성하려면 로그인이 필요합니다.