人事労務freeeのスマホアプリからも出退勤の打刻はできますが、ここではAPIを利用して打刻してみます。
clock_inで出勤して、clock_outで退勤するコードをコード.gsに書きました。
事前準備
- アクセストークンを取得したい でアクセストークンを取得します
- GETしてみる(ログインユーザの取得) でcompany_id, employee_idを取得します
- 勤怠打刻機能を利用できるように設定する
APIで打刻してみる
STEP1
コード.gsに以下3つの情報を貼り付けます
- access_token
- company_id
- employee_id
STEP2
clockIn()を実行すると出勤時刻が打刻されます
STEP3
clockOut()を実行すると退勤時刻が打刻されます
コード.gs
var access_token = 'アクセストークンを貼り付ける'; var company_id = 対象のcompany_idを貼り付ける; var employee_id = 対象のemployee_idを貼り付ける; function clockIn() {// 出勤 postData('clock_in'); } function clockOut() {// 退勤 postData('clock_out'); } function postData(clock_type) { var url = 'https://api.freee.co.jp/hr/api/v1/employees/' + employee_id + '/time_clocks'; var method = 'post'; var payload = getPayload(company_id, clock_type); var response = runMethod(method, url, access_token, payload); Logger.log(response); } function getPayload(company_id, clock_type) { var postdate = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'yyyy-MM-dd'); var data = { 'company_id' : company_id, 'type' : clock_type, 'base_date' : postdate } var json = JSON.stringify(data); return json; } function runMethod(method, url, access_token, payload) { var options = { 'method': method, 'contentType': 'application/json', 'headers': { 'Authorization': 'Bearer ' + access_token }, 'payload': payload } var response = UrlFetchApp.fetch(url, options); return response; } |
参考
タイムレコーダー(打刻)機能の操作 /api/v1/employees/{emp_id}/time_clocks
https://developer.freee.co.jp/docs/hr/reference#/%E3%82%BF%E3%82%A4%E3%83%A0%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%80%E3%83%BC(%E6%89%93%E5%88%BB)/create
勤怠打刻機能を使って従業員が勤怠を登録する
https://support.freee.co.jp/hc/ja/articles/202849560-%E5%8B%A4%E6%80%A0%E3%82%92%E5%85%A5%E5%8A%9B-%E7%AE%A1%E7%90%86%E3%81%99%E3%82%8B#timecard