kaonavi API v2 (2.0)

最終更新日時: 2025/09/08 09:02

はじめに

kaonavi API v2 とは

kaonavi API v2 を使うことで、カオナビの各種データの取得・更新ができます。 こちらのドキュメントで、APIの使い方をご確認ください。

他システムとのデータ連携に関するご相談・その他資料はこちらからご確認いただけます。(外部サイト)
※閲覧にはカオナビキャンパスオンラインのアカウントが必要です。

クイックスタート

概要

kaonavi API v2 は下記のようなHTTPリクエストで各種リソースの操作ができます。構成は以下の通りです。

$ curl -X {メソッド} 'https://api.kaonavi.jp/api/{バージョン}/{リソース}' \
    -H 'Content-Type: application/json' \
    -H 'Kaonavi-Token: {アクセストークン}'
  • {アクセストークン} ・・・接続可能な顧客情報を特定します。
  • {リソース} ・・・シートなどの各種情報を指定します。
  • {メソッド} ・・・GETやPUTなどを指定することで、取得、更新などの操作を行えます。

メソッドとリソースの組み合わせは左メニューのAPIリファレンス以下をご確認ください。

バージョン

最新バージョンは v2.0 です。

事前準備

操作対象の管理

APIを実行する前にまずAPIv2で操作出来る対象のチェックをしましょう。
カオナビにログインし、管理者機能トップ > 公開API v2 情報 > 操作対象の管理のメニューを開いて下さい。デフォルトは全てオフになっています。 このクイックスタートではメンバーの登録までを紹介しているので、画像のようにメンバー情報の「登録」にだけチェックを入れましょう。

quick start

実際の運用時にはメンバー情報やシート情報に必要な操作にだけチェックを入れて下さい。

アクセストークンを発行する

認証のためのアクセストークンを発行しましょう。

認証情報の確認

アクセストークン発行のために必要な認証情報を事前に確認しておきます。 カオナビにログインし、 管理者機能トップ > 公開API v2 情報 > 認証情報 より、Consumer KeyConsumer Secret をご確認ください。

アクセストークン発行APIを実行

アクセストークン 発行 を参照して、アクセストークンを発行します。 アクセストークン発行に必要な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時間
アクセストークンの最大同時払い出し数 1社につき毎時1,000回まで
リクエスト制限 1社につき毎時3,000回まで
リクエストサイズ : 250MBまで
更新リクエスト制限※1※2 1社につき毎分5回まで
APIのステータスコードが200の場合のみ

※1 制限対象はメンバー情報, シート情報, 所属ツリー, 拡張アクセス設定, マスター管理 です。
※2 システムの処理状況に応じて、更新リクエストの制限内であってもリクエストが制限される場合があります。

公開API 利用時の注意点

深夜1:00~1:30の間にデータバックアップを行い、データバックアップの終了後、早朝にかけて日次バッチを実施しています。

データバックアップの静止点を考慮いただき、API更新のタイミングをご検討ください。

データバックアップは、処理を開始した時点でのデータが静止点となり、当日のデータバックアップとして保持されます。
そのため、当日のデータとしてAPI更新されたい場合は1:00より前に実施し、翌日のデータとして更新されたい場合は1:30以降をご検討ください。 ※データバックアップの復元は、データ安心パックをご利用のお客様が対象です。

また日次バッチ中にAPI更新を行った場合、開始時間の早い方から処理がされます。
先行された処理の間、もう一方の処理は待機状態となり、完了してから次の処理が実行されます。
日次バッチの開始時間及び終了時間はお客様ごとに異なります。
具体的な時間についてはサポートデスクまでお問い合わせください。

dryrunモード

通常は本番モードで動作しますが、動作確認用に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 タイムアウトエラー

custom_fields について

管理者機能トップ > レイアウト設定で設定したシートの項目情報はレイアウト設定APIにて custom_fields として取得できます。 レイアウト設定API、メンバー情報API、シート情報API で取得・更新可能なシートの項目は以下の通りです。

