最終更新日時: 2024/02/28 10:53
※このWebサイトは Internet Explorer には対応しておりません。Microsoft Edge など他のブラウザをご利用ください。
kaonavi API v2 は下記のようなHTTPリクエストで各種リソースの操作ができます。構成は以下の通りです。
$ curl -X {メソッド} https://api.kaonavi.jp/api/{バージョン}/{リソース} \
-H 'Content-Type: application/json' \
-H 'Kaonavi-Token: {アクセストークン}'
メソッドとリソースの組み合わせは左メニューのAPIリファレンス以下をご確認ください。
最新バージョンは v2.0
です。
APIを実行する前にまずAPIv2で操作出来る対象のチェックをしましょう。
カオナビにログインし、管理者機能トップ > 公開API v2 情報 > 操作対象の管理のメニューを開いて下さい。デフォルトは全てオフになっています。
このクイックスタートではメンバーの登録までを紹介しているので、画像のようにメンバー情報の「登録」にだけチェックを入れましょう。
実際の運用時にはメンバー情報やシート情報に必要な操作にだけチェックを入れて下さい。
認証のためのアクセストークンを発行しましょう。
アクセストークン発行のために必要な認証情報を事前に確認しておきます。
カオナビにログインし、 管理者機能トップ > 公開API v2 情報 > 認証情報 より、Consumer Key
と Consumer Secret
をご確認ください。
アクセストークン 発行 を参照して、アクセストークンを発行します。 アクセストークン発行に必要なcredentials の生成についてはBasicAuthを参照してください。
下記に記載されているような内容が返ってきたら成功です。
{
"access_token": "25396f58-10f8-c228-7f0f-818b1d666b2e",
"token_type": "Bearer",
"expire_in": 3600
}
access_token
に記載されているものが、アクセストークンです。
これで準備完了です。メンバー情報のレイアウト設定の内容を取得してみましょう。 メンバー情報 レイアウト設定取得 を参照して、次のようなリクエストをしてください。
$ curl -X GET https://api.kaonavi.jp/api/v2.0/member_layouts \
-H 'Content-Type: application/json' \
-H 'Kaonavi-Token: {アクセストークン}'
下記に記載されているような内容が返ってきたら成功です。
{
"code": {
"name": "社員番号",
"required": true,
"type": "string",
"max_length": 50,
"enum": []
},
"name": {
"name": "氏名",
"required": false,
"type": "string",
"max_length": 100,
"enum": []
},
"name_kana": {
"name": "フリガナ",
"required": false,
"type": "string",
"max_length": 100,
"enum": []
},
"mail": {
"name": "メールアドレス",
"required": false,
"type": "string",
"max_length": 100,
"enum": []
}
}
kaonavi API v2 によるデータの登録や更新の多くは、非同期で行われます。 メンバー情報 登録 API を使って、メンバーを登録してみましょう。
メンバー情報 登録 を参照して、次のようなリクエストをしてください。
$ curl -X POST https://api.kaonavi.jp/api/v2.0/members \
-H 'Content-Type: application/json' \
-H 'Kaonavi-Token: {アクセストークン}' \
-d '{
"member_data": [
{
"code": "12345",
"name": "カオナビ 太郎",
"name_kana": "カオナビ タロウ"
}
]
}'
必須項目や最大文字数は先程取得したレイアウト設定取得APIの結果から確認できます。 下記に記載されているような内容が返ってきたら成功です。これでメンバー登録のタスクが作成されました。
{
"task_id": 1
}
次に、タスクの結果を確認してみましょう。
先程取得した task_id
を利用して、タスク進捗状況 取得 を参照して、次のようなリクエストをしてください。
$ curl -X GET https://api.kaonavi.jp/api/v2.0/tasks/{task_id} \
-H 'Content-Type: application/json' \
-H 'Kaonavi-Token: {アクセストークン}'
下記に記載されているような内容が返ってきたら成功です。これで新しくメンバーが登録されたはずです。
{
"id": 1,
"status": "OK",
"messages": []
}
以上でクイックスタートは終了です。左メニューのAPIリファレンス以下を参考に、様々なリソースを操作してみましょう。
深夜1:00~1:30の間にデータバックアップを行い、データバックアップの終了後、早朝にかけて日次バッチを実施しています。
データバックアップは、処理を開始した時点でのデータが静止点となり、当日のデータバックアップとして保持されます。
そのため、当日のデータとしてAPI更新されたい場合は1:00より前に実施し、翌日のデータとして更新されたい場合は1:30以降をご検討ください。
※データバックアップの復元は、データ安心パックをご利用のお客様が対象です。
また日次バッチ中にAPI更新を行った場合、開始時間の早い方から処理がされます。
先行された処理の間、もう一方の処理は待機状態となり、完了してから次の処理が実行されます。
日次バッチの開始時間及び終了時間はお客様ごとに異なります。
具体的な時間についてはサポートデスクまでお問い合わせください。
通常は本番モードで動作しますが、動作確認用にdryrunモードを用意しています。
通常のパラメータに加えて、ヘッダーに以下を設定することで、データベースの操作を行わず、リクエストの内容が適切であるかを検証することが出来ます。
※dryrunモードは登録・更新APIのみご利用いただけます。
ヘッダーパラメータ名 | 値 |
---|---|
Dry-Run | 0 または 1 |
値 | 結果 |
---|---|
指定なし | 本番モード |
0を指定 | 本番モード |
1を指定 | dryrunモード |
上記以外 | パラメータエラー |
リクエスト サンプル
$ curl -X POST https://api.kaonavi.jp/api/v2.0/members \
-H 'Content-Type: application/json' \
-H 'Kaonavi-Token: {アクセストークン}' \
-H 'Dry-Run: 1' \
-d '{
"member_data": [
{
"code": "12345",
"name": "カオナビ 太郎",
"name_kana": "カオナビ タロウ"
}
]
}'
ステータスコード | 説明 |
---|---|
200 | 正常のレスポンス |
400 | パラメータにエラー |
401 | 認証エラー |
403 | kaonavi API v2 の利用不可 |
404 | 存在しないIDを指定 |
405 | 存在しないメソッドを指定 |
429 | アクセス回数制限を超えた |
500 | サーバーで予期せぬエラーが起きた |
503 | システムがメンテナンス中 |
504 | タイムアウトエラー |
管理者機能トップ > レイアウト設定で設定したシートの項目情報はレイアウト設定APIにて custom_fields
として取得できます。
レイアウト設定API、メンバー情報API、シート情報API で取得・更新可能なシートの項目は以下の通りです。
パーツ | レイアウト 設定取得 |
情報取得 | 情報更新 | 更新時の注意 |
---|---|---|---|---|
テキストボックス | ○ | ○ | ○ | |
テキストエリア | ○ | ○ | ○ | |
ナンバーボックス | ○ | ○ | ○ | |
プルダウンリスト | ○ | ○ | ○ | |
ラジオボタン | ○ | ○ | ○ | |
チェックボックス | ○ | ○ | ○ | |
リンク | ○ | ○ | ○ | |
日付(カレンダー) | ○ | ○ | ○ | YYYY-MM-DDの形式で更新してください 例) 2021-01-01 |
年月(カレンダー) | ○ | ○ | ○ | YYYY-MM-DDの形式で更新してください 例) 2021-01-01 |
ファイル添付 | ○ | ○ | ○ | ファイル添付の使い方 をご確認ください |
顔写真 | ○ | ○ | ○ | 顔写真パーツで表示させたいメンバーの社員番号を設定してください 例) A0001 |
計算式 | ◯※ | ○ | × | 計算式パーツの取り扱い をご確認ください ※パラメーター をつけると取得可能です |
スペースエリア | × | × | × | |
タイトルボックス | × | × | × | |
メッセージボックス | × | × | × | |
レーダーチャート | × | × | × |
CSVアップロードによるファイル名の事前設定作業の置き換えになるAPIです。以下の流れでファイルを添付することができます。
以下の場合を除き、既にファイル添付されているパーツに対し更新を行うと、事前に添付されていたファイルは削除されますのでご注意ください。
APIのアクセストークン取得にはconsumer_key、consumer_secretが必要です。
credentialsは次のように構築してください。
リクエスト サンプル
$ curl -X POST https://api.kaonavi.jp/api/v2.0/token \
-H 'Authorization: Basic <credentials>' \
-H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8' \
-d 'grant_type=client_credentials'
basic
API実行にはアクセストークンが必要です。詳しくは アクセストークン 発行 を確認してください。
レスポンスから取得したアクセストークンは、API実行時にHTTPヘッダー(Kaonavi-Token)にセットして利用してください。
リクエスト サンプル
$ curl -X GET https://api.kaonavi.jp/api/v2.0/sheet_layouts \
-H 'Content-Type: application/json' \
-H 'Kaonavi-Token: <access_token>'
Kaonavi-Token
kaonavi Webhook は、メンバーの基本情報が更新された際に、指定した URL に HTTPリクエストを送信します。
Webhook を利用することで、定期的にメンバー情報を取得する必要がなく、通知をきっかけとした連携機能の開発ができるようになります。
※ Webhook は現在 β版として提供中です。
ご利用の際は以下の制限事項をご確認ください。
Webhook を利用するには、Webhook 設定 API または 管理者機能トップ > 公開API v2 情報 > Webhook 設定をご利用ください。
Webhook で利用できるイベントは以下の通りです。
イベント名 | 説明 |
---|---|
member_created | メンバーが新しく登録された |
member_updated | メンバーの基本情報が更新された |
member_deleted | メンバーが削除された |
設定したイベントが発生した場合に送信する HTTPリクエスト内容は以下の通りです。
名称 | 詳細 |
---|---|
Kaonavi-Token | 登録時に指定した検証用トークンを送信します。 |
Content-Type | application/json |
User-Agent | Kaonavi-Webhook |
名称 | 詳細 |
---|---|
event | 発生したイベント名を送信します。(例:member_created) |
event_time | イベントが発生した時刻を送信します。(例:"2023-04-11 09:40:45") |
member_data | 変更のあったメンバーの社員番号を配列で送信します。 |
{
"event": "member_created",
"event_time": "2023-04-11 09:40:45",
"member_data": [
{
"code": "A0001"
},
{
"code": "A0002"
}
]
}
送信が失敗した場合でも再送信は行われません。
制限名称 | 説明 |
---|---|
Webhook設定数 | 10件まで |
送信メンバー数の閾値 | 送信する member_data が 10,000件を超える場合、10,000件ごとに分割して Webhook を送信します。 |
アクセストークンを発行します。
grant_type required | string
|
curl -X POST https://api.kaonavi.jp/api/v2.0/token ^ -u "dummy_consumer_key:dummy_consumer_secret" ^ -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" ^ -d "grant_type=client_credentials"
{- "access_token": "25396f58-10f8-c228-7f0f-818b1d666b2e",
- "token_type": "Bearer",
- "expire_in": 3600
}
使用可能なメンバーのレイアウト設定情報を全て取得します。custom_fields
の詳細については、custom_fields についてを参照ください。
get_calc_type | boolean Default: false Example: get_calc_type=true 計算式パーツの取得 |
{- "code": {
- "name": "氏名",
- "required": false,
- "type": "string",
- "max_length": 100,
- "enum": [ ]
}, - "name_kana": {
- "name": "フリガナ",
- "required": false,
- "type": "string",
- "max_length": 100,
- "enum": [ ]
}, - "mail": {
- "name": "メールアドレス",
- "required": false,
- "type": "string",
- "max_length": 100,
- "enum": [ ]
}, - "entered_date": {
- "name": "入社日",
- "required": false,
- "type": "date",
- "max_length": null,
- "enum": [ ]
}, - "retired_date": {
- "name": "退職日",
- "required": false,
- "type": "date",
- "max_length": null,
- "enum": [ ]
}, - "gender": {
- "name": "性別",
- "required": false,
- "type": "enum",
- "max_length": null,
- "enum": [
- "男性",
- "女性"
]
}, - "birthday": {
- "name": "生年月日",
- "required": false,
- "type": "date",
- "max_length": null,
- "enum": [ ]
}, - "department": {
- "name": "所属",
- "required": false,
- "type": "department",
- "max_length": null,
- "enum": [ ]
}, - "sub_departments": {
- "name": "兼務情報",
- "required": false,
- "type": "department[]",
- "max_length": null,
- "enum": [ ]
}, - "custom_fields": [
- {
- "id": 100,
- "name": "血液型",
- "required": false,
- "type": "enum",
- "max_length": null,
- "enum": [
- "A",
- "B",
- "O",
- "AB"
]
}, - {
- "id": 200,
- "name": "役職",
- "required": false,
- "type": "enum",
- "max_length": null,
- "enum": [
- "部長",
- "課長",
- "マネージャー"
]
}
]
}
使用可能なシートのレイアウト設定情報を全て取得します。custom_fields
の詳細については、custom_fields についてを参照ください。
get_calc_type | boolean Default: false Example: get_calc_type=true 計算式パーツの取得 |
{- "sheets": {
- "id": 12,
- "name": "住所・連絡先",
- "record_type": 1,
- "custom_fields": [
- {
- "id": 1000,
- "name": "住所",
- "required": false,
- "type": "string",
- "max_length": 250,
- "enum": [ ]
}, - {
- "id": 1001,
- "name": "電話番号",
- "required": false,
- "type": "string",
- "max_length": 50,
- "enum": [ ]
}
]
}
}
指定したシートの使用可能なレイアウト設定を全て取得します。custom_fields
の詳細については、custom_fields についてを参照ください。
sheet_id required | integer シートID |
get_calc_type | boolean Default: false Example: get_calc_type=true 計算式パーツの取得 |
{- "id": 12,
- "name": "住所・連絡先",
- "record_type": 1,
- "custom_fields": [
- {
- "id": 1000,
- "name": "住所",
- "required": false,
- "type": "string",
- "max_length": 250,
- "enum": [ ]
}, - {
- "id": 1001,
- "name": "電話番号",
- "required": false,
- "type": "string",
- "max_length": 50,
- "enum": [ ]
}
]
}
{- "updated_at": "2020-10-01 01:23:45",
- "member_data": [
- {
- "id": 1,
- "code": "A0002",
- "name": "カオナビ 太郎",
- "name_kana": "カオナビ タロウ",
- "mail": "taro@kaonavi.jp",
- "entered_date": "2005-09-20",
- "retired_date": "",
- "gender": "男性",
- "birthday": "1984-05-15",
- "age": 36,
- "years_of_service": "15年5ヵ月",
- "department": {
- "code": "1000",
- "name": "取締役会",
- "names": [
- "取締役会"
]
}, - "sub_departments": [ ],
- "custom_fields": [
- {
- "id": 100,
- "name": "血液型",
- "values": [
- "A"
]
}
]
}, - {
- "id": 2,
- "code": "A0001",
- "name": "カオナビ 花子",
- "name_kana": "カオナビ ハナコ",
- "mail": "hanako@kaonavi.jp",
- "entered_date": "2013-05-07",
- "retired_date": "",
- "gender": "女性",
- "birthday": "1986-05-16",
- "age": 36,
- "years_of_service": "7年9ヵ月",
- "department": {
- "code": "2000",
- "name": "営業本部 第一営業部 ITグループ",
- "names": [
- "営業本部",
- "第一営業部",
- "ITグループ"
]
}, - "sub_departments": [
- {
- "code": "3000",
- "name": "企画部",
- "names": [
- "企画部"
]
}, - {
- "code": "4000",
- "name": "管理部",
- "names": [
- "管理部"
]
}
], - "custom_fields": [
- {
- "id": 100,
- "name": "血液型",
- "values": [
- "O"
]
}, - {
- "id": 200,
- "name": "役職",
- "values": [
- "部長",
- "マネージャー"
]
}
]
}
]
}
メンバー登録と、合わせて基本情報・所属(主務)・兼務情報を登録します。
※ 更新リクエスト制限の対象APIです。
Dry-Run |
Array of objects |
{- "member_data": [
- {
- "code": "A0002",
- "name": "カオナビ 太郎",
- "name_kana": "カオナビ タロウ",
- "mail": "taro@kaonavi.jp",
- "entered_date": "2005-09-20",
- "retired_date": "",
- "gender": "男性",
- "birthday": "1984-05-15",
- "department": {
- "code": "1000"
}, - "sub_departments": [ ],
- "custom_fields": [
- {
- "id": 100,
- "values": [
- "A"
]
}
]
}, - {
- "code": "A0001",
- "name": "カオナビ 花子",
- "name_kana": "カオナビ ハナコ",
- "mail": "hanako@kaonavi.jp",
- "entered_date": "2013-05-07",
- "retired_date": "",
- "gender": "女性",
- "birthday": "1986-05-16",
- "department": {
- "code": "2000"
}, - "sub_departments": [
- {
- "code": "3000"
}, - {
- "code": "4000"
}
], - "custom_fields": [
- {
- "id": 100,
- "values": [
- "O"
]
}, - {
- "id": 200,
- "values": [
- "部長",
- "マネージャー"
]
}
]
}
]
}
{- "task_id": 1
}
全てのメンバーの基本情報・所属(主務)・兼務情報を一括更新します。
Request Body に含まれていない情報は削除されます。
※ メンバーの登録・削除は行われません。
※ 更新リクエスト制限の対象APIです。
Dry-Run |
Array of objects |
{- "member_data": [
- {
- "code": "A0002",
- "name": "カオナビ 太郎",
- "name_kana": "カオナビ タロウ",
- "mail": "taro@kaonavi.jp",
- "entered_date": "2005-09-20",
- "retired_date": "",
- "gender": "男性",
- "birthday": "1984-05-15",
- "department": {
- "code": "1000"
}, - "sub_departments": [ ],
- "custom_fields": [
- {
- "id": 100,
- "values": [
- "A"
]
}
]
}, - {
- "code": "A0001",
- "name": "カオナビ 花子",
- "name_kana": "カオナビ ハナコ",
- "mail": "hanako@kaonavi.jp",
- "entered_date": "2013-05-07",
- "retired_date": "",
- "gender": "女性",
- "birthday": "1986-05-16",
- "department": {
- "code": "2000"
}, - "sub_departments": [
- {
- "code": "3000"
}, - {
- "code": "4000"
}
], - "custom_fields": [
- {
- "id": 100,
- "values": [
- "O"
]
}, - {
- "id": 200,
- "values": [
- "部長",
- "マネージャー"
]
}
]
}
]
}
{- "task_id": 1
}
送信されたメンバーの基本情報・所属(主務)・兼務情報のみを更新します。
Request Body に含まれていない情報は更新されません。
特定の値を削除する場合は、空文字 "" を送信してください。
※ 更新リクエスト制限の対象APIです。
Dry-Run |
Array of objects |
{- "member_data": [
- {
- "code": "A0002",
- "name": "カオナビ 太郎",
- "name_kana": "カオナビ タロウ",
- "mail": "taro@kaonavi.jp",
- "entered_date": "2005-09-20",
- "retired_date": "",
- "gender": "男性",
- "birthday": "1984-05-15",
- "department": {
- "code": "1000"
}, - "sub_departments": [ ],
- "custom_fields": [
- {
- "id": 100,
- "values": [
- "A"
]
}
]
}, - {
- "code": "A0001",
- "name": "カオナビ 花子",
- "name_kana": "カオナビ ハナコ",
- "mail": "hanako@kaonavi.jp",
- "entered_date": "2013-05-07",
- "retired_date": "",
- "gender": "女性",
- "birthday": "1986-05-16",
- "department": {
- "code": "2000"
}, - "sub_departments": [
- {
- "code": "3000"
}, - {
- "code": "4000"
}
], - "custom_fields": [
- {
- "id": 100,
- "values": [
- "O"
]
}, - {
- "id": 200,
- "values": [
- "部長",
- "マネージャー"
]
}
]
}
]
}
{- "task_id": 1
}
現在登録されているメンバーとそれに紐づく基本情報・所属(主務)・兼務情報を全て、リクエストしたデータで入れ替えます。
※ 更新リクエスト制限の対象APIです。
※ メンバーの削除はリクエスト時に登録処理が完了しているメンバーに対してのみ実行されます。
Dry-Run |
Array of objects |
{- "member_data": [
- {
- "code": "A0002",
- "name": "カオナビ 太郎",
- "name_kana": "カオナビ タロウ",
- "mail": "taro@kaonavi.jp",
- "entered_date": "2005-09-20",
- "retired_date": "",
- "gender": "男性",
- "birthday": "1984-05-15",
- "department": {
- "code": "1000"
}, - "sub_departments": [ ],
- "custom_fields": [
- {
- "id": 100,
- "values": [
- "A"
]
}
]
}, - {
- "code": "A0001",
- "name": "カオナビ 花子",
- "name_kana": "カオナビ ハナコ",
- "mail": "hanako@kaonavi.jp",
- "entered_date": "2013-05-07",
- "retired_date": "",
- "gender": "女性",
- "birthday": "1986-05-16",
- "department": {
- "code": "2000"
}, - "sub_departments": [
- {
- "code": "3000"
}, - {
- "code": "4000"
}
], - "custom_fields": [
- {
- "id": 100,
- "values": [
- "O"
]
}, - {
- "id": 200,
- "values": [
- "部長",
- "マネージャー"
]
}
]
}
]
}
{- "task_id": 1
}
送信されたメンバーを削除します。
紐付けユーザーがいる場合、そのアカウント種別によってはユーザーも同時に削除されます。
Dry-Run |
codes required | Array of strings 社員番号のリスト |
{- "codes": [
- "A0001",
- "A0002"
]
}
{- "task_id": 1
}
指定したシートの全情報を取得します。
sheet_id required | integer シートID |
{- "id": 12,
- "name": "住所・連絡先",
- "record_type": 1,
- "updated_at": "2020-10-01 01:23:45",
- "member_data": [
- {
- "code": "A0002",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "name": "住所",
- "values": [
- "東京都港区x-x-x"
]
}
]
}
]
}, - {
- "code": "A0001",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "name": "住所",
- "values": [
- "大阪府大阪市y番y号"
]
}, - {
- "id": 1001,
- "name": "電話番号",
- "values": [
- "06-yyyy-yyyy"
]
}
]
}, - {
- "custom_fields": [
- {
- "id": 1000,
- "name": "住所",
- "values": [
- "愛知県名古屋市z丁目z番z号"
]
}, - {
- "id": 1001,
- "name": "電話番号",
- "values": [
- "052-zzzz-zzzz"
]
}
]
}
]
}
]
}
指定したシートのシート情報を一括更新します。
Request Body に含まれていない情報は削除されます。
複数レコードの情報は送信された配列順に登録されます。
※ 更新リクエスト制限の対象APIです。
sheet_id required | integer シートID |
Dry-Run |
required | Array of objects |
{- "member_data": [
- {
- "code": "A0002",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "東京都港区x-x-x"
]
}
]
}
]
}, - {
- "code": "A0001",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "大阪府大阪市y番y号"
]
}, - {
- "id": 1001,
- "values": [
- "06-yyyy-yyyy"
]
}
]
}, - {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "愛知県名古屋市z丁目z番z号"
]
}, - {
- "id": 1001,
- "values": [
- "052-zzzz-zzzz"
]
}
]
}
]
}
]
}
{- "task_id": 1
}
指定したシートのシート情報の一部を更新します。
単一レコード
送信された情報のみが更新されます。
Request Body に含まれていない情報は更新されません。
特定の値を削除する場合は、空文字 "" を送信してください。
複数レコード
メンバーごとのデータが一括更新されます。
特定の値を削除する場合は、空文字 "" を送信してください。
特定のレコードだけを更新することは出来ません。
member_code が指定されていないメンバーの情報は更新されません。
送信された配列順に登録されます。
※ 更新リクエスト制限の対象APIです。
sheet_id required | integer シートID |
Dry-Run |
required | Array of objects |
{- "member_data": [
- {
- "code": "A0002",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "東京都港区x-x-x"
]
}
]
}
]
}, - {
- "code": "A0001",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "大阪府大阪市y番y号"
]
}, - {
- "id": 1001,
- "values": [
- "06-yyyy-yyyy"
]
}
]
}, - {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "愛知県名古屋市z丁目z番z号"
]
}, - {
- "id": 1001,
- "values": [
- "052-zzzz-zzzz"
]
}
]
}
]
}
]
}
{- "task_id": 1
}
指定した複数レコード形式のシートにレコードを追加します。単一レコード形式のシートは対象外です。
※ 更新リクエスト制限の対象APIです。
sheet_id required | integer シートID |
Dry-Run |
required | Array of objects |
{- "member_data": [
- {
- "code": "A0002",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "東京都港区x-x-x"
]
}
]
}
]
}, - {
- "code": "A0001",
- "records": [
- {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "大阪府大阪市y番y号"
]
}, - {
- "id": 1001,
- "values": [
- "06-yyyy-yyyy"
]
}
]
}, - {
- "custom_fields": [
- {
- "id": 1000,
- "values": [
- "愛知県名古屋市z丁目z番z号"
]
}, - {
- "id": 1001,
- "values": [
- "052-zzzz-zzzz"
]
}
]
}
]
}
]
}
{- "task_id": 1
}
{- "department_data": [
- {
- "code": "1000",
- "name": "取締役会",
- "parent_code": null,
- "leader_member_code": "A0002",
- "order": 1,
- "memo": ""
}, - {
- "code": "1200",
- "name": "営業本部",
- "parent_code": null,
- "leader_member_code": null,
- "order": 2,
- "memo": ""
}, - {
- "code": "1500",
- "name": "第一営業部",
- "parent_code": "1200",
- "leader_member_code": null,
- "order": 1,
- "memo": ""
}, - {
- "code": "2000",
- "name": "ITグループ",
- "parent_code": "1500",
- "leader_member_code": "A0001",
- "order": 1,
- "memo": "example"
}
]
}
所属ツリーの情報を一括更新します。
Request Body に含まれていない情報は削除されます。
※ 更新リクエスト制限の対象APIです。
Dry-Run |
Array of objects |
{- "department_data": [
- {
- "code": "1000",
- "name": "取締役会",
- "parent_code": null,
- "leader_member_code": "A0002",
- "order": 1,
- "memo": ""
}, - {
- "code": "1200",
- "name": "営業本部",
- "parent_code": null,
- "leader_member_code": null,
- "order": 2,
- "memo": ""
}, - {
- "code": "1500",
- "name": "第一営業部",
- "parent_code": "1200",
- "leader_member_code": null,
- "order": 1,
- "memo": ""
}, - {
- "code": "2000",
- "name": "ITグループ",
- "parent_code": "1500",
- "leader_member_code": "A0001",
- "order": 1,
- "memo": "example"
}
]
}
{- "task_id": 1
}
ユーザー情報の一覧を取得します。
紐付けメンバーが設定されていないユーザーの場合、member_code:null
と返却されます。
一度もログインしたことがないユーザーの場合、last_login_at:null
と返却されます。
{- "user_data": [
- {
- "id": 1,
- "email": "taro@kaonavi.jp",
- "member_code": "A0002",
- "role": {
- "id": 1,
- "name": "システム管理者",
- "type": "Adm"
}, - "last_login_at": "2021-11-01 12:00:00",
- "is_active": true,
- "password_locked": false,
- "use_smartphone": false
}, - {
- "id": 2,
- "email": "hanako@kaonavi.jp",
- "member_code": "A0001",
- "role": {
- "id": 2,
- "name": "マネージャ",
- "type": "一般"
}, - "last_login_at": null,
- "is_active": true,
- "password_locked": false,
- "use_smartphone": false
}
]
}
ユーザー情報を登録します。
管理者機能トップ > ユーザー管理 にてユーザー作成時に設定可能なオプションについては、以下の内容で作成されます。
また、未指定のオプションについては以下の内容で作成されます。
Dry-Run |
email required | string ログインメールアドレス |
member_code required | string 社員番号 |
password required | string パスワード |
required | object ロール情報 |
is_active | boolean アカウント状態(false:停止 true:利用) |
password_locked | boolean パスワードロック(false:解除 true:ロック) |
use_smartphone | boolean スマホオプションフラグ(false:停止 true:利用) |
{- "email": "example@kaonavi.jp",
- "member_code": "A0003",
- "password": "password",
- "role": {
- "id": 1
}, - "is_active": true,
- "password_locked": false,
- "use_smartphone": false
}
{- "id": 1,
- "email": "example@kaonavi.jp",
- "member_code": "12345",
- "role": {
- "id": 1,
- "name": "システム管理者",
- "type": "Adm"
}, - "is_active": true,
- "password_locked": false,
- "use_smartphone": false
}
指定のユーザーIDのログインユーザー情報を返却します。
紐付けメンバーが設定されていないユーザーの場合、member_code:null
と返却されます。
一度もログインしたことがないユーザーの場合、last_login_at:null
と返却されます。
user_id required | integer ユーザーID |
{- "id": 1,
- "email": "example@kaonavi.jp",
- "member_code": "12345",
- "role": {
- "id": 1,
- "name": "システム管理者",
- "type": "Adm"
}, - "is_active": true,
- "password_locked": false,
- "use_smartphone": false,
- "last_login_at": "2021-11-01 12:00:00"
}
指定のユーザーIDのログインユーザー情報を更新します。
管理者機能トップ > ユーザー管理 にて更新可能な以下のオプションについては元の値が維持されます。
user_id required | integer ユーザーID |
Dry-Run |
string ログインメールアドレス | |
member_code | string 社員番号 |
password | string パスワード |
object ロール情報 | |
is_active | boolean アカウント状態(false:停止 true:利用) |
password_locked | boolean パスワードロック(false:解除 true:ロック) |
use_smartphone | boolean スマホオプションフラグ(false:停止 true:利用) |
{- "email": "example@kaonavi.jp",
- "member_code": "A0003",
- "password": "password",
- "role": {
- "id": 1
}, - "is_active": true,
- "password_locked": false,
- "use_smartphone": false
}
{- "id": 1,
- "email": "example@kaonavi.jp",
- "member_code": "12345",
- "role": {
- "id": 1,
- "name": "システム管理者",
- "type": "Adm"
}, - "is_active": true,
- "password_locked": false,
- "use_smartphone": false
}
拡張アクセス設定の一覧を取得します。
advanced_type required | string Enum: "member" "department" 拡張アクセス設定の種別 |
{- "advanced_permission_data": [
- {
- "user_id": 1,
- "add_codes": [
- "0001",
- "0002",
- "0003"
], - "exclusion_codes": [
- "0001",
- "0002",
- "0003"
]
}, - {
- "user_id": 2,
- "add_codes": [
- "0001",
- "0002",
- "0003"
], - "exclusion_codes": [
- "0001",
- "0002",
- "0003"
]
}
]
}
現在登録されている拡張アクセス設定を全て、リクエストしたデータで入れ替えます。
※ 更新リクエスト制限の対象APIです。
advanced_type required | string Enum: "member" "department" 拡張アクセス設定の種別 |
Array of objects |
{- "advanced_permission_data": [
- {
- "user_id": 1,
- "add_codes": [
- "0001",
- "0002",
- "0003"
], - "exclusion_codes": [
- "0001",
- "0002",
- "0003"
]
}, - {
- "user_id": 2,
- "add_codes": [
- "0001",
- "0002",
- "0003"
], - "exclusion_codes": [
- "0001",
- "0002",
- "0003"
]
}
]
}
{- "task_id": 1
}
マスター管理で編集可能な項目のうち、APIv2 で編集可能な項目及びマスターの一覧を取得します。
APIv2 で編集できるのは、プルダウンリスト、ラジオボタン、チェックボックスで作成された項目です。
ただし、データ連携中の項目はマスター管理で編集不可能なため、上記のパーツ種別であっても取得は出来ません。
{- "custom_field_data": [
- {
- "sheet_name": "役職情報",
- "id": 10,
- "name": "役職",
- "enum_option_data": [
- {
- "id": 1,
- "name": "社長"
}, - {
- "id": 2,
- "name": "部長"
}, - {
- "id": 3,
- "name": "課長"
}
]
}, - {
- "sheet_name": "家族情報",
- "id": 20,
- "name": "続柄区分",
- "enum_option_data": [
- {
- "id": 4,
- "name": "父"
}, - {
- "id": 5,
- "name": "母"
}, - {
- "id": 6,
- "name": "兄"
}, - {
- "id": 7,
- "name": "姉"
}
]
}, - {
- "sheet_name": "学歴情報",
- "id": 30,
- "name": "学歴区分",
- "enum_option_data": [
- {
- "id": 8,
- "name": "高校"
}, - {
- "id": 9,
- "name": "大学"
}, - {
- "id": 10,
- "name": "大学院"
}
]
}
]
}
指定したcustom_fields のマスター情報を取得します。
取得可能なcustom_fieldsは 一括取得 を参照してください。
custom_field_id required | integer カスタムフィールドID |
{- "sheet_name": "役職情報",
- "id": "10",
- "name": "役職",
- "enum_option_data": [
- {
- "id": 1,
- "name": "社長"
}, - {
- "id": 2,
- "name": "部長"
}, - {
- "id": 3,
- "name": "課長"
}
]
}
指定したcustom_fields のマスター情報を一括更新します。
マスターを追加したい場合は、id を指定せず name のみ指定してください。
Request Body に含まれていないマスターは削除されます。ただし、削除できるマスターは、メンバー数が「0」のマスターのみです。
並び順は送信された配列順に登録されます。
変更履歴が設定されたシートのマスター情報を更新した際には履歴が作成されます。
enum_option_dataは0件での指定は出来ません。1件以上指定してください。
※ 更新リクエスト制限の対象APIです。
custom_field_id required | integer カスタムフィールドID |
Dry-Run |
Array of objects |
{- "enum_option_data": [
- {
- "id": 1,
- "name": "社長"
}, - {
- "name": "本部長"
}, - {
- "id": 2,
- "name": "マネージャー"
}
]
}
{- "task_id": 1
}
{- "webhook_data": [
- {
- "id": 1,
- "url": "string",
- "events": [
- "member_created",
- "member_updated"
], - "secret_token": "string",
- "updated_at": "2021-12-01 12:00:00",
- "created_at": "2021-11-01 12:00:00"
}, - {
- "id": 2,
- "url": "string",
- "events": [
- "member_created"
], - "secret_token": "string",
- "updated_at": "2022-12-01 12:00:00",
- "created_at": "2022-11-01 12:00:00"
}
]
}
Webhook設定を登録します。
Dry-Run |
url required | string Webhookの送信先URL |
events required | Array of strings Webhookを送信するイベント |
secret_token | string 検証用トークン |
{- "url": "string",
- "events": [
- "member_created",
- "member_updated",
- "member_deleted"
], - "secret_token": "string"
}
{- "id": 1,
- "url": "string",
- "events": [
- "member_created",
- "member_updated",
- "member_deleted"
], - "secret_token": "string"
}
指定の ID の Webhook 設定情報を更新します。
webhook_id required | integer Webhook ID |
Dry-Run |
url required | string Webhookの送信先URL |
events required | Array of strings Webhookを送信するイベント |
secret_token | string 検証用トークン |
{- "url": "string",
- "events": [
- "member_created",
- "member_updated"
], - "secret_token": "string"
}
{- "id": 1,
- "url": "string",
- "events": [
- "member_created",
- "member_updated"
], - "secret_token": "string"
}