본문바로가기
시리즈 알려드려요, 깨알정보

API란 무엇인가

안녕하세요, 소이정입니다!

오늘은 API가 무엇인지, 어떤 종류가 있는지 알아보려고 해요.
그전에! 여러분은 API가 무엇인 지 알고 계시나요?

그럼 먼저 API 개념부터 다양한 종류의 API까지 한 번 알아보도록 해요!


API란 무엇인가요?

Application Programming Interface의 줄임말로, 운영체제와 응용 프로그램 사이의 통신에 사용되는 언어나 메시지 형식을 말한다. *출처 : 두산백과

위에는 API의 사전적 의미인데요.
흠,,, 네,,,? 뭔 소리인지 하나도 모르겠어요... 싶으신가요?
쉽게 설명하자면 
'프로그램과 프로그램끼리 소통할 수 있는 도구다'라고 생각해 주시면 됩니다.

예시로 설명을 드릴게요. 여러분이 친구와 함께 음식점에 갔다고 가정을 해볼게요.


1. 손님은 직원이 가져다준 메뉴를 고른 후 음식을 주문합니다.
2. 직원이 주문을 받아 요리사에게 음식을 요청합니다.
3. 요리사는 음식을 만들어 직원에게 전달합니다.
4. 직원은 완성된 음식을 손님에게 가져다줍니다.

여기서 직원의 역할은 손님에게 주문을 받고, 요리사에게 메뉴를 요청합니다. 그리고 완성된 메뉴를 손님에게 전달도 하죠. 바로 이 직원이 API와 같은 역할을 한다고 보면 됩니다.

API(직원)는 프로그램(손님)이 실행될 수 있도록 명령 목록(메뉴)을 정리하고, 명령(주문)을 받으면 응용프로그램(요리사)과 상호작용하여 명령에 대한 값(요청된 메뉴)을 전달합니다. 아래 시각적인 이미지를 본다면 이해가 좀 더 잘 되실 거예요!

출처 : 위시켓

그렇다면 API의 역할은 무엇인가요?

1. 애플리케이션과 기기의 소통 창구 역할
- 애플리케이션은 우리가 흔히 스마트폰에서 사용하는 앱이나 프로그램을 말하는데요. 이때 앱마다 따로, 스마트폰마다 따로 개발을 해야 한다면 엄청 복잡하고 힘들겠죠? 이런 과정을 최소화하는 역할을 해주며, 애플리케이션과 기기가 데이터를 원활하게 주고받을 수 있게 하는 역할을 합니다.

2. 서버와 데이터베이스에 대한 출입구 역할
- 데이터베이스에는 소중한 정보들이 저장되고 있는데요. 모든 사람들이 데이터베이스에 접근한다면 소중한 정보들이 해킹되고 유출되겠죠? API는 이를 방지하기 위해 여러분이 가진 서버와 데이터베이스에 대한 출입구 역할을 하며, 허용된 사람들에게만 접근성을 부여합니다.

3. 모든 접속을 표준화해주는 역할
- API는 모든 접속을 표준화하기 때문에 기기, 운영체제 등과 상관없이 동일한 액세스를 얻을 수 있습니다. 스마트폰에서 특정 앱을 사용하다가 큰 화면으로 보고 싶어 pc 웹으로 넘어갔을 때 화면의 크기만 달라질 뿐, 우리는 똑같은 정보를 얻을 수 있습니다. 이렇게 API는 각기 다른 기기나 운영 체계에서 접근하더라도 동일한 결과를 얻을 수 있도록 해줍니다.


API의 종류는 뭐가 있나요?

1. PRIVATE API
- 외부에 공유되지 않은 비공개 API를 의미합니다. 자체적으로 서비스를 개발하고 개선하기 위해 만든 API로, 사용법이 공개되지 않아 외부 개발자들이 사용할 수 없답니다.

2. PARTNER API
- 데이터 접근 권한을 받은 사람들만 사용할 수 있는 API입니다. 비즈니스 관계에서 주로 적용되며, 공개적으로 사용이 불가능합니다.

3. PUBLIC API
- 누구나 접근 가능하도록 공개되어 있는 개방형 API이며, 원하는 사람은 제한 없이 이용 가능합니다.


API를 사용하면 좋은 점은?

1. 시간 및 비용 절감
- 처음부터 필요한 기능을 일일이 개발할 필요가 없기 때문에 시간은 절약되고, 개발할 인력을 구하지 않아도 되기 때문에 비용도 절감됩니다.

2. 업무 효율 상승
- 개발자들이 애플리케이션 코드를 작성하는 방법을 표준화함으로써 간소화되고 빠른 처리가 가능해집니다.

3. 시장 변화에 대한 빠른 대응
- 비즈니스 경쟁력을 유지하려면 빠른 도입과 출시가 포인트인데요. API를 연동해서 사용한다면 이미 개발되어 있는 기술들을 이용해 빠르게 대응 가능합니다.


여기까지 API에 관해 설명드렸는데요.
API가 무엇인지 알아야 기업들에서 왜 API를 제공하는지, 다양한 종류의 API를 왜 공개하는지 이해가 더 잘 되실 겁니다. 카카오톡이나 네이버의 API는 오픈 API로 제공되고 있는데요.

오픈 API는 또 뭘까요?