パーツ レイアウト
設定取得
情報取得 情報更新 更新時の注意
テキストボックス
テキストエリア
ナンバーボックス
プルダウンリスト
ラジオボタン
チェックボックス
リンク
日付(カレンダー) YYYY-MM-DDの形式で更新してください
例) 2021-01-01
年月(カレンダー) YYYY-MM-DDの形式で更新してください
例) 2021-01-01
ファイル添付 ファイル添付の使い方 をご確認ください
顔写真 顔写真パーツで表示させたいメンバーの社員番号を設定してください
例) A0001
計算式 ◯※ × 計算式パーツの取り扱い をご確認ください
パラメーター をつけると取得可能です
スペースエリア × × ×
タイトルボックス × × ×
メッセージボックス × × ×
レーダーチャート × × ×

ファイル添付の使い方

シート情報 添付ファイル一括登録一括更新APIを用いてファイルを添付することができます。

注意

シート情報 一括更新・部分更新をご使用の場合、
以下の場合を除き、既にファイル添付されているパーツに対し更新を行うと、事前に添付されていたファイルは削除されますのでご注意ください。

  • 単一レコードで、member_code , custom_fields.id , ファイル名 が一致している場合
  • 複数レコードでは、上記に加え、custom_fields.id 内のファイル名がレコードごとにユニークである場合

計算式パーツの取り扱い

直接値を更新することはできませんが、登録・更新API実行後、自動的に再計算処理が実行されます。

Authentication

BasicAuth

APIのアクセストークン取得にはconsumer_key、consumer_secretが必要です。

credentialsは次のように構築してください。

  1. consumer_keyとconsumer_secretをコロンで結合(consumer_key:consumer_secret)
  2. 1の文字列をBase64でエンコード

リクエスト サンプル

$ 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'
Security Scheme Type: HTTP
HTTP Authorization Scheme: basic

ApiKeyAuth

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>'
Security Scheme Type: API Key
Header parameter name: Kaonavi-Token

Webhook

概要

kaonavi Webhook は、メンバーの基本情報が更新された際に、指定した URL に HTTPリクエストを送信します。
Webhook を利用することで、定期的にメンバー情報を取得する必要がなく、通知をきっかけとした連携機能の開発ができるようになります。

Webhookの対象機能

Webhook は以下の機能でメンバーの基本情報を更新した場合のみ送信します。

  • プロファイルブック
  • ワークフロー
  • APIv2
    • メンバー情報 登録
    • メンバー情報 一括更新
    • メンバー情報 部分更新
    • メンバー情報 全入れ替え
    • メンバー情報 削除
    • マスター管理 更新
  • 管理者メニュー
    • マスター管理
    • CSV入出力
    • 基本情報の予約設定
    • システム連携
      • サービスブリッジ

設定する

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"
    }
  ]
}

送受信における仕様

レスポンス

  • リクエストには常にステータスコード 200系 を返すようお願いします。
  • リクエストには 10 秒以内に応答をお願いします。超過した場合、送信エラーとみなします。

再送信

送信が失敗した場合でも再送信は行われません。

制限事項

制限名称 説明
Webhook設定数 10件まで
送信メンバー数の閾値 送信する member_data が 10,000件を超える場合、10,000件ごとに分割して Webhook を送信します。

利用時の注意点

Webhook は以下の場合、送信されません。

アクセストークン

アクセストークン 発行

アクセストークンを発行します。

Authorizations:
BasicAuth
Request Body schema: application/x-www-form-urlencoded;charset=UTF-8
grant_type
required
string

client_credentials である必要があります。

Responses

Request samples

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"

Response samples

Content type
application/json
{
  • "access_token": "25396f58-10f8-c228-7f0f-818b1d666b2e",
  • "token_type": "Bearer",
  • "expire_in": 3600
}

タスク進捗状況

タスク進捗状況 取得

指定したtask_idのタスクの進捗状況を取得します。
非同期でデータの登録や更新が行われる更新系APIで返却されるtask_idを指定してください。

Authorizations:
ApiKeyAuth
path Parameters
task_id
required
integer

作成されたタスクのID

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/tasks/{task_id}" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "id": 1,
  • "status": "NG",
  • "messages": [
    ]
}

レイアウト設定

メンバー情報レイアウト設定 取得

使用可能なメンバーのレイアウト設定情報を全て取得します。custom_fields の詳細については、custom_fields についてを参照ください。

Authorizations:
ApiKeyAuth
query Parameters
get_calc_type
boolean
Default: false
Example: get_calc_type=true

