snapshot of https://github.com/twentyhq/twenty.git (main, 2026-09-17; blobs > 131072B omitted)
Some checks failed
App Prod-Parity E2E Dispatch / dispatch (push) Failing after 10s
CD Storybook UI / build (push) Failing after 3m25s
CD Storybook UI / dispatch (push) Has been skipped
CD deploy main / website-changed-files (push) Successful in 18m8s
CI Agent Skills / changed-files-check (push) Successful in 18m9s
CI Create App E2E minimal / changed-files-check (push) Successful in 24s
CI Create App / changed-files-check (push) Successful in 26s
CI Docs / changed-files-check (push) Successful in 26s
CI Emails / changed-files-check (push) Successful in 28s
CI Example App Hello World / changed-files-check (push) Successful in 23s
CI Front / changed-files-check (push) Has been skipped
CI Example App Postcard / changed-files-check (push) Successful in 27s
CI UI / changed-files-check (push) Has been skipped
CI Utils Test / changed-files-check (push) Successful in 45s
CI Twenty Apps / discover (push) Successful in 1m3s
CD deploy main / deploy-main (push) Failing after 3s
CI Agent Skills / agent-skills-validate (push) Has been skipped
CI Create App / create-app-test (lint) (push) Has been skipped
CI Emails / emails-test (push) Has been skipped
CI Front / front-task (lingui:compile) (push) Has been skipped
CI Front / front-task (lint) (push) Has been skipped
CI Example App Postcard / example-app-postcard (push) Has been skipped
CI UI / ui-task (lint) (push) Has been skipped
CI UI / ui-task (pack-size) (push) Has been skipped
CI UI / ui-task (size) (push) Has been skipped
CI UI / ui-task (test) (push) Has been skipped
CI UI / ui-task (typecheck) (push) Has been skipped
CI Utils Test / utils-test (push) Has been skipped
CI Twenty Apps / ${{ matrix.app.name }} (push) Has been skipped
CI Emails / ci-emails-status-check (push) Successful in 2s
CI Example App Hello World / ci-example-app-hello-world-status-check (push) Successful in 2s
CI Example App Postcard / ci-example-app-postcard-status-check (push) Successful in 3s
CI UI / ui-sb-test (push) Has been skipped
CI Utils Test / ci-utils-test-status-check (push) Successful in 2s
CI Twenty Apps / ci-twenty-apps-status-check (push) Successful in 2s
CI UI / ci-ui-status-check (push) Successful in 2s
CI Desktop / desktop (push) Failing after 1m8s
Push docs to Crowdin / Push documentation to Crowdin (push) Failing after 55s
Push translations to Crowdin / Extract and upload translations (push) Failing after 5s
Push website translations to Crowdin / Extract and upload website translations (push) Failing after 5s
CI Create App / create-app-test (test) (push) Has been skipped
CI Create App / create-app-test (typecheck) (push) Has been skipped
CI Docs / docs-lint (push) Has been skipped
CI Example App Hello World / example-app-hello-world (push) Has been skipped
CI Front / front-task (lingui:extract) (push) Has been skipped
CI Front / front-task (test) (push) Has been skipped
CI Front / front-task (typecheck) (push) Has been skipped
CI UI / ui-sb-build (push) Failing after 1m32s
CI Twenty Apps / ${{ matrix.app.name }} (${{ matrix.server-source }}) (push) Has been skipped
CI Agent Skills / agent-skills-publish (push) Has been skipped
CI Create App / ci-create-app-status-check (push) Successful in 2s
CI Agent Skills / agent-skills-remote-source (push) Has been skipped
CI Create App E2E minimal / create-app-e2e-minimal (push) Has been cancelled
CI E2E Main / e2e-test (push) Has been cancelled
CI Front / front-sb-build (push) Has been cancelled
CI Front / front-build (push) Has been cancelled
CI Create App E2E minimal / ci-create-app-e2e-minimal-status-check (push) Has been cancelled
CI E2E Main / ci-e2e-main-status-check (push) Has been cancelled
CI E2E Main / notify-main-ci-failure (push) Has been cancelled
CI E2E Main / qa-scout-comment (push) Has been cancelled
CI Front / front-sb-test (push) Has been cancelled
CI Front / front-sb-screenshots (push) Has been cancelled
CI Front / ci-front-status-check (push) Has been cancelled
DPA Sub-Processor Sync / sync-subprocessors (push) Failing after 3s
AI Catalog Sync / sync-catalog (push) Failing after 3s

This commit is contained in:
upstream-mirror
2026-09-17 23:28:13 +05:00
commit e7da97194a
32688 changed files with 4208681 additions and 0 deletions

View File

