오픈 API | 출퇴근 기능 활용하기!

오픈API.webp

안녕하세요 원티드스페이스입니다😀

원티드스페이스 기능 중 아래 기능은 오픈 API기능을 통해 원티드스페이스 앱을 사용하지 않고, 출퇴근 기능을 사용할 수 있도록, API기능을 만들었습니다.

아래 내용을 참고해서 API를 연동해주세요.

*아래 내용을 내부 개발자에게 전달해서 사용해주시면 되고, 연동 시 어려운 점이 있으면 챗봇을 통해 문의해주세요

 

Open API 설정

위 링크를 눌러 해당 페이지로 이동해주세요.
(해당 페이지는 최고 관리자만 접속 가능하니, API키와 시크릿 키는 최고관리자가 발급 후 개발자에게 안내해주세요.)
*API의 경우 근태 등의 정보를 포함하고 있음으로, 설정 및 권한 부여 시 반드시 주의해서 사용해주세요.

Untitled.webp

발급을 눌러 API와 시크릿키를 생성해주세요.

*** 발급 받은 API키와 시크릿키는 절대 공개된 곳에 오픈하지 마세요.**

 

API 권한 설정

Untitled (1).webp

필요한 API만 선택해서 저장해주세요.

 

IP보안 설정

Untitled (2).webp

API를 호출할 수 있는 IP를 입력해주세요. 입력하지 않으면, 모든 IP에서 해당 API를 호출할 수 있습니다.

 

인증

  1. HTTP Header에 Authorization에 오픈API시크릿키를 입력해주세요.
  2. 요청 시 key에 오픈API키를 입력해주세요.

 

제한

  1. 1분에 30번만 호출할 수 있어요.
  2. 호출당 50개의 결과가 조회돼요.

 

출퇴근 현황 조회

[GET] https://api.wantedspace.ai/tools/openapi/worktime/

Request Parameters.

이름타입필수여부설명
keyStringO오픈API key
dateStringO조회할 날짜 (ex. 2022-06-09)
emailStringX조회할 이메일 주소

Response

이름타입설명
nextString다음 페이지 URL
previousString이전 페이지 URL
countNumber총 조회 개수
resultsArray조회결과

조회결과

이름설명
username이름
email이메일
team_name팀이름
eid사원번호
wk_date조회날짜
wk_start_time출근시간
wk_end_time퇴근시간
wk_start_time_sch출근시간 스케줄
wk_end_time_sch퇴근시간 스케줄
wk_time_except제외시간(분)
wk_time_except_legal휴게시간(분)
wk_time근무시간(오늘 제외)
wk_time_today근무시간(오늘, 조회시간 기준으로 계산됨)
wk_memo메모
wk_approved출근, 퇴근 결재 승인여부
- REQ: 요청됨, APV: 승인됨, DNY: 반려됨, NUL: 결재자 없음
- IN: 출근, OUT: 퇴근
​ex) APV_IN/APV_OUT는 출퇴근 결재가 모두 승인된 상태
work_except제외시간 목록 
- wk_except_start_time: 제외 시작 시간 
- wk_except_end_time: 제외 종료 시간
- wk_except_time_min: 제외시간(분)

Example

Request
curl -H "Authorization: {오픈API시크릿키}"\
 -X GET "<https://api.wantedspace.ai/tools/openapi/worktime/?key={오픈API키}&date=2022-06-09>"

Response
{
    "next": null,
    "previous": null,
    "count": 2,
    "results": [
        {
            "username": "김샘",
            "email": "a25@abc.com",
            "team_name": "AI팀",
            "eid": "",
            "wk_date": "2022-06-09",
            "wk_start_time": "2022-06-09T09:00:00+09:00",
            "wk_end_time": "2022-06-09T18:00:00+09:00",
            "wk_start_time_sch": "2022-06-09T09:00:00+09:00",
            "wk_end_time_sch": "2022-06-09T19:30:00+09:00",
            "wk_time_except": 0,
            "wk_time_except_legal": 60,
            "wk_time": 480,
            "wk_time_today": 480,
            "memo": "",
            "wk_approved": "APV_IN/APV_OUT",
            "work_except": []
        },
        {
            "username": "복봄",
            "email": "a26@abc.com",
            "team_name": "CEO",
            "eid": "",
            "wk_date": "2022-06-09",
            "wk_start_time": "2022-06-09T09:00:00+09:00",
            "wk_end_time": "2022-06-09T18:00:00+09:00",
            "wk_start_time_sch": "2022-06-09T09:00:00+09:00",
            "wk_end_time_sch": "2022-06-09T19:30:00+09:00",
            "wk_time_except": 0,
            "wk_time_except_legal": 65,
            "wk_time": 475,
            "wk_time_today": 475,
            "memo": "",
            "wk_approved": "APV_IN/APV_OUT",
            "work_except": [
                {
                    "wk_except_start_time": "2022-06-09T18:19:22.137414+09:00",
                    "wk_except_end_time": "2022-06-09T18:42:24.425192+09:00",
                    "wk_except_time_min": 23
                }
            ]
        },
    ]
}

