> For the complete documentation index, see [llms.txt](https://docs.apidrag.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apidrag.com/base-control/web-service/http-request.md).

# Http Request

## 아이템 블록

외부 시스템에 HTTP 요청을 보내서 그 결과를 받을 수 있는 아이템 블록입니다. API Drag 에서 제공하고 있는 API 목록을 통해 다양한 OPEN API를 호출할 수 있지만, 혹시 API Drag 에서 아직 제공되지 않는 OPEN API 호출이 필요하다면 Http Request 를 통해 호출할 수 있습니다.

<figure><img src="/files/aH0BsN0jbErupQ9wEWf4" alt=""><figcaption></figcaption></figure>

## 설정 팝업

<figure><img src="/files/v41Kmhtgad3HtMtSJLIN" alt=""><figcaption></figcaption></figure>

## 설정 필드

### Method

* GET
* POST
* PUT
* DELETE
* PATCH

위 다섯가지 Method 가 제공됩니다. 서비스를 제공하는 서버의 API 문서를 기준으로 선택합니다.

### URL

서비스를 제공하는 서버의 API 문서를 기준으로 URL 을 입력합니다. 경로 매개변수가 사용되는 경우에는 **'{'** 와 **'}'** 사이에 경로 매개 변수 필드의 Key 이름을 입력하면 전송 시 경로 매개변수의 Value 로 대체하여 호출됩니다.

### 경로 매개 변수

서비스를제공하는U서버의R   API 문서에서 경로 매개 변수를 정의하였다면, 해당 경로 매개 변수 패턴에 맞게 값을 입력해서 호출해야 됩니다. URL 에 경로 매개 변수 패턴을 입력하고, 해당 값을 이 항목에서 Map 형태로 제공해 주어야 합니다.

### 쿼리 매개 변수

쿼리 매개 변수는 URL 뒤에 ?를 붙이고 key1=value1\&key2=value2 형태로 호출하는 방법입니다. 쿼리 매개 변수를 위해 URL 에 직접 고정 값을 붙일 수 있지만, 동적으로 값이 변한다면 이 항목에 Map 형태로 데이터를 제공하세요. 서비스 호출시에 쿼리 매개 변수 패턴에 맞는 값으로 변경하여 서비스를 호출합니다.

### 요청 본문

서비스를 제공하는 서버의 API 문서에 Requestbody 가 정의되어 있다면, 이 항목을 통해 값을 전달할 수 있습니다. 요청본문의 구성은 Map과 Array 를 이용하여 구성합니다. 서비스의 API 문서를 분석하여 데이터구조를 구성하시면 됩니다.

### 인증

인증 구성은 서비스를 제공하는 서버의 API 문서에 정의되어 있습니다. 해당 문서를 확인 후 알맞은 인증종류를 선택하시면 됩니다. 만약 인증을 요구하지 않는다면 **인증을 사용** 체크박스를 지우세요.

> Basic 인증

ID 와 패스워드를 사용하는 가장 기본적인 인증입니다. 보안 문제로 인해 많이 사용되지 않는 방식입니다.

<figure><img src="/files/WKz8yNSg6qmowOAaCVkW" alt=""><figcaption></figcaption></figure>

> Digest 인증

Basic 인증보다는 보안성을 강화한 인증방식입니다. 호출하는 대상 서비스에서 Digest 인증을 사용한다면, ID 와 패스워드를 발급받아 입력하시면 됩니다.

<figure><img src="/files/syEscCcgxrsOPMc2L2v3" alt=""><figcaption></figcaption></figure>

> Bearer 인증

OPEN API 에서 가장 보편적으로 많이 사용하고, 가장 안전한 인증방식입니다. 호출하는 대상 서비스에서 Bearer 인증을 사용한다면, 토큰를 발급받아 입력하시면 됩니다.

<figure><img src="/files/C9htyUfpRXKLK65AK8rV" alt=""><figcaption></figcaption></figure>

### 수신타입

* UTF 문자열
* JSON 오브젝트
* HTML
* XML
* SCRIPT

Http 호출을 하고 그 결과를 어떠한 방식으로 수신할지에 대한 설정입니다.

서비스를 제공하는 서버의 API 문서를 기준으로 수신타입을 등록하세요. OPEN API 서비스들은 보통 JSON 오브젝트 타입의 수신타입을 가장 많이 사용합니다.

### Header

* Accept : 위 **수신타입**과 같은 기능입니다. **수신타입**에 설정하지 않고 Header에 값을 설정이 가능하지만, **수신타입**에 값을 설정하면 Header 의 Accept 는 **수신타입**의 값으로 갱신됩니다.
* Accept-Encoding
* Accept-Language
* Authorization : 위 **인증** 설정과 같은 기능입니다. 위 **인증**에서 지원하지 않는 기능이 있다면 이 곳 Header 에서 직접 값을 설정할 수 있습니다. **인증**에 값을 설정하면 이 곳 헤더의 Authorization 값은 **인증**에 설정 한 값으로 갱신됩니다.
* Content-Type
* Cash-Control
* User-Agent
* Location
* 일반 : 위 항목 외에 추가 Header 설정이 필요하다면 Key 와 Value 를 사용자가 직접 입력하여 사용할 수 있습니다.
