> ## Documentation Index
> Fetch the complete documentation index at: https://hc.saas-manager.biz.nuro.jp/llms.txt
> Use this file to discover all available pages before exploring further.

# Lark

> Larkとの連携方法です。

export const IntegrationCapabilities = ({lang = "ja", modes = "", plan = "", lifecycle = "", automation = "", fetch = "", capabilities = "", memo = ""}) => {
  const TEXT = ({
    ja: {
      rows: {
        mode: "連携モード",
        plan: "連携確認プラン",
        lifecycle: "アカウントライフサイクル",
        automation: "自動化",
        fetch: "取得データ",
        capabilities: "対応機能",
        memo: "備考"
      },
      empty: "-",
      more: "各項目の意味は[連携可能SaaS・機能対応一覧](/integrations/supported-saas)をご覧ください。",
      mode: {
        "API Key": "APIキー"
      },
      lifecycle: {
        provisioning: "アカウント作成",
        deactivate: "アカウント無効化",
        delete: "アカウント削除"
      },
      automation: {
        provisioning: "アカウント作成",
        deactivate: "アカウント無効化",
        delete: "アカウント削除"
      },
      fetch: {
        User: "ユーザー名",
        Mail: "メールアドレス",
        Role: "ロール",
        Status: "ステータス",
        "2FA": "二要素認証",
        LastActivity: "最終利用日",
        Licenses: "ライセンス"
      },
      capabilities: {
        "employee-master": "従業員マスター連携",
        "identity-provider": "IDプロバイダー連携",
        "cost-aggregation": "コスト管理",
        "file-aggregation": "ファイル管理",
        "file-permissions": "ファイル権限管理",
        "device-aggregation": "MDM連携"
      }
    },
    en: {
      rows: {
        mode: "Integration mode",
        plan: "Verified plan",
        lifecycle: "Account lifecycle",
        automation: "Automation",
        fetch: "Fetched data",
        capabilities: "Capabilities",
        memo: "Notes"
      },
      empty: "-",
      more: "See [Supported SaaS and Capabilities](/en/integrations/supported-saas) for what each item means.",
      mode: {},
      lifecycle: {
        provisioning: "Account creation",
        deactivate: "Account deactivation",
        delete: "Account deletion"
      },
      automation: {
        provisioning: "Account creation",
        deactivate: "Account deactivation",
        delete: "Account deletion"
      },
      fetch: {
        LastActivity: "Last Activity"
      },
      capabilities: {
        "employee-master": "HR master",
        "identity-provider": "Identity provider",
        "cost-aggregation": "Cost management",
        "file-aggregation": "File management",
        "file-permissions": "File permissions",
        "device-aggregation": "MDM integration"
      }
    }
  })[lang === "en" ? "en" : "ja"];
  const BADGE_COLORS = {
    "ID/Password": "yellow",
    "API Key": "cyan",
    OAuth: "red",
    App: "purple",
    User: "blue",
    Mail: "cyan",
    Role: "orange",
    Status: "teal",
    "2FA": "pink",
    LastActivity: "green",
    Licenses: "purple",
    provisioning: "green",
    delete: "red",
    deactivate: "yellow",
    "employee-master": "blue",
    "identity-provider": "teal",
    "cost-aggregation": "yellow",
    "file-aggregation": "cyan",
    "file-permissions": "orange",
    "device-aggregation": "purple"
  };
  const list = value => String(value || "").split(",").map(item => item.trim()).filter(Boolean);
  const badges = (source, labels) => {
    const values = list(source);
    if (values.length === 0) {
      return <span className="integration-capabilities-empty">{TEXT.empty}</span>;
    }
    return values.map(value => <span key={value} className={"integration-catalog-badge integration-catalog-badge--" + (BADGE_COLORS[value] || "gray")}>
        {labels?.[value] ?? value}
      </span>);
  };
  const text = value => value || <span className="integration-capabilities-empty">{TEXT.empty}</span>;
  const ROWS = [["mode", badges(modes, TEXT.mode)], ["plan", text(plan)], ["lifecycle", badges(lifecycle, TEXT.lifecycle)], ["automation", badges(automation, TEXT.automation)], ["fetch", badges(fetch, TEXT.fetch)], ["capabilities", badges(capabilities, TEXT.capabilities)], ["memo", text(memo)]];
  return <div className="integration-capabilities">
      <dl className="integration-capabilities-list">
        {ROWS.map(([key, value]) => <div className="integration-capabilities-row" key={key}>
            <dt>{TEXT.rows[key]}</dt>
            <dd>{value}</dd>
          </div>)}
      </dl>
    </div>;
};

<Info>
  連携には管理者権限のアカウントが必要です。
</Info>

## 連携仕様

<IntegrationCapabilities modes="API Key" lifecycle="provisioning, delete" fetch="User, Mail, Status" />

## 事前準備

### ログイン方法

