슬랙 플랫폼 개요 — 슬랙 앱이란 무엇인가

슬랙 플랫폼 개요 — 슬랙 앱이란 무엇인가

슬랙을 메신저로만 쓰고 있다면, 사실 반쪽만 쓰고 있는 거예요. 슬랙 앱을 만들면 메시지·버튼·모달·앱 홈 같은 화면을 통해 우리 도구나 서비스가 슬랙 안에서 직접 동작할 수 있거든요. 이 문서는 공식 Slack API 문서의 시작점이라서, "슬랙 앱이 뭔지"부터 어떻게 만들어 가는지 큰 그림을 잡아주는 역할을 해요. 앱을 만들어 본 적이 없어도 이 페이지부터 천천히 따라가면 슬랙 플랫폼의 지형도가 그려져요.

출처: Slack 공식 문서 — Slack platform overview

슬랙 앱이란

슬랙 앱(Slack app)은 슬랙의 기능을 확장하는 도구 또는 통합이에요. 새 기능을 추가하고, 작업을 자동화하며, 외부 서비스와 연동하거나 사용자 경험을 개선하는 데 쓰이죠. 결국 사용자가 어떤 목적을 달성하도록 돕는 것이 앱의 존재 이유예요.

앱을 만드는 길은 크게 세 단계로 이어져요:

  1. 앱을 만든다 — CLI를 쓰거나 app settings 페이지에서 앱을 생성해요. 그리고 앱에 필요한 스코프(scope)를 정하고 그 대가로 토큰을 받아요.
  2. 앱의 로직을 짠다 — 어떤 API를 쓰고, 어떤 이벤트에 응답하며, 어떤 동작을 취할지 코드로 작성해요. Slack이 만든 오픈소스 프레임워크인 Bolt(JavaScript·Python·Java용)를 쓰면 토큰 로테이션이나 레이트 리밋 처리 같은 까다로운 부분이 대신 해결돼요.
  3. 이어서 만든 앱을 실제 워크스페이스에 설치해 동작을 확인하며 다듬어가요.

앱이 존재할 수 있는 곳 (Surfaces)

앱이 닿을 수 있는 공간을 서피스(Surface)라고 불러요. 서피스는 메시지, 모달(modal), 앱 홈(App Home), 캔버스(canvas)로 나뉘어요. 메시지·모달·캔버스는 모든 슬랙 앱에서 쓸 수 있고, 앱 홈은 Bolt 앱에서 사용할 수 있어요. 메시지 UI를 만들 때는 블록 킷(Block Kit)으로 보기 좋고 인터랙티브한 구성을 할 수 있죠.

앱 vs 워크플로우

코드를 다루고 싶지 않다면, 슬랙 클라이언트 안에서 동작하는 코드 없는 도구인 워크플로우 빌더(Workflow Builder)도 있어요. "앱은 코드로, 워크플로우는 화면 클릭으로"라는 느낌으로 구분하면 쉬워요.

그다음은

앱 개발의 시작점에서 다음으로 볼 것은 퀵스타트(Quickstart)예요. 첫 세 단계만 따라 해도 Web API 메서드를 호출할 수 있는 토큰을 얻게 되니, 테스트해 보고 싶다면 그쪽부터 확인해 봐요.

더 알아보기 (Learn more)