Michael Chen | Senior Writer | 2025년 2월 24일
'API'라는 용어는 애플리케이션 프로그래밍 인터페이스의 약어입니다. API는 애플리케이션들이 서로 통신하고 데이터를 공유할 수 있는 가교 역할을 수행합니다. 예를 들어, 마케팅 팀이 여러 소셜 미디어 계정을 관리하는 데 사용하는 대시보드는 다양한 API를 사용해 기업의 소셜 플랫폼을 대시보드 화면에 연결하고 관련 데이터를 가져옵니다.
일반적인 인터넷 사용자들은 끊임없이 API를 사용하고 있지만 그 사실을 직접 인식하지는 못합니다. API는 기상 예보 사이트와 같은 공개 데이터 소스를 상업용 앱에 연결하여 다가오는 폭풍을 경고해 줍니다. 개발자들은 정기적으로 Google Maps API에 액세스하여 지도와 위치 서비스를 웹사이트에 임베드합니다. 리테일 업체들은 PayPal, Stripe와 같은 API 기반 결제 게이트웨이를 사용하여 고객과의 금융 거래를 안전하게 처리합니다.
API(애플리케이션 프로그래밍 인터페이스)는 애플리케이션이 데이터를 교환하고, 작업을 수행하고, 잘 문서화된 방식으로 상호작용할 수 있도록 지원하는 규칙과 프로토콜의 집합입니다. 예를 들어, 날씨 업데이트 요청이 들어오면 API는 해당 요청을 처리하고 필요한 작업을 실행한 후, 일반적으로 JSON이나 XML과 같이 정의된 표준 형식으로 응답을 반환합니다.
핵심 요점
개발자는 API를 통해 자신이 구축 중인 애플리케이션에서 다른 소프트웨어 플랫폼 및 서비스에 네이티브 방식으로 액세스할 수 있습니다. API가 없다면, 사용자가 날씨를 확인하거나 소셜 미디어 사이트의 댓글에 응답할 때마다 매번 데이터를 한 애플리케이션에서 수동으로 내보내고, 준비 및 변환한 후 다른 애플리케이션에 수동으로 다시 가져와야 할 것입니다.
교환 과정에는 일반적으로 다음과 같은 세 당사자가 관여합니다.
식당을 예로 들어 보겠습니다. 모든 고객들이 주방에 들어가 좋아하는 요리를 직접 주문한다면 큰 혼란이 일어날 것입니다. API는 주방(서버 애플리케이션)이 제공할 수 있는 모든 서비스(요리)를 나열한 메뉴(문서화)를 제공합니다. 귀하의 클라이언트가 제공해야 할 정보, 주문이 제시될 형식을 설명해 줍니다.
API는 웨이터 또는 중개자 역할을 수행하며 주문이 표준화된 방식으로 접수되고 전달되도록 도와 주는 기술입니다.
API의 작동 방식은 소프트웨어 구성 요소들이 상호작용하는 방식을 명시하는 것입니다. API를 활용하는 개발자는 모든 것들을 처음부터 직접 구축할 필요 없이 서로 다른 시스템을 통합하고 데이터 및 기능을 공유하며 시간과 자원을 절약할 수 있습니다. API는 일반적으로 통신에 사용해야 하는 메소드 및 프로토콜, 교환될 수 있는 데이터 형식을 정의합니다.
API는 다음과 같은 세부 정보를 제공하여 애플리케이션들의 상호 작용 방식을 정의합니다.
데이터를 요청하는 클라이언트 애플리케이션의 개발자는 API 호출을 수행하는 코드를 작성합니다. 이 코드는 다음과 같은 요소들을 지정합니다.
애플리케이션은 서버 애플리케이션의 수신 요청을 관리하는 API 게이트웨이에 요청을 전송합니다. API 게이트웨이는 요청을 대상 애플리케이션 내 적절한 서비스로 라우팅합니다. 해당 서비스는 요청을 처리하고 데이터 검색 또는 다른 작업을 수행합니다.
작업을 완료한 대상 서비스는 API 정의에 따라 응답 데이터를 준비한 뒤 API 게이트웨이를 통해 요청 애플리케이션으로 다시 전송합니다. 요청 애플리케이션은 데이터를 수신 및 파싱하여 최종 사용자에게 결과물을 전달합니다.
API가 중요한 이유는 개발자가 다른 애플리케이션과 서비스의 데이터 및 기능에 액세스할 수 있는 표준화된 방법을 제공함으로써 모든 요소를 직접 개발하지 않아도 되도록 만들어 주기 때문입니다. 이는 곧 시간 및 비용 절감으로 이어집니다. 또한 표준화는 기존 시스템의 운영을 방해하지 않으면서도 새로운 기능과 서비스를 모듈식으로 추가할 수 있도록 함으로써 혁신과 확장성을 함께 촉진합니다.
비즈니스 차원에서 API는 소프트웨어가 다른 소프트웨어와 직접 상호작용할 수 있도록 함으로써 기업의 반복적인 작업 및 프로세스의 자동화에 기여한다는 점에서 매우 중요합니다. 대부분의 기업이 자동화를 도입해 직원들이 더 높은 수준의 업무에 집중할 수 있도록 노력하고 있는 만큼, 수작업 부담을 줄이고 운영 효율성을 높일 수 있다는 점은 API의 핵심적인 이점입니다. 클라우드 서비스 활용을 확대하고자 하는 기업들도 API에 많은 부분을 의존하고 있습니다.
API의 구성 요소들은 서로 협력해 상이한 소프트웨어 시스템들이 서로 통신하고 데이터 및 기능을 교환하는 과정을 지원합니다. 소프트웨어에 API를 성공적으로 통합하기 위해서는 API의 구성 요소들을 반드시 이해해야 합니다. API의 구성 요소는 다음과 같습니다.
API에는 속도 제한 및 오류 처리 기능, 개발자용 설명서 등이 포함될 수도 있습니다. 견고한 API를 작성하기 위해서는 아키텍처 스타일부터 설계 도구에 이르는 일련의 결정이 필요합니다. 이는 클라우드 네이티브에 기반한 미래를 지향하는 기업이 갖춰야 하는 중요한 능력입니다.
개발자는 API를 사용해 분산된 애플리케이션들을 서로 연결할 수 있습니다(예: 스마트폰 애플리케이션과 소셜 미디어 웹사이트, 급여 시스템과 기업 은행 계좌). API를 사용하면 개별적인 소규모 서비스들을 연결해 편리한 애플리케이션을 구축함으로써 성능 및 확장성 측면에서 이점을 누릴 수 있습니다.
개중 하나의 서비스가 중단되더라도 대부분의 애플리케이션은 계속해서 작동합니다. API의 추가적인 이점은 다음과 같습니다.
API에는 많은 장점이 있지만, API 호출을 활용하는 애플리케이션을 설계하거나 자체 API를 구축하는 과정에서 고려해 보아야 할 복잡성, 비용, 보안과 관련된 도전 과제들도 존재합니다. 여러 API에 의존하는 소프트웨어는 관리 및 유지보수가 어려워질 수 있습니다. API 제공자가 잦은 업데이트나 변경을 수행하는 경우 특히 그렇습니다.
API와 관련된 구체적인 도전 과제는 다음과 같습니다.
모든 API 개발자들이 다른 개발자가 API를 사용하고 통합하는 과정에 필수적인 명확하고 포괄적인 설명서를 제공하는 것은 아니므로 공급업체 파트너를 신중하게 선택해야 합니다.
API를 활용한 개발을 고려하는 개발자들이 흔히 저지르는 실수들이 있습니다. 특히 사양 선택 및 수요 과소평가와 관련된 실수에 주의해야 합니다. 우수한 API 설계의 핵심 원칙은 백엔드 구현 방식의 변경으로부터 소비자를 추상화하고 보호하는 것입니다. 예를 들어, API 설계는 기반이 되는 데이터 저장 방식을 직접 반영하므로 내부 데이터 구조가 변경될 경우 API에도 영향을 미치고 API 클라이언트에 장애를 초래할 수도 있습니다.
주의해야 할 다른 실수들로는 다음과 같은 것들이 있습니다.
부실한 문서화. 명확하고 자세한 문서화는 성공적인 API 활용을 위한 필수 요소입니다. 예를 들어 날짜를 다룰 때는 형식을 명확히 해야 합니다. 유럽에서는 일반적으로 일, 월, 연도 순으로 날짜를 표기하는 반면, 북미에서는 월, 일, 연도 순으로 표기합니다. 이러한 세부 사항을 명시하지 않을 경우 데이터 품질 문제가 발생할 수 있으며, 최악의 경우에는 API가 애플리케이션을 중단시킬 수도 있습니다.
실제 운영 환경의 데이터 양을 고려하지 않음. API 개발 중의 테스트에는 비교적 작은 데이터 세트를 사용합니다. 실제 운영 환경에서는 데이터 양이 훨씬 더 방대해지고 단일 요청으로 막대한 양의 데이터를 전송하고자 하는 API 호출이 발생합니다. 이로 인해 클라이언트와 백엔드 간의 네트워크에 따라 다양한 문제가 발생할 수 있습니다. 최악의 경우 요청이 API 백엔드에 과도한 부하를 주어 호출이 실패할 수 있습니다.
API 게이트웨이 정책 설정 시에도 오류가 발생할 수 있습니다. 이러한 오류는 일반적으로 충분한 보안 조치를 제공하지 않음으로써 발생하고, 악의적인 행위자가 데이터를 변경하거나, 부적절하게 액세스하거나, 심지어 API를 네트워크 공격 수단으로 활용할 수 있도록 만드는 경우가 많습니다. OWASP Foundation은 이러한 유형의 문제들을 분석 및 수집하며, Top 10 API Security Risks 목록을 통해 가장 흔한 실수들을 공유합니다.
API 게이트웨이와 API 백엔드의 역할을 혼동하는 것도 흔한 실수입니다. 양쪽 모두 수신된 API를 처리해야 하므로 두 요소를 혼동하기 쉽습니다. 그러나 게이트웨이의 역할은 요청을 신속하게 분류하고 올바른 위치로 라우팅하는 것입니다. API 백엔드는 비즈니스 로직을 제공하므로 각 요청을 처리하는 데 더 오랜 시간이 필요합니다.
API 호출과 API 백엔드 간의 관계가 일대일 대응이 아님을 기억해야 합니다.
API에는 크게 4가지 유형이 있습니다. 어떤 유형을 선택할지는 사용 사례에 따라 달라집니다. 모델을 결정하기 전에 애플리케이션의 단기 및 장기 계획을 고려해야 합니다. 다른 API로 교체하는 것도 가능하지만 비용과 복잡성이 증가합니다.
대부분의 사람들은 날씨나 위치 정보와 같은 소비자용 API에 익숙합니다. 그러나 기업이 클라우드 서비스부터 데이터베이스, 강력한 비즈니스 애플리케이션에 이르는 다양한 기능을 활용할 수 있도록 지원하는 더욱 정교한 API들의 세계가 존재합니다.
예를 들어, Oracle은 자사의 서비스 전반에 걸쳐 광범위한 API를 제공합니다. Oracle Cloud Infrastructure(OCI)를 사용하는 기업은 서브넷, 보안 목록, 경로 테이블 생성, 구성 및 관리를 포함한 가상 네트워크의 프로그래매틱 관리를 위한 API들을 활용할 수 있습니다. 관리자는 Compute API를 사용해 OCI 내 컴퓨트 인스턴스를 시작, 중지, 재부팅, 구성할 수 있습니다. 다른 API들은 IT 팀을 객체 스토리지, ID 및 액세스 관리 기능과 연결합니다.
혁신적인 스타트업들도 API를 활용하고 있습니다. 예를 들어, Inworld.ai는 온라인 롤플레잉 게임을 위한 AI 기반 가상 캐릭터를 제공합니다. 개발자는 API를 사용하여 플레이어와 현실적이고 매력적인 방식으로 상호작용하는 논플레이어 캐릭터(NPC)를 생성할 수 있습니다. 게임 디자이너는 API를 통해 캐릭터의 속성, 성격, 행동 등을 지정해 NPC들을 맞춤화함으로써 게임에 깊이와 다양성을 더할 수 있습니다. 가상 캐릭터는 텍스트나 음성 입력을 이해하고 응답할 수 있으며, 이 모든 과정은 API를 통해 이루어집니다.
Dominoes가 음성 어시스턴트와 연동해 고객이 기기를 만지지 않고도 피자를 주문할 수 있도록 API를 활용하는 사례부터 Uber가 실시간 데이터에 연결해 수요와 교통 상황에 따라 동적으로 요금을 조정하는 사례에 이르기까지, API는 오늘날의 진정한 혁신을 주도하고 있는 기술입니다.
일반인에게 익숙한 API는 소셜 미디어 연동 및 결제 처리 등에 사용되는 API일 것입니다. 많은 웹사이트와 애플리케이션이 콘텐츠 공유 같은 인기 소셜 미디어 기능을 구현하기 위해 API를 사용하며, 전자상거래 플랫폼은 Stripe나 PayPal 같은 결제 게이트웨이와 연결하기 위해 API를 활용합니다.
하지만 API가 우리의 편리한 일상생활에 기여하는 방법은 이것뿐만이 아닙니다. API는 위치 기반 서비스도 지원합니다. 승차 공유나 음식 배달 서비스 앱이 지도 API를 사용해 고객의 집이나 목적지를 찾는 것이 그 좋은 예입니다.
비즈니스 분야에서의 API 사용 사례로는 기업의 각 팀이 재무 또는 고객 서비스 애플리케이션과 같은 클라우드 리소스와 상호작용하기 위해 API를 사용하는 것 등이 있습니다. 또한 IoT 기기와 제어 시스템 간의 통신 및 데이터 교환을 가능케 만드는 것도 API입니다.
조명과 온도가 자동으로 조절되는 스마트 오피스에서 근무한다면, 그 또한 API 사용 사례로 볼 수 있습니다.
개발자에게 API를 노출하기 위한 프로토콜 또는 아키텍처 스타일은 다양합니다. 개발자는 특정 접근 방식을 선택해 API 세트가 어떻게 작동할지 예상하고, 자신의 프로그램에서 API에 액세스하기 위해 일반적으로 사용해야 하는 메커니즘이 무엇인지 파악할 수 있습니다.
일반적인 아키텍처 스타일은 다음과 같습니다.
API 통합은 애플리케이션들이 서로 연결되어 데이터와 기능을 교환할 수 있도록 지원합니다. 간단히 설명하자면 통합은 양방향 통신을 가능하게 하는 전화선과도 같습니다.
통합의 3가지 구성 요소는 다음과 같습니다.
API 자체는 애플리케이션의 통신 방법을 결정하는 규칙 및 사양을 제공합니다. API는 어떤 데이터를 교환할 수 있는지, 데이터를 어떻게 형식화할지, 어떤 작업을 트리거할 수 있는지 등을 정의합니다.
서버 애플리케이션은 API를 통해 기능 또는 데이터를 노출합니다. 예를 들어, 클라우드 서비스는 IT팀이 새 인스턴스를 신속하게 생성하거나 사용자를 추가하는 데 도움이 되는 API를 제공할 수 있습니다.
클라이언트 애플리케이션은 API를 사용하여 서버 애플리케이션에 데이터 또는 기능을 요청합니다. 예를 들어, 차량 공유 앱은 날씨 서비스의 API를 사용하여 비가 오거나 특정 온도 기준을 초과 또는 미달하는 경우에 맞춰 요금을 조정합니다.
실제 프로세스는 클라이언트 애플리케이션 개발자가 적합한 API를 선택하는 것부터 시작되는 몇 가지 단계를 거칩니다. 클라이언트는 API 키, 토큰 또는 기타 자격 증명을 통해 사용하고자 하는 API에 신원을 인증하고 특정 데이터나 작업에 대한 액세스 권한을 획득합니다. 이후 서버의 API에 요청(콜)을 보내 원하는 정확한 데이터 또는 작업을 요청합니다.
서버 애플리케이션은 요청을 분석하고 권한이 부여된 경우 관련 작업을 수행하거나 데이터를 가져온 뒤 JSON, XML과 같은 구조화된 형식으로 API를 통해 클라이언트에게 데이터를 전송합니다.
디지털 전환은 곧 클라우드로의 전환이고, API는 클라우드 네이티브 아키텍처의 초석입니다. API는 클라우드 내에서 서비스 및 시스템을 통합하고, 기업이 기존 애플리케이션을 새로운 클라우드 서비스와 연결해 운영을 중단하지 않으면서 디지털 미래로 점진적으로 전환할 수 있도록 지원합니다. 또한 기업은 API를 통해 시장 변화와 기회에 신속하게 대응할 수 있습니다. API를 사용하면 결제 게이트웨이, 소셜 미디어 플랫폼, 분석 도구 등의 현대적 서비스를 애플리케이션에 직접 구축할 수 있습니다.
또 다른 혁신적이고 API 기반의 기술은 마이크로서비스입니다. 이는 독립적인 서비스와 기능을 중시하는 현대적 애플리케이션 개발을 위한 아키텍처 접근 방식입니다. 마이크로서비스 아키텍처에서는 애플리케이션이 단일 작업을 효율적으로 수행하는 독립적인 구성 요소로 분할됩니다. 마이크로서비스는 API를 통해 다른 애플리케이션 또는 서비스와 통신합니다. 애플리케이션은 소수의 마이크로서비스로 구성될 수도 있고, 수백 또는 수천 개의 구성 요소로 이루어질 수도 있습니다. 마이크로서비스 기반 애플리케이션은 개별 요소들의 독립성을 유지함으로써 더 빠르게 확장됩니다. 이는 레거시 소프트웨어 개발에 사용되는 모놀리식 아키텍처로 인해 방해받을 수 있는 디지털 전환 이니셔티브에 필요한 민첩성과 유연성을 제공합니다.
마이크로서비스를 도입한 클라우드 네이티브 기업들은 새로운 기회를 포착하고 자동화를 수용하기 위해 더욱 빠르게 움직일 수 있습니다. API는 관련 전략의 기반이 됩니다.
기업들은 API를 통해 요청과 결과를 주고받는 클라우드, 인공지능(AI), 머신러닝(ML)의 지속적인 성장을 뒷받침하기 위한 API를 개발하고 있습니다. 그러나 한편으로는 API라는 기술 자체도 계속해서 발전하고 있습니다.
그 예시로는 리버스(이그레스) 게이트웨이가 있습니다. API 게이트웨이의 일반적인 역할은 수신하는 요청을 처리하는 것입니다. 그러나 API 게이트웨이가 특수한 인터넷 프록시 역할을 수행해 애플리케이션 네트워크 트래픽을 제어하는 인프라를 제공하면서 IT팀의 상황 모니터링을 지원하는 경우도 있습니다. 승인된 외부 API를 사용하는 API 게이트웨이를 통해서만 트래픽이 네트워크를 빠져나갈 수 있는 구조를 구축하면 IT 부서는 네트워크를 떠나는 패킷을 감사하고 데이터의 흐름을 더 잘 이해할 수 있습니다.
API 게이트웨이는 유료 서비스 사용 현황을 추적해 서비스가 적절히 활용되고 수익이 예상대로 발생하는지 확인할 수도 있습니다. 또한 애플리케이션의 새 버전을 배포 전에 테스트하는 데도 도움을 줍니다. 테스트 중 요청이 운영 시스템에서 발생했는지, 테스트 중인 시스템에서 발생했는지에 따라 호출을 전환해야 할 수 있습니다. 그런 상황이 발생하면 게이트웨이는 필요한 정보를 추출하여 리다이렉션을 수행합니다.
새로운 API 속도 제한 및 스로틀링 기술은 IT팀이 API 액세스를 관리하고 공격을 방지하는 데 도움을 줍니다. 속도 제한은 애플리케이션이 특정 시간대 내에 수행할 수 있는 API 호출 횟수를 제한하는 반면, 스로틀링은 특정 서버 부하나 활동이 악의적인 것일 가능성이 있다고 태그 지정되었는지 등의 요소에 따라 액세스를 동적으로 조정합니다.
API 환경을 형성하는 다른 주요 트렌드 및 표준으로는 보안을 희생하지 않으면서도 개방성과 상호 운용성에 집중하는 것이 있습니다. 기업이 주목해야 하는 API 트렌드는 다음과 같습니다.
OpenAPI Initiative. OpenAPI Initiative(OAS)는 API들을 설명하는 공통 언어를 함께 개발하는 기업들의 컨소시엄입니다. 이 표준화된 형식은 문서화, 검색, 통합을 개선하는 데 기여할 것으로 기대되고 있습니다.
JSON Web Tokens. 또 다른 개방형 표준 작업인 JWT는 API에서의 인증 및 권한 부여를 위한 인기 있는 방법으로 자리잡고 있습니다. 이는 애플리케이션이 API 서버 자체에 민감한 데이터를 저장하지 않고도 사용자 신원 정보를 안전하게 교환할 수 있는 방법을 제공합니다.
OAuth 2.0. 보안은 표준화만큼 중요하므로 권한 부여를 위한 업계 표준 프로토콜인 OAuth 2.0이 널리 채택되고 있습니다. OAuth 2.0 프레임워크는 사용자가 비밀번호를 공유하지 않고도 다른 애플리케이션 플랫폼의 사용자 데이터에 액세스할 수 있도록 만들어 줍니다. 이를 통해 개인과 기업은 데이터를 더욱 효과적으로 제어할 수 있습니다.
OpenID Connect(OIDC)는 OAuth 2.0을 기반으로 구축되었으며, 애플리케이션마다 별도의 로그인 자격 증명이 필요 없이 사용자의 신원을 확인할 수 있도록 해 줍니다.
마지막으로, 견고한 API 성능에 크게 의존하는 기업의 경우 API 분석이 새로운 필수 요소로 자리잡고 있습니다. IT 부서는 API 사용 패턴을 사전에 모니터링하고 분석하여 성능 병목 현상, 보안 위험, 개선 기회를 식별할 수 있습니다. API 사용 데이터를 수집하고 세부적으로 분석할 수 있는 도구를 제공하는 API 관리자를 찾아보세요. 기업은 가장 많이 사용되는 API들을 측정해 솔루션 투자 방향을 결정할 수 있습니다. 예를 들어, 노후화된 ERP 솔루션의 API가 CRM용 API보다 더 많이 사용된다면, ERP 개선 또는 교체를 우선시하는 것이 합리적일 수 있습니다.
Oracle Cloud Infrastructure(OCI)는 API의 수명 주기 관리를 위한 포괄적인 서비스 세트를 제공합니다. 개발팀은 OCI에 내장된 도구들을 활용해 API 프로토타이핑, 테스트, 검증 시 손쉽게 협업할 수 있습니다. Oracle Cloud Infrastructure(OCI) API Gateway는 API 및 SOA 기반 시스템에 대한 통합, 가속화, 거버넌스, 보안 도구를 통해 웹 API의 안전한 관리 및 제공을 지원합니다. 또한 API 운영업체는 사용량 기반 요금제와 구독을 통해 API를 모니터링하고 수익화할 수 있습니다.
개발팀은 API의 작동 방식을 이해함으로써 고객과 직원이 매일 사용하는 수많은 애플리케이션과 서비스의 기반이 되는 숨겨진 연결에 대한 인사이트를 얻을 수 있습니다. 이제 개발자는 모든 것을 처음부터 구축하는 대신 API를 통해 노출된 데이터 및 기능을 활용함으로써 애플리케이션을 더 빠르게, 더 우수하게, 더 적은 비용으로 구축할 수 있습니다.
재무 애플리케이션은 중요하면서도 까다로운 API 사용 사례입니다. CIO는 API를 활용해 CFO가 직원과 고객 모두를 만족시키는 시스템을 구축하는 과정을 지원할 수 있습니다. 핵심 재무 프로세스를 간소화하는 다른 방법들도 함께 확인해 보세요.
API의 4가지 유형은 무엇인가요?
API의 4가지 유형은 퍼블릭(누구나 사용 가능), 프라이빗(기업 내부에서 개발), 파트너(관련 기업 간 소프트웨어 연동을 위해 개발), 복합(다양한 유형의 API를 함께 사용)입니다.
API의 실제 사용 사례로는 어떤 것들이 있나요?
퍼블릭 API 제공자의 좋은 예시로는 NASA가 있습니다. NASA는 연구 데이터, 이미지, 사건 추적 정보를 공유하기 위한 API를 제공합니다. 개발자는 이러한 API를 통해 Mars Rover 업데이트, 또는 화산 폭발과 같이 NASA가 추적하는 자연 현상에 대한 세부 정보 등 특정한 NASA 데이터의 피드를 가져와 자신의 애플리케이션에 통합할 수 있습니다. 예를 들어, Mars Rover의 업데이트를 날씨 앱의 '화성에서의 라이브' 특별 섹션에 통합하면 사용자들이 화성의 날씨를 함께 확인할 수 있습니다.
API는 쉽게 작성할 수 있나요?
API 작성은 간단한 프로세스가 될 수도 있습니다. 특히 숙련된 개발자에게는 더욱 그렇습니다. API는 거의 모든 프로그래밍 언어로 코딩할 수 있으며, REST와 같은 기존 아키텍처는 관련 작업에 활용할 수 있는 확립된 지침을 제공합니다. API 개발을 배우는 간단한 방법은 공용 오픈 소스 API를 리버스 엔지니어링하여 최초 설계자들의 개발 방식을 확인하는 것입니다.
REST API란 무엇인가요?
REST(또는 RESTful)는 '표현 상태 전이(representational state transfer)'의 약어로서 웹 서비스 개발에 사용되는 표준 프로토콜입니다. REST는 서로 다른 애플리케이션들이 확장 가능하고 효율적인 방식으로 인터넷을 통해 통신할 수 있는 일련의 규칙과 지침을 제공합니다. REST는 애플리케이션이 HTML, XLT, Python, JSON, PHP 또는 일반 텍스트를 사용해 HTTP를 통해 요청(일반적으로 GET, PUT, POST, DELETE)을 전송하는 방식을 정의하고, 특정한 상태가 계속해서 유지되는 클라이언트와 서버 간의 관계에 의존하지 않습니다.