본문 바로가기
IT 관련/IT 용어 정리

용어 정리 / API란? API종류, 오픈API 사이트, API 활용사례

by 루아-흐 2024. 5. 8.
반응형

 

1. API란?

API는 Application Programming Interface(애플리케이션 프로그램 인터페이스)의 줄임말입니다. 

데이터 교환 다른 소프트웨어의 기능 실행 서비스 접근
다른 소프트웨어와 데이터 교환할 수 있는 방법을 제공 ( 공유, 처리, 조작 등 ) 다른 소프트웨어의 기능을 호출하고 실행할 수 있는 방법을 제공 웹 서비스나 클라우드 서비스에 접근할 수 있는 방법을 제공

 

2. API를 설명하지면?

- 소프트웨어가 다른 소프트웨어로부터 지정된 형식으로 요청하고 명령을 받을 수 있는 수단.

- 응용 프로그램에서 사용할 수 있도록 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스.

- 여러 프로그램들과 데이터베이스, 그리고 기능들의 상호 통신 방법을 규정하고 도와주는 매개체.

- 데이터베이스가 아니지만, 엑세스 권한이 있는 앱 권한 규정과 서비스 요청에 따라 데이터나 서비스 기능을 제공하는 메신저 역할.

- 다양한 형태로 존재할 수 있으며 웹서비스, 운영체제, 라이브러리, 다른 소프트웨어 접근 방법으로 사용 됨

- 개발자가 복잡한 기능을 쉽게 개발할 수 있도록 프로그래밍 언어로 코드를 제공하는 것

 

3. 접근 방식에 따른 API 종류

Public API 개방형 API로 모두에게 공개
Public API 중에서도 접속하는 대상에 대한 제약이 없는 경우를 OpenAPI라 한다.
Partner API 특정 비즈니스 파트너 간의 데이터 공유
권한이 있는 특정인들만 사용할 수 있다.
Private API 내부 API
Internal API 자체 제품과 운영 개선을 위해 내부에서만 사용. 외부에 노출되지 않는다.
Web API 웹 서버나 웹 브라우저를 위한 API
웹 개발 개념으로서 이는 웹 애플리케이션의 클라이언트 사이드(사용 중인 모든 웹 프레임워크 포함)과 관련될 수 있다.
Library API Library API는 특정 기능을 제공하고 개발자들이 해당 기능을 호출하여 사용
특정 프로그래밍 언어나 플랫폼에서 제공되는 기능이 Library API 형태로 제공하여 개발자들이 자체 앱을 보다 쉽게 구축하고 기능을 확장할 수 있도록 돕습니다.
Hardware API 응용 프로그램이 하드웨어와 통신하여 하드웨어 장치의 기능을 제어
소프트웨어가 하드웨어 리소스를 효율적으로 활용할 수 있도록 프로그래밍 인터페이스를 제공합니다
Browser API 브라우저에 내장되어 있는 API
브라우저를 이용해 복잡한 작업들을 쉽게 구현할 수 있도록 도와줍니다
예를 들면 Web Audio API 는 브라우저에서 오디오를 조작하기 위한 Javascript 구성을 제공합니다.
Third-party API 외부에서 가져다 쓰는 API
트위터나 유튜브와 같이 최근 목록 가져오기 기능을 사용하고 싶을 때 해당 서비스에서 제공하는 API를 말합니다.

 

4. 오픈API  사이트 링크

공공데이터포털

 

공공데이터 포털

국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase

www.data.go.kr

문화데이터 광장

 

문화공공데이터광장-메인화면

문화공공데이터광장은 문화체육관광부 소속기관 및 타 부처 기관에서 생산 ·제공하는모든 문화정보를 한 곳에 모아 서비스하는 문화정보 개방플랫폼입니다.

www.culture.go.kr

카카오 API 

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

 

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

네이버 API

 

네이버 오픈 API 목록 - INTRO

네이버 오픈 API 목록 NAVER Developers - API 소개 네이버 오픈API 목록 및 안내입니다. 네이버 오픈 API 목록 API명 설명 호출제한 검색 네이버 블로그, 이미지, 웹, 뉴스, 백과사전, 책, 카페, 지식iN 등 검

