# 일회성 메시지 - API 발송

{% hint style="info" %}
에픽의 API 발송 기능을 사용할 때 아래 순서에 따라 세팅해주세요.

1. 에픽 콘솔에서 'API 발송' 옵션을 선택하여 자동화 캠페인을 생성한다.
2. 개발자에게 발송을 요청한다.
   {% endhint %}

#### API Key

API Key는 에픽 로그인 후 마이페이지에서 확인하실 수 있습니다.

#### 요청 URL

{% code title="HTTP" %}

```
https://api.effic.biz/one-time-message/template
```

{% endcode %}

#### API Header

| name          | description                                                  |
| ------------- | ------------------------------------------------------------ |
| Authorization | <p>- Bearer ${accessKey}<br>- 마이페이지에서 확인할 수 있는 accessKey</p> |

#### Method

`POST`

#### 요청 Body

```jsx
{
  "messageContent" : "문자 내용",
  "hostNumber": "010-1234-1234",
  "recipient": [
    {
      "phone": "010-1234-1234",
      "variables" : 
        { 
          "var1" : "변수명"
        }
    }],
  "messageTitle": "문자 제목",
  "nightFallbackHour" : "10",
  "reservationTime" : "2024-09-06T00:55:02.508881+09:00",
  "advertiserInfo": true,
  "advertiseTitle": "에픽",
  "nightFallbackHour": "10"
}
```

**Parameters**

<table><thead><tr><th width="212">항목</th><th width="94">필수여부</th><th width="92">type</th><th>설명</th><th>비고</th></tr></thead><tbody><tr><td>messageContent</td><td>필수</td><td>string</td><td>메시지 내용</td><td>-#{} 를 사용해 변수를 포함시킬 수 있음</td></tr><tr><td>hostNumber</td><td>필수</td><td>string</td><td>발신번호</td><td>-워크 스페이스에 등록된 발신번호 만 사용 가능</td></tr><tr><td>recipient</td><td>필수</td><td>object</td><td>수신자정보</td><td>-아래 항목 참조<br>-최대 1500개</td></tr><tr><td>recipient.phone</td><td>필수</td><td>string</td><td>수신자 전화번호</td><td>-xxx-xxxx-xxxx 형식</td></tr><tr><td>recipient.variables</td><td>선택</td><td>object</td><td>메시지 변수</td><td>-#{} 에 들어갈 변수명 </td></tr><tr><td>advertiseInfo</td><td>선택</td><td>boolean</td><td>광고성 알람 여부</td><td></td></tr><tr><td>advertiseTitle</td><td>선택</td><td>string</td><td>브랜드명</td><td>광고성 알람일 경우 필수값</td></tr><tr><td>nightFallbackHour</td><td>선택</td><td>string</td><td>야간 대체 발송 시간</td><td><p>-야간시간대에 알람이 발송이 예정 되어 있다면nightFallbackHour 시간으로 변경하여 알람을 예약함</p><p><br>-광고성 문자 및 친구톡 캠페인에서만 설정 가능</p></td></tr><tr><td>reservationTime</td><td>선택</td><td>string</td><td>-예약 시간</td><td>-한국 시간대(KST) 기준<br><br>-ISO8601 형식<br><br>-야간시간대<br>(21:55 ~ 08:00)에 예약 할 수 없습니다.</td></tr></tbody></table>

Response

```jsx
{
  "oneTimeMessageId" :"123",
  "messages" : [
    {
      "phone": "010-1234-1234",
      "traceId" : "38b4d872-29a6-423d-8a76-ac721953ab78"
    }]
}
```

::

<table><thead><tr><th width="236">항목</th><th width="94">필수여부</th><th width="66">type</th><th width="171">설명</th><th>비고</th></tr></thead><tbody><tr><td>oneTimeMessageEventId</td><td>필수</td><td>string</td><td>캠페인 id</td><td></td></tr><tr><td>messages</td><td>필수</td><td>object</td><td>발송된 알람 정보</td><td>-아래 항목 참조<br>-최대 1500개</td></tr><tr><td>messages.phone</td><td>필수</td><td>string</td><td>알람 수신 번호</td><td></td></tr><tr><td>messages.traceId</td><td>필수</td><td>string</td><td>알람의 부여되는 id</td><td>-발송된 알람의 부여되는 uuid<br><br>-발송 여부 확인을 식별</td></tr></tbody></table>

#### Error

<table><thead><tr><th width="236">항목</th><th width="94">필수여부</th><th width="99">type</th><th width="155">설명</th><th>비고</th></tr></thead><tbody><tr><td>Id</td><td>필수</td><td>string</td><td>error id</td><td></td></tr><tr><td>message</td><td>필수</td><td>object</td><td>error message</td><td></td></tr><tr><td>statusCode</td><td>필수</td><td>string</td><td>http status code</td><td></td></tr></tbody></table>
