바이브 코딩

엔드포인트Endpoint

엔드포인트 (Endpoint)는 식당 창구 같은 것 — 주문 창구·수령 창구가 각각 다르듯, 서버에도 '회원가입 창구', '로그인 창구', '결제 창구'처럼 기능마다 정해진 주소가 따로 있다.

우체국에 가면 '택배 접수 창구', '등기 수령 창구', '환전 창구'가 각각 따로 있다. 엔드포인트 (Endpoint)는 이 창구와 같다. 내 사이트의 서버 (Server)에도 '로그인 요청을 받는 주소', '결제 정보를 전달하는 주소', '게시글 목록을 가져오는 주소'처럼 기능마다 별도의 URL 주소가 존재하고, 그 하나하나를 엔드포인트라고 부른다. 외부 서비스나 내 앱이 서버와 '대화'할 때는 반드시 이 정해진 주소(엔드포인트)로 요청을 보내야 한다.

1인 비즈니스를 운영하다 보면 엔드포인트를 다양한 곳에서 마주친다. 블로그에 댓글 기능을 붙이거나, 뉴스레터 구독 폼을 만들거나, SaaS 서비스에 결제 기능을 연동할 때 모두 특정 엔드포인트로 데이터를 주고받는다. AI에게 '결제 완료 후 구독 상태를 업데이트해 줘'라고 요청하면, AI는 그 기능을 처리할 엔드포인트를 새로 만들어 준다. 웹훅 (Webhook) 설정 화면에서 'URL을 입력하세요'라고 나오는 칸에 넣는 것도 바로 내 서버의 엔드포인트 주소다.

초보자가 흔히 혼동하는 점은 '엔드포인트 = 내 사이트 주소'로 생각하는 것이다. 사이트 주소(도메인)는 건물 전체 주소이고, 엔드포인트는 그 건물 안의 각 창구 번호라고 생각하면 된다. 예를 들어 https://mysite.com 이 건물이라면, /api/subscribe/api/login 처럼 뒤에 붙는 경로가 각각의 엔드포인트다. AI와 함께 기능을 추가할 때 '어떤 엔드포인트로 요청을 보내면 되나요?'라고 질문하는 습관을 들이면 연동 작업이 훨씬 수월해진다.

💡 대표 예시

  • 뉴스레터 구독 폼 → `/api/subscribe` 엔드포인트로 이메일을 전송해 구독자 DB에 저장
  • 쇼핑몰 결제 완료 → `/api/payment/confirm` 엔드포인트가 결제 정보를 받아 주문 상태 업데이트
  • 포트폴리오 문의 폼 → `/api/contact` 엔드포인트로 메시지를 받아 이메일로 전달
  • 멤버십 사이트 → `/api/login` 엔드포인트로 아이디·비밀번호를 받아 로그인 처리
  • SaaS 도구 사이트 → 외부 앱이 `/api/convert` 엔드포인트를 호출해 파일 변환 기능 사용
  • 커뮤니티 사이트 → 웹훅 (Webhook) URL 입력란에 `/api/webhook/new-member` 엔드포인트 주소를 등록해 신규 가입 알림 수신

🔗 관련 용어

이 개념, 직접 적용해볼까요?

AI와 함께 나만의 사이트·서비스를 만드는 법을 강의에서 배워보세요.