developers.naver.com

구글 API 라이브러리

 

Google Cloud console

 

console.cloud.google.com

구글 클라우드 API

 

https://cloud.google.com/apis?hl=ko

 

cloud.google.com

페이스북 API

 

Meta for Developers

간단한 WhatsApp 플로 만들기 WhatsApp 플로는 WhatsApp을 떠나지 않고 원활하게 타겟과 소통하고 정보를 수집할 수 있는 방법입니다. 필요한 조치 대시보드 이제 developers.facebook.com에서 앱을 관리하는

developers.facebook.com

 

4. 아키텍쳐 스타일에 따른 API 종류

SOAP API SOAP 프로토콜만 사용하는 API (유연성 떨어짐)
단순 객체 접근 프로토콜(SOAP)은 프로토콜의 한 유형으로 클라이언트와 xml 사용하여 메세지를 교환함
REST API REST 아키텍처를 사용하여 구축된 모든 API (오늘날 대부분의 API는 REST API)
Representational State Transfer의 줄임말로 웹 표현 상태 변경(REST)은 웹 서비스를 위한 아키텍처 스타일입니다.
REST API는 모든 프로토콜에서 작동합니다
REST는 클라이언트가 서버 데이터에 액세스하는 데 사용할 수 있는 GET, PUT, DELETE 등의 함수 집합을 정의합니다.
클라이언트와 서버는 HTTP를 사용하여 데이터를 교환합니다.
RPC API 원격 프로시저 호출
Remote Procedure Call 줄임말로 다른 시스템의 함수 호출 
RPC는 로컬 프로시저 호출 개념을 확장하지만 이는 HTTP API 컨텍스트에 포함되는 개념으로 다른 컨텍스트에서 함수의 원격 실행을 허용하는 사양입니다.
클라이언트가 서버에서 함수나 프로시저를 완료하면 서버가 출력을 클라이언트로 다시 전송합니다.
GraphQL API GraphQL은 API를 위한 쿼리 언어
이미 존재하는 데이터로 쿼리를 수행하기 위한 런타임으로 데이터에 대한 완벽하고 이해하기 쉬운 설명을 제공하고 클라이언트에게 필요한 것을 정확하게 요청할 수 있는 기능을 제공하며 시간이 지남에 따라 API를 쉽게 진화시키고 강력한 개발자 도구를 지원합니다.

 

 

5. API 활용사례

범용 로그인 사물 인터넷(IoT) 여행 예약 비교
지도 앱 Twitter SaaS 애플리케이션

 

스픽 - Whisper API 사용

Whisper API는 오픈 AI에서 개발한 자동 음성 인식 시스템으로 음성을 인식해 텍스트로 바꿔줄 뿐만 아니라 다양한 언어를 영어로 번역까지 가능하며 스픽은 음성인식 API인 Whisper API를 활용해 원어민이 없이도 1:1 외국어 프리토킹이 가능한 AI 튜터 서비스를 개발해, 외국어 회화 능력 향상이 필요한 사람들에게 앱 서비스

 

영어 스피킹은 스픽(Speak)

하버드 출신이 만든 AI 영어 학습 솔루션. 맞춤 수업부터 원어민 없는 프리토킹 수업까지 제공하여 기존 영어 인강보다 10배 많은 스피킹 연습이 가능합니다.

www.usespeak.com

Whisper - Updated: April 24, 2024 - https://openai.com/index/introducing-chatgpt-and-whisper-apis

Whisper - September 21, 2022 - https://openai.com/index/whisper

 


더 자세하게 알 고 싶다면

 

API란 무엇인가요? - 애플리케이션 프로그래밍 인터페이스 설명 - AWS

GraphQL은 API용으로 특별히 개발된 쿼리 언어로서, 클라이언트에게 요청한 데이터만 제공하는 것을 우선으로 합니다. 또한 API를 빠르고 유연하며 개발자 친화적으로 만들도록 설계되었습니다. RES

aws.amazon.com

 

 

What is an Application Programming Interface (API) | IBM

Application programming interfaces, or APIs, simplify software development by enabling applications to exchange data and functionality easily and more securely.

www.ibm.com

 

반응형