計算式パーツの取得

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/member_layouts" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
Example
{
  • "code": {
    },
  • "name_kana": {
    },
  • "mail": {
    },
  • "entered_date": {
    },
  • "retired_date": {
    },
  • "gender": {
    },
  • "birthday": {
    },
  • "department": {
    },
  • "sub_departments": {
    },
  • "custom_fields": [
    ]
}

シート情報レイアウト設定 一括取得

使用可能なシートのレイアウト設定情報を全て取得します。custom_fields の詳細については、custom_fields についてを参照ください。

Authorizations:
ApiKeyAuth
query Parameters
get_calc_type
boolean
Default: false
Example: get_calc_type=true

計算式パーツの取得

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/sheet_layouts" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
Example
{
  • "sheets": {
    }
}

シート情報レイアウト設定 取得

指定したシートの使用可能なレイアウト設定を全て取得します。custom_fields の詳細については、custom_fields についてを参照ください。

Authorizations:
ApiKeyAuth
path Parameters
sheet_id
required
integer

シートID

query Parameters
get_calc_type
boolean
Default: false
Example: get_calc_type=true

計算式パーツの取得

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/sheet_layouts/{sheet_id}" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
Example
{
  • "id": 12,
  • "name": "住所・連絡先",
  • "record_type": 1,
  • "custom_fields": [
    ]
}

メンバー情報

メンバー情報 一括取得

全てのメンバーの基本情報・所属(主務)・兼務情報を取得します。

Authorizations:
ApiKeyAuth

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/members" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "updated_at": "2020-10-01 01:23:45",
  • "member_data": [
    ]
}

メンバー情報 登録

メンバー登録と、合わせて基本情報・所属(主務)・兼務情報を登録します。

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

メンバー情報 一括更新

全てのメンバーの基本情報・所属(主務)・兼務情報を一括更新します。
Request Body に含まれていない情報は削除されます。

※ メンバーの登録・削除は行われません。
更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

メンバー情報 部分更新

送信されたメンバーの基本情報・所属(主務)・兼務情報のみを更新します。
Request Body に含まれていない情報は更新されません。
特定の値を削除する場合は、空文字 "" を送信してください。

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

メンバー情報 全入れ替え

現在登録されているメンバーとそれに紐づく基本情報・所属(主務)・兼務情報を全て、リクエストしたデータで入れ替えます。

  • 存在しない社員番号を指定した場合、新しくメンバーを登録します。
  • 存在する社員番号を指定した場合、メンバー情報を更新します。
  • 存在する社員番号を指定していない場合、メンバーを削除します。

更新リクエスト制限の対象APIです。
※ メンバーの削除はリクエスト時に登録処理が完了しているメンバーに対してのみ実行されます。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

メンバー情報 削除

送信されたメンバーを削除します。
紐付けユーザーがいる場合、そのアカウント種別によってはユーザーも同時に削除されます。

  • 一般の場合、ユーザーも同時に削除されます。
  • Admの場合、ユーザーの紐付けが解除。引き続きそのユーザーでログインすることは可能です。
更新リクエスト制限の対象APIです。
Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
codes
required
Array of strings

社員番号のリスト

Responses

Request samples

Content type
application/json
{
  • "codes": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

メンバー情報 顔写真 一括取得

メンバーの顔写真をダウンロードするためのURL一覧を取得します。

※ URLの有効期限は15分です。ファイル数や回線状況によっては期限内に全てのダウンロードが完了しない場合があります。その際は、並行処理や一括取得の再リクエストなどの方法をご検討ください。
※ URLは発行時点のメンバーの顔写真に紐づいています。
※ 取得される顔写真はjpg/jpeg形式です。

Authorizations:
ApiKeyAuth
query Parameters
updated_since
string <date>
Example: updated_since=2020-10-01

指定した日以降に顔写真が更新されたメンバーに絞り込みます。
YYYY-MM-DDの形式で指定してください。

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/members/face_image?updated_since=2020-10-01" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{}

メンバー情報 顔写真 一括登録

指定したメンバーの顔写真をアップロードします。

顔写真が未登録の場合、アップロードが可能です。
顔写真が登録済みの場合、エラーになります。

対応拡張子
jpg/jpeg, gif, png

1リクエストあたりの上限
メンバー数: 100メンバー
ファイルサイズ: 各ファイル5MBまで

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
enable_trimming
boolean
Default: true

顔写真の中の顔の位置を自動認識して、トリミングする機能を利用する(true:有効 false:無効。未指定の場合はtrue)

required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "enable_trimming": true,
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

メンバー情報 顔写真 部分更新

指定したメンバーの顔写真を置き換えます。

顔写真が登録済みの場合、顔写真を置き換えます。
顔写真が未登録の場合、エラーになります。

対応拡張子
jpg/jpeg, gif, png

1リクエストあたりの上限
メンバー数: 100メンバー
ファイルサイズ: 各ファイル5MBまで

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
enable_trimming
boolean
Default: true

顔写真の中の顔の位置を自動認識して、トリミングする機能を利用する(true:有効 false:無効。未指定の場合はtrue)

required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "enable_trimming": true,
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

シート情報

シート情報 取得

指定したシートの全情報を取得します。

Authorizations:
ApiKeyAuth
path Parameters
sheet_id
required
integer

シートID

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/sheets/{sheet_id}" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "id": 12,
  • "name": "住所・連絡先",
  • "record_type": 1,
  • "updated_at": "2020-10-01 01:23:45",
  • "member_data": [
    ]
}

