Community

コミュニティをご利用の際は 【ガイドライン】を確認・同意いただいた上でご利用ください。

  • 投稿

    アバターsho.ezawa

    従業員一覧の取得で一部の従業員が取得できない

    人事労務freee APIの従業員一覧の取得をすると、一部の従業員が含まれていない一覧が返ってきました。
    URL: /api/v1/companies/{company_id}/employees

    事業所IDの誤りや実行するユーザーなどをチェックしてみましたが、解決できませんでした。

    従業員一覧で全従業員の情報を取得するにはどうしたらよいでしょうか?

    実行環境:Google Apps Script

    コード:


    function getEmployees() {
    var freeeApp = getService();
    var accessToken = freeeApp.getAccessToken();
    var companyId = getCompanyIdFromCompanyName();
    var requestUrl = "https://api.freee.co.jp/hr/api/v1/companies/" + companyId + "/employees";
    var headers = { "Authorization": "Bearer " + accessToken };

    var options =
    {
    "method": "get",
    "headers": headers
    };

    var res = UrlFetchApp.fetch(requestUrl, options).getContentText();

    //従業員一覧を取得
    var employeesResponse = JSON.parse(res);

    Logger.log(employeesResponse);
    return employeesResponse;
    }

    回答

    freee dev-supportfreee dev-support

    いつもお世話になっております。

    ご質問頂いている従業員一覧の取得についてでございますが、

    リファレンス

    のページネーションに記載がございます通り、特に指定がない状態ですと25個のアイテムを取得するようになっております。
    ご提示いただいている内容にある
    var requestUrl = “https://api.freee.co.jp/hr/api/v1/companies/” + companyId + “/employees”
    という設定ですと先頭から25件しか取得できません。
    1ページあたりの取得上限は100となっております為、

    https://api.freee.co.jp/hr/api/v1/companies/
    {company_id}/employees?per=100

    という形でperのパラメーターを増やすと1回で100件までは増やせますが、
    100件を超える場合に一括で全件取得をすることができかねます。
    その場合はpage=2 、page=3というような形で取得するページ数も追加していただく形で複数回取得を繰り返すよう
    ご設定下さい。

    お手数をおかけいたしますがご確認のほどよろしくお願いいたします。

    アバターsho.ezawa

    パラメータの記述を見落としていました。
    ご回答ありがとうございました。

    freee dev-supportfreee dev-support

    ご返信ありがとうございます。
    解決されたようで安心いたしました。

    その他にもご不明点等ございましたら、お気軽にご連絡くださいませ。

    これからも人事労務freeeをよろしくお願いいたします。