api 최종 수정일 2026-06-18 19:53 조회수 6
대시보드

api

기본 정보

  • 명칭: API
  • 영문명: Application Programming Interface
  • 한글명: 응용 프로그램 프로그래밍 인터페이스
  • 분류: 소프트웨어 인터페이스
  • 주요 용도: 시스템 간 데이터 및 기능 제공
  • 관련 주제: #API #RESTAPI #HTTP #JSON #백엔드

개요

API(Application Programming Interface)는 프로그램과 프로그램이 서로 데이터를 주고받거나 기능을 호출하기 위한 인터페이스이다.

웹 개발에서는 프론트엔드와 백엔드가 통신하거나, 외부 서비스(결제, 지도, AI, 로그인 등)와 연동할 때 API를 사용한다.

현대 웹 서비스와 모바일 앱 개발에서 API는 핵심적인 역할을 담당한다.


API 구조

Client

↓

HTTP Request

↓

API Server

↓

Business Logic

↓

Database

↓

JSON Response

↓

Client

API 동작 과정

사용자 버튼 클릭

↓

API 요청

↓

서버 처리

↓

데이터 조회

↓

JSON 생성

↓

응답 반환

↓

화면 출력

주요 특징

  • 시스템 간 통신
  • 데이터 공유
  • 기능 제공
  • 플랫폼 독립성
  • 자동화 지원
  • 서비스 확장성 향상

API 종류

Open API

외부 개발자에게 공개된 API

예시

  • OpenAI API
  • Kakao API
  • Google Maps API

Private API

기업 내부에서만 사용하는 API

예시

  • ERP 내부 API
  • 관리자 API
  • 사내 시스템 API

Partner API

제휴사에게만 제공하는 API

예시

  • PG사 연동
  • 물류사 연동
  • 금융 API

REST API

현재 가장 널리 사용되는 API 방식이다.

예시

GET /api/member/1

POST /api/member

PUT /api/member/1

DELETE /api/member/1

HTTP Method

Method설명
GET조회
POST생성
PUT전체 수정
PATCH일부 수정
DELETE삭제

요청(Request)

GET /api/member/1

Host: example.com

응답(Response)

{
  "success": true,
  "message": "조회 성공",
  "data": {
    "id": 1,
    "name": "구름"
  }
}

상태 코드(Status Code)

코드의미
200성공
201생성 완료
400잘못된 요청
401인증 실패
403권한 없음
404찾을 수 없음
500서버 오류

JSON

API는 일반적으로 JSON 형식으로 데이터를 주고받는다.

{
  "name": "홍길동",
  "age": 30
}

인증 방식

API Key

X-API-Key: abc123

JWT

Authorization:

Bearer eyJ...

OAuth 2.0

대표 사용처

  • Google 로그인
  • Kakao 로그인
  • GitHub 로그인

RESTful API 원칙

좋은 API는 다음 원칙을 따른다.

GET /users

GET /users/1

POST /users

PUT /users/1

DELETE /users/1

리소스 중심 URL을 사용하는 것이 일반적이다.


API 버전 관리

예시

/api/v1/users

/api/v2/users

기존 사용자와의 호환성을 유지하기 위해 사용한다.


API 문서

대표 도구

  • Swagger
  • OpenAPI
  • Postman
  • Redoc

API 사용 방법과 요청·응답 구조를 문서화한다.


대표 활용 사례

로그인

POST

/api/login

회원 조회

GET

/api/users/10

게시글 작성

POST

/api/board

상품 목록

GET

/api/products

API와 데이터베이스

Client

↓

API

↓

Service

↓

Repository

↓

Database

실무에서는 API가 직접 데이터베이스에 접근하기보다 서비스 계층을 거쳐 처리하는 구조를 많이 사용한다.


API 장점

  • 시스템 간 연동이 쉬움
  • 기능 재사용 가능
  • 플랫폼 독립적
  • 모바일·웹 공통 사용 가능
  • 유지보수가 용이
  • 확장성이 높음

API 단점

  • 네트워크 장애 영향
  • 인증 및 보안 고려 필요
  • 버전 관리 필요
  • 과도한 호출 시 성능 저하 가능

실무 메모

실무에서는 다음과 같은 방식이 권장된다.

  • RESTful URL 설계
  • HTTPS 사용
  • JWT 또는 OAuth 인증 적용
  • 응답 형식 표준화 (success, message, data)
  • Pagination 지원
  • Rate Limit 적용
  • API 버전 관리
  • OpenAPI(Swagger) 문서 제공
  • 입력값 검증
  • 예외 처리 및 로그 기록

API와 함께 사용하는 기술


대표 개발 도구

  • Postman
  • Insomnia
  • Swagger UI
  • OpenAPI Generator
  • Bruno
  • curl

관련 문서


출처

  • MDN Web Docs
  • Swagger 공식 문서
  • OpenAPI Specification
  • RFC 9110 (HTTP Semantics)