シート情報 一括更新

指定したシートのシート情報を一括更新します。
Request Body に含まれていない情報は削除されます。
複数レコードの情報は送信された配列順に登録されます。

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
path Parameters
sheet_id
required
integer

シートID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

シート情報 部分更新

指定したシートのシート情報の一部を更新します。

単一レコード
送信された情報のみが更新されます。
Request Body に含まれていない情報は更新されません。
特定の値を削除する場合は、空文字 "" を送信してください。

複数レコード
メンバーごとのデータが一括更新されます。
特定の値を削除する場合は、空文字 "" を送信してください。
特定のレコードだけを更新することは出来ません。
member_code が指定されていないメンバーの情報は更新されません。
送信された配列順に登録されます。

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
path Parameters
sheet_id
required
integer

シートID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

シート情報 レコード追加

指定した複数レコード形式のシートにレコードを追加します。単一レコード形式のシートは対象外です。

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
path Parameters
sheet_id
required
integer

シートID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

シート情報 添付ファイル 一括登録

指定したシートのファイルパーツにファイルをアップロードします。

単一レコード
ファイルが未登録の場合、アップロードが可能です。
ファイルが登録済みの場合、エラーになります。
複数レコード
レコードを追加する形でファイルをアップロードします。
ファイル名はアップロード済みのファイルとは重複出来ません。
送信された配列順に登録されます。

対応拡張子
txt, csv, xml, htm, html, doc, docx, rtf, xls, xlsx, xlsm, ppt, pptx, pdf, jpeg, jpg, gif, png, tif, zip, odp, ods, xdw, msg

1リクエストあたりの上限
ファイル数: 1,000ファイル
ファイルサイズ: 各ファイル5MBまで

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
path Parameters
sheet_id
required
integer

シートID

custom_field_id
required
integer

カスタムフィールドID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

シート情報 添付ファイル 部分更新

指定したシートのファイルパーツのファイルを置き換えます。

単一レコード
登録済みファイルと同一名のファイルを置き換えます。

複数レコード
登録済みファイルと同一名のファイルを置き換えます。
メンバーに同一ファイル名のレコードが複数ある場合、更新出来ません。
例)
・ 更新可能:社員番号:A0001と社員番号:A0002がそれぞれ「sample.txt」という名前のファイルを持つ
・ 更新不可:社員番号:A0001が「sample.txt」という名前のファイルを2つ以上持つ

対応拡張子
txt, csv, xml, htm, html, doc, docx, rtf, xls, xlsx, xlsm, ppt, pptx, pdf, jpeg, jpg, gif, png, tif, zip, odp, ods, xdw, msg

1リクエストあたりの上限
ファイル数: 1,000ファイル
ファイルサイズ: 各ファイル5MBまで

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
path Parameters
sheet_id
required
integer

シートID

custom_field_id
required
integer

カスタムフィールドID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "member_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

所属ツリー

所属ツリー 一括取得

所属ツリーの情報を取得します。

Authorizations:
ApiKeyAuth

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/departments" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "department_data": [
    ]
}

所属ツリー 一括更新

所属ツリーの情報を一括更新します。
Request Body に含まれていない情報は削除されます。

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "department_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

ユーザー情報

ユーザー情報 一括取得

