개요

다우오피스 OpenAPI 서비스의 근태 기록 동기화를 위한 <근태 기록 등록 API> 입니다. 연동된 근태 기록은 DOAS(DaouOffice API System)의 중간 DB에 저장된 후 자체적인 동기화 주기 설정에 따라 다우오피스에 연동됩니다. 근무일자(workingDay)+사원번호(employeeNumber)가 중복으로 API 호출되는 경우 최종 덮어쓰기 방식으로 DOAS 중간 DB에 저장되며, 최종으로 저장된 중간DB 내용이 동기화 됩니다. 자동 동기화 주기는 최대 4회 설정할 수 있습니다.

신규로 추가/변경이 필요한 근태 기록만 전송하거나 동일한 데이터를 반복적으로 호출할 경우 연동이 차단될 수 있으며, 초기 연동 및 갱신을 위하여 과거(특정 기간)의 데이터를 전송할 경우 기존 근태 기록이 업데이트(덮어쓰기)됩니다.

근태 기록을 연동하는 시스템과 다우오피스에서 동일한 사원번호(employeeNumber)가 설정되어있는 사용자만 연동됩니다. 전달된 근태 기록 중 다우오피스에 등록되지 않은 근태 유형이 포함되어 있을 경우 해당 데이터는 동기화되지 않습니다. 이를 방지하기 위해 정기적으로 근태 유형을 동기화 시키도록 개발하기를 권장합니다.

 

Request URL

https://api.daouoffice.com/public/v2/attnd/record
※ 다우오피스 OpenAPI 서비스는 DOAS 서버로 API 호출을 진행하기 때문에 별도 고객사 그룹웨어 URL이 아닌 “https://api.daouoffice.com”을 사용합니다.

 

HTTP Method

POST (Content-Type: application/json; charset=UTF-8)

 

Request Parameters

변수
(Parameter)
타입(Type) 필수
여부
사전
발급
설명
(Description)
clientId String Y Y 고객사 식별/인증을 위한 서비스 인증ID / Client ID
※ <
인증키 발급 API>를 통해 전달받은 값
clientSecret String Y Y 고객사 식별/인증을 위한 서비스 보안KEY / Secret Key
※ <
인증키 발급 API>를 통해 전달받은 값
productName String N N 업무시스템 제품명(제휴시스템 사용할 경우 입력)
productVersion String N N 업무시스템 제품버전(제휴시스템 사용할 경우 입력)
clientCompanyName String N N 업무시스템 고객사 식별정보(제휴시스템 사용할 경우 입력)
data Object Y N 근태 기록 정보 상세내용 JSON Object 배열

※ productName, productVersion, clientCompanyName은 외부업무시스템의 정보를 전달받아 문제 발생 시 다우기술에서 로그 확인을 위해 필요한 사항입니다. 필수 입력값은 아니므로 초기 개발 시 비워두고 정식 사용 시 값을 입력하는 것을 권장합니다.

 

- data

변수
(Parameter)
타입(Type) 필수
여부
사전
발급
설명
(Description)
employeeNumber String Y N 양사의 시스템 사원(인식)번호 / 근태관리와 사용자의 매핑키
※ 영문자와 숫자구성만 지원
workingDay String Y N 근태기록 기준일자 ( yyyy-MM-dd )
clockInTime String N N 출근시간 ( yyyy-MM-dd HH:mm:ss )
clockOutTime String N N 퇴근시간 ( yyyy-MM-dd HH:mm:ss )
code String N N 근태상태 코드
※ 기본코드 또는 <근태코드 연동>으로 생성된 코드
checkTime String N N 근태기록 ( yyyy-MM-dd HH:mm:ss )

 

Request Example

예시 #1 (/퇴근만 연동)

