REST API
REST(Representational State Transfer) API는 표준 HTTP 메서드(GET, POST, PUT, DELETE, PATCH)를 사용하여 URL로 식별되는 자원을 접근하고 조작하는 웹 서비스 인터페이스입니다. REST는 예측 가능하고 상호운용성을 높여주는 일련의 아키텍처 규약을 따릅니다.
이해하기 REST API
REST는 웹 API의 대표적인 아키텍처 스타일입니다. 자원을 URL로 식별하고, HTTP 메서드를 통해 상태를 바꾸며, 요청은 무상태(stateless)로 처리하고, 표준화된 응답 포맷을 사용한다는 등의 규약 덕분에 통합과 확장이 쉽습니다. 대부분의 웹 서비스(GitHub, Slack, Notion, Google Workspace, Stripe 등)는 REST API를 제공합니다. RESTful 설계는 자원(Resource) 중심입니다. 예를 들어, 작업(task)은 /tasks/123, 사용자는 /users/456와 같이 URL로 구분됩니다. GET /tasks/123는 작업을 조회, POST /tasks는 새 작업 생성, PUT /tasks/123는 작업 전체 교체, PATCH /tasks/123는 일부 수정, DELETE /tasks/123는 삭제를 의미합니다. 이러한 규칙은 개발자에게 익숙하지 않은 API도 빠르게 활용할 수 있게 합니다. REST 응답은 주로 경량의 인간이 읽을 수 있는 JSON 형식을 이용하며, 모든 플랫폼에서 보편적으로 지원됩니다. 응답에는 성공(200, 201), 실패(400, 401, 403, 404, 500) 등의 상태 코드가 포함되어, 견고한 오류 처리가 가능합니다. REST에도 복잡한 상황에서는 한계가 있습니다. 예를 들어, 필요한 데이터만 얻기 힘든 과반 조회(Over-fetching), 여러 번 호출해야 하는 부족 조회(Under-fetching), 실시간 기능의 부재(이벤트에는 웹훅이나 WebSocket 사용) 등입니다. GraphQL은 복잡한 데이터 요구에 맞춰 이러한 한계를 해결하기도 합니다.
GAIA 활용 방법 REST API
GAIA는 50개 이상의 연동 서비스와 주로 REST API를 통해 통신합니다. Gmail, Google Calendar, Notion, Slack, Linear, GitHub 등 대부분의 연결된 서비스는 데이터를 읽고, 레코드를 생성하며, 작업을 트리거할 수 있도록 GAIA가 요청하는 REST API를 제공합니다. MCP(Model Context Protocol)는 이 REST API들 위에 표준화된 계층을 제공하여 GAIA의 에이전트 도구들이 보다 일관되게 활용할 수 있게 합니다.
관련 개념
API 통합
API 통합은 서로 다른 소프트웨어 애플리케이션을 API(응용 프로그램 인터페이스)로 연결하여 데이터를 원활하게 공유하고 기능을 연동하는 과정입니다.
Webhook
Webhook은 시스템 내에서 사전 정의된 이벤트가 발생할 때마다 지정된 URL로 자동화된 HTTP 요청을 보내는 HTTP 콜백 메커니즘입니다. 이를 통해 서비스 간 실시간 알림과 통합이 폴링 없이 가능합니다.
OAuth
OAuth(Open Authorization)는 사용자가 비밀번호를 공유하지 않고도 제3자 애플리케이션이 다른 서비스의 사용자 데이터를 접근할 수 있도록 하는 개방형 위임 인증 표준입니다.
모델 컨텍스트 프로토콜 (MCP)
모델 컨텍스트 프로토콜(MCP)은 AI 모델이 통합된 인터페이스를 통해 외부 도구, 데이터 소스, 서비스를 안전하게 연결할 수 있도록 하는 오픈 표준입니다.


