API란 무엇인가 — 비개발자를 위한 쉬운 설명
API는 프로그램끼리 데이터를 주고받는 약속이다. 식당 비유부터 REST API, JSON, 인증까지 비개발자도 이해할 수 있게 정리했다.

API(Application Programming Interface)는 프로그램끼리 데이터를 주고받는 약속된 방식이다.
식당 비유로 이해하는 API
식당에 갔다고 생각해 보자. 손님(앱)이 주방(서버)에 직접 들어가서 요리하지 않는다. 메뉴판을 보고 웨이터에게 주문한다. 웨이터가 주문을 주방에 전달하고, 완성된 요리를 가져온다.
API는 이 웨이터 역할이다. 정해진 메뉴(요청 형식)대로 주문하면, 원하는 결과(응답)를 돌려준다. 주방이 어떻게 돌아가는지는 몰라도 된다.
비개발자가 API를 알아야 하는 이유

API는 더 이상 개발자만의 용어가 아니다. 마케터가 Google Analytics 데이터를 자동으로 가져오고, 기획자가 Slack과 Notion을 연결하고, 디자이너가 Figma 플러그인을 쓸 때 — 배후에서 API가 작동한다.
자동화 도구 이해: Zapier, Make 같은 노코드 도구는 API를 시각적으로 연결하는 도구다
외주 커뮤니케이션: 개발팀에 "이 API 연동해 주세요"라고 요청할 때 맥락을 파악할 수 있다
서비스 평가: SaaS를 비교할 때 "API 제공 여부"가 확장성의 핵심 기준이 된다
API 핵심 개념
요청(Request)과 응답(Response)
API는 항상 "요청"과 "응답" 한 쌍으로 동작한다. 클라이언트(앱, 브라우저)가 요청을 보내면 서버가 응답을 돌려준다.
요청: "서울 날씨 알려줘"
응답: {"온도": "12도", "상태": "맑음"}엔드포인트(Endpoint)
엔드포인트는 API에 접근하는 주소다. 웹사이트 URL과 비슷하게 생겼다.
https://api.weather.com/v1/current?city=seoul이 주소에 요청을 보내면 서울 날씨 데이터가 돌아온다. 각 기능마다 다른 엔드포인트가 있다.
HTTP 메서드
요청에는 "무엇을 할지" 알려주는 메서드가 붙는다.
메서드 | 의미 | 식당 비유 |
|---|---|---|
GET | 데이터 조회 | 메뉴판 보기 |
POST | 새 데이터 생성 | 주문 넣기 |
PUT | 데이터 수정 | 주문 변경 |
DELETE | 데이터 삭제 | 주문 취소 |
REST API
가장 널리 쓰이는 API 설계 방식이다. URL로 자원(데이터)을 표현하고, HTTP 메서드로 행동을 정한다. 대부분의 웹 서비스가 REST API를 제공한다.
GET /users/123 → 123번 사용자 정보 조회
POST /users → 새 사용자 생성
PUT /users/123 → 123번 사용자 정보 수정
DELETE /users/123 → 123번 사용자 삭제JSON — API의 공용어
API가 데이터를 주고받을 때 가장 많이 쓰는 형식이 JSON이다. 사람이 읽을 수 있으면서도 프로그램이 처리하기 쉽다.
{
"name": "홍길동",
"email": "hong@example.com",
"age": 30
}API 키와 인증
공개 API라도 아무나 무제한 사용하게 두지 않는다. API 키는 일종의 신분증이다. 가입 후 발급받은 키를 요청에 포함해야 서버가 응답한다. 사용량 추적과 남용 방지를 위한 장치다.
관련 용어
용어 | 설명 |
|---|---|
SDK | API를 편하게 쓸 수 있도록 묶어놓은 도구 모음 |
Webhook | 이벤트 발생 시 서버가 먼저 알려주는 역방향 API |
GraphQL | REST의 대안. 필요한 데이터만 골라서 요청 가능 |
Rate Limit | 일정 시간 내 요청 횟수 제한 (예: 분당 100회) |
엔드포인트 | API 기능에 접근하는 URL 주소 |
실제로 API가 쓰이는 곳
카카오 로그인: 앱에서 "카카오로 로그인" 버튼을 누르면, 앱이 카카오 API를 호출해 사용자 인증을 처리한다
네이버 지도 삽입: 웹사이트에 네이버 지도를 넣을 때, 네이버 Maps API를 호출해 지도 데이터를 받아온다
배달 앱 결제: 배달의민족에서 결제할 때, PG사(결제 대행) API를 통해 카드 승인을 처리한다
날씨 앱: 기상청 API에서 실시간 날씨 데이터를 받아와 화면에 표시한다
Slack 알림: GitHub에서 코드가 업데이트되면 Slack API로 알림 메시지를 보낸다
자주 묻는 질문
- API를 사용하려면 코딩을 할 줄 알아야 하나요?
- 꼭 그렇지는 않습니다. Postman 같은 도구로 코딩 없이 API를 테스트할 수 있고, Zapier 같은 노코드 도구로 API를 연결할 수도 있습니다.
- 무료 API와 유료 API의 차이는 뭔가요?
- 무료 API는 사용량 제한이 있거나 기능이 제한됩니다. 유료 API는 더 많은 요청, 더 빠른 응답, 기술 지원을 제공합니다.
- REST API와 GraphQL의 차이가 뭔가요?
- REST API는 서버가 정해둔 형식대로 데이터를 돌려주고, GraphQL은 클라이언트가 필요한 데이터만 골라서 요청할 수 있습니다.