🔌 API란 무엇인가요?
API는 Application Programming Interface의 줄임말로, 소프트웨어 간 기능을 공유하고 데이터를 주고받을 수 있게 해주는 **‘통신 규칙’**입니다.
쉽게 말해, 외부 서비스를 **내 프로그램 안으로 끌어와 사용하는 도구**라고 생각하면 됩니다. 예를 들어, Kakao의 지도 기능이나 OpenAI의 챗봇 기능을 내 웹사이트에 쉽게 붙일 수 있습니다.
📦 REST API와 JSON 기본 구조
대부분의 현대 API는 REST 방식을 따르며, 데이터를 JSON 형태로 주고받습니다.
GET https://api.example.com/search?query=hello
Response:
{
"result": "success",
"items": [ ... ]
}
요청은 URL과 함께 보내며, 응답은 JSON 형식으로 받게 됩니다.
📍 Kakao API 연동 예시 – 키워드 장소 검색
Kakao Developers(https://developers.kakao.com)에서 앱 등록 후 REST API 키를 발급받습니다.
GET https://dapi.kakao.com/v2/local/search/keyword.json?query=카페
Header: Authorization: KakaoAK YOUR_REST_API_KEY
JavaScript로 호출 예시:
fetch("https://dapi.kakao.com/v2/local/search/keyword.json?query=카페", {
headers: {
Authorization: "KakaoAK YOUR_API_KEY"
}
})
.then(res => res.json())
.then(data => console.log(data));
이 API는 위치 기반 검색 서비스에 유용합니다.
🔍 Google API 연동 예시 – YouTube 검색
Google Cloud Console(https://console.cloud.google.com)에서 프로젝트를 생성하고 API 키를 발급받습니다.
GET https://www.googleapis.com/youtube/v3/search
?part=snippet&q=javascript&type=video&key=YOUR_API_KEY
결과는 YouTube 영상 목록을 JSON으로 받아볼 수 있습니다. 나만의 유튜브 검색기, 미디어 큐레이션 앱 등에 활용 가능합니다.
🧠 OpenAI API 연동 예시 – GPT 응답 받기
OpenAI(https://platform.openai.com)에서 API 키를 발급받아 사용할 수 있습니다.
POST https://api.openai.com/v1/chat/completions
Headers:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Body:
{
"model": "gpt-3.5-turbo",
"messages": [
{"role": "user", "content": "기분이 우울해"}
]
}
ChatGPT처럼 작동하는 챗봇을 만들 수 있으며, 감정 상담, 글쓰기 도우미, 마케팅 카피 생성 등 다양한 서비스에 활용 가능합니다.
🔐 API 키 관리 방법
- API 키는 절대 깃허브에 업로드하지 말 것
- .env 파일에 보관하고, 환경 변수로 불러올 것
- 프론트엔드에서 직접 호출할 경우 프록시 서버로 중계
- 사용량 제한 설정, 허용 IP 등록 등 보안 설정 필수
API 키 유출 시, 과금 폭탄, 악용, 서비스 중단으로 이어질 수 있으니 주의해야 합니다.
🧩 API 연동 시 자주 하는 실수
- 요청 URL 오타 또는 파라미터 누락
- 헤더에 API 키 빠짐
- CORS 오류 – 서버와 도메인 설정 문제
- 쿼터 초과 – 무료 사용량 제한 확인 필요
- 응답 구조 파악 실패 –
response.data
위치 확인
콘솔 로그와 try-catch
, .catch()
로 에러를 명확히 확인하는 습관이 중요합니다.
🚀 실전 프로젝트 아이디어
- 📍 Kakao 지도 기반 “내 주변 맛집 검색기”
- 🎬 YouTube API 기반 “AI 키워드 추천 유튜브 큐레이션”
- 💬 OpenAI API 기반 “GPT 영어 회화 앱”
위 API들은 무료 요금제로도 충분히 실습 가능하며, 포트폴리오에 딱 맞는 프로젝트가 됩니다.
🎯 마무리 – 개발자는 ‘API를 연결하는 사람’
혼자 모든 기능을 만들 수는 없습니다. 지금 시대의 개발자는 좋은 API를 잘 선택하고, 안전하게 연결하는 사람입니다.
처음엔 낯설지만, 한 번 성공적으로 연결해보면 상상할 수 있는 모든 서비스를 만들 수 있다는 자신감이 생깁니다.
지금 당장 하나의 API를 골라 직접 호출해보세요. 당신의 개발 실력이 확장되는 순간입니다.