OPEN API란?

open application program interface의 줄임말이며, 검색, 블로그 등의 데이터 플랫폼을 외부에 공개하여 다양하고 재미있는 서비스 및 애플리케이션을 개발할 수 있도록 외부 개발자나 사용자들과 공유하는 프로그램을 말한다. 구글은 구글맵의 API를 공개해 친구 찾기·부동산 정보 등 300여 개의 신규 서비스를 창출했다. 출처 : 네이버 지식백과 한경 경제용어사전

위에서 설명드렸던 PUBLIC API와 같은 개념이라고 보시면 됩니다. 사전에서도 파악할 수 있듯, 외부에 공개하여 외부 개발자들이나 사용자가 사용할 수 있도록 공개한 API입니다.

지금까지 공개되어 사용되고 있는 대표적인 오픈 API는 네이버, 카카오, 구글, 페이스북을 포함한 플랫폼 기업에서 지도, 음악, 비즈니스, 날씨, 쇼핑, SNS 등이 있습니다. 이외에 국가에서도 전국 공공시설 정보나 대중교통 운행정보와 같은 데이터를 공공 API로 개방하고 있습니다.

왜 API를 무료로 제공해 주나요?
비용을 청구하면 더 이득 아닌가요?

기업들이 오픈 API를 제공하는 이유는 서비스의 저변을 넓히기 위해서인데요. 오픈 API를 제공받는 기업은 시간과 비용을 절감해 유용한 API를 사용할 수 있고, API를 제공하는 기업은 본인들의 서비스를 더 널리 알릴 수 있기 때문입니다. 서로가 이득을 취할 수 있는 윈-윈 전략인 거죠!

대기업들은 시장 확대라는 목적을, 비영리 기관에서는 공공의 목적을 가지고 제공한답니다.

여러분은 사이트에 가입하려고 할 때 sns를 통해 회원가입을 진행해 보신 적이 있으실 겁니다. 카카오톡이나 네이버 등등으로요!

이 부분도 기업에서 제공한 오픈 API를 통해 제공받은 서비스랍니다!


카카오 디벨로퍼스

카카오 API에 대해 알아볼까요! 종류가 무엇이 있는지는 카카오디벨로퍼스에 들어가면 확인할 수 있는데요. 첫 화면부터 오픈 API 제품들을 공개하고 있습니다!

출처 : 카카오 디벨로퍼스


카카오 API 특징은 다음과 같습니다. 상생, 생산성, 가치창출을 강조하며 오픈 API를 제공합니다! 위에서 언급했던 오픈 API 특징과 비슷하죠?

출처 : 카카오 디벨로퍼스

자세하게 어떤 종류의 API들을 제공하는지 살펴볼게요. 카카오에서는 크게 3가지 종류의 API를 제공하는데요. 

그 세 가지는 소셜 통합 API, 비즈니스 API, 인공지능 API입니다. 각각 타이틀에 맞게 상세한 제품들을 가지고 있습니다.


API 별로 각각 가지고 있는 특징과 제공하는 기능은 다 다른데요. 각각 API 특성에 맞추어 제공되고 있다고 생각하면 됩니다.
소셜 통합 API에서는 카카오 로그인이나 메시지, 지도 등과 같은 제품을, 비즈니스에서는 카카오 싱크, 카카오톡 채널, 카카오페이 등을 제공합니다. 인공지능은 검색, 음성 등 다양한 제품을 제공하는데요. 필요한 특징과 기능을 파악하고 사용하면 되겠습니다!


네이버 디벨로퍼스

네이버도 오픈 API를 제공하고 있는데요.

출처 : 네이버 디벨로퍼스


네이버에서 공개하고 있는 API 목록들입니다. 검색 기능부터 파파고 번역, 단축 URL 등등까지 제공합니다. 번역 기능이 필요하다면 네이버 오픈 API를 사용해도 좋을 것 같네요!

출처 : 네이버 디벨로퍼스

공공데이터 포털

이 외에도 공공데이터 포털에서 오픈 API를 검색하면 다양한 기관과 지자체에서 제공하는 API를 확인할 수 있는데요! 공공기관이 생성 또는 취득하여 관리하고 있는 공공데이터를 국민이 쉽고 편리하게 공공데이터를 이용할 수 있도록 파일 데이터, 오픈 API, 시각화 등 다양한 방식으로 제공하고 있으며, 누구라도 원하는 공공데이터를 빠르고 정확하게 찾을 수 있습니다.

서울교통공사에서 제공하는 노선별 지하철역 정보, 국토교통부에서 제공하는 검색 API 등등 다양한 데이터를 확인할 수 있는 API 서비스를 이용할 수 있습니다.

출처 : 공공데이터 포털

구글맵스 API를 사용하셨던 분들도 계실텐데요.
현재는 유료로 전환되었다고 합니다.
하지만 다양한 기업과 공공기관에서 제공하는 오픈 API가 있으니
오늘 내용 참고해서 사용하시면 되겠습니다!

이렇게 API의 의미/역할/장점/종류, 오픈 API와 기업에서 제공하는 API까지 살펴보았는데요.

오늘 내용으로 API와 한 발짝 더 가까워지셨으면 좋겠습니다.
다음에도 유익한 내용으로 찾아뵐게요!

감사합니다 :)