API(Application Programming Interface)는 두 애플리케이션이 통신하는 방법입니다.
온라인 쇼핑몰에서 카드 결제를 해본 적이 있다면 API를 사용해봤을 거예요. 쇼핑앱에서 카드 정보를 입력해요. 그럼 쇼핑앱은 카드 정보를 정리해서 카드사로 보내요. 카드사는 카드 정보로 결제를 완료하고, 결제 결과를 정리해서 쇼핑앱에게 전송해줘요. 쇼핑앱은 카드사로 결제 요청을 하고, 카드사는 요청에 대한 응답을 보내요. 이 모든 통신은 API로 이뤄져요.
API는 클라이언트가 요청을 보내면, 서버에서는 요청에 상응하는 응답을 보내주는 시스템이에요. 요청과 응답을 어떻게 보내고 받을지 미리 정의해놓고 계약처럼 사용해요. 서버가 클라이언트에게 "약속한 형식으로 요청을 보내면, 우리도 약속된 응답을 보내줄게"라고 말하는 것과 같죠. API를 사용하면 다양한 서비스를 편리하게 사용할 수 있어요. 카드 결제와 같은 복잡한 서비스도 시간과 돈을 들여 직접 구축할 필요 없이 토스페이먼츠에서 만든 서비스를 사용하면 돼요.
토스페이먼츠 API 문서 바로가기REST(Representational State Transfer) API는 표준 HTTP 프로토콜을 사용하는 API 아키텍처입니다. 일반적으로 JSON 데이터 형식을 사용해서 브라우저와 호환성이 좋아요. HTTPS 및 SSL 프로토콜과 함께 사용하면 데이터를 안전하게 보호할 수 있어요.
REST API의 특징은 다음과 같아요.
- 편리함: HTTP 프로토콜을 따라서 표준화된 인터페이스를 제공해요.
- 무상태(Statelessness): REST API는 모든 요청을 독립적으로 처리해서 API의 확장성이 좋아요.
- 빠른 속도: REST API는 요청을 캐시할 수 있어서 클라이언트가 응답을 더 빠르게 받을 수 있어요.
REST API의 요청은 다음과 같이 구성돼요.
request
: API 메서드에요.GET
,POST
,PUT
,DELETE
메서드가 있어요.url
: API 엔드포인트에요. 요청을 어디로 보내는지 정의해요.header
: 서버에게 정보를 전달해요. 인증, 데이터 타입에 대한 내용이 들어가요.data
: 서버에게 보내는 정보에요. 바디(Body), 메시지라고 불리기도 해요.GET
메서드에는 데이터를 보내지 않아요.
토스페이먼츠도 REST API를 사용해요. 아래 가상계좌 발급 API 요청을 실행해보세요. 성공했다면 결제 데이터가 담긴 객체가 돌아와요.