> ## Documentation Index
> Fetch the complete documentation index at: https://support.i.moneyforward.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SS1 Cloud

> How to integrate with SS1 Cloud. This explains the full process, from checking your company code through to completing the integration.

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>;
};

## Integration Specifications

<IntegrationCapabilities lang="en" modes="ID/Password" capabilities="device-aggregation" memo="Users (service accounts) are not retrieved. Serial numbers and manufacturers are not retrieved, so serial merging with existing devices is not available." />

## Prerequisites

### Checking your company code

When you register for SS1 Cloud, you receive a login URL. The `{company_code}` portion of that URL is your company code.

<img src="https://mintcdn.com/moneyforwardi/b9c1AGnH2i0lGRBP/images/integrations/ss1-cloud/login-url.png?fit=max&auto=format&n=b9c1AGnH2i0lGRBP&q=85&s=d5fc6a14b2918d5d8c0cce0f0c66ab33" alt="SS1 Cloud login URL, where the company_code portion is the company code" width="812" height="82" data-path="images/integrations/ss1-cloud/login-url.png" />

In addition to your company code, prepare the **username** and **password** you use to log in to SS1 Cloud.

<Note>
  If you use the overseas environment management option, the domain portion of the login URL (`mgr.ss1-cloud-gl.com`) differs.
</Note>

## Setting up the integration

1. On the integration screen, search for **SS1 Cloud**.

2. Select a **region**: "Japan (`mgr.ss1-cloud.com`)" or "Global (`mgr.ss1-cloud-gl.com`)". Then enter your **domain code** (your company code), **username**, and **password**, and click **Connect**.

   <img src="https://mintcdn.com/moneyforwardi/xh05AifYTyjhC1D3/images/integrations/ss1-cloud/integrate-workspace.png?fit=max&auto=format&n=xh05AifYTyjhC1D3&q=85&s=e49cc5dfab6fdd5d1fb0f8018f9fc6d3" alt="Integration setup screen" width="738" height="1168" data-path="images/integrations/ss1-cloud/integrate-workspace.png" />

3. Once the integration with SS1 Cloud succeeds, registered user information appears in the account list. If it doesn't complete successfully, first try the steps in [Troubleshooting failed SaaS integrations](/en/it-management/saas-management/93nahw45is-trouble). If that doesn't resolve it, check [Information to provide](/en/it-management/saas-management/93nahw45is-trouble#info-to-provide) and contact [support](/en/contact-support).

## MDM Integration

If you are using the device management feature, you can synchronize devices with SS1 Cloud. For details, see [4-0. Sync MDM-Compatible SaaS with Your Device Ledger](/en/it-management/device/k1u975zc6h-mdm).

<Info>
  The SS1 Cloud device API provides information for Windows PCs, as well as Mac and mobile devices.

  Also, the serial number is not included in the SS1 Cloud API response, so it cannot be retrieved. It therefore cannot act as a merge key. Devices are always registered as new rather than merged with an existing device.
</Info>

### Synchronized Fields

| This-Service Field   | Sync Pattern           | SS1 Cloud                                                               | Notes                                                                                                      |
| -------------------- | ---------------------- | ----------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| Asset number         | (2) This-service-based | `<mdmname>_<pc_name>`                                                   | A prefix is added to avoid duplicates.                                                                     |
| Serial number (IMEI) | (1) MDM-based          | Not available                                                           | Not included in the SS1 Cloud API response, so it cannot be retrieved.                                     |
| Email                | (2) This-service-based | Logon user record, via `logon_user`                                     | Logon users have no email, so linkage is done by matching username.                                        |
| Type                 | (2) This-service-based | `instrument_type_name`                                                  | "デスクトップパソコン" (desktop PC) → Desktop PC; "ノートパソコン" (notebook PC) → Laptop PC.                               |
| Status               | (2) This-service-based | `work_status_name`                                                      | Set to "In Use" if the value is "社内作業" (in-office work). Handling of other values is still being reviewed. |
| Location 1 / 2       | (2) This-service-based | `department` (Location 1 only)                                          | Location 1 is synchronized from the department the device belongs to. Location 2 is not synchronized.      |
| Purchase date        | (2) This-service-based | `purchase_date`                                                         | May be empty.                                                                                              |
| Memory               | (1) MDM-based          | `memory_size`                                                           | In MB.                                                                                                     |
| HDD/SSD              | (1) MDM-based          | `sysdrive_size`                                                         | Total capacity (in MB). Free space is kept separately as `sysdrive_free_size`.                             |
| OS                   | (1) MDM-based          | `os_name`                                                               | Example: "Windows 11 Home"                                                                                 |
| Version              | (1) MDM-based          | `release_id`                                                            | Release ID (example: "25H2").                                                                              |
| Hostname             | (1) MDM-based          | `pc_name`                                                               | The computer name.                                                                                         |
| Last used (MDM)      | (1) MDM-based          | `last_survive_date`                                                     | The last SS1 agent heartbeat (check-in).                                                                   |
| MDM link             | (1) MDM-based          | `https://mgr.ss1-cloud.com/mgr/instrument/detail/index/{id}/instrument` | The "Open in MDM" link goes to the device detail screen in SS1.                                            |
| Managed              | (1) MDM-based          | `is_installed`                                                          | The SS1 agent install status.                                                                              |
| Managed              | (3) MDM field          | (always Managed)                                                        |                                                                                                            |
