# 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 를 사용자가 직접 입력하여 사용할 수 있습니다.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.apidrag.com/base-control/web-service/http-request.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
