쉬운·기술사전비유로 이해하는 AI·개발 용어
API와 연결

REST API

REST API

대부분의 API가 따르는 공통 규칙집이에요.

REST API 개념 다이어그램

처음으로 AI를 한 번도 써본 적 없는 서비스에 연결했을 때, 새로운 학습 곡선을 각오했어요. 그런데 없었어요. 지난번에 연결했던 서비스와 거의 똑같이 작동했거든요. 모양도 같고, 움직임도 같고, 로고만 달랐어요. 우연이 아니에요. 그게 REST예요.

API는 드라이브스루 창구예요. AI가 찾아가서 메뉴에 있는 걸 주문하는 곳이죠. 문제는, 식당마다 창구를 다르게 만들면(높이도 다르고, 언어도 다르고, 감자튀김 가리키는 방법도 다르면) 갈 때마다 주문 방법을 새로 배워야 한다는 거예요. 지치죠. REST는 이렇게 합의해요: 창구를 모두가 쓰는 방식으로 만들자. 그러면 아무도 다시 배울 필요가 없어요.

핵심은 두 가지예요.

  1. 모든 것은 주소가 있는 '대상'이에요. 주문은 /orders에 있고, 고객은 /customers에 있고, 상품은 /products에 있어요. 각각 고유한 자리가 있죠. 마트 통로처럼요. "데이터 찾아줘"가 아니라, 해당 통로로 직접 가는 거예요.

  2. 그 대상에 쓸 수 있는 동사는 몇 개 안 돼요. 수백 개의 명령어가 아니에요. 이미 익숙한 것들이에요:

이 둘을 합치면 거의 영어처럼 읽혀요. /orders 통로에 가서 get. /products 통로에 가서 create. 이 예측 가능성이 전부예요.

교통 법규와 같아요. 빨간불은 멈추고, 초록불은 가고, 핸들은 둥글고, 항상 같은 자리에 있죠. 새 도시에 갔다고 운전을 새로 배우지 않아요. 그냥 운전해요. REST는 API에 그런 공통 예절을 부여해요. 배운 것이 이어지는 거예요.

그래서 개발자(또는 AI)가 처음 보는 서비스도 오후 반나절이면 파악할 수 있어요. RESTful API라면, 대부분이 그렇듯, 문서 한 줄 읽기 전에 이미 어떻게 작동할지 대강 알 수 있거든요.

이 단어를 실제로 마주칠 때. 누군가 "REST API가 있어요" 또는 "RESTful이에요"라고 말하면, 그게 뜻하는 바는 이렇습니다:

"여기선 딱히 놀랄 일 없어요"라는 조용한 약속이에요. 그게 다예요.

직접 만들 필요도, 규칙집을 외울 필요도 없어요. RESTful이라는 말을 들으면 "예상대로 작동한다"로 이해하면 돼요. 반대로 "RESTful이 아니다"라는 불평을 들으면 "이건 특이하게 만들어져서 별도로 익혀야 한다"는 뜻이에요. 시작 전에 얼마나 피곤할지 바로 알 수 있는 거죠.

이 동사들에는 공식 이름이 있어요: HTTP 메서드예요.