2026년 6월 15일 월요일

[웹개발 기초] API가 뭔가요? — 초보자도 이해되게, 진짜 쉽게 정리해봤습니다

안녕하세요!

오늘은 개발 공부를 시작하면 정말 빠르게 마주치는 단어, API에 대해 정리해보려고 합니다.

솔직히 저도 처음에 "API, API" 하길래 대충 알아듣는 척했어요. 근데 막상 뭔가 만들려고 하면 API 연결해야 하는 순간이 오고, 그때 모르면 진짜 막막해지더라고요.

이 글에서는 어려운 말 없이, 일상 비유 중심으로 API가 뭔지 한 번에 잡아드릴게요.



1. API가 뭔지, 진짜 쉽게 설명하면

APIApplication Programming Interface의 약자입니다. 이름만 보면 완전 거창한데, 핵심만 뽑으면 딱 이겁니다.

"서로 다른 프로그램이 대화할 수 있게 해주는 창구"

비유를 하나 들어볼게요.

식당에 가면 주방에 직접 들어가서 "저 오늘 파스타 먹을게요" 하고 만들 수 없잖아요. 대신 직원한테 주문을 하고, 직원이 주방에 전달하고, 완성된 음식을 받아오는 구조잖아요.

여기서:

  • 손님 = 내 앱(클라이언트)
  • 주방 = 서버 또는 다른 서비스
  • 직원 = API
  • 메뉴판 = API 문서 (어떻게 주문하면 되는지 정리해둔 것)

API는 딱 이 역할이에요. 내 앱이 다른 서비스한테 "이 데이터 줘" 또는 "이 기능 실행해줘" 하고 요청할 때, 그 중간에서 통로 역할을 하는 게 API입니다.



2. 실생활에서 API가 쓰이는 곳 — 사실 엄청 많아요

API가 낯설게 느껴지는 이유는 눈에 안 보여서예요. 근데 찾아보면 우리가 매일 쓰는 것들이 전부 API로 연결되어 있어요.

날씨 앱 폰에 있는 날씨 앱이 어떻게 실시간 날씨를 보여줄까요? 앱 자체가 기상 데이터를 수집하는 게 아니에요. 기상청 또는 기상 데이터 서비스의 API에 "서울 오늘 날씨 줘" 하고 요청해서 받아오는 거예요.

카카오/구글 로그인 "카카오로 로그인" 버튼 클릭하면 어떻게 내 카카오 계정으로 다른 앱에 로그인이 될까요? 그 앱이 카카오 API를 통해 "이 유저 카카오 계정 맞아요?" 하고 확인 요청을 보내는 구조입니다.

지도 서비스 앱 안에 지도가 뜨는 경우, 그 앱이 지도를 직접 만든 게 아니에요. 카카오맵, 구글맵 API를 가져다가 쓰는 거예요.

결제 기능 쇼핑몰에서 카드 결제할 때 PG사(결제 대행사) API를 연동해서 처리해요. 결제 시스템을 앱마다 직접 만들면 엄청난 작업인데, API 하나 연결하면 끝이에요.

바이브코딩으로 뭔가 만들 때 AI가 "API 연결해드릴까요?" 하는 순간, 이제 "아, 다른 서비스랑 연결 뚫는 거구나" 하고 바로 이해될 거예요.



3. API 요청, 어떻게 생겼냐면

API를 실제로 사용할 때 어떤 구조로 동작하는지 흐름을 한번 따라가 볼게요.

날씨 정보를 가져오는 상황을 예로 들면:

내 앱 → "서울 날씨 알려줘" → 날씨 API 서버
날씨 API 서버 → "서울 오늘 맑음, 28도" → 내 앱
내 앱 → 화면에 날씨 표시

이때 요청을 보내는 방식을 HTTP 메서드라고 하는데, 자주 쓰는 것만 보면:

메서드 하는 일 예시
GET 데이터 가져오기   날씨 정보, 게시물 목록 조회
POST 데이터 보내기 로그인, 글 작성, 주문
PUT / PATCH 데이터 수정 프로필 정보 변경
DELETE 데이터 삭제 계정 탈퇴, 글 삭제

바이브코딩 하다 보면 AI가 만들어준 코드 안에 GET, POST 같은 단어들이 보일 거예요. 이제 보이면 "아, 여기서 서버한테 뭔가 주고받는 거구나" 하고 바로 읽힙니다.



4. API 응답은 어떻게 생겼나요? — JSON 알면 다 읽혀요

API를 통해 데이터를 받으면 이런 형태로 옵니다:

{
  "city": "서울",
  "temperature": 28,
  "status": "맑음",
  "humidity": 60
}

이게 바로 JSON(JavaScript Object Notation) 이에요. 중괄호 안에 키:값 쌍으로 구성되어 있고, 사람도 읽기 쉽고 컴퓨터도 처리하기 쉬워서 API 통신에서 사실상 표준처럼 쓰입니다.

