✅ 해당 기능이 제공되는 다우오피스 상품 유형
| 무료 | 서비스형 | 엔터프라이즈형 | HR형 | ||
|---|---|---|---|---|---|
| 스탠다드 | 스탠다드 | 프리미엄 | 스탠다드 | 프리미엄 | HR |
| ❌ | ❌ | ❌ | |||
외부 시스템에서 다우오피스 사용자에게 알림(m-push, 웹/메신저, 이메일)을 전송하기 위한 OpenAPI입니다.
알림은 사원번호(employeeNumber) 기준으로 대상자를 지정하며, 사전에 조직 정보 연동을 통해 사원번호를 확보해야 합니다.
✅ 연동기준
- 알림 대상자는 employeeNumber 기준
- 알림 유형 : 모바일 푸시(m-push), 웹/PC 메신저, 이메일 알림
- 알림 메시지 앞에 자동으로 [OpenAPI] 접두어가 붙으며, 변경 불가
✔️ Request URL
https://api.daouoffice.com/public/v1/noti
다우오피스 OpenAPI 서비스는 시스템연동 서버로 API 호출을 진행하기 때문에 별도 고객사 그룹웨어 URL이 아닌 https://api.daouoffice.com 사용
✔️ HTTP Method
POST (Content-Type: application/json; charset=UTF-8)
✉️ Request Body
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| clientId | String | ✅ | ✅ | 기존 발급받은 서비스 인증 Id key |
| clientSecret | String | ✅ | ✅ | 식별/인증을 위한 서비스 보안 key |
| productName | String | ⛔ | ⛔ | 제휴 제품명 |
| productVersion | String | ⛔ | ⛔ | 제품 버전 정보 |
| clientCompanyName | String | ⛔ | ⛔ | 제휴사 고객 식별 정보 |
| sender | String | ✅ | ⛔ | 발신자 사원번호 |
| receivers | Array[String] | ✅ | ⛔ | 수신자 사원번호 목록 |
| message | String | ✅ | ⛔ | 알림 메시지(웹, 앱 필수) |
| mailTitle | String | ⛔ | ⛔ | 메일 제목 (없을 시, message 사용) |
| mailMessage | String | ⛔ | ⛔ | 메일 본문 (없을 시, message 사용) |
| linkUrl | String | ✅ | ⛔ | 알림 클릭 시 이동할 URL (http 또는 https 필수) |
- productName / productVersion / clientCompanyName은 외부 시스템의 정보로, API 호출 시 문제 발생 시 로그 분석을 위한 참고용 항목이나 개발 초기에는 생략해도 되지만, 정식 연동 시에는 입력해주는 것이 좋습니다.
message는 웹/앱 알림 발송 시 필수
이메일 발송 시 mailTitle, mailMessage 포함 권장
수신자 수에는 제한이 있을 수 있음 (API 오류 코드 참고)
✉️ Request 예시
POST /public/v1/noti HTTP/1.1
api.daouoffice.com
Content-Type: application/json
{
"clientSecret" : "xxxxxxxxxxx",
"productName" : "제휴 서비스 및 제품명",
"productVersion" : "제휴 서비스 및 제품 버전",
"clientCompanyName" : "제휴 서비스 및 제품 식별코드",
"sender" : "U1001",
"receivers" : ["U2034","U2345","U2456","U2456"],
"mailTitle" : "업무가 도착하였습니다.",
"mailMessage" : "업무가 도착하였습니다.",
"message" : "중요한 업무가 도착하였습니다. 빠른 처리 부탁드립니다.",
"linkUrl" : "https://daouoffice.com/app/board",
}
📬 Response Body
data 객체
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| code | String | ✅ | ⛔ | API 호출결과 코드 |
| message | String | ✅ | ⛔ | API 호출결과 메시지 |
| messageDetail | String | ⛔ | ⛔ | API 호출결과 메시지 상세내용 (실패한 경우만 리턴) |
| data | Object | ✅ | ⛔ | API 호출결과 상세내용 JSON Object 배열 |
data 배열 구조
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| validReceivers | Object | ✅ | ⛔ | API 호출결과 상세 내용 JSON Object 배열 |
| invalidReceivers | Object | ✅ | ⛔ | API 호출결과 상세 내용 JSON Object 배열 |
validReceivers 구조
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| Key | String | ✅ | ⛔ | 성공한 다우오피스 계정 사번(employeeNumber) |
| Value | String | ✅ | ⛔ | 성공 텍스트 반환 ("성공") |
invalidReceivers 구조
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| Key | String | ⛔ | ⛔ | 실패한 다우오피스 계정 사번(employeeNumber) |
| Value | String | ⛔ | ⛔ | 실패 텍스트 반환 (ex. “존재하지 않는 계정입니다.", “중지된 계정입니다.”) |
📬Response 예시
Content-Type: application/json;charset=UTF-8
{
"message" : "OK",
"data" : {
"validReceivers": { "U2034": "성공", "U2345": "성공" },
"invalidReceivers": { "U2456": "존재하지 않는 계정입니다.", "U2457": "중지된 계정입니다." }
}
🚫 주요 오류 코드 예시
| 코드 | 내용 | 설명(Description) |
|---|---|---|
| 901 | 유효하지 않은 client ID | client ID를 확인하세요. |
| 902 | 유효하지 않은 Client Secret | client Secret을 확인하세요. |
| 918 | 알림 연동 송신자(sender) 데이터 누락 | 알림 연동 송신자(sender) 값은 필수값입니다. |
| 919 | 알림 연동 수신자(receivers) 데이터 누락 | 알림 연동 수신자(receivers) 값은 필수값입니다. |
| 920 | 알림 연동 수신자(receivers)의 최대 인원 수 초과 | 알림 연동 수신자(receivers)의 최대 인원 수는 { }명입니다. |
| 921 | 알림 연동 알림 메세지(message) 데이터 누락 | 알림 연동 알림메세지(message) 값은 필수값입니다. |
| 922 | 알림 연동 메일메세지(message, mailTitle, mailMessage) 데이터 누락 | 알림 연동 메일메세지(message, mailTitle, mailMessage) 값은 필수값입니다. |
| 923 | 알림 연동 linkUrl은 http:// 혹은 https:// 포함 필요 | 알림 연동 linkUrl은 http:// 혹은 https://를 포함해야합니다. |
| 924 | 알림 연동 한달 최대 사용량 초과 | 알림 연동 한달 최대 사용량 { }건을 넘었습니다. |
| 925 | 알림 연동 하루 최대 사용량 초과 | 알림 연동 하루 최대 사용량 { }건을 넘었습니다. |
호출 제한
| 기준 | 제한 | 조건 |
|---|---|---|
| 월간 | 1,500회 | - |