従業員のインポート

リクエスト
エンドポイント

実行先のURLについて詳しくは、「APIエンドポイント」をご覧ください。

HTTPメソッド APIパス 用途 マスタ管理プラスオプション必須
POST /api/v21.07/members/import 従業員情報のインポート ー
POST /api/v21.07/members/importAndApply 従業員情報のインポートと承認 ー
クエリパラメータ

不要

リクエストヘッダ

「APIリクエストヘッダ」をご覧ください。

リクエストボディ
項目名 必須 データ形式 デフォルト値 説明
csv 〇 文字列 ー インポートするCSVデータ
options 〇 optionsオブジェクト。項目は、「optionsオブジェクト」をご覧ください ー

インポート時の設定値


optionsオブジェクト

項目名 必須 データ形式 デフォルト値 説明
mapping 〇 文字列 ー

区切り文字としては「\n」を利用する※1

optionMapping ー 文字列 null

本サービスのSELECT型項目の値とCSVファイルの値で変換が必要な場合にマッピングを指定する。マッピングは以下の形式で指定し、区切り文字としては「\n」を利用する

[CSVデータ内の値]: [本サービスのSELECT型の値]
applicationName ー 文字列 null インポートによって作成される変更名を指定する
changeDate ー 文字列 (「YYYY-MM-DD」形式) API実行日を示す文字列

作成する変更の日付を指定する

tierSeparator ー 文字列 null

CSVデータの一つのセル内で、階層を表現する際に利用する区切り文字※1

referenceSeparator ー 文字列 null

CSVデータの一つのセル内で、複数の設定値を表現する際に利用する区切り文字※1

companyEntityId ー 文字列

rootCompanyEntityId ー 文字列

rootOrganizationEntityId ー 文字列

rootOfficeEntityId ー 文字列

rootProjectEntityId ー 文字列

retireUnlisted ー boolean(true / false) false インポートデータに存在しないレコードを退職、削除する場合に「true」とする
avoidUnlistedEmails ー 文字列(メールアドレス形式) null

退職処理の対象外とする従業員のメールアドレスを指定する。区切り文字として「,」と「\n」の仕様が可能(併用可)。「retireUnlisted」オプションを有効にしている場合に参照されます

※1:記載内容及び設定例について詳しくは、「属性マッピング設定」をご覧ください。

レスポンス
レスポンスボディ
項目名 データ形式 説明
diffIds 文字列の配列 インポートによって発生した変更に割り当てられたID
changing changingオブジェクトの配列。各要素の属性は、「changingオブジェクト」をご覧ください

変更内容の詳細

changingCSVPositions changingCSVPositionsオブジェクトの配列。各要素の属性は、「changingCSVPositionsオブジェクト」をご覧ください

変更内容を規定しているCSVデータの場所


changingオブジェクト

項目名

データ形式

説明

changeDate 整数値 変更日(0:00時点のUNIX時間 / 末尾3桁は小数点以下の数字)
changingEntities changingEntitiesオブジェクトの配列。各要素の属性は、「changingEntitiesオブジェクト」をご覧ください 変更した属性の情報


changingEntitiesオブジェクト

項目名

データ形式

説明

entityId 文字列 変更された従業員・組織・会社・事業所・プロジェクトのID
count 整数値 変更された属性の数


changingCSVPositionsオブジェクト

項目名

データ形式

説明

lineNumber 整数値 変更に利用された行数(最初の行を0として起算)
columnNumbers 整数値の配列 変更に利用された列数(一番左の列を0として起算)
実行例
メールアドレスのみを設定した従業員を追加する際のリクエストボディ例 (request.json)
{
  "csv": "メールアドレス\niij-taro@example.jp",
  "options": {
    "mapping": "email: メールアドレス"
  }
}
exampleテナントに対するcurlコマンドでの実行
// APIトークンを $API_TOKEN 変数に登録した状態で実行
curl \
    -X POST 'https://example.igms.iij.jp/api/v21.07/members/import' \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $API_TOKEN" \
    -d @request.json | jq .
レスポンスボディ例
{
  "diffIds": [
    "1ORRktUcSsi4epZTLdI8gw"
  ],
  "changing": [
    {
      "changeDate": 1733788800000,
      "changingEntities": [
        {
          "entityId": "k2JDw5M_Rsic9gbJw78QfA",
          "count": 1
        }
      ]
    }
  ],
  "changingCSVPositions": [
    {
      "lineNumber": 0,
      "columnNumbers": [
        0
      ]
    }
  ]
}
備考
従業員インポート時の名寄せキー

従業員をインポートする際、以下の項目が一致している場合は、情報の更新を行います。
一致する項目がない場合は、新規登録処理が実行されます。

優先順位 項目名 属性ID
1 社員ID(会社横断の固有のID) identificationNumber
2 社員番号 employeeNumber
3 メールアドレス email
「changeDate」オプションと入社日、変更日、退社日について
  • 未入社の従業員が本サービスに登録されていない場合は、「changeDate」で指定された日付が入社日として登録します。
  • 既に従業員が登録されている場合は、「changeDate」で指定された日付で属性情報の更新を行います。
  • 退社日が設定されている場合は、「changeDate」で指定された日付で退職予約が行われます。
更新される情報について

管理コンソールの「変更予定」で確認できる変更内容は、CSVに記載された情報と本サービスのデータベース上の差分のみです。変更がない項目は表示されません。