ユーザー情報の一覧を取得します。
紐付けメンバーが設定されていないユーザーの場合、member_code:nullと返却されます。
一度もログインしたことがないユーザーの場合、last_login_at:nullと返却されます。

Authorizations:
ApiKeyAuth

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/users" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "user_data": [
    ]
}

ユーザー情報 登録

ユーザー情報を登録します。
管理者機能トップ > ユーザー管理 にてユーザー作成時に設定可能なオプションについては、以下の内容で作成されます。

  • セキュアアクセス: 停止

また、未指定のオプションについては以下の内容で作成されます。

  • アカウント状態: 利用
  • パスワードロック: 解除
  • スマホオプションフラグ: 停止
Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
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:利用)

Responses

Request samples

Content type
application/json
{
  • "email": "example@kaonavi.jp",
  • "member_code": "A0003",
  • "password": "password",
  • "role": {
    },
  • "is_active": true,
  • "password_locked": false,
  • "use_smartphone": false
}

Response samples

Content type
application/json
{
  • "id": 1,
  • "email": "example@kaonavi.jp",
  • "member_code": "12345",
  • "role": {
    },
  • "is_active": true,
  • "password_locked": false,
  • "use_smartphone": false
}

ユーザー情報 取得

指定のユーザーIDのログインユーザー情報を返却します。
紐付けメンバーが設定されていないユーザーの場合、member_code:nullと返却されます。
一度もログインしたことがないユーザーの場合、last_login_at:nullと返却されます。

Authorizations:
ApiKeyAuth
path Parameters
user_id
required
integer

ユーザーID

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/users/{user_id}" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "id": 1,
  • "email": "example@kaonavi.jp",
  • "member_code": "12345",
  • "role": {
    },
  • "is_active": true,
  • "password_locked": false,
  • "use_smartphone": false,
  • "last_login_at": "2021-11-01 12:00:00"
}

ユーザー情報 更新

指定のユーザーIDのログインユーザー情報を更新します。
管理者機能トップ > ユーザー管理 にて更新可能な以下のオプションについては元の値が維持されます。

  • セキュアアクセス
Authorizations:
ApiKeyAuth
path Parameters
user_id
required
integer

ユーザーID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
email
string

ログインメールアドレス

member_code
string

社員番号

password
string

パスワード

object

ロール情報

is_active
boolean

アカウント状態(false:停止 true:利用)

password_locked
boolean

パスワードロック(false:解除 true:ロック)

use_smartphone
boolean

スマホオプションフラグ(false:停止 true:利用)

Responses

Request samples

Content type
application/json
{
  • "email": "example@kaonavi.jp",
  • "member_code": "A0003",
  • "password": "password",
  • "role": {
    },
  • "is_active": true,
  • "password_locked": false,
  • "use_smartphone": false
}

Response samples

Content type
application/json
{
  • "id": 1,
  • "email": "example@kaonavi.jp",
  • "member_code": "12345",
  • "role": {
    },
  • "is_active": true,
  • "password_locked": false,
  • "use_smartphone": false
}

ユーザー情報 削除

指定のユーザーIDのログインユーザー情報を削除します。

Authorizations:
ApiKeyAuth
path Parameters
user_id
required
integer

ユーザーID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Responses

ロール

ロール情報 一括取得

ロール情報の一覧を返却します。

Authorizations:
ApiKeyAuth

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/roles" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "role_data": [
    ]
}

拡張アクセス設定

拡張アクセス設定 一括取得

拡張アクセス設定の一覧を取得します。

Authorizations:
ApiKeyAuth
path Parameters
advanced_type
required
string
Enum: "member" "department"

拡張アクセス設定の種別

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/advanced_permissions/{advanced_type}" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "advanced_permission_data": [
    ]
}

拡張アクセス設定 全入れ替え

現在登録されている拡張アクセス設定を全て、リクエストしたデータで入れ替えます。

1ユーザーあたりの上限
・メンバー : 追加・除外 各30,000件
・所属 : 追加・除外 各1,000件

更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
path Parameters
advanced_type
required
string
Enum: "member" "department"

拡張アクセス設定の種別

Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "advanced_permission_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

マスター管理

マスター情報 一括取得

マスター管理およびAPIv2で編集可能な項目のマスター一覧を取得します。
※ データ連携中の項目は、マスター管理画面で編集できないため取得できません。

