✅ 해당 기능이 제공되는 다우오피스 상품 유형
| 무료 | 서비스형 | 엔터프라이즈형 | HR형 | ||
|---|---|---|---|---|---|
| 스탠다드 | 스탠다드 | 프리미엄 | 스탠다드 | 프리미엄 | HR |
| ❌ | ❌ | ❌ | |||
조직정보 연동 요약
✅ https://api.daouoffice.com/public/api/attnd-v3/organization-chart/user/list
| 조직 정보 구분 | 설명 | Request URL |
|---|---|---|
| 사용자 정보 | 외부 시스템에서 회사에 등록된 모든 임직원의 계정 정보를 한 번에 조회 | ~/user/list |
| 부서 정보 | 부서 정보 조회 시 회사 내 전체 부서 정보 전달 | ~ /department/list |
| 부서원 정보 | 다우오피스에 등록된 모든 부서의 소속 구성원(부서장 포함) 정보를 외부 시스템에서 한 번에 조회 | ~ /member/list |
| 조직 정보 | 직책 정보 조회 시 회사 내 전체 직책 정보 전달 | ~/domain-code/duty/list |
| 직위 정보 조회 시 회사 내 전체 직위 정보 전달 | ~/domain-code/position/list | |
| 직급 정보 조회 시 회사 내 전체 직급 정보 전달 | ~/domain-code/grade/list | |
| 유저그룹 정보 조회 시 회사 내 전체 유저그룹 정보 전달 | ~/domain-code/user_group/list |
계정 정보 조회 API
다우오피스 계정 정보 조회 API는 외부 시스템에서 회사에 등록된 모든 임직원의 계정 정보를 한 번에 불러올 수 있는 기능입니다.
- 사내 ERP나 인사 시스템에서 직원 목록을 자동으로 가져오고 싶을 때 사용
- 단, 개인정보 제공 동의를 하지 않은 경우 휴대전화, 주소 등은 비어 있거나 NULL로 반환
Access Token 발행 API (공통 선행)
모든 OpenAPI 호출 전 반드시 Access Token을 먼저 발급받아야 합니다. 발급받은 Token은 이후 모든 API 호출의 Request Header에 포함됩니다.
📑Access Token 발행 API 상세 가이드
✔️ Request URL
https://api.daouoffice.com/public/api/attnd-v3/organization-chart/user/list
- 다우오피스 OpenAPI 서비스는 시스템연동 서버로 API 호출을 진행하기 때문에 별도 고객사 그룹웨어 URL이 아닌 https://api.daouoffice.com 사용
✉️ Request Body
해당 API는 요청 시 별도의 Query Parameter를 요구하지 않습니다.
Headers
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| Authorization | String | ✅ | ✅ |
Authorization: Bearer {ACCESS_TOKEN} 반드시 헤더에 포함. “Bearer” 뒤 공백 1칸 필수 |
✉️ Request 예시
(Body 없음)
(Query Parameter 없음)
📬Response Body
data 객체
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| code | String | ✅ | ⛔ | API 호출결과 코드 |
| message | String | ✅ | ⛔ | API 호출결과 메시지 |
| messageDetail | String | ⛔ | ⛔ | API 호출결과 상세내용 (실패한 경우만 리턴) |
| data | Object | ✅ | ⛔ | API 호출결과 상세내용 JSON Object 배열 |
data 객체 구조
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| loginId | String | ✅ | ⛔ | 로그인 ID |
| employeeNumber | String | ⛔ | ⛔ | 사번 |
| name | String | ✅ | ⛔ | 이름 |
| locale | String | ✅ | ⛔ | 언어 설정 |
| status | String | ⛔ | ⛔ |
|
| positionCode | String | ⛔ | ⛔ | 직위 코드 (빈 값은 null로 표시) |
| positionName | String | ⛔ | ⛔ | 직위명 (빈 값은 null로 표시) |
| gradeCode | String | ⛔ | ⛔ | 직급 코드 (빈 값은 null로 표시) |
| gradeName | String | ⛔ | ⛔ | 직급명 (빈 값은 null로 표시) |
| userGroups | String | ✅ | ⛔ | 사용자그룹 코드 (빈 값은 null로 표시) |
| directTel | String | ✅ | ⛔ | 사용자그룹 명 (빈 값은 null로 표시) |
| mobileNo | String | ⛔ | ⛔ | 휴대전화 번호 |
| repTel | String | ⛔ | ⛔ | 대표번호 |
| fax | String | ⛔ | ⛔ | 팩스 |
| selfInfo | String | ⛔ | ⛔ | 자기소개 |
| job | String | ⛔ | ⛔ | 직무 |
| location | String | ⛔ | ⛔ | 위치 |
| homePage | String | ⛔ | ⛔ | 홈페이지 |
| messenger | String | ⛔ | ⛔ | 메신저 |
| birthday | String | ⛔ | ⛔ | 생일 |
| lunarCalendar | String | ⛔ | ⛔ | 음력 구분 |
| anniversary | String | ⛔ | ⛔ | 기념일 |
| address | String | ⛔ | ⛔ | 주소 |
| memo | String | ⛔ | ⛔ | 메모 |
| externalEmail | String | ⛔ | ⛔ | 외부 이메일 |
| expiredDate | String | ✅ | ⛔ | 퇴사일 |
| joinDate | String | ✅ | ⛔ | 입사일 |
| recognizedJoinDate | String | ✅ | ⛔ | 인정 입사일 |
| sex | String | ✅ | ⛔ | 남성 : M / 여성 : F |
| employeeType | String | ✅ | ⛔ |
|
multi Language Name
| 변수 | 타입 | 필수 | 사전발급 | 설명 |
|---|---|---|---|---|
| koName | String | ⛔ | ⛔ | 한국어 |
| enName | String | ⛔ | ⛔ | 영문 |
| jpName | String | ⛔ | ⛔ | 일본어 |
| zhcnName | String | ⛔ | ⛔ | 중국어(번체) |
| zhtwName | String | ⛔ | ⛔ | 중국어(간체) |
| viName | String | ⛔ | ⛔ | 베트남어 |
📬Response 예시
json
{
"message" : "OK",
"data" : [
{
"loginId" : "로그인ID 예)daou_0123",
"status" : "계정 상태 예)ONLINE",
"name" : "이름 예)김다우",
"employeeNumber" : "사번 예)0123",
"userGroups" : [
{
"code":"UG0020",
"name":"계약직",
}
],
"positionCode" : "2",
"positionName" : "이사",
"gradeCode" : "2",
"locale" : "ko",
"mobileNo" : "휴대전화번호 예)010-0000-0000",
"directTel" : "직통번호 예)070-0000-0000",
"address" : "주소 정보",
"fax" : "팩스번호 예)02-0000-0000",
"repTel" : "대표번호 예)02-0000-0000",
"messenger" : "메신저 정보",
"brthday" : "생일 예)2000-10-01",
"joinDate" : "입사일 예)2025-10-01",
"expiredDate" : null,
"recognizedJoinDate" : null,
"employeeType" : "PERMANENT",
"job" : "직무",
"location" : "위치 정보",
"homePage" : "홈페이지 정보",
"selfinfo" : "자기소개",
"lunarCalendar" : "false",
"anniversary" : "기념일 예)2025-10-01",
"memo" : "메모정보",
"externalEmail" : null,
"sex" : "M",
"multiLanguageName" : {
"koName" : "김다우",
"enName" : null,
"jpName" : null,
"zhcnName" : null,
"zhtwName" : null,
"viName" : null
}
}
]
}
🚫 주요 오류 코드 예시
| 코드 | 내용 | 설명(Description) |
|---|---|---|
| 400 | 유효하지 않은 파라미터, 필수 파라미터 누락 | 유효하지 않은 파라미터입니다. 필수 파라미터가 누락되었습니다. |
| 401 | 토큰 없음/유효하지 않음/만료됨 |
유효하지 않은 토큰입니다. 토큰이 존재하지 않습니다. 만료된 토큰입니다. |
| 500 | 일시적 서버 오류 | 일시적인 서비스 오류입니다. |
- Authorization 헤더가 없거나 "Bearer" 문자열이 누락·오표기된 경우, 서버는 401만 반환하고 본문을 포함하지 않을 수 있음.