유튜브 교육자료2026-06-24

[비개발자 사고법 07강] API는 '식당 알바생(점원)'입니다 — 버튼이 작동 안 하는 진짜 이유·REST 5가지·상태 코드 한 방 정리

회원가입·결제 버튼을 만들었는데, 눌러도 아무 반응이 없습니다 — 화면은 멀쩡한데 왜?

화면도 예쁘게 만들었고, 버튼도 멀쩡히 달려 있습니다. 그런데 저장·전송·결제 버튼을 눌러도 아무 일도 안 일어나요. "AI한테 시켜서 만들었는데 왜 안 되지?" — 사실 명령을 잘못 내린 게 아닙니다. 화면(손님)에서 보낸 주문을 주방(백엔드)까지 전달해 줄 '알바생'이 제 일을 못 했거나 엉뚱한 곳으로 갔기 때문이에요. 화면과 주방 사이를 오가며 주문을 전달하고 결과를 가져다주는 그 알바생(점원)이 바로 API입니다. 코딩 한 줄 몰라도, API를 '식당 알바생' 하나로 끝까지 잡아 봅니다. 이걸 알면 "안 돼요 고쳐줘" 대신, 어디서 막혔는지 콕 집어 시킬 수 있게 됩니다.

▶ 먼저 영상을 보고 오시면 아래 글이 복습이자 심화가 됩니다.

왜 비개발자가 'API'까지 알아야 할까

"버튼이 작동을 안 해요. 그냥 AI한테 고쳐 달라고 하면 되지 않나요?" 물론 그래도 됩니다. 그런데 그냥 "안 되는데요, 고쳐주세요"라고만 하면, AI도 어디가 문제인지 몰라 엉뚱한 곳을 고치다 끝까지 안 고쳐지는 경우가 생겨요. 비개발자가 코딩을 가장 많이 포기하는 지점이 바로 여기입니다.

그런데 API라는 개념 하나만 잡고 있으면 질문이 완전히 달라집니다. "버튼을 눌렀을 때 알바생(API)이 주문을 실제로 받아서 주방으로 보냈는지 확인해줘", "어느 주문대(주소)로 갔고, 빈손으로(에러로) 돌아왔는지 알려줘"처럼 콕 집어 시킬 수 있죠. 김지백 강사에 따르면, 요즘처럼 코드를 직접 안 짜고 AI에게 시켜 만드는 바이브 코딩 시대엔 이게 특히 큰 무기가 됩니다. 게다가 AI 에이전트가 스스로 도구를 쓰는 것도 사실은 이 API(알바생)를 부르는 것이라, API를 알면 AI에게 일을 제대로 시키는 무기가 하나 더 생깁니다.

오늘 목표는 API를 '직접 만드는 것'이 아닙니다. AI가 "API 요청이 안 갔네요", "엔드포인트가 틀렸어요", "401 에러예요"라고 할 때 알아듣고, 어디를 고치라고 콕 집어 되받아치는 것 — 그거면 충분합니다. 그래서 어려운 코드 대신 식당 알바생 이야기로 풀어 봅니다.

🧑‍🍳 API = 화면과 주방 사이를 오가는 '알바생(점원)'

지난 시간에 우리는 손님이 보는 홀(프론트엔드)과 안 보이는 주방(백엔드)을 만났습니다. 그런데 손님이 주방에 직접 들어가서 "이거 해주세요" 할 수 있나요? 아니죠. 그 사이를 알바생(점원)이 오갑니다. 손님이 "비빔밥 하나요!" 하면 알바생이 그 주문을 받아 주방에 전달하고, 완성된 음식을 다시 손님에게 가져다줍니다.

화면(손님)과 주방(백엔드) 사이를 오가며 주문을 전달하고 결과를 가져다주는 중개자, 그게 바로 API입니다. 화면은 주방(데이터·서버)에 직접 손댈 수 없어요. 반드시 이 알바생(API)을 통해서만 "이거 가져와", "이거 저장해"를 주고받습니다. 그래서 버튼이 안 될 때 우리는 "알바생(API)에게 주문이 제대로 전달됐나? 주방 어디로 갔나? 빈손으로 왔나?"를 따져볼 수 있는 거죠.