출퇴근 신청

[POST] https://api.wantedspace.ai/tools/openapi/worktime/

  • 오늘의 출근, 퇴근, 자리비움 신청할 때 사용해요

Request Parameters

  • Content-Type: application/json
이름타입필수여부설명
keyStringO오픈API key
check_typeStringO출근, 퇴근 또는 자리비움 유형
emailStringO신청할 이메일 주소

Response

이름설명
username이름
email이메일
team_name팀이름
eid사원번호
wk_date조회날짜
wk_start_time출근시간
wk_end_time퇴근시간
wk_time_except제외시간(분)
wk_time_except_legal휴게시간(분)
wk_time근무시간(오늘 제외)
wk_time_today근무시간(오늘, 조회시간 기준으로 계산됨)
wk_memo메모
wk_approved출근, 퇴근 결재 승인여부
- REQ: 요청됨, APV: 승인됨, DNY: 반려됨, NUL: 결재자 없음
- IN: 출근, OUT: 퇴근​

ex) APV_IN/APV_OUT는 출퇴근 결재가 모두 승인된 상태
work_except제외시간 목록 
- wk_except_start_time: 제외 시작 시간
- wk_except_end_time: 제외 종료 시간
- wk_except_time_min: 제외시간(분)​
loc_latopen api에서는 사용안함
loc_lonopen api에서는 사용안함
reasonopen api에서는 사용안함

Example

Request
curl -d '{"key": "{오픈API키}", "check_type": "IN","email": "a13@test.com"}' \
-H "Authorization: {오픈API시크릿키}" \
-H "Content-Type: application/json" \
-X POST "<https://api.wantedspace.ai/tools/openapi/worktime/>"

Response
{
    "username": "하아름",
    "email": "a13@test.com",
    "team_name": "채용사업부",
    "eid": "123123",
    "wk_date": "2022-06-27",
    "wk_start_time": null,
    "wk_end_time": null,
    "wk_time_except": 0,
    "wk_time_except_legal": 0,
    "wk_time": 0,
    "wk_time_today": 0,
    "wk_memo": "",
    "wk_approved": "NUL_IN/NUL_OUT",
    "work_except": [],
    "loc_lat": -1.11,
    "loc_lon": -1.11,
    "reason": ""
}

출퇴근 수정

[PUT] https://api.wantedspace.ai/tools/openapi/worktime/update_worktime/

  • 어제 또는 오늘의 출퇴근 기록은 출퇴근 수정으로 변경할 수 있어요.

Request Parameters

  • Content-Type: application/json
이름타입필수여부설명
keyStringO오픈API key
emailStringO이메일
wk_dateStringO수정할 날짜 (ex. 2022-06-14)
wk_start_timeStringX출근시간 (ex. 2022-06-14T10:00:00+09:00)
wk_end_timeStringX퇴근시간 (ex. 2022-06-14T18:00:00+09:00)
wk_memoStringX메모
work_exceptArrayX제외시간

Response

"Success" 200 ok

Example

Request
curl -d '
{"key": "{오픈API키}",
 "email": "a13@test.com",
 "wk_date": "2022-06-14",
 "wk_end_time": "2022-06-14T18:00:00+09:00",
 "wk_start_time": "2022-06-14T09:00:00+09:00",
 "wk_memo": "abcd",
 "work_except": [
     {
         "wk_except_start_time": "2022-06-14T10:00:00+09:00",
         "wk_except_end_time": "2022-06-14T10:30:00+09:00"
     }
 ]
}' \
-H "Authorization: {오픈API시크릿키}" \
-H "Content-Type: application/json" \
-X PUT "<https://api.wantedspace.ai/tools/openapi/worktime/update_worktime/>"

Response
"Success"

출퇴근 삭제

[DELETE] https://api.wantedspace.ai/tools/openapi/worktime/**{이메일}**/

Request Parameters

이름타입필수여부설명
keyStringO오픈API key
wk_dateStringO삭제할 날짜 (ex. 2022-06-14)

Response

"Success" 200 ok

Example

Reqeust
curl -H "Authorization: {오픈API시크릿키}"\
 -X DELETE "<https://api.wantedspace.ai/tools/openapi/worktime/a13@test.com/?key={오픈API키}&wk_date=2022-06-09>"

Response
"Success"
또 다른 질문이 있으십니까?   챗봇 문의하기 >
Zendesk 제공