1.QNA, 게시판 상담 Restful-API_Manual

Edit

1.1소개

- http/https 프로토콜을 사용하며 POST method를 사용하여 QNA, 게시판 요청을Json형식으로 전송하고, 그 결과를 Json형식의 결과 데이터로 응답합니다.

- 서버 to 서버 연결로 클라이언트 서버의 IP를 화이트리스트로 관리합니다.- 클라이언트 서버에서 문의 요청 수신 시 마다 바로 API를 호출하여 전송합니다.

1.2API 개요

1. 요청 전송 해더는 multipart/form-data 형식입니다.

2. Multipar/form-data의 파일 전송 순서 (mandatory)- Json 형식의 요청 파라메터- 각 첨부 파일 개수만큼 raw데이터 전송

3. 첨부 파일은 최대 3개까지 가능하며 각 파일의 용량은 2M bytes(2,097,152)로 제한됩니다.

4. 첨부 파일의 종류는 jpg, jpeg, png, gif, pdf 로 제한됩니다.

1.3메시지 전송 요청

1. Host

2. Request URI

3 . 요청 파라메터

타입

필수

설명

msg_id

text(1024)

Y

요청자의 고유 ID (요청에 대한 응답 메시지 키 값으로 사용 )

tenant_alias

text(10)

Y

고객사 구분자 사전에 기 등록된 테넌트의 Alias 설정 필수

설정값은 넥서스 문의

name

text(255)

N

요청한 고객명

phone

text(255)

N

고객 연락처

email

text(255)

N/Y

URI : qna, email 상담일 경우 고객 이메일 필수 설정

inquiry_major_name

text(64)

Y

상담 유형 대분류 반드시 설정값은 넥서스 문의

inquiry_middle_name

text(64)

N

상담 유형 중분류

기 설정되어 있을 경우 반드시 입력하며 설정값은 넥서스 문의

inquiry_minor_name

text(64)

N

상담 유형 소분류

기 설정되어 있을 경우 반드시 입력하며 설정값은 넥서스 문의

subject

text(255)

N

상담내용 제목

content

text

Y

상담 내용

content_type

text(64)

Y

상담내용 text 형식 ( default: plain, html, calendar 등)

content_addinfo

text(1024) Json Array

N

고객 부가정보 Json

해당 컬럼 미사용시 해당 파라메터는 미 입력

[{"등록번호":"174923","사업자번호":"220404A15605"}]

agreement_flag

text(255) Json Array

Y

약관 동의 flag : 고객이 응답 받을 수단의 동의 항목

[{“email”:”1”, “sms”,”1”, “call”:”1”,"alarmtalk":"1"}]

request_time

text(14)

N

미 설정 시 서버에 접수된 시간을 자동 설정

클라이언트 시간 기준으로 요청 한 시간

포맷: yyyymmddhh24miss20231201152030

references

text (Json array)

N

이메일 상담 시 이에일의 header에서 발췌하여 설정

["01901da2658$dec2bd0$@nexus.co.kr", "01901d263f0$9c472bd0$@nexus.co.kr"]

file_tot_count

int

N

이메일 상담 시 첨부된 파일의 갯수

“file_tot_count”:3

file_excluded_list

text

N

이메일 상담 시 첨부파일의 개수가 3초과 시 초과된 파일명 기입

file4.jpg, file5.jpg, file6.jpg, file7.jpg

to_email

text(255)

N

수신 된 이메일의 to에 설정된 고객사의 대표 이에일

“to_email”:”help@nexus.co.kr”

dnis

text(64)

N

인입경로 구분용

“dnis”:”닷컴”

4. 전송 파라메터 Json 형식 (공백,개행 제거 후 전달해야 됩니다)

5. MultiPart form-data 요청 예시

[샘플]

POST /request/board HTTP/1.1
Host: agent1.nexuscommunity.net
Cache-Control: no-cach
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryfmPGexsk7QQdDqBV
Content-Length: 1024000


------WebKitFormBoundaryfmPGexsk7QQdDqBV
Content-Disposition: form-data; name="contents"
Content-Type: application/json;charset=UTF-8


{"msg_id":"1234567890","tenant_alias":"nexus","name":"nexus","phone":"010-0000-0000","email":"alice@test.com","inquiry_major_name":"카테고리대","inquiry_middle_name":"카테고리중","inquiry_minor_name":"카테고리소","subject":"제목","content_type":"text","content":"contentcontentcontentcontentcontent","content_addinfo":[{"등록번호":"174923","사업자번호":"220404A15605"}],"agreement_flag":[{"email":1,"sms":1,"call":1}],"request_time":"20231201152030"}
------WebKitFormBoundaryfmPGexsk7QQdDqBV
Content-Disposition: form-data; name="attach1", filename="image1.jpg"
Content-Type: image/jpg


12ca123cfab234567687990345adcdef21256897bcd234ea
------WebKitFormBoundaryfmPGexsk7QQdDqBV
Content-Disposition: form-data; name="attach2", filename="image2.png"
Content-Type: image/png


12ca123cfab234567687990345adcdef21256897bcd234ea
------WebKitFormBoundaryfmPGexsk7QQdDqBV
Content-Disposition: form-data; name="attach3", filename="info.pdf"
Content-Type: application/pdf


12ca123cfab234567687990345adcdef21256897bcd234ea
------WebKitFormBoundaryfmPGexsk7QQdDqBV--

6. 요청에 대한 결과 설명

7. Response 코드

code

message

설명

200

OK

정상 접수

1400

Bad Request

POST 이 외 Method 요청 시

1404

Not Found

미정의 된 URI 설정 시

1405

Method Not Allowed

POST 이외 메소드 설정 시

1408

Request Timeout

응답시간 초과 시 서버에서 처리 지연 등

1415

Unsupported Media Type

파일 확장자 jpg, jpeg, gif, png, pdf 이 외 파일 첨부 시

1500

Internal Server Error

서버 내부 처리 오류

1501

Attach File Size Overflow

첨부 파일 사이즈 2MBtypes 초과 시

1502

Not Found Attach File

첨부 파일의 Row데이터가 없을 경우

1503

Json Syntax Fail

요청 파라메터 json 구문 에러

1504

Cannot Be Null

필수 입력 파라메터 값이 없을 경우