식당웹 / 앱
손님 · 주문하는 홀사용자 · 화면(프론트엔드)
알바생(점원) — 주문을 들고 오가는 사람API (요청·응답을 전달하는 중개자)
주방백엔드(서버)
냉장고·창고데이터베이스(DB) — 다음 편
핵심은 "중개자"입니다. API는 화면이 주방에 직접 못 가는 대신, 주문을 받아 주방에 넣고 결과를 가져다주는 알바생이에요. 이 한 가지 그림 — 'API = 화면과 주방 사이를 오가는 알바생' — 만 잡고 가셔도 오늘 절반은 성공입니다.

📋 메뉴판 = 알바생에게 시킬 수 있는 '주문 목록'(엔드포인트)

알바생한테 아무거나 막 시킨다고 다 될까요? 아니죠. 메뉴판에 적힌 것만 주문할 수 있습니다. 이렇게 알바생(API)에게 시킬 수 있는 일 하나하나를 어려운 말로 엔드포인트(endpoint)라고 부릅니다. 쉽게 말해 '주문이 가야 할 정확한 주문대(주소)'예요. 메뉴판은 그 주문대들의 목록이고요.

비빔밥을 시키면 알바생이 주문서를 들고 한식 코너로 가야 합니다. 일식 코너로 가면? 당연히 "그런 거 없는데요" 하고 에러가 나죠. 웹도 똑같습니다. 회원가입 버튼을 눌렀으면 회원가입 주문대(/signup)로, 상품을 보려면 상품 주문대(/products)로 알바생이 가야 합니다. 회원가입을 눌렀는데 엉뚱하게 결제 주문대로 가면 화면엔 아무것도 안 나오고 에러만 떠요. 그래서 "이 버튼은 알바생이 어느 주문대로 가야 하지?"를 생각하는 습관이 중요합니다.

내가 하려는 일알바생이 가야 할 주문대(엔드포인트) 예시
상품 목록 보기/products
회원 가입하기/signup
주문 넣기/orders
비개발자도 이렇게 써먹습니다. "회원가입이 안 돼요"라고만 하지 말고, "회원가입 버튼이 회원가입 엔드포인트(/signup)로 제대로 요청을 보내는지 확인해줘"라고 하면 AI가 훨씬 정확하게 짚습니다. 알바생이 엉뚱한 주문대로만 가도 멀쩡한 버튼이 먹통이 되거든요.

🍜 REST API 5가지 동사 — 알바생에게 시키는 '행동'

알바생에게 주문할 땐 "무엇을(주문대)"뿐 아니라 "어떻게 할지(동사)"도 함께 말합니다. 이 "주소 + 동사"로 깔끔하게 주문하는 표준 방식이 바로 REST(레스트)예요. 동사는 더 있지만, 영상에서 강사가 강조한 대표 5가지만 알면 바이브 코딩할 때 훨씬 디테일하게 시킬 수 있습니다.

REST 동사알바생에게 시키는 말하는 일 (웹/앱)
GET (겟)"메뉴판/주문 내역 좀 가져다줘"가져오기 · 조회 (상품 목록·상세 페이지 불러오기)
POST (포스트)"이거 새로 주문 넣어줘"새로 등록 (주문 넣기·회원가입·새 글 올리기)
PUT (풋)"주문 통째로 돈가스로 바꿔줘"전체 수정 (내용을 통째로 다시 채워 넣기)
PATCH (패치)"낙지볶음 하나만 바꿔줘"일부만 수정 (이름·전화번호 중 하나만 고치기)
DELETE (델리트)"그 주문 취소해줘"삭제 · 취소 (글 삭제·주문 취소)

예를 들어 글을 삭제하는 버튼이 안 먹힐 때를 보죠. 그냥 "이 글 좀 지워줘"라고 하면 AI가 화면에서만 슬쩍 가리고 끝낼 수도 있어요. 그런데 "삭제 버튼을 누르면 DELETE API가 제대로 작동하게 해줘"라고 하면, 알바생이 진짜로 주방에 "취소요"를 전달해 데이터가 지워지게 정확히 작업해 줍니다. 등록인데 GET으로 돼 있으면 "등록이니 POST로 바꿔줘"라고 짚어 줄 수도 있고요.