POST /public/v2/attnd/record HTTP/1.1
api.daouoffice.com
Content-Type: application/json
{
"clientId": "f255cbe0b4a9d12f",
"clientSecret": "bafdd7b4cff6fabdc417b8a6b0e4fff6",
"productName" : "제휴서비스/제품명",
"productVersion" : "제휴서비스/제품 버전",
"clientCompanyName" : "제휴서비스/제품 식별코드"
"data":[
{"employeeNumber":"D000001","workingDay":"2019-10-14", "clockInTime":"2019-10-14 08:13:22","clockOutTime":"2019-10-14 18:24:51"}
{"employeeNumber":"D000001","workingDay":"2019-10-15", "clockInTime":"2019-10-14 08:13:22","clockOutTime":"2019-10-14 18:24:51"}
{"employeeNumber":"D000002","workingDay":"2019-10-14", "clockInTime":"2019-10-14 08:32:51","clockOutTime":"2019-10-14 18:13:45"}
{"employeeNumber":"D000002","workingDay":"2019-10-15", "clockInTime":"2019-10-15 08:45:35","clockOutTime":"2019-10-16 01:10:13"}
// 익일 퇴근의 경우 workingDay를 기준일자로 전송
]
}


예시 #2 (타임라인 업무 연동)

POST /public/v2/attnd/record HTTP/1.1
api.daouoffice.com
Content-Type: application/json
{
"clientId":"f255cbe0b4a9d12f",
"clientSecret":"bafdd7b4cff6fabdc417b8a6b0e4fff6",
"productName":"제휴서비스/제품명",
"productVersion":"제휴서비스/제품 버전",
"clientCompanyName":"제휴서비스/제품 식별코드",
"data":[
{"employeeNumber":"D000001","workingDay":"2019-10-14", "clockInTime":"2019-10-14 08:13:22","clockOutTime":"2019-10-14 18:24:51",
"timelineHistories":[
{ "code":"defaultOffWorking","checkTime":"2019-10-14 08:30:00" }, // 업무종료(defaultOffWorking)
{ "code":"defaultOnWorking","checkTime":"2019-10-14 15:00:00" } // 업무시작(defaultOnWorking)
]},
{"employeeNumber":"D000002","workingDay":"2019-10-15", "clockInTime":"2019-10-15 08:45:35","clockOutTime":"2019-10-15 18:10:13",
"timelineHistories":[
{ "code":"defaultOffWorking","checkTime":"2019-10-15 08:50:00" }, // 업무종료(defaultOffWorking)
{ "code":"defaultOnWorking","checkTime":"2019-10-15 18:10:00" } // 업무시작(defaultOnWorking)
]}
// timelineHisttories에서 업무유형 출근(defaultClockIn), 퇴근(defaultClockOut)을 지정안됨
]
}

 

Response Parameters

변수
(Parameter)
타입
(Type)
필수
여부
사전
발급
설명
(Description)
code String Y N API 호출결과 코드
message String Y N API 호출결과 메시지
messageDetail String N N API 호출결과 상세내용 (실패한 경우만 리턴함)

 

Response Example

Content-Type: application/json;charset=UTF-8
{
"code": "200",
"message": "OK"
}

 

Return Code

구분 코드
(Code)
내용
(Message)
설명
(Description)
성공
(Success)
200 성공 OK
실패
(Error)
901 유효하지 않은 client ID client ID를 확인하세요.
902 유효하지 않은 client Secret client Secret을 확인하세요.
970 유효하지 않은 데이터 포맷 데이터 포맷을 확인하세요.
971 중복 데이터 변경 내역이 없는 중복 데이터입니다.

 

제약사항

구분 누적 호출 제한 횟수 비고
일간 50회 1회 호출당 근태기록 3,000건 이하
월간 1,500회 1회 호출당 근태기록 3,000건 이하

 

제공 서비스 유형

구분 제공 여부
다우오피스 단독형 제공
다우오피스 설치형 제공
다우오피스 구축형 제공
다우오피스 공유형 미제공

추가 도움이 필요하신가요?

이용/기능 문의는 스피키를 이용해 보세요.

기술지원은 상단 [문의등록]를 통해 제공해드립니다.