Tutorial · Scenario A

“매출 현황 보여줘”
한마디로 백엔드 API를 다루다

프론트엔드가 없는 백엔드 API도 wiiiv에게 문서만 주면 됩니다.
대화로 조회하고, 필터링하고, 차트로 변환하는 과정을 직접 따라해 보세요.

이런 상황, 겪어보셨나요?

회사에 백엔드 API는 있는데 관리 화면이 없습니다. 재고를 확인하려면 Postman을 열어서 토큰을 발급받고, 엔드포인트를 찾아서 호출하고, JSON 응답을 눈으로 읽어야 합니다. 보고서를 만들려면 여기서 다시 엑셀로 옮겨야 합니다.

wiiiv는 이 과정을 대화로 대체합니다. API 명세서를 지식에 등록하면, "재고 부족 상품 보여줘"라고 말하는 것만으로 wiiiv가 적절한 API를 호출하고, 결과를 정리해서 보여줍니다.

🙅
Postman 없이
URL, 헤더, 파라미터를 직접 조합할 필요 없습니다.
📊
JSON → 표/차트
API 응답을 사람이 읽을 수 있는 형태로 즉시 변환합니다.
🔗
여러 API 조합
한 번의 요청으로 여러 엔드포인트를 조합해서 답을 만듭니다.
🛡
인증 자동 처리
토큰 발급/갱신을 자동으로 처리합니다. 매번 로그인할 필요 없습니다.

준비: API 문서 등록

wiiiv가 API를 호출하려면, 먼저 어떤 엔드포인트가 있는지 알아야 합니다. API 명세서를 지식(Knowledge)에 등록하면 wiiiv가 자동으로 인식합니다.

API 문서는 어떻게 생겼나요?

이런 형식의 문서를 등록합니다. 회사의 Swagger/OpenAPI 문서를 텍스트로 변환해도 됩니다.

skymall-api-spec.md (일부)
# SkyMall API 명세서
Base URL: http://skymall.example.com:9090/api
## 핵심 API 빠른 참조
GET /api/products?page=0&size=20 — 전체 상품 목록
GET /api/products/low-stock?threshold=10 — 재고 부족
GET /api/products/best-sellers?size=5 — 베스트셀러
GET /api/categories — 카테고리 목록
GET /api/orders?size=100 — 주문 내역
POST /api/auth/login — 인증 토큰 발급
## 인증
JWT Bearer Token (Authorization: Bearer {accessToken})
POST /api/auth/login → { "username": "...", "password": "..." }
1
지식 페이지에서 API 문서 업로드
설정 > 지식 > 파일 업로드. .md, .txt, .pdf 모두 가능합니다. 문서에 HTTP 메소드(GET/POST/PUT/DELETE)가 3개 이상 있고 Base URL이 명시되어 있으면 wiiiv가 자동으로 API 문서로 인식합니다.
2
설정 > 연결 탭에서 자격증명 등록
API 문서가 인식되면 연결 탭에 카드가 자동 생성됩니다. 카드를 눌러 ID/Password를 등록하면 wiiiv가 자동으로 인증을 처리합니다.
3
대화에서 바로 사용
준비 끝! 이제 "skymall 상품 목록 보여줘"라고 말하면 wiiiv가 API를 호출합니다.
API 문서에 엔드포인트, 파라미터, 응답 형식이 상세할수록 wiiiv가 더 정확하게 호출합니다. 필드명 매핑 표가 있으면 데이터 조합 시 실수가 줄어듭니다.

대화로 API 호출하기

준비가 끝나면 대화창에서 바로 시작할 수 있습니다. API 호출 방법을 알 필요 없습니다. 궁금한 것을 물어보면 됩니다.