5개만 외우세요 — 겟·포스트·풋·패치·델리트. 가져오면 GET, 새로 만들면 POST, 통째로 고치면 PUT, 일부만 고치면 PATCH, 지우면 DELETE. 이 동사만 콕 집어 말해도 "그냥 알아서 해줘"와는 결과의 정밀도가 완전히 달라집니다.

✉️ 알바생이 든 주문서 — 주문 내용(Body)과 신분 확인(Header)

알바생이 주방에 들고 가는 주문서에는 "돈가스 1개, 비빔냉면 2개"처럼 실제 주문이 적혀 있죠. API 요청의 주문서도 두 칸으로 나뉩니다. 하나는 실제 주문 내용, 다른 하나는 신분·권한 확인이에요.

바디(Body)는 실제 주문 내용입니다. "비빔밥 한 그릇" 같은 알맹이가 여기 들어가요. 보통 JSON(제이슨)이라는 형식으로 담기는데, 비개발자는 몰라도 됩니다. AI가 알아서 잘 짜 주거든요. "아, 진짜 주문 내용이 담기는 칸이구나" 정도만 아시면 돼요.

헤더(Header)는 주문 내용이 아니라 신분·권한을 확인하는 칸입니다. 알바생이 "멤버십 카드 있으세요? 쿠폰 있으세요?"라고 묻는 것처럼, 로그인은 했는지, 권한이 있는지, API 키는 가졌는지를 확인하죠. 그래서 바디(주문 내용)가 완벽해도 헤더가 틀리면 인증이 안 되거나 권한이 없어 알바생이 주문을 거절당합니다.

한 줄 정리 — Body = '무엇을 주문했나', Header = '주문할 자격이 있나'. 로그인을 해야만 되는 기능이 자꾸 막힌다면, 주문 내용(Body)이 아니라 신분·권한(Header) 문제일 수 있습니다. AI에게 "헤더에 인증 정보가 제대로 들어가는지 확인해줘"라고 짚어 줄 수 있어요.

🚦 알바생이 가져오는 답 — 상태 코드(200·401·403·404·500)

주문을 넣으면 알바생이 결과를 가져다주죠. API도 일을 처리한 뒤 "몇 번으로 처리됐어요" 하고 숫자로 답합니다. 이게 상태 코드(Status Code)예요. 영상에서 강사가 말합니다 — 개발자들은 문제가 생기면 제일 먼저 이 상태 코드부터 본다고요. 다 외울 필요 없고, 대표 다섯 개만 알면 됩니다.

상태 코드알바생의 말
200성공 — 잘 처리됨"주문 정상 접수, 곧 나옵니다"
401미인증 — 로그인/인증이 빠짐"회원 카드부터 보여 주세요"
403권한 없음 — 자격이 안 됨"여긴 손님이 들어올 수 없어요"
404주문대(엔드포인트)가 잘못됨"메뉴판에 없는 메뉴인데요?"
500주방(서버) 사고"주방에서 요리하다 사고가 났어요"
숫자가 안 외워져도 괜찮습니다. 무슨 뜻인지 몰라도, F12 화면에 빨간 에러 코드가 떴으면 그대로 복사해서 AI에게 "여기서 이 에러가 났는데 원인 분석해서 작동되게 해줘"라고 붙여넣으면 됩니다. 200이면 "주방은 정상", 400번대면 "내 주문에 문제", 500이면 "주방(서버) 문제" — 이 감만 잡아도 충분합니다.

🌮 옆 가게 심부름 — 외부 API와 'API 키' (보안 주의!)

손님이 갑자기 타코를 찾는데, 우리 가게엔 한식·중식·일식·양식밖에 없습니다. 그러자 센스 있는 알바생이 길 건너 타코집에서 사다 주겠다고 하죠. 이게 바로 외부 API(오픈 API)를 가져다 쓰는 것입니다. 내 서비스엔 없는 기능을, 알바생이 남이 잘 차려 둔 가게에 주문해서 받아 오는 거예요. 날씨·지도·결제·번역·ChatGPT 같은 게 전부 이렇게 동작합니다. 내가 직접 날씨를 측정할 필요 없이, 기상청·통계청이 열어 둔 가게에 알바생을 보내 주문만 하면 결과가 오죠.

