✅ 해당 기능이 제공되는 다우오피스 상품 유형
| 무료 | 서비스형 | 엔터프라이즈형 | HR형 | ||
|---|---|---|---|---|---|
| 스탠다드 | 스탠다드 | 프리미엄 | 스탠다드 | 프리미엄 | HR |
| ❌ | ❌ | ❌ | |||
다우오피스 Works 연동 API는 외부 시스템에서 Works 앱에 데이터를 자동으로 등록, 수정, 삭제할 수 있도록 제공되는 기능입니다.
예를 들어, 외부에서 수집한 데이터를 다우오피스 Works 앱에 자동으로 넣거나, 기존 데이터를 업데이트하거나 삭제할 수 있어 업무 자동화가 가능합니다.
✅ 사용 전 준비사항
Works API를 사용하려면 다음 조건을 먼저 충족해야 합니다:
- Works 앱 설정에서 "외부데이터 가져오기" 기능을 ON으로 설정
- OpenAPI 인증키 발급 (clientId, clientSecret)
- Works 전용 토큰 발급 (사용자 계정 기준으로 발급)
📑Works 앱 고급 데이터 관리 가이드 참고하기
✔️ Request URL
https://api.daouoffice.com/public/v1/works
다우오피스 OpenAPI 서비스는 시스템연동 서버로 API 호출을 진행하기 때문에 별도 고객사 그룹웨어 URL이 아닌 https://api.daouoffice.com 사용
✔️ HTTP Method
POST (Content-Type: application/json; charset=UTF-8)
| 작업 | 방식 | 설명 |
|---|---|---|
| 등록 | POST | 새로운 데이터를 Works 앱에 추가 |
| 수정 | PUT | 기존 데이터를 수정 |
| 삭제 | DELETE | 특정 데이터를 삭제 |
✉️ Request Body
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| clientId | String | ✅ | ✅ | 기존 발급받은 서비스 인증 Id key |
| clientSecret | String | ✅ | ✅ | 식별/인증을 위한 서비스 보안 key |
| token | String | ✅ | ✅ | 사전 발급된 works 토큰. 발급한 사람의 아이디로 변경 이력 기록 |
| params | Object | ✅ | ⛔ | Works 연동을 위한 배열 |
params 구조
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| Key | String | ✅ | ⛔ | Parameter 변수 |
| Value | String | ✅ | ⛔ | 각 변수의 내용 |
Works API 연동 가능한 컴포넌트 타입
- 텍스트, 멀티 텍스트, 숫자, 드롭 박스, 체크박스, 단일 선택, 리스트 박스, 날짜, 시간, 날짜와 시간
- 지원하는 컴포넌트 중에 연동 필드로 설정되어 있거나 자동계산 필드라면 대상에서 제외
- Key값은 Works > 관리 > 외부 데이터 가져오기 > 연동 항목관리에서 파라미터명으로 설정한 값
- 틀린 값이거나 체크되어 있지 않을 경우 값을 보내도 실제 데이터에는 반영되지 않음
- 날짜, 시간, 날짜와 시간의 경우 각 yyyy-mm-dd / hh:mm / yyyy-mm-dd hh:mm 포멧 허용
📑Works 컴포넌트 참고 하기
✉️ Request 예시
등록 POST
POST /public/v1/works HTTP/1.1
api.daouoffice.com
Content-Type: application/json; charset=UTF-8
{
"clientSecret" : "xxxxxxxxxx",
"token" : "xxxxxxxxxx",
"params" : {
"id" : "1",
"datetime" : "2024-11-04 13:00",
"date" : "2024-11-04",
"time" : "13:00",
"Title" : "제목 생성",
"listbox" : [1, 2, 3],
"checkbox" : ["체크1", "체크2"],
"radio" : "옵션1",
"dropbox" : ["드롭2"],
"content" : "Works 연동 멀티텍스트 예시"
}
}
수정 PUT
api.daouoffice.com
Content-Type: application/json; charset=UTF-8
{
"clientSecret" : "xxxxxxxxxx",
"token" : "xxxxxxxxxx",
"params" : {
"id" : "1",
"Title" : "제목 수정",
"dropbox" : ["드롭2", "드롭3"],
"listbox" : [1, 2, 3]
}
삭제 DELETE
DELETE /public/v1/works HTTP/1.1
api.daouoffice.com
Content-Type: application/json; charset=UTF-8
{
"clientSecret" : "xxxxxxxxxx",
"token" : "xxxxxxxxxx",
"params" : {
"id" : "1"
}
}
📬Response Body
data 객체
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| code | String | ✅ | ⛔ | API 호출결과 코드 |
| message | String | ✅ | ⛔ | API 호출결과 코드 |
| messageDetail | String | ⛔ | ⛔ | API 호출결과 메시지 상세내용 (실패한 경우만 리턴) |
📬Response 예시
Content-Type: application/json;charset=UTF-8
{
"message" : "OK",
}
🚫 주요 오류 코드 예시
| 코드 | 내용 | 설명(Description) |
|---|---|---|
| 901 | 유효하지 않은 client ID | client ID를 확인하세요. |
| 902 | 유효하지 않은 Client Secret | client Secret을 확인하세요. |
호출 제한
| 기준 | 제한 | 조건 |
|---|---|---|
| 월간 | 1,500회 | - |