따라해 보세요
"재고 5개 이하 상품 목록을 공급사와 단가랑 같이 보여줘."
wiiiv
사용자 오후 02:15
재고 5개 이하 상품 목록을 공급사와 단가랑 같이 보여줘.
wiiiv
wiiiv 오후 02:15
SkyMall에서 재고 5개 이하인 상품 목록을 SkyStock 공급사 정보와 함께 조회했습니다.
📦 Low Stock Products (≤ 5)
7 rows · 4 cols
📋 CSV
Product Name Stock Supplier Unit Cost
Sony WH-1000XM50N/AN/A
Apple AirPods Pro 23N/AN/A
Canon EOS R502Global Fashion Co.8,000
DJI Mini 4 Pro1N/AN/A
iPad Pro 12.95N/AN/A
Patagonia Better Sweater0N/AN/A
Peloton Bike+3N/AN/A
⚙ Execution Summary — SkyMall GET /api/products/low-stock + SkyStock GET /api/suppliers matched

wiiiv는 SkyMall과 SkyStock 두 API를 자동으로 호출하고, 상품 ID를 기준으로 매칭한 뒤 하나의 표로 합쳐 보여줍니다. 후속 질문도 자연스럽게 이어갑니다:

이어서
"이 중에서 재고가 0인 상품만 따로 보여줘."
카테고리 조회
"skymall 카테고리 목록 좀 보여줘."
대화의 맥락이 유지됩니다. "이 중에서"라고 말하면 직전 결과를 기준으로 필터링합니다. 매번 처음부터 설명할 필요가 없습니다.

데이터를 차트로 변환하기

숫자 데이터는 "차트로 보여줘"라고 한마디만 덧붙이면 됩니다. wiiiv가 API를 호출하고, 결과를 집계한 뒤, 그래프로 그려서 이미지로 저장합니다.

따라해 보세요
"skymall에서 제일 많이 팔린 상품 5개를 막대그래프로 보여줘."
wiiiv
사용자 오후 02:18
skymall에서 제일 많이 팔린 상품 5개를 막대그래프로 보여줘.
wiiiv
wiiiv 오후 02:19
SkyMall 베스트셀러 API를 호출하여 판매량 상위 5개 상품을 막대그래프로 생성했습니다.
📊 SkyMall Best Sellers — Top 5
Canon EOS R50
156건
Samsung TV 65"
132건
Nike Air Max 90
108건
MacBook Pro 14"
87건
Dyson V15
64건
📎 skymall-bestsellers-top5.png (saved)
⚙ Execution Summary — GET /api/products/best-sellers?size=5 → python3 matplotlib chart

다른 형태의 시각화도 대화로 요청할 수 있습니다:

파이 차트
"카테고리별 매출 비중을 차트로 보여줄 수 있어?"
종합 보고
"카테고리별 상품 수, 매출, 재고 부족 상품 수로 표와 차트를 같이 만들어줘."

여러 턴의 분석 대화

실제 업무에서는 한 번에 끝나지 않습니다. "3월 매출이 얼마야?" → "그 중에 큰 건 보여줘" → "이걸 표로 정리해줘"처럼 대화를 이어가며 점점 깊이 파고들 수 있습니다.

wiiiv
사용자 오후 03:10
올해 3월 한 달 동안 주문이 몇 건이고 총 매출이 얼마야?
wiiiv
wiiiv 오후 03:11
3월 주문 데이터를 분석했습니다.

총 주문 건수: 47건
총 매출액: ₩18,450,000
사용자 오후 03:11
그 중에 주문 금액이 큰 거 위주로 보여줘. 상위 5건 정도.
wiiiv
wiiiv 오후 03:11
3월 고액 주문 상위 5건입니다.
💰 Top 5 Orders by Amount (March)
5 rows · 4 cols
📋 CSV
# Product Amount Date
1MacBook Pro 14"₩2,590,0003/12
2Canon EOS R50₩1,890,0003/05
3Samsung TV 65"₩1,650,0003/18
4Dyson V15 Complete₩1,290,0003/22
5LG 그램 17"₩1,190,0003/28
⚙ Execution Summary — GET /api/orders?size=1000 → python3 filter + sort by totalAmount

여러 시스템을 오가며 분석