그런데 옆 가게가 그냥 줄까요? 타코집 직원이 물어봅니다. "본인이 그 가게 직원인 거 증명할 키 있어요?" 이게 바로 API 키입니다. 외부 서비스를 쓰려면 알바생이 "나 이거 쓸 자격 있어요"라는 사용 권한 키(신분증)를 보여줘야 해요. 키가 없으면 401, 권한이 부족하면 403 에러가 납니다.

⚠️ API 키는 절대 공개하면 안 됩니다. 타코 값은 내 돈(내 카드)으로 나갑니다. API 키가 남에게 새어 나가면 내 통장에서 돈이 빠져나가요. 그래서 GitHub에 코드를 올릴 때 키를 그대로 노출하면 큰일 납니다. AI에게 반드시 "API 키가 노출되지 않게 환경 변수나 서버에 안전하게 처리해줘"라고 시키세요. 이 한마디가 사고를 막습니다.

한눈에 보는 API 7단어 정리

용어식당 비유하는 일
API화면과 주방 사이를 오가는 알바생요청을 주방에 전달하고 결과를 가져다주는 중개자
엔드포인트 (Endpoint)메뉴판의 메뉴 한 줄 (주문대)주문이 가야 할 정확한 주소 (/products·/signup)
REST 5동사알바생에게 시키는 행동GET 조회 · POST 등록 · PUT 전체수정 · PATCH 일부수정 · DELETE 삭제
바디 (Body)주문서의 실제 주문 내용"비빔밥 한 그릇" 같은 데이터 (보통 JSON)
헤더 (Header)멤버십 카드·신분 확인로그인·권한·API 키 등 자격 확인
상태 코드알바생이 가져오는 답200 성공 · 401 미인증 · 403 권한없음 · 404 주소오류 · 500 서버사고
외부 API · API 키옆 가게 심부름 · 직원 신분증남의 서비스 가져다 쓰기 / 사용 권한 (유출 금지!)

사장님처럼 AI에게 시키는 법 — 증상으로 원인 콕 집기

이제 진짜 써먹을 차례입니다. API 단어를 알면, 버튼이 안 될 때 "어디가 문제인지" AI에게 콕 집어 말할 수 있어요. 그냥 "안 돼요"가 아니라, 증상으로 원인을 짚는 거죠.

이런 증상이 보이면…이렇게 콕 집어 시키세요
버튼을 눌러도 아무 일도 안 일어난다"버튼을 눌렀을 때 API 요청이 실제로 발생하는지 F12 네트워크로 확인해줘"
삭제 버튼이 안 먹힌다"삭제 버튼을 누르면 DELETE API가 제대로 작동하게 해줘"
등록인데 자꾸 조회만 된다"요청 메소드가 GET인데 등록이니 POST로 바꿔줘"
로그인해야 되는 기능이 401·403으로 막힌다"헤더의 인증 정보(로그인·API 키)가 제대로 들어가는지 확인해줘"
F12에 빨간 에러 코드가 떴다그 코드를 그대로 복사해 "이 에러 원인 분석해서 작동되게 해줘"
❌ "회원가입 버튼이 안 돼요. 고쳐줘" (어디가 문제인지 AI도 모름)
✅ "회원가입 버튼을 누르면 /signup 엔드포인트로 POST 요청이 가야 하는데, F12 네트워크에서 요청이 실제로 가는지·상태 코드가 몇인지 확인하고 고쳐줘."
똑같은 AI를 쓰는데, 결과를 통제하는 사람과 끌려다니는 사람의 차이가 이 한 문장에서 갈립니다.
📝 5분 체크포인트

오늘 핵심 3가지를 점검합니다. 답을 고르고 [정답 확인]을 누르면 즉시 채점됩니다.

Q1. API를 가장 정확히 설명한 것은?

정답: B — API는 화면이 주방에 직접 못 가는 대신, 주문을 받아 주방에 전달하고 결과를 가져다주는 '알바생(중개자)'입니다. 메뉴판(A)은 그 알바생에게 시킬 수 있는 주문 목록(엔드포인트)일 뿐이에요.

Q2. 게시글을 삭제하는 버튼이 안 먹힙니다. AI에게 어떤 REST 동사가 제대로 작동하게 해달라고 콕 집어야 할까요?

정답: C — 삭제는 DELETE입니다. "삭제 버튼이 DELETE API로 제대로 작동하게 해줘"라고 콕 집으면, 화면만 슬쩍 가리는 게 아니라 알바생이 주방에 '취소'를 전달해 진짜로 데이터가 지워지게 작업해 줍니다.

