피드로 돌아가기
How to Add Token Swaps to a Discord Bot
Dev.toDev.to
Backend

Discord 봇에 swapapi.dev를 연동해 토큰 스왑 실행 데이터를 100줄 미만의 TypeScript 코드로 구현하는 방법

How to Add Token Swaps to a Discord Bot

Moon Soon2026년 3월 30일11beginner

Context

기존 암호화폐 Discord 봇은 가격 정보 제공만 가능하고 실제 거래 실행 기능이 없다. Discord 플랫폼은 월간 2억 명 이상의 활성 사용자를 보유하며 4B 이상의 봇 명령어를 월간 처리한다.

Technical Solution

  • discord.js v14 Client를 초기화해 GatewayIntentBits.Guilds 인텐트로 Guild 인터랙션 처리
  • SlashCommandBuilder로 /swap 명령어 정의하고 tokenIn, tokenOut, amount, chain 파라미터 설정
  • swapapi.dev API 단일 GET 요청으로 46개 EVM 체인 대상 DEX 라우팅 및 실행 가능 트랜잭션 calldata 반환
  • 토큰 심볼을 컨트랙트 주소로 매핑하는 lookup 객체 생성 (Ethereum, Arbitrum, Base 등)
  • fetch API로 https://api.swapapi.dev/v1/swap/{chainId} 엔드포인트 호출해 to, data, value 포함 트랜잭션 객체 수신

Impact

API 응답 시간 1~5초, 분당 IP당 30회 요청 제한, 전체 코드 100줄 미만으로 15분 내 Discord 서버에 스왑 명령어 구현 가능

Key Takeaway

swapapi.dev는 별도 SDK나 API 키 없이 단일 REST 호출로 DEX 집합 라우팅과 온체인 실행 데이터를 모두 반환하므로 봇 복잡도를 최소화한다


Node.js 18+ 및 discord.js v14 환경에서 swapapi.dev API를 REST fetch로 호출 시 별도 SDK 없이 Discord 슬래시 명령어 기반 토큰 스왑 견적 및 실행 데이터 조회 기능 구현 가능

원문 읽기