API 문서를 여러 개 등록하면, 대화 하나에서 여러 시스템을 오가며 작업할 수 있습니다. 예를 들어 쇼핑몰(SkyMall)과 공급망(SkyStock) 두 시스템을 동시에 다루는 경우:

wiiiv
사용자 오후 04:30
skymall에서 재고가 5개 이하인 상품을 찾고, 그 상품의 공급사와 이행률을 skystock에서 확인해줘.
wiiiv
wiiiv 오후 04:31
SkyMall 재고 부족 상품을 SkyStock 공급사 성과와 매칭했습니다. 일부 상품은 SkyStock에 공급사 매핑이 없어 N/A로 표시됩니다.
🔗 Cross-System: Low Stock × Supplier Performance
5 rows · 5 cols
📋 CSV
Product Stock Supplier Fulfillment Lead Time
Canon EOS R502Canon Korea94%5일
DJI Mini 4 Pro1DJI Direct91%7일
Apple AirPods Pro 23N/A
Peloton Bike+3N/A
iPad Pro 12.95N/A
Canon Korea(94%)와 DJI Direct(91%)는 이행률이 높아 추가 발주 시 안정적입니다. AirPods Pro 2, Peloton Bike+, iPad Pro는 SkyStock에 공급사 매핑이 없으므로 수동 확인이 필요합니다.
⚙ Execution Summary — SkyMall /api/products/low-stock + SkyStock /api/suppliers + /api/supplier-performance → python3 join
wiiiv는 두 시스템의 상품 ID를 자동으로 매칭합니다. API 문서에 필드 간 관계가 기술되어 있으면 정확도가 더 높아집니다.

잘 쓰려면

📋
API 문서에 필드명 매핑을 넣으세요
같은 데이터가 API마다 다른 이름을 쓸 수 있습니다 (id vs productId, price vs totalAmount). 매핑 표를 넣으면 wiiiv가 데이터를 정확하게 조합합니다.
"빠른 참조" 섹션을 만드세요
자주 쓰는 API를 문서 상단에 표로 정리해두면, wiiiv가 적절한 엔드포인트를 더 빠르게 찾습니다.
주의사항도 문서에 적으세요
"판매량 조회에 /orders를 직접 집계하면 부정확하다" 같은 주의사항을 적어두면 wiiiv가 잘못된 방법을 피합니다.
🔄
API가 변경되면 문서를 갱신하세요
엔드포인트가 바뀌거나 필드가 추가되면 지식 문서를 업데이트하세요. wiiiv는 항상 최신 문서를 기준으로 동작합니다.
wiiiv는 API를 실제로 호출합니다. 테스트 환경이 아닌 운영 환경의 API를 연결할 때는 읽기 전용(GET)만 허용하는 계정을 사용하는 것을 권장합니다. 지식에 등록하는 백엔드 API 문서도 안전한 API부터 점차적으로 확대해서 사용하시기 바랍니다.

더 해볼 수 있는 것

기본 조회와 차트 변환에 익숙해졌다면, 이런 것도 시도해 보세요:

📈
기간 비교 분석
"3월과 4월 매출을 비교해줘" — 기간별 데이터를 자동 비교합니다.
📊
정기 보고서
워크플로우로 등록하면 매일 아침 자동으로 재고/매출 보고를 받을 수 있습니다.
🔍
이상 탐지
"평소보다 주문이 급증한 상품 있어?" — 패턴 분석도 가능합니다.
📝
데이터 기반 문서
"이 분석 결과를 팀 공유용 보고서로 정리해줘" — 문서 생성까지 연결됩니다.
비록 wiiiv의 DACSHazardGuard가 파괴적인 동작을 사전에 방지하기 위해 최선을 다하지만, 100%를 보장하지는 않습니다. wiiiv는 백엔드 API를 실제로 호출합니다. 데이터를 변경하는 API(POST/PUT/DELETE)를 실행하기 전 대단히 주의를 기울이시고 반드시 직접 확인 후 실행하십시오.