Q3. 외부 서비스(날씨·지도 등)를 가져다 쓸 때 알바생이 보여줘야 하는 '사용 권한 키(신분증)'이며, 유출되면 내 돈이 빠져나갈 수 있어 절대 공개하면 안 되는 것은?

정답: D — API 키입니다. 외부 API를 쓰려면 자격을 증명하는 키가 필요하고, 새어 나가면 내 카드로 비용이 빠져나갑니다. 꼭 환경 변수·서버에 숨겨 두라고 AI에게 시키세요.

🎯 API 개념 이해 점수

해당되는 항목을 모두 클릭해 체크하세요. 마지막에 [내 점수 보기]를 누르면 등급이 나옵니다.

  • API를 '화면과 주방 사이를 오가는 알바생(중개자)'으로 설명할 수 있다
  • 화면은 주방(데이터)에 직접 못 가고 API를 통해서만 주고받는다는 걸 안다
  • 엔드포인트가 '주문이 가야 할 정확한 주소(메뉴 한 줄)'임을 안다
  • REST 5가지 동사(GET·POST·PUT·PATCH·DELETE)를 식당 비유로 구분할 수 있다
  • 삭제가 안 될 때 'DELETE API'처럼 동사를 콕 집어 지시할 수 있다
  • 바디(주문 내용)와 헤더(신분·권한 확인)의 차이를 안다
  • 상태 코드 200·401·404·500이 각각 무슨 신호인지 감이 온다
  • 외부 API와 'API 키'(유출 금지·환경변수 보관) 개념을 이해했다
오늘 단 하나만 기억하세요 — "API는 화면과 주방 사이를 오가며 주문을 전달하고 결과를 가져다주는 '알바생(점원)'이다."
알바생(중개자) = API · 시킬 수 있는 주문 목록 = 엔드포인트(메뉴 한 줄) · 시키는 행동 = REST 5동사(겟·포스트·풋·패치·델리트) · 주문 내용 = Body · 신분·권한 = Header · 알바생이 가져오는 답 = 상태 코드. 이 그림 한 장이면, 버튼이 안 될 때 "안 돼요 고쳐줘" 대신 어디서 막혔는지 콕 집어 AI에게 시킬 수 있습니다.
📩 이 시리즈를 놓치지 마세요
「비개발자 사고법」 식당 세계관 시리즈는 한 편이라도 놓치면 비유가 끊깁니다. 유튜브 채널 구독으로 새 영상을 가장 먼저 받아보시고, AI아카데미 자료실에서 다른 무료 자료도 함께 보세요.
🚀 한 걸음 더 — 실무에 진짜로 써먹고 싶다면
혼자 막힐 때 옆에서 잡아주는 사람이 있으면 속도가 다릅니다. 온라인 강의로 체계적으로 익히거나, 1:1 컨설팅·강의 문의로 우리 회사·내 업무에 맞춘 적용을 받아보세요. 외부강사 김지백이 직접 안내합니다.
다음 편 예고 — 알바생(API)이 주방에 전달한 주문과 회원 정보는 다 어디에 쌓일까요? 08강은 '모든 걸 차곡차곡 쌓아 두는 창고', 바로 데이터베이스(DB)는 냉장고다 편입니다. 화면에선 "저장됐다"고 떴는데 새로고침하면 사라지는 진짜 이유 — 다음 시간에 짬뽕집 냉장고로 끝장냅니다. 구독·알림을 켜두면 새 글과 영상을 가장 먼저 받아보실 수 있습니다.
#비개발자 사고법#API#REST API#엔드포인트#상태 코드#API 키#프론트엔드#백엔드#F12 개발자도구#바이브 코딩#AI 코딩

자주 묻는 질문