"city가 서울이고, 온도는 28도고, 날씨 상태는 맑음이에요" 이걸 그냥 문장으로 쓰는 게 아니라 저렇게 구조화해서 전달하는 거예요.

내 앱은 이 JSON을 받아서 화면에 "서울 / 28°C / 맑음" 이렇게 표시하는 거고요.



5. API Key가 뭔지도 알아두자

API를 쓰다 보면 꼭 나오는 게 API Key입니다.

API Key는 쉽게 말해 입장권 같은 거예요.

아무나 API를 무제한으로 쓰면 서버가 터지잖아요. 그래서 "우리 서비스 API 쓰고 싶으면 회원가입하고 키 발급받아서 요청할 때 같이 보내세요" 하는 방식이에요.

네이버 지도 API, 카카오 API, OpenAI API 같은 것들 전부 마찬가지예요. 가입 → 키 발급 → 요청마다 키 포함 → 서버가 "이 사람 등록된 사용자구나" 하고 처리해주는 구조.

그리고 이 API Key는 절대 공개된 곳에 올리면 안 돼요. 깃허브에 코드 올릴 때 Key가 그대로 노출되면 다른 사람이 내 명의로 API를 마구 쓸 수 있거든요. .env 파일에 따로 빼서 관리하는 게 기본이에요. (.env 파일 관리는 [이전 글 - 웹·앱 개발 용어 정리]에서 다뤘으니 참고하세요!)



6. REST API vs 그 외 — 이름이 여러 개인 이유

API 공부하다 보면 REST API, GraphQL, WebSocket 같은 용어들도 나와요. 

이건 "API를 어떤 방식으로 설계하느냐"에 따른 종류 차이예요.

지금 당장 전부 알 필요는 없는데, 가장 많이 쓰이는 REST API만 짚고 넘어갈게요.

REST API URL 주소 기반으로 요청을 구분하는 방식입니다.

GET  /api/posts        → 게시물 목록 가져오기
GET  /api/posts/1      → 1번 게시물 가져오기
POST /api/posts        → 새 게시물 작성
DELETE /api/posts/1    → 1번 게시물 삭제

"이 주소로 GET 보내면 이 데이터 줄게요, POST 보내면 저장해줄게요" 이런 규칙을 정해둔 게 REST API예요.

현재 대부분의 서비스 API가 이 방식이라서, REST API가 뭔지만 알면 API 연동 작업을 이해하는 데 크게 문제없어요.



7. 바이브코딩할 때 API 어떻게 활용하냐면

AI랑 같이 앱 만들 때 API를 활용하는 경우를 몇 가지 정리해볼게요.

외부 API 연동 날씨, 지도, 번역, 환율 같은 기능은 직접 만드는 게 아니라 이미 만들어진 외부 API를 연결하는 게 훨씬 빠르고 정확해요. AI한테 "OpenWeatherMap API 연결해서 날씨 보여주는 화면 만들어줘" 하면 뚝딱 만들어줍니다.

내 서버 API 만들기 내가 만드는 앱의 데이터를 주고받으려면 백엔드 서버에 API를 직접 만들어야 해요. AI한테 "FastAPI로 게시물 CRUD API 만들어줘" 하면 엔드포인트 전체를 만들어주거든요. 그 결과물을 이해하는 데 오늘 내용이 직접적으로 도움이 됩니다.

AI API 연동 ChatGPT, Claude 같은 AI 기능을 내 앱에 넣고 싶을 때도 API를 씁니다. OpenAI API, Anthropic API를 연결하면 내 앱 안에서 AI 대화 기능을 구현할 수 있어요.


[웹개발 기초] API가 뭔가요?
[웹개발 기초] API가 뭔가요?


API, 이제 겁내지 않아도 됩니다

처음엔 "API"라는 단어 자체가 무겁게 느껴질 수 있어요.

근데 결국 API는 "다른 서비스랑 대화하는 창구" 일 뿐이에요. 식당에서 직원한테 주문하는 것처럼, 정해진 방식으로 요청하면 정해진 형태로 응답이 오는 구조예요.

오늘 정리한 것만 기억해도 충분합니다:

  • API = 프로그램 간 대화 창구
  • 요청(Request)과 응답(Response)으로 동작
  • HTTP 메서드(GET/POST 등)로 요청 종류를 구분
  • JSON 형태로 데이터를 주고받음
  • API Key = 입장권, 절대 공개하면 안 됨
  • REST API = 가장 많이 쓰이는 API 설계 방식


열공하세요! 🙌


댓글 없음:

댓글 쓰기

[웹개발 기초] API가 뭔가요? — 초보자도 이해되게, 진짜 쉽게 정리해봤습니다

안녕하세요! 오늘은 개발 공부를 시작하면 정말 빠르게 마주치는 단어, API 에 대해 정리해보려고 합니다. 솔직히 저도 처음에 "API, API" 하길래 대충 알아듣는 척했어요. 근데 막상 뭔가 만들려고 하면 API 연결해야 하는 순...