[Larkログインページ](https://open.larksuite.com/app)にて、メールアドレス・パスワードを入力し、ログインします。

<img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781241827400.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=94bd2a31e9cc879a8330bdf622ebd05f" alt="Larkログイン画面" width="514" height="630" data-path="images/integrations/xei3b539al/1781241827400.png" />

### クライアントIDとクライアントシークレットの取得方法

1. **Create Custom App** をクリックします。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781242180466.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=84e4de98db49e59c0a1abc70a104f9d9" alt="Create Custom Appボタン" width="2446" height="286" data-path="images/integrations/xei3b539al/1781242180466.png" />

2. アプリ名・説明・アイコンを入力し、**Create** をクリックします。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781242259258.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=31f394924b1d52b6b70fde8653ccb5cd" alt="アプリ作成フォーム" width="1662" height="1494" data-path="images/integrations/xei3b539al/1781242259258.png" />

3. サイドバーの **Permissions & Scopes** をクリックします。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781242737514.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=c8df5809ecdd0bd6d2f222ba9a03fb36" alt="Permissions & Scopesメニュー" width="557" height="1364" data-path="images/integrations/xei3b539al/1781242737514.png" />

4. **Batch import/export scopes** をクリックします。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781242799149.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=97768eca5a8304577715f8dc264a1e58" alt="Batch import/export scopesボタン" width="2138" height="902" data-path="images/integrations/xei3b539al/1781242799149.png" />

5. 以下のJSONを入力し、スコープを追加します。

   ```json theme={null}
   {
     "scopes": {
       "tenant": [
         "contact:contact",
         "contact:contact.base:readonly",
         "contact:department.base:readonly",
         "contact:user.base:readonly",
         "contact:user.department:readonly",
         "contact:user.email:readonly",
         "contact:user.id:readonly",
         "tenant:tenant:readonly"
       ]
     }
   }
   ```

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781860174369.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=e85bb972999ae729735903f78e41b7ad" alt="JSONスコープ入力画面" width="1706" height="1316" data-path="images/integrations/xei3b539al/1781860174369.png" />

6. スコープが追加されたことを確認します。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781861286236.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=0399f6ce25aea4b2d21e4acced09f64b" alt="スコープ追加確認画面" width="1700" height="904" data-path="images/integrations/xei3b539al/1781861286236.png" />

7. データ範囲の **Configure** をクリックし、**All members** を選択して保存します。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781243092339.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=5b74f1072691dea97afd22a57ddb08d8" alt="データ範囲設定画面" width="1806" height="1976" data-path="images/integrations/xei3b539al/1781243092339.png" />

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1781861357441.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=4eea12c6ab13fb78749e610c5bce9439" alt="All members選択画面" width="1320" height="344" data-path="images/integrations/xei3b539al/1781861357441.png" />

8. **Version Management & Release** から新しいバージョンを作成します。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1785305982122.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=b8bb45a58312d2e5cacd466ae84f92bb" alt="Version Management & Release画面" width="2156" height="290" data-path="images/integrations/xei3b539al/1785305982122.png" />

9. アプリバージョンの情報を入力します。

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1785306551846.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=0d4de87ef7ad0e407ed1344ef0421782" alt="アプリバージョン入力フォーム" width="378" height="168" data-path="images/integrations/xei3b539al/1785306551846.png" />

10. 利用範囲を **All members** に設定します。

    <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1785306564345.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=4a33b0beb4d8e5664339824bc097129e" alt="利用範囲設定画面" width="1604" height="516" data-path="images/integrations/xei3b539al/1785306564345.png" />

11. **Submit for release** をクリックします。

    <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1785307008479.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=ea6d581ba01dd7652b9ff8e2b476b563" alt="Submit for release確認画面" width="840" height="404" data-path="images/integrations/xei3b539al/1785307008479.png" />

12. **Credentials & Basic Info** から **App ID** と **App Secret** をコピーして保存しておきます。**App ID**、**App Secret** がそれぞれ**クライアントID**、**クライアントシークレット**となります。

    <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1785307020454.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=0c4a5b35831920f939cffeef1f46e45f" alt="Credentials & Basic Info画面" width="2734" height="374" data-path="images/integrations/xei3b539al/1785307020454.png" />

## インテグレーションのセットアップ

1. インテグレーション画面にて、**Lark**で検索します。

2. 以下の値をそれぞれ入力し、**連携する**をクリックします。

   * ワークスペースキー：任意の名称（会社名など）
   * クライアントID：前の手順で取得した**App ID**
   * クライアントシークレット：前の手順で取得した**App Secret**

   <img src="https://mintcdn.com/admina-sbn/HPnbx_rE18hSowLx/images/integrations/xei3b539al/1785286796777.png?fit=max&auto=format&n=HPnbx_rE18hSowLx&q=85&s=f65f16bcdfe05ab71e0d1073e30ade81" alt="連携設定画面" width="666" height="868" data-path="images/integrations/xei3b539al/1785286796777.png" />

3. Larkとの連携が成功すると、アカウント一覧に登録済みのユーザー情報が表示されます。正常に完了しない場合は、まず [SaaSとの連携に失敗する場合の対処法](/it-management/saas-management/93nahw45is-trouble) に記載のステップをお試しください。それでも解決しない場合は、[ご提供いただきたい情報](/it-management/saas-management/93nahw45is-trouble#info-to-provide) をご確認のうえ、[サポート窓口](/contact-support)までお問い合わせください。
