2025-08-05 05:22

Status:

Tags:소프트웨어 공학

API(Application Programming Interface)

  • 소프트웨어간 상호작용 가능하게 하는 계약 이자 접점
  • 프로그램 간 요청과 응답 주고받는 인터페이스
  • 내부 로직 숨기고 필요한 기능만 노출 (두 번째 의미 캡슐화(Encapsulation))
  • 기능을 계약 형태로 문서화 한 것이 API 사양 (API specification)
유형특징주요 사례
REST무상태(stateless), 리소스 기반, HTTP 메서드 활용JSON/HTTP, HATEOAS[^5]
SOAPXML 기반 메시징, 프로토콜 독립적기업 통합 환경
RPC원격 프로시저 호출, 함수 형태 요청gRPC, JSON-RPC, XML-RPC
GraphQL클라이언트가 데이터 스키마 정의다양한 데이터 소스 통합

References

JSON API 핸드북