APIv2で編集可能な項目
・プルダウンリスト
・ラジオボタン
・チェックボックス

Authorizations:
ApiKeyAuth

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/enum_options" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "custom_field_data": [
    ]
}

マスター情報 取得

指定したcustom_fields(カスタムフィールド)のマスター情報を取得します。
※ データ連携中の項目は、マスター管理画面で編集できないため取得できません。

APIv2で編集可能な項目
・プルダウンリスト
・ラジオボタン
・チェックボックス

Authorizations:
ApiKeyAuth
path Parameters
custom_field_id
required
integer

カスタムフィールドID

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/enum_options/{custom_field_id}" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "sheet_name": "役職情報",
  • "id": "10",
  • "name": "役職",
  • "enum_option_data": [
    ]
}

マスター情報 更新

指定したcustom_fields(カスタムフィールド)のマスター情報を一括更新します。
※ データ連携中の項目は、マスター管理画面で編集できないため更新できません。

Request Body に含まれていないマスターは削除されます。
マスターを追加したい場合は、id を指定せず name のみ指定してください。

APIv2で編集可能な項目
・プルダウンリスト
・ラジオボタン
・チェックボックス

※ 並び順は送信された配列順に登録されます。
※ 変更履歴が設定されたシートのマスター情報を更新した際には履歴が作成されます。
※ enum_option_dataは0件での指定は出来ません。1件以上指定してください。
※ 削除できるマスターは、メンバー数が「0」のマスターのみです。
更新リクエスト制限の対象APIです。

Authorizations:
ApiKeyAuth
path Parameters
custom_field_id
required
integer

カスタムフィールドID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
Array of objects

Responses

Request samples

Content type
application/json
{
  • "enum_option_data": [
    ]
}

Response samples

Content type
application/json
{
  • "task_id": 1
}

Webhook設定

Webhook設定 一括取得

登録したWebhook設定の一覧を取得します。

Authorizations:
ApiKeyAuth

Responses

Request samples

curl -X GET "https://api.kaonavi.jp/api/v2.0/webhook" ^
  -H "Content-Type: application/json" ^
  -H "Kaonavi-Token: {アクセストークン}"

Response samples

Content type
application/json
{
  • "webhook_data": [
    ]
}

Webhook設定 登録

Webhook設定を登録します。

Authorizations:
ApiKeyAuth
header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
url
required
string

Webhookの送信先URL

https:// から始まるURLのみ設定できます。

events
required
Array of strings

Webhookを送信するイベント

一つ以上のイベント名を重複なく指定してください。 設定できる値は登録可能なイベントを参照してください。

secret_token
string

検証用トークン

WebhookのHTTPリクエスト送信時にリクエストヘッダーのKaonavi-Token に入る値を指定できます。 (参照:リクエストヘッダー

Responses

Request samples

Content type
application/json
{
  • "url": "string",
  • "events": [
    ],
  • "secret_token": "string"
}

Response samples

Content type
application/json
{
  • "id": 1,
  • "url": "string",
  • "events": [
    ],
  • "secret_token": "string"
}

Webhook設定 更新

指定の ID の Webhook 設定情報を更新します。

Authorizations:
ApiKeyAuth
path Parameters
webhook_id
required
integer

Webhook ID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Request Body schema: application/json
url
required
string

Webhookの送信先URL

https:// から始まるURLのみ設定できます。

events
required
Array of strings

Webhookを送信するイベント

一つ以上のイベント名を重複なく指定してください。 設定できる値は登録可能なイベントを参照してください。

secret_token
string

検証用トークン

WebhookのHTTPリクエスト送信時にリクエストヘッダーのKaonavi-Token に入る値を指定できます。 (参照:リクエストヘッダー

Responses

Request samples

Content type
application/json
{
  • "url": "string",
  • "events": [
    ],
  • "secret_token": "string"
}

Response samples

Content type
application/json
{
  • "id": 1,
  • "url": "string",
  • "events": [
    ],
  • "secret_token": "string"
}

Webhook設定 削除

指定の ID の Webhook 設定情報を削除します。

Authorizations:
ApiKeyAuth
path Parameters
webhook_id
required
integer

Webhook ID

header Parameters
Dry-Run
integer
Enum: 0 1

詳しくは dryrunモード を確認してください。

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ]
}