@@ -0,0 +1,242 @@
---
title: CSV ファイルで連絡先をインポートする
description: Twenty に連絡先(People)をインポートするための完全なステップバイステップガイド。
---
## 概要
このガイドでは、連絡先(People)を Twenty にインポートする手順を説明します。
## 始める前に
### 事前準備チェックリスト
<Check>
ファイル形式が CSV、XLSX、または XLS である
</Check>
<Check>
ファイルのレコード数が 10,000 未満
</Check>
<Check>
ファイル内に重複するメールアドレスがない
</Check>
<Check>
**会社を先にインポート**(People を会社に関連付ける場合)
</Check>
<Check>
すべてのカスタムフィールドが **Settings → Data Model** に存在する
</Check>
<Warning>
**People の前に会社をインポート**
People を会社に関連付けたい場合は、まず会社をインポートしてください。 参照する前に、その会社が存在している必要があります。
</Warning>
## ステップ 1: 連絡先データを準備する
### 必須および推奨フィールド
| フィールド | 必須? | 形式 | ノート |
| ------------- | --- | ----------------- | --------------------- |
| **メール** | 推奨 | `name@domain.com` | 一意である必要があります |
| **名** | 推奨 | テキスト | |
| **姓** | 推奨 | テキスト | |
| **会社** | 任意 | ドメインまたは ID | 既存の会社にリンクします |
| **電話** | 任意 | 複数の列 | 以下を参照 |
| **職種** | 任意 | テキスト | |
| **カスタムフィールド** | 任意 | 項目により異なる | データモデル内に存在している必要があります |
### メール形式
* 有効なメール形式である必要があります: `name@domain.com`
* **一意である必要があります** — ファイル内や Twenty 内に重複がないこと
* 追加のメールには、**Emails / Additional Emails** 列を使用してください:
```
["jane@twenty.com","jane.doe@twenty.com"]
```
### 電話番号の形式
電話番号は複数の列を必要とする**ネストされたフィールド**です:
| 列 | 例 |
| --------------------------------------- | ------------ |
| **Phones / Primary Phone Number** | `4159095555` |
| **Phones / Primary Phone Country Code** | `US` |
| **Phones / Primary Phone Calling Code** | `+1` |
### 会社への関連付け
会社の一意の識別子を含む列を追加します:
| 列名 | 形式 | 例 |
| --------------- | ------ | -------------------------------------- |
| `companyDomain` | URL 形式 | `https://acme.com` |
| `companyId` | UUID | `c776ee49-f608-4a77-8cc8-6fe96ae1e43f` |
<Note>
**ドメインの URL 形式**(`https://acme.com`)を使用し、ラベルは使用しないでください。 これは Twenty における会社の保存方式に一致します。
</Note>
### CSV のサンプル構造
```csv
firstName,lastName,email,jobTitle,companyDomain,Phones / Primary Phone Number,Phones / Primary Phone Country Code
John,Smith,john@acme.com,CEO,https://acme.com,4159095555,US
Jane,Doe,jane@widgets.co,CTO,https://widgets.co,2125551234,US
```
<Note>
**プロのヒント:** インポート中に **Download sample file** をクリックするか、既存の People をいくつかエクスポートして、Twenty が想定する正確な列名を確認してください。
</Note>
## ステップ 2: インポート機能にアクセスする
**オプション 1: People ビューから**
1. 左側のサイドバーで **People** に移動します
2. 右上の **⋮** アイコンをクリックします
3. **Import records** を選択します
**オプション 2: Command メニューを使用**
1. `Cmd + K`(Mac)または`Ctrl + K`(Windows)を押します
2. "import" と入力します
3. **Import records** を選択します
4. **People** を選択します
## ステップ 3: ファイルをアップロードする
1. **Select file** をクリックします
2. CSV、XLSX、または XLS ファイルを選択します
3. Twenty がファイルを解析するまで待ちます
## ステップ 4: 列をマッピングする
Twenty は列をフィールドに自動的に照合しようとします。 確認して調整します:
1. **自動マッピングを確認** — 正しいことを検証します
2. **誤ったマッピングを修正** — ドロップダウンをクリックして正しいフィールドを選択します
3. **列をスキップ** — インポートしたくない列には **Do not map** を選択します
### 重要なマッピングルール
| 列の種類 | マッピング先 | ノート |
| ------ | ------------------------------ | ------------------------------------ |
| 会社参照 | **会社** の関連フィールド | ドメインまたは ID のいずれか一方を使用し、両方は使用しないでください |
| メール | **メール** | プライマリメールアドレス |
| 追加のメール | **Emails / Additional Emails** | 配列形式 |
| 電話 | 別々の列 | 番号、国コード、Calling Code |
<img src="/images/user-guide/import-export-data/match-columns.png" style={{width:'100%'}} />
### 会社リレーションのマッピング
会社列をマッピングする際:
1. 会社参照列(例: `companyDomain`)を見つけます
2. それを **会社** の関連フィールドにマッピングします
3. Twenty は各 People レコードを対応する会社にリンクします
<Warning>
**リレーションには一意の識別子を必ず1つだけマッピングしてください。**
`companyId` と `companyDomain` の両方をマッピングしないでください。 どちらか一方を選択してください—人間が読みやすいので、可能であればドメインを推奨します。
</Warning>
## ステップ 5: Select フィールドの値をマッピングする
Select または Multi-Select フィールド(例: リードソース)がある場合:
1. Twenty は、既存のオプションと並べて値を表示します
2. ファイル内の各値を Twenty のオプションに対応付けます
3. 必要に応じて新しいオプションを作成します
<Note>
Select のオプションは表示ラベルではなく、**API 名**を使用します。 API 名を確認するには、**Settings → Data Model** で **Advanced mode** を有効にします。
</Note>
## ステップ 6: エラーを確認して修正
インポートを完了する前に、Twenty がデータを検証します:
1. **Next Steps** をクリックします
2. エラーのある行は **黄色** で強調表示されます
3. **エラーを直接修正** — セルをクリックして値を編集します
4. **問題のある行を削除** — その行をスキップするには X をクリックします
### 一般的な連絡先インポートのエラー
| エラー | 原因 | 解決策 |
| ------------------ | ------------------------------- | --------------------------- |
| **重複したメールアドレス** | メールアドレスが Twenty またはファイルに既に存在します | 重複を削除するか、既存のレコードを更新します |
| **無効なメールアドレス形式** | メールアドレスの形式が正しくありません | `name@domain.com` の形式に修正します |
| **リレーションが見つかりません** | 会社が存在しません | 先に会社をインポートするか、参照を修正します |
| **必須フィールドの欠落** | 必須フィールドが空です | 値を入力するか、その行を削除します |
## ステップ 7: インポートを完了する
1. インポートの概要を確認します
2. インポートするには **Confirm** をクリックします
3. インポートが完了するまで待ちます
4. いくつかのレコードを確認し、それらの Company リンクをチェックして検証します
## 連絡先をインポートした後
連絡先は Twenty に追加されました! 次のステップ:
1. **会社リンクを確認** — いくつかの People レコードを開き、正しい会社にリンクされていることを確認します
2. **Opportunities をインポート** — 必要に応じて、People や Companies にリンクします
3. **メール同期を設定** — メールボックスを接続して、連絡先レコード上でメール履歴を確認します
## 既存の連絡先を更新する
新規作成ではなく連絡先を更新するには:
1. ファイルに `email` または `id` 列を含めます
2. Twenty はこの一意の識別子でレコードを照合します
3. 既存の連絡先は更新され、新規は作成されます
詳細は [既存レコードを更新する方法](/l/ja/user-guide/data-migration/how-tos/update-existing-records-via-import) を参照してください。
## FAQ
<AccordionGroup>
<Accordion title="なぜ 2人の People が同じメールアドレスを持つことはできないのですか?">
メールアドレスは Twenty における一意の識別子です。 これにより連絡先の重複を防ぎ、メール同期でメールが正しい人物にリンクされるようになります。
</Accordion>
<Accordion title="メールアドレスのない人がいる場合はどうすればよいですか?">
メールアドレスは空のままでもかまいません。 ただし、データ品質とメール同期機能を高めるため、可能であればメールアドレスの追加を推奨します。
</Accordion>
<Accordion title="インポート中に People を Companies にリンクするにはどうすればよいですか?">
Company のドメイン(例: `https://acme.com`)または ID の列を追加します マッピング時に、この列を Company のリレーションフィールドに関連付けます。
</Accordion>
<Accordion title="Company がまだ存在しない場合はどうすればよいですか?">
まず Companies をインポートし、その後 People をインポートします。 参照する前に、その Company が存在している必要があります。
</Accordion>
<Accordion title="以前の CRM の ID をインポートできますか?">
はい! 外部 ID を保存するために、データモデルで "unique" に指定したカスタムフィールドを作成します。 注意: フィールド名 `id` は Twenty の内部 ID 用に予約されています。
</Accordion>
<Accordion title="「relation not found」エラーはどのように修正しますか?">
参照している Company が存在しません。 Company を先にインポートするか、ドメイン/ID が既存の Company と完全に一致しているか確認してください。
</Accordion>
</AccordionGroup>
## トラブルシューティング
お困りですか? 次を確認してください:
* [インポートエラーを解決する方法](/l/ja/user-guide/data-migration/how-tos/fix-import-errors)
* [リレーションをインポートする方法](/l/ja/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv)
* [フィールドマッピングのリファレンス](/l/ja/user-guide/data-migration/capabilities/field-mapping)