brunch

앱과 앱이 대화하는 법: API

by 윤세문

API란 무엇인가?


SaaS(Software as a Service)는 이미 오랜 시간 동안 IT 산업의 중요한 축으로 자리잡아 왔다. 우리가 쓰는 이메일, 회계, 채팅, 일정 관리 앱 등 다양한 클라우드 기반 소프트웨어들이 모두 SaaS에 해당한다. 그런데 이 SaaS 서비스들이 실제로 사용자와 매끄럽게 연결되고, 다른 앱과 연동되기 위해 꼭 필요한 것이 있으니, 바로 API다. 즉, SaaS라는 비즈니스 모델의 확산과 함께 API는 그 기반 기술로서 점점 더 중요한 역할을 하게 된 것이다.


API는 "Application Programming Interface"의 줄임말로, 쉽게 말해 앱과 앱이 서로 대화하도록 도와주는 통역자이자 약속된 규칙이다.


예를 들어 스마트폰에서 앱을 실행할 때 구글 계정으로 로그인하거나, 배달 앱에서 지도와 결제 기능을 함께 사용하는 것, 모두 API 덕분이다. 하나의 앱이 다른 앱의 기능이나 데이터를 빌려 쓰기 위해서는, 그 앱에 정해진 방식으로 요청을 보내고 응답을 받아야 하는데, 이 연결고리가 바로 API다.


� 쉽게 설명하자면: API는 ‘점원’과 같다

API는 종종 레스토랑의 점원에 비유된다:

손님 (사용자 앱): "볶음밥 주세요"라고 주문한다.

점원 (API): 주방에 그 주문을 전달하고,

주방 (서버): 음식을 만들고,

점원 (API): 다시 손님에게 음식을 가져온다.

손님은 요리사와 직접 이야기할 필요 없이 점원을 통해 음식을 받는 것이다. 마찬가지로, 앱 A가 앱 B의 기능을 쓰고 싶을 때 API를 통해 요청하고 응답을 받는 것이다. API가 없다면, 앱들끼리 아무런 규칙 없이 소통해야 하므로 오류가 발생하기 쉽고, 연동도 어렵다.

Gemini_Generated_Image_sqdnn2sqdnn2sqdn.png


� API가 없던 시절은 어땠을까?

과거에는 앱 하나를 만들기 위해 모든 기능을 처음부터 직접 개발해야 했다. 결제, 로그인, 지도 등도 일일이 구축해야 했다. 이 방식은 여러 가지 문제를 낳았다:

'모놀리식' 시스템: 모든 기능이 하나의 거대한 프로그램 안에 있어서, 일부만 바꿔도 전체를 다시 조립해야 했다.

맞춤형 연결의 비효율성: 시스템마다 다른 방식으로 데이터를 연결해야 해, 마치 전자기기마다 각기 다른 충전기를 만들어야 하는 것처럼 번거로웠다.

정보 사일로: 각 부서나 서비스가 데이터를 제각각 저장해 공유가 어려웠고, 재활용도 거의 되지 않았다.


� API의 등장은 디지털 세상의 ‘레고 블록’을 만든 셈

API가 보편화되면서 개발자들은 직접 만들지 않아도 되는 세상이 되었다.

결제 API를 쓰면 신용카드 결제 시스템을 새로 만들 필요 없이 Stripe나 KakaoPay의 기능을 그대로 가져다 쓸 수 있다.

로그인 API를 쓰면 페이스북, 네이버, 애플 계정으로 바로 로그인할 수 있다.

지도 API를 쓰면 구글 지도의 길찾기, 거리 계산도 바로 앱에 넣을 수 있다.

즉, 필요한 기능을 조립해서 빠르게 서비스를 만들 수 있게 된 것이다.


이러한 변화는 '마이크로서비스 아키텍처(MSA)'라는 개발 방식과도 맞물린다. 각각의 작은 기능(마이크로서비스)은 독립적인 API를 통해 통신하기 때문에, 전체 시스템을 건드리지 않고도 개별적으로 업데이트할 수 있다. 더 빠르고, 유연하고, 유지보수도 쉬워졌다.


� API는 어떻게 작동할까?

API는 클라이언트(요청자)서버(응답자)가 약속된 방식으로 정보를 주고받는 '질문과 대답' 시스템이다.
예를 들어 날씨 앱이 서울의 날씨를 보여주기 위해, 기상청 서버에 “서울 날씨 알려줘”라고 요청(API 호출)을 보내면, 서버는 “오늘 흐리고 22도”라고 응답(API 응답)을 보내주는 식이다.


요청은 일반적으로 인터넷(URL) 주소를 통해 이루어지고, 결과는 JSON이나 XML 같은 데이터 형식으로 전달된다. API 키라는 ‘비밀번호’도 있어, 아무나 요청하지 못하게 막을 수 있다.


� 예시: 우버 한 번 탈 때도 API가 수십 번 작동한다

우버에서 택시를 부르고, 탑승하고, 결제하고, 영수증을 받는 과정에서 우리가 인지하지 못하느 사이에 아래와 같은 수많은 API들이 작동한다:


API uber 5.PNG


� 한 번의 탑승에도 5~10개 이상의 API가 자연스럽게 연결되어 작동하고 있다.


� API는 하나의 경제다 – "API Economy"

오늘날 API는 단순한 기술이 아니라 비즈니스 모델이다. Stripe, Twilio, Google Maps 등은 API를 통해:

서비스를 개발자에게 ‘판매’하고

사용량 기반으로 과금하며

전 세계 수천 개 앱과 연동되는 플랫폼 생태계를 키우고 있다.

API는 개발자가 덜 만들고 더 빠르게 출시할 수 있게 도와준다. 또한, 사용자에게는 더 연결된 경험을 제공한다.


결론: 보이지 않는 연결자, 그러나 세상을 움직이는 힘

우리가 음식을 배달시키고, 목적지를 찾아가고, 스마트워치로 건강을 추적하고, 앱에서 결제하는 모든 과정에는 API가 조용히 작동하고 있다.

앱과 앱이 서로 기능을 빌려쓰고

데이터를 주고받고


끊김 없이 이어지는 경험을 가능하게 하는 것 � 바로 API다.


기술을 잘 몰라도 괜찮다. 우리가 앱을 편하게 쓰고 있다면, API는 이미 훌륭히 제 역할을 하고 있는 것이다.


keyword
작가의 이전글AI 반도체 판도, NPU가 바꾼다