개요
API란?시스템과 시스템이 서로 정보를 주고 받는 메시지 형식입니다. 챗봇이 사용자의 의도를 파악했다면, 실제 정보를 제공하거나 접수를 처리해주기 위해서는 다른 시스템과 정보를 주고받는 것이 필요합니다.
개발자가 아니라면, 개발자 동료에게 도움을 요청하세요. API관련 튜토리얼에서는 개발자가 아니더라도 동작원리를 이해할 수 있도록 따라할 수 있는 예제가 제공됩니다.
API관리와 API노드
[API관리]에서 API를 등록하여 테스트할 수 있는 환경을 제공하고, API노드에서 불러와 재사용 할 수 있게 되어있습니다. [API관리]는 [그룹]단위로 관리할 수 있게 [그룹]메뉴에서 제공되고 있고, API노드는 챗봇별로 설정하게 되어 있습니다. 다시 말해, API관리에 등록한 API는 여러 챗봇의 대화 흐름에서 재사용할 수 있습니다. 지금 보고 계신 문서는 [API 관리]에 대한 설명입니다.
사용 절차
- API의 정보를 입력하여 API를 등록합니다.
- 테스트 기능을 이용해 Response가 제대로 나오는 지 확인합니다.
- 대화 흐름의 [API노드]에서 등록한 API를 불러옵니다.
- 테스트 했던 파라미터를 고려하여 실제 대화 흐름에 맞게 파라미터를 재설정합니다.
- 실제로 챗봇이 대화 흐름 도중에 API를 호출하여 응답 또는 접수를 하게 됩니다.
API관리에서 제공되는 기능
API관리 메뉴에서는 다음과 같은 내용을 이용할 수 있습니다.
API 추가
[+API 추가]버튼을 클릭하여 신규 API를 추가합니다. 등록하는 내용은 API 기본 구성을 참고하세요.
API 수정
이미 등록된 API가 있다면, API목록에 보이게 됩니다. 등록된 API 중 하나를 클릭하면, API상세 화면이 나타나며, 화면 하단에 [변경내용 저장] 버튼을 클릭하여 수정이 가능합니다. API 수정을 위해서는 API 상세 조회 화면 하단 [변경내용 저장] 버튼을 클릭하면 됩니다. 수정할 수 있는 정보는 API 기본 구성을 참고하세요.
API 기본 구성
기본적인 API정보, 매서드 타입(GET / POST), URL, Header와 Query파라미터, Path파라미터, Body내용을 등록할 수 있습니다.
API 이름 (필수입력)
API노드에서 불러올 때 식별할 수 있는 이름입니다. API의 특징을 표현하는 이름을 정하면 됩니다.
API 설명
API설명 또는 가이드 문서의 URL을 입력해두면, 나중에 편리하게 사용이 가능합니다.
API 메서드
메서드는 클라이언트와 서버 사이에 이루어지는 요청(Request)과 응답(Response) 데이터를 주고받는 국제표준으로 정한 규약입니다. 단비Ai에서는 GET과 POST를 제공합니다. 연결하려는 API의 가이드문서에서 어떤 메소드를 지원하는지 확인하고 설정하시기 바랍니다. 나중에 다시 찾을 수 있도록 가이드문서의 URL을 남겨두면 편하겠죠?
API 메서드(필수입력)
GET 또는 POST 중에서 선택하십시오.
Request URL(필수입력)
요청할 API의 URL을 입력하는 필수 입력란입니다.
API 등록시 주의사항
단비Ai에서는 허가된 API만을 연계해드리고 있습니다. ( 단비플랫폼의 아웃바운드 정책 )
- http의 80포트와 https 443포트는 방화벽 해제요청을 하실 필요가 없습니다.
- 그 외 포트에 대해서는 우측하단 의견보내기 버튼을 눌러 사용하고자 하시는 API URL을 보내주시면 검토후 방화벽을 임시로 열어드립니다. (URL 및 포트번호를 누락한채로 요청하시는 분들이 많이 계십니다. 꼭 보내시기전에 확인해주시기 바랍니다.)
- 특별한 요청이 없으면 2주이내 방화벽을 닫습니다.
방화벽 해제
등록된 API를 활용하기 위해서는 단비플랫폼서버 정보인 아래의 2개의 IP에 대해서 방화벽을 해제한 후 사용하십시오. ( 등록된 API의 인바운드 정책 )
IP : 15.164.60.38, 13.124.226.109
API 세부 정보
API의 세부 정보에 입력한 정보를 통해 API가 실제로 동작하는지 API를 테스트할 수 있습니다. 정상동작하는 API는 나중에 API노드에서 결과값을 활용하기 위해 Tree를 호출해 올때도 활용됩니다.
Header
입력한 API URL로 보내는 요청의 Header정보를 설정하는 란입니다. Content-Type은 고정값이며 현재 JSON 형태만 지원합니다. 추가 Header 정보를 ‘Header 추가’ 버튼으로 추가할 수 있습니다.
Query 파라미터
API URL에서 ‘?’뒤에 쿼리조건을 입력하는 방식입니다. name=value 형식으로 사용하는 Query 파라미터 정보를 설정할 수 있습니다. ‘http://apiurl/api’이라는 API URL이 있을 때 ‘name’이란 변수명으로 ‘value’란 값을 보낼 때 Query 파라미터는 아래와 같이 ‘?’뒤에 추가되어 호출하게 됩니다.
http://apiurl/api?name=value
Path 파라미터
API URL에 ‘/’부터 ‘?’사이에 오는 경로로 설정하는 파라미터입니다. 경우에 따라 ‘?’조건이 없을 수 있습니다.단비Ai에서는 Path 파라미터 기능을 값 치환 방법으로 제공합니다. 즉 아래와 같이 API URL에 ‘{name}’ 과 같이 중괄호로 둘러싼 Path 파라미터의 Name을 등록되어있는 Value로 치환합니다.
Warning: Chatflow에서 사용하는 양식인 ‘#{name}’이 아닌 ‘{name}’으로 사용해야 합니다.Body
API의 메서드가 ‘POST’일 경우(API 기본 정보 ‘2’번에서 POST를 선택한 경우) Body를 입력하는 란이 표시됩니다. Body는 다른 파라미터와 마찬가지로 하나씩 추가하여 입력하거나 Text Editor를 이용하여 입력할 수 있습니다. Header에서 선택한 Content-Type(JSON 또는 XML)에 따라 Body에 입력해야하는 양식이 달라집니다.
parameter 입력 후, [API Test] 버튼을 클릭해하여 Response API Tree에서 API 적용 실행 결과를 확인할 수 있습니다.
Response API Tree
실행 성공시, Response API Tree에서 Tree 형태의 데이터가 조회됩니다.
API 적용 결과 조회된 데이터를 Tree형태로 조회해서 보여줍니다. 실패시 아무런 데이터가 조회되지 않습니다.
- 등록된 API를 파라미터 형태로 사용하는 것에 대한 자세한 사항은 API 노드에서 확인해 주세요.
저장
API 정보 정상 입력 후 변경내용 저장 버튼을 클릭해, API 등록 정보를 저장합니다.
취소
화면 하단의 취소 버튼이 존재합니다. 취소 클릭시, API 목록화면으로 이동하고, 작성하던 정보는 삭제됩니다.
API 조회
API관리 메뉴에 들어가면 등록한 API의 목록을 확인할 수 있습니다. 해당 목록에서는 등록한 API 이름으로 검색이 가능합니다.
API 사용
등록된 API는 대화 흐름의 API 노드에서 조회 및 사용 가능 합니다.
함께해요! 챗봇시대 :)
모든 사물, 디지털 매체와 말이 통하는 시대! 단비Ai와 함께 반드시 오게될 챗봇시대를 열어갔으면 좋겠습니다.
혹시 서비스 소개서를 찾고 있나요?
단비Ai 서비스 소개서는 아래 링크를 클릭해 다운로드 하실 수 있습니다.
서비스 소개서 다운로드
챗봇을 교육용도로 활용하고 싶으신가요?
단비Ai를 기반으로 만들어진 Ai교육, 에이아이런을 만나보세요 :)