슬랙 플랫폼 개요 — 슬랙 앱이란 무엇인가
슬랙 플랫폼 개요 — 슬랙 앱이란 무엇인가
슬랙을 메신저로만 쓰고 있다면, 사실 반쪽만 쓰고 있는 거예요. 슬랙 앱을 만들면 메시지·버튼·모달·앱 홈 같은 화면을 통해 우리 도구나 서비스가 슬랙 안에서 직접 동작할 수 있거든요. 이 문서는 공식 Slack API 문서의 시작점이라서, "슬랙 앱이 뭔지"부터 어떻게 만들어 가는지 큰 그림을 잡아주는 역할을 해요. 앱을 만들어 본 적이 없어도 이 페이지부터 천천히 따라가면 슬랙 플랫폼의 지형도가 그려져요.
슬랙 앱이란
슬랙 앱(Slack app)은 슬랙의 기능을 확장하는 도구 또는 통합이에요. 새 기능을 추가하고, 작업을 자동화하며, 외부 서비스와 연동하거나 사용자 경험을 개선하는 데 쓰이죠. 결국 사용자가 어떤 목적을 달성하도록 돕는 것이 앱의 존재 이유예요.
앱을 만드는 길은 크게 세 단계로 이어져요:
- 앱을 만든다 — CLI를 쓰거나 app settings 페이지에서 앱을 생성해요. 그리고 앱에 필요한 스코프(scope)를 정하고 그 대가로 토큰을 받아요.
- 앱의 로직을 짠다 — 어떤 API를 쓰고, 어떤 이벤트에 응답하며, 어떤 동작을 취할지 코드로 작성해요. Slack이 만든 오픈소스 프레임워크인 Bolt(JavaScript·Python·Java용)를 쓰면 토큰 로테이션이나 레이트 리밋 처리 같은 까다로운 부분이 대신 해결돼요.
- 이어서 만든 앱을 실제 워크스페이스에 설치해 동작을 확인하며 다듬어가요.
앱이 존재할 수 있는 곳 (Surfaces)
앱이 닿을 수 있는 공간을 서피스(Surface)라고 불러요. 서피스는 메시지, 모달(modal), 앱 홈(App Home), 캔버스(canvas)로 나뉘어요. 메시지·모달·캔버스는 모든 슬랙 앱에서 쓸 수 있고, 앱 홈은 Bolt 앱에서 사용할 수 있어요. 메시지 UI를 만들 때는 블록 킷(Block Kit)으로 보기 좋고 인터랙티브한 구성을 할 수 있죠.
앱 vs 워크플로우
코드를 다루고 싶지 않다면, 슬랙 클라이언트 안에서 동작하는 코드 없는 도구인 워크플로우 빌더(Workflow Builder)도 있어요. "앱은 코드로, 워크플로우는 화면 클릭으로"라는 느낌으로 구분하면 쉬워요.
그다음은
앱 개발의 시작점에서 다음으로 볼 것은 퀵스타트(Quickstart)예요. 첫 세 단계만 따라 해도 Web API 메서드를 호출할 수 있는 토큰을 얻게 되니, 테스트해 보고 싶다면 그쪽부터 확인해 봐요.