Q. 코드를 직접 안 짜는 비개발자도 API를 알아야 하나요?
직접 코드를 짜기 위해서가 아니라 'AI에게 제대로 시키기 위해서'입니다. 버튼이 안 될 때 그냥 '안 돼요 고쳐줘'라고 하면 AI도 엉뚱한 곳을 고치다 끝까지 안 고쳐질 수 있습니다. API를 알면 '버튼을 누르면 알바생(API)이 요청을 실제로 받아 주방에 보냈는지, 어느 주소로 갔는지, 무슨 에러가 떴는지 확인해줘'처럼 콕 집어 시킬 수 있어요. AI 에이전트가 도구를 쓰는 것도 결국 API를 부르는 것이라, 바이브 코딩 시대에 더 큰 무기가 됩니다.
Q. API가 정확히 뭔가요?
화면(손님)과 주방(백엔드) 사이를 오가며 주문을 전달하고 결과를 가져다주는 '알바생(점원)'입니다. 화면은 주방(데이터·서버)에 직접 손댈 수 없고, 반드시 이 알바생(API)을 통해서만 '이거 가져와·이거 저장해'를 주고받습니다. 그래서 버튼이 안 될 때 '알바생에게 주문이 제대로 전달됐는지, 어디로 갔는지'를 따져볼 수 있습니다.
Q. REST API의 GET·POST·PUT·PATCH·DELETE는 각각 뭔가요?
알바생에게 시키는 5가지 동사입니다. GET은 가져오기·조회(메뉴판/목록 가져다줘), POST는 새로 등록(새 주문 넣어줘·회원가입), PUT은 전체 수정(주문을 통째로 다시 바꿔줘), PATCH는 일부만 수정(낙지볶음 하나만 바꿔줘), DELETE는 삭제·취소(그 주문 취소해줘)입니다. 이 5개만 알아도 '삭제 버튼이 DELETE API로 작동하게 해줘'처럼 디테일하게 시킬 수 있습니다.
Q. 엔드포인트(메뉴판)는 API와 어떻게 다른가요?
API가 '알바생'이라면, 엔드포인트는 그 알바생에게 시킬 수 있는 '주문 하나하나(메뉴 한 줄)'이고, 메뉴판은 그 주문 목록입니다. 회원가입은 /signup, 상품 보기는 /products처럼 주문이 가야 할 정확한 주소예요. 알바생이 엉뚱한 주문대로 가면(예: 회원가입 눌렀는데 결제대로) 화면엔 아무것도 안 나오고 에러(404)가 납니다.
Q. 상태 코드 401·403·404·500은 무슨 뜻인가요?
알바생이 주방에 다녀와 가져오는 결과 신호입니다. 200은 성공, 401은 미인증(로그인·인증이 빠짐 — 회원 카드 없음), 403은 권한 없음(자격 안 됨), 404는 주문대(엔드포인트)가 잘못됨(메뉴판에 없는 메뉴), 500은 주방(서버)에서 처리하다 난 사고입니다. 숫자를 못 외워도, 빨간 에러 코드를 그대로 복사해 AI에게 붙여넣으면 원인을 분석해 줍니다.
Q. API 키는 왜 공개하면 안 되나요?
외부 서비스(날씨·지도·결제·ChatGPT 등)를 가져다 쓸 때 알바생이 '나는 쓸 자격이 있다'를 증명하는 사용 권한 키(신분증)가 API 키입니다. 그 사용료는 내 카드로 빠져나가기 때문에, 키가 남에게 새어 나가면 내 통장에서 돈이 나갈 수 있습니다. 그래서 GitHub 등에 코드를 올릴 때 키를 노출하면 안 되고, AI에게 'API 키가 노출되지 않게 환경 변수나 서버에 안전하게 처리해줘'라고 반드시 시켜야 합니다.
AI DIAGNOSIS · 3분
이 글, 읽기만 하고 끝내긴 아깝죠
3분 진단으로 내 AI 활용 점수와, 오늘부터 30일 액션 플랜을 받아보세요.
무료 진단 시작
NEWSLETTER · 무료

주간 AI 실무 레터

이 글이 도움이 됐다면, 매주 현장에서 검증한 AI 활용법·새 자료를 이메일로 받아보세요. 광고 없이, 바로 쓰는 것만.

어떤 목적으로 오셨나요? (선택)
이 주제로 강의 문의

우리 조직에 맞는 AI 교육을
설계해드립니다.

위 자료의 내용을 기반으로 맞춤형 강의 커리큘럼을 구성해드립니다. 기업·공공기관·임원 대상 프로그램 모두 가능합니다.

강의 소개 보기강의 문의하기

조회수·다운로드 카운트 등 인터랙티브 기능은 자료실 인터랙티브 페이지에서 이용하실 수 있습니다.