# 팩스전송

## 1. SendFax - 팩스 전송

팩스 1건을 전송합니다. (최대 전송파일 개수: 30개)

```ruby
def sendFax(corpNum, senderNum, senderName, receiverNum, receiverName, filePath, reserveDT = '', userID = '', adsYN = false, title = '', requestNum = '')
```

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- senderNum `type: String` `length: 20` `required: Y` `description: 발신번호`
  - 팝빌에 사전등록되지 않은 발신번호를 입력시 '원발신번호'로 전송됨
- senderName `type: String` `length: 100` `required: N` `description: 발신자명`
- receiverNum `type: String` `length: 20` `required: Y` `description: 수신번호`
- receiverName `type: String` `length: 30` `required: N` `description: 수신자명`
- filePath `type: Array` `length: 30` `required: Y` `description: 파일 목록`
  - [\[참고\] 권장 파일 확장자](https://developers.popbill.com/reference/fax/ruby/api#available-extension)
  - 최대 : 30개
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- adsYN `type: Boolean` `length: -` `required: N` `description: 광고팩스 전송 여부`
  - `true`: 광고
  - `false`: 일반 : 기본값
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 2. SendFax\_multi - 팩스 전송 (동보전송)

동일한 팩스파일을 다수의 수신자에게 전송하기 위해 팝빌에 접수합니다. (최대 전송파일 개수 : 30개) (최대 1,000건)

```ruby
def sendFax_multi(corpNum, senderNum, senderName, receivers, filePaths, reserveDT = '', userID = '', adsYN = false, title = '', requestNum = '')
```

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- senderNum `type: String` `length: 20` `required: Y` `description: 발신번호`
  - 팝빌에 사전등록되지 않은 발신번호를 입력시 '원발신번호'로 전송됨
- senderName `type: String` `length: 100` `required: Y` `description: 발신자명`
- receivers `type: FaxReceiver[ ]` `length: -` `required: Y` `description: 수신자 정보`
  - 최대 : 1,000건
  - rcv `type: String` `length: 20` `required: Y` `description: 팩스 단말기 번호 또는 인터넷 팩스 번호`
  - rcvnm `type: String` `length: 30` `required: N` `description: 수신자명`
- filePaths `type: Array` `length: 30` `required: Y` `description: 파일 목록`
  - [\[참고\] 권장 파일 확장자](https://developers.popbill.com/reference/fax/ruby/api#available-extension)
  - 최대 : 30개
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- adsYN `type: Boolean` `length: -` `required: N` `description: 광고팩스 전송 여부`
  - `true`: 광고
  - `false`: 일반 : 기본값
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 3. SendFaxBinary - 팩스 전송 (바이너리)

전송할 파일의 바이너리 데이터로 팩스 1건을 팝빌에 접수합니다. (최대 전송파일 개수: 30개)

```ruby
def sendFaxBinary(corpNum, senderNum, senderName, receiverNum, receiverName, fileDatas, reserveDT = '', userID = '', adsYN = false, title = '', requestNum = '')
```

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- senderNum `type: String` `length: 20` `required: Y` `description: 발신번호`
  - 팝빌에 사전등록되지 않은 발신번호를 입력시 '원발신번호'로 전송됨
- senderName `type: String` `length: 100` `required: N` `description: 발신자명`
- receiverNum `type: String` `length: 20` `required: Y` `description: 수신번호`
- receiverName `type: String` `length: 30` `required: N` `description: 수신자명`
- fileDatas `type: FileData[ ]` `length: -` `required: Y` `description: 파일 목록`
  - [\[참고\] 권장 파일 확장자](https://developers.popbill.com/reference/fax/ruby/api#available-extension)
  - 최대 : 30개
  - fileName `type: String` `length: 255` `required: Y` `description: 팩스로 전송할 파일명`
  - fileData `type: Blob` `length: -` `required: Y` `description: 팩스로 전송할 파일의 바이너리 데이터`
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- adsYN `type: Boolean` `length: -` `required: N` `description: 광고팩스 전송 여부`
  - `true`: 광고
  - `false`: 일반 : 기본값
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 4. SendFaxBinary\_multi - 팩스 전송 (바이너리 동보전송)

전송할 파일의 바이너리 데이터로 다수의 수신자에게 팩스를 전송하기 위해 팝빌에 접수합니다. (최대 전송파일 개수 : 30개) (최대 1,000건)

```ruby
def sendFaxBinary_multi(corpNum, senderNum, senderName, receivers, fileDatas, reserveDT = '', userID = '', adsYN = false, title = '', requestNum = '')
```

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- senderNum `type: String` `length: 20` `required: Y` `description: 발신번호`
  - 팝빌에 사전등록되지 않은 발신번호를 입력시 '원발신번호'로 전송됨
- senderName `type: String` `length: 100` `required: Y`
  - 발신자명, 전송정보에 발신자명 없는 경우 적용
- receivers `type: FaxReceiver[ ]` `length: -` `required: Y` `description: 수신자 정보`
  - 최대 : 1,000건
  - rcv `type: String` `length: 20` `required: Y` `description: 팩스 단말기 번호 또는 인터넷 팩스 번호`
  - rcvnm `type: String` `length: 30` `required: N` `description: 수신자명`
- fileDatas `type: FileData[ ]` `length: -` `required: Y` `description: 파일 목록`
  - [\[참고\] 권장 파일 확장자](https://developers.popbill.com/reference/fax/ruby/api#available-extension)
  - 최대 : 30개
  - fileName `type: String` `length: 255` `required: Y` `description: 팩스로 전송할 파일명`
  - fileData `type: Blob` `length: -` `required: Y` `description: 팩스로 전송할 파일의 바이너리 데이터`
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- adsYN `type: Boolean` `length: -` `required: N` `description: 광고팩스 전송 여부`
  - `true`: 광고
  - `false`: 일반 : 기본값
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 5. ResendFax - 팩스 재전송 (접수번호)

팝빌에서 반환받은 접수번호를 통해 팩스 1건을 재전송합니다.

- 발신/수신 정보 미입력시 기존과 동일한 정보로 팩스가 전송되고, 접수일 기준 최대 60일이 경과되지 않는 건만 재전송이 가능합니다.

```ruby
def resendFax(corpNum, receiptNum, senderNum, senderName, receiveNum, receiveName, reserveDT = '', userID = '', title = '', requestNum = '')
```

> **팩스 재전송이 가능한 상태는 다음과 같습니다.**
>
> 1. 원본 팩스 접수 후 60일 이내이며, 최초 팩스 전송 시 변환에 성공한 경우
> 2. 최초 팩스 전송 시 변환에 실패했으나 재전송이 가능한 경우
>
> **재전송이 가능한 변환 실패 코드는 아래와 같습니다.**
>
> - 414 : 팩스 변환 실패
> - 415 : 팩스 변환 시간 초과
> - 416 : 팩스 파일 처리 중 오류
> - 498 : 기타 오류로 인한 변환 실패

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- receiptNum `type: String` `length: 18` `required: Y`
  - 원본 팩스 접수번호
- senderNum `type: String` `length: 20` `required: N` `description: 발신번호`
  - 발신번호를 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신번호
- senderName `type: String` `length: 100` `required: N` `description: 발신자명`
  - 발신자명을 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신자명
- receiveNum `type: String` `length: 20` `required: N` `description: 수신번호`
  - 수신번호를 변경해야할 경우 사용
  - 기본값 : 원본 팩스 수신번호
- receiveName `type: String` `length: 30` `required: N` `description: 수신자명`
  - 수신자명을 변경해야할 경우 사용
  - 기본값 : 원본 팩스 수신자명
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 6. ResendFax\_multi - 팩스 재전송 (접수번호 동보전송)

동일한 팩스파일을 다수의 수신자에게 전송하기 위해 팝빌에 접수합니다. (최대 전송파일 개수: 30개) (최대 1,000건)

- 발신/수신 정보 미입력시 기존과 동일한 정보로 팩스가 전송되고, 접수일 기준 최대 60일이 경과되지 않는 건만 재전송이 가능합니다.

```ruby
def resendFax_multi(corpNum, receiptNum, senderNum = '', senderName = '', receivers = nil, reserveDT = '', userID = '', title = '', requestNum = '')
```

> **팩스 재전송이 가능한 상태는 다음과 같습니다.**
>
> 1. 원본 팩스 접수 후 60일 이내이며, 최초 팩스 전송 시 변환에 성공한 경우
> 2. 최초 팩스 전송 시 변환에 실패했으나 재전송이 가능한 경우
>
> **재전송이 가능한 변환 실패 코드는 아래와 같습니다.**
>
> - 414 : 팩스 변환 실패
> - 415 : 팩스 변환 시간 초과
> - 416 : 팩스 파일 처리 중 오류
> - 498 : 기타 오류로 인한 변환 실패

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- receiptNum `type: String` `length: 18` `required: Y`
  - 원본 팩스 접수번호
- senderNum `type: String` `length: 20` `required: N` `description: 발신번호`
  - 발신번호를 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신번호
- senderName `type: String` `length: 100` `required: N` `description: 발신자명`
  - 발신자명을 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신자명
- receivers `type: FaxReceiver[ ]` `length: -` `required: N` `description: 수신자 정보`
  - 최대 : 1,000건
  - rcv `type: String` `length: 20` `required: Y` `description: 팩스 단말기 번호 또는 인터넷 팩스 번호`
  - rcvnm `type: String` `length: 30` `required: N` `description: 수신자명`
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 7. ResendFAXRN - 팩스 재전송 (요청번호)

파트너가 할당한 요청번호를 통해 팩스 1건을 재전송합니다.

- 발신/수신 정보 미입력시 기존과 동일한 정보로 팩스가 전송되고, 접수일 기준 최대 60일이 경과되지 않는 건만 재전송이 가능합니다.

```ruby
def resendFAXRN(corpNum, orgRequestNum, senderNum, senderName, receiveNum, receiveName, reserveDT = '', userID = '', title = '', requestNum = '')
```

> **팩스 재전송이 가능한 상태는 다음과 같습니다.**
>
> 1. 원본 팩스 접수 후 60일 이내이며, 최초 팩스 전송 시 변환에 성공한 경우
> 2. 최초 팩스 전송 시 변환에 실패했으나 재전송이 가능한 경우
>
> **재전송이 가능한 변환 실패 코드는 아래와 같습니다.**
>
> - 414 : 팩스 변환 실패
> - 415 : 팩스 변환 시간 초과
> - 416 : 팩스 파일 처리 중 오류
> - 498 : 기타 오류로 인한 변환 실패

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- orgRequestNum `type: String` `length: 36` `required: Y`
  - 원본 팩스 요청번호
- senderNum `type: String` `length: 20` `required: N` `description: 발신번호`
  - 발신번호를 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신번호
- senderName `type: String` `length: 100` `required: N` `description: 발신자명`
  - 발신자명을 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신자명
- receiveNum `type: String` `length: 20` `required: N` `description: 수신번호`
  - 수신번호를 변경해야할 경우 사용
  - 기본값 : 원본 팩스 수신번호
- receiveName `type: String` `length: 30` `required: N` `description: 수신자명`
  - 수신자명을 변경해야할 경우 사용
  - 기본값 : 원본 팩스 수신자명
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 8. ResendFAXRN\_multi - 팩스 재전송 (요청번호 동보전송)

파트너가 할당한 요청번호를 통해 다수건의 팩스를 재전송합니다. (최대 전송파일 개수: 30개) (최대 1,000건)

- 발신/수신 정보 미입력시 기존과 동일한 정보로 팩스가 전송되고, 접수일 기준 최대 60일이 경과되지 않는 건만 재전송이 가능합니다.

```ruby
def resendFAXRN_multi(corpNum, orgRequestNum, senderNum = '', senderName = '', receivers = nil, reserveDT = '', userID = '', title = '', requestNum = '')
```

> **팩스 재전송이 가능한 상태는 다음과 같습니다.**
>
> 1. 원본 팩스 접수 후 60일 이내이며, 최초 팩스 전송 시 변환에 성공한 경우
> 2. 최초 팩스 전송 시 변환에 실패했으나 재전송이 가능한 경우
>
> **재전송이 가능한 변환 실패 코드는 아래와 같습니다.**
>
> - 414 : 팩스 변환 실패
> - 415 : 팩스 변환 시간 초과
> - 416 : 팩스 파일 처리 중 오류
> - 498 : 기타 오류로 인한 변환 실패

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- orgRequestNum `type: String` `length: 36` `required: Y`
  - 원본 팩스 요청번호
- senderNum `type: String` `length: 20` `required: N` `description: 발신번호`
  - 발신번호를 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신번호
- senderName `type: String` `length: 100` `required: N` `description: 발신자명`
  - 발신자명을 변경해야할 경우 사용
  - 기본값 : 원본 팩스 발신자명
- receivers `type: FaxReceiver[ ]` `length: -` `required: N` `description: 수신자 정보`
  - 수신자 정보를 변경해야할 경우 사용
  - 최대 : 1,000건
  - 기본값 : 원본 팩스 수신자 정보
  - rcv `type: String` `length: 20` `required: Y` `description: 팩스 단말기 번호 또는 인터넷 팩스 번호`
  - rcvnm `type: String` `length: 30` `required: N` `description: 수신자명`
- reserveDT `type: String` `length: 14` `required: N` `description: 전송 예약일시`
  - 형식 : yyyyMMddHHmmss
  - 기본값 : 즉시전송
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`
- title `type: String` `length: 100` `required: N` `description: 팩스제목`
- requestNum `type: String` `length: 36` `required: N` `description: 요청번호`
  - 파트너가 접수 단위를 식별하기 위해 할당하는 관리번호
  - 영문 대소문자, 숫자, 특수문자('-','\_')만 이용 가능

### 응답

String - 요청에 대한 접수번호(receiptNum)

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 9. CancelReserve - 예약전송 취소 (접수번호)

팝빌에서 반환받은 접수번호로 예약된 팩스를 전송 취소합니다. (예약시간 10분 전까지 가능)

```ruby
def cancelReserve(corpNum, receiptNum, userID = '')
```

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- receiptNum `type: String` `length: 18` `required: Y` `description: 팝빌에서 할당한 접수번호`
  - 팩스 예약전송 요청의 반환값
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`

### 응답

**Response**

- code `type: Integer` `length: -` `description: API 처리에 대한 응답코드`
  - `1`: 성공
- message `type: String` `length: -` `description: API 처리에 대한 응답메시지`

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`

## 10. CancelReserveRN - 예약전송 취소 (요청번호)

파트너가 할당한 요청번호로 예약된 팩스를 전송 취소합니다. (예약시간 10분 전까지 가능)

```ruby
def cancelReserveRN(corpNum, requestNum, userID = '')
```

### 요청

**Parameters**

- corpNum `type: String` `length: 10` `required: Y` `description: 팝빌회원 사업자번호 ('-' 제외)`
- requestNum `type: String` `length: 36` `required: Y` `description: 파트너가 할당한 요청번호`
- userID `type: String` `length: 50` `required: N` `description: 팝빌회원 아이디`

### 응답

**Response**

- code `type: Integer` `length: -` `description: API 처리에 대한 응답코드`
  - `1`: 성공
- message `type: String` `length: -` `description: API 처리에 대한 응답메시지`

### 예외

**PopbillException**

- code `type: Integer` `length: -` `description: API 처리 실패에 대한 오류코드`
  - 음의 정수 8자리 숫자값 [\[참고\] 오류코드](https://developers.popbill.com/error-code)
- message `type: String` `length: -` `description: API 처리 실패에 대한 오류메시지`
