> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> User Import/Export 拡張機能について説明します。この拡張機能を使用すると、アカウントで設定した任意のデータベースとの間でユーザーのインポートおよびエクスポートを行えます。

# User Import / Export Extension

<Warning>
  **User Import/Export Extension** は 2025 年 9 月に廃止予定です。同じ機能は現在、[Auth0 Management Dashboard で直接](/docs/ja-jp/manage-users/user-migration/bulk-user-import-export)利用できます。
</Warning>

**User Import / Export Extension** では、次のことができます。

* 既存のデータベースユーザーを Auth0 に一括インポートする
* Auth0 のデータベースユーザーの一部またはすべてを検索してエクスポートする

インポートおよびエクスポートできるユーザープロファイルのフィールド一覧については、[User Profile Attributes](/docs/ja-jp/manage-users/user-accounts/user-profiles/user-profile-structure)を参照してください。

この拡張機能を使用するには、Dashboard 管理者である必要があります。

<div id="install-the-extension">
  ## 拡張機能をインストールする
</div>

この拡張機能をインストールするには、[Auth0 Dashboard > Extensions](https://manage.auth0.com/#/extensions) に移動し、**User Import / Export** を選択します。

この拡張機能はインストール前に追加の設定を必要としないため、表示される案内ポップアップで **Install** を選択して進みます。

<div id="use-the-extension">
  ## 拡張機能を使用する
</div>

拡張機能をインストールすると、インストール済み拡張機能の一覧に表示されます。起動するには、**Import / Export Extension** をクリックします。

拡張機能を初めて起動すると、一覧に表示されている操作を行うために、拡張機能による Auth0 アカウントへのアクセス許可を求められます。

<Frame>
  <img src="https://mintcdn.com/translations/MV7tE-x71x8RWRES/docs/images/cdy7uua7fh8z/5CCKmxUv1HN5nDj9jL8qel/d7f02ccf3f4be166b00bbf217e14144f/Screen_Shot_2021-05-18_at_9.11.01_PM.png?fit=max&auto=format&n=MV7tE-x71x8RWRES&q=85&s=9feeabf8574f1f75ab3d2f35db7c60f8" alt="Dashboard Extensions で Users Import/Export Extension を承認" width="730" height="1254" data-path="docs/images/cdy7uua7fh8z/5CCKmxUv1HN5nDj9jL8qel/d7f02ccf3f4be166b00bbf217e14144f/Screen_Shot_2021-05-18_at_9.11.01_PM.png" />
</Frame>

続行するには、**チェックマーク**をクリックします。

この拡張機能の使い方は 2 つあります。

* 既存のデータベースユーザーを Auth0 に一括インポートする
* Auth0 のデータベースユーザーの一部またはすべてを検索してエクスポートする

どちらのユースケースについても、以下で詳しく説明します。

<div id="import-users">
  ### ユーザーのインポート
</div>

デフォルトでは、拡張機能を開くと常に **User Import** 画面が表示されます (エクスポート画面が表示されている場合は、左側のナビゲーションバーで **Import** をクリックするとこの画面に戻れます) 。

ユーザーをインポートするには、有効な JSON ファイル ([スキーマと例はこちら](/docs/ja-jp/manage-users/user-migration/bulk-user-import-database-schema-and-examples)) を、**Drop your file here, or click to select** と表示された領域にドラッグ＆ドロップします。あるいは、この領域をクリックしてファイルを参照し、適切な JSON ファイルを選択することもできます。JSON ファイルには、インポートするユーザーの一覧が含まれている必要があります。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Auth0 テナントからエクスポートしたファイルを使用する場合は、そのファイルを `ndjson` から [JSON](/docs/ja-jp/manage-users/user-migration/bulk-user-exports#json-compatible-format) に変換する必要があります。同じユーザー ID を維持するには、インポートするすべてのユーザー ID から `auth0|` プレフィックスを削除する必要があります。

  インポート処理では、インポートされたユーザー ID に `auth0|` プレフィックスが自動的に追加されます。インポート前に `auth0|` プレフィックスを削除しないと、ユーザー ID は `auth0|auth0|...` のようになります。
</Callout>

ユーザーのインポート先となるデータベース接続を選択します。選択する接続が、少なくとも 1 つのアプリケーションで有効になっていることを必ず確認してください。

インポート処理を開始するには、**Start Importing Users** をクリックします。

完了すると、次の **Completed** メッセージが表示されます。

<Frame>
  <img src="https://mintcdn.com/translations/c0RQ9V0YAcT0-8l5/docs/images/cdy7uua7fh8z/7hyE3DWBJuFuAulAAnZlfN/23303644d4c706f4c0937bd363bf6699/import-complete.png?fit=max&auto=format&n=c0RQ9V0YAcT0-8l5&q=85&s=1f53d4c3b145b809ab2dfd1280d085cd" alt="Dashboard Extensions Users Import Export Import Complete" width="673" height="293" data-path="docs/images/cdy7uua7fh8z/7hyE3DWBJuFuAulAAnZlfN/23303644d4c706f4c0937bd363bf6699/import-complete.png" />
</Frame>

ユーザーのインポート後は、[Auth0 Dashboard > User Management > Users](https://manage.auth0.com/#/users) で個別に管理できます。

<div id="export-users">
  ### ユーザーのエクスポート
</div>

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Auth0 では、エクスポートファイルのサイズが大きいため、ndjson 形式を使用します。ユーザーをインポートする前に、使用するライブラリ ([jq](https://stedolan.github.io/jq/) など) を使って **ndjson** を **json** に変換する必要があります。後でインポートする前提でユーザーをエクスポートする場合は、ユーザーフィールド名を既定値のままにし、列名にマッピングしないでください。
</Callout>

データベース接続に関連付けられた既存の Auth0 ユーザーをエクスポートするには、**Export** を選択します。

<Frame>
  <img src="https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/5wUhbGMjVQKIE9vx2SBIA3/a952aee6cc6027234631334c7174c4a8/export-users.png?fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=d338c8aeb8a66a4ff7413cd9ea077abe" alt="Dashboard Extensions Users Import Export Export Users page" width="1504" height="908" data-path="docs/images/cdy7uua7fh8z/5wUhbGMjVQKIE9vx2SBIA3/a952aee6cc6027234631334c7174c4a8/export-users.png" />
</Frame>

**User Fields** では、エクスポートに含めるユーザー属性または式を指定できます。ユーザー属性には、`user.user_metadata.name` のような固定値や、`user.user_metadata.name || user.name` のような JavaScript 式を指定できます。式はエクスポートの実行時に評価されます。**column name** の値は、その値がエクスポート内でどのように表記されるかを示します。

**Add Default Fields** ボタンをクリックすると、既定のフィールドが自動的に選択され、対応する列名も入力されます (これは、パラメーターや式がどのように表示されるかを確認するのにも便利です) 。

不要な属性や式は、対応する **ごみ箱** アイコンをクリックして削除できます。

**Settings** では、次の操作を行えます。

* ユーザーの並び替えに使用する **User Attribute** を指定して、エクスポートされるユーザーの表示順を設定する (あわせて、昇順または降順のどちらで並び替えるかも指定できます)
* **Export Format** を選択する。JSON ファイルまたは CSV ファイルを選べます

  <Frame>
    <img src="https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1HVpo1IevSRJbFvwrEKkzf/761fa914f6c33cdee147e07b2c43f7c7/settings.png?fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=d276b0dac9146902a43fa98ebcb79c02" alt="Dashboard Extensions Users Import Export Settings Export Format" width="684" height="472" data-path="docs/images/cdy7uua7fh8z/1HVpo1IevSRJbFvwrEKkzf/761fa914f6c33cdee147e07b2c43f7c7/settings.png" />
  </Frame>

準備ができたら、**Export X Users** をクリックします (`X` はエクスポートするユーザー数です) 。

エクスポートが完了すると、ユーザー情報を含むファイルをダウンロードできます。Windows 10 以前を使用している場合は、サードパーティ製の展開ツールが必要になることがあります。

<div id="update-users">
  ## ユーザーの更新
</div>

Auth0 <Tooltip tip="Management API: 顧客が管理タスクを実行できるようにする製品。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Management+API">Management API</Tooltip> では、User Import/Export Extension を使用して、ユーザープロファイルの `user_metadata` と `app_metadata` を一括更新できます。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Auth0 は現在、Passwordless の一括インポートをサポートしていません。ユーザーを個別に更新するには、[Auth0 Management API](https://auth0.com/docs/api/management/v2#!/Users/patch_users_by_id) を使用してください。
</Callout>

### ユーザーをエクスポート

[上記のエクスポート手順](/docs/ja-jp/customize/extensions/user-import-export-extension#export-users)に従って、すべてのユーザー属性を含む完全なエクスポートファイルを作成します。

エクスポート形式として JSON を選択します。

エクスポートが完了したら、ユーザー情報が含まれたファイルをダウンロードします。

<div id="update-your-configuration">
  ### 設定を更新する
</div>

前の手順でダウンロードした JSON ファイルの**コピー**を作成します。

<Warning>
  この処理によりデータが失われる可能性があります。データが破損した場合に備えて、ユーザーデータベースのバックアップを作成してください。
</Warning>

JSON ファイルのコピーをテキストエディタで開きます。ユーザースキーマは次のようになっているはずです。

```json lines expandable theme={null}
[
   {
      "Id":"auth0|626737a9813c000069daf462",
      "Nickname":"testuser1",
      "Name":"testuser1@auth0.com",
      "email":"testuser1@auth0.com",
      "Connection":"Username-Password-Authentication",
      "Created At":"2022-04-26T00:07:05.098Z",
      "Updated At":"2022-07-06T14:54:19.214Z"
   },
   {
      "Id":"auth0|62d1a1853bdcf11ff5dca672",
      "Nickname":"testuser2",
      "Name":"testuser2@auth0.com",
      "email":"testuser2@auth0.com",
      "Connection":"Username-Password-Authentication",
      "Created At":"2022-07-15T17:19:01.531Z",
      "Updated At":"2022-07-15T17:19:01.532Z"
   },
   {
      "Id":"auth0|62d1a1a524f32a4185c9ce23",
      "Nickname":"testuser3",
      "Name":"testuser3@auth0.com",
      "email":"testuser3@auth0.com",
      "Connection":"Username-Password-Authentication",
      "Created At":"2022-07-15T17:19:33.484Z",
      "Updated At":"2022-07-15T17:19:33.484Z"
   }
]
```

ユーザーのメールアドレスは、データベースでユーザーを照合するためのキーとなるため、変更しないでください。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Id には一意の `connection|id` が必要です。同じユーザー Id が複数の接続に存在する場合、更新は失敗します。
</Callout>

属性を追加するには、各ユーザースキーマに新しいフィールドを作成し、値を設定して更新します。以下の例では、"Family Name" 属性に "Smith" という値が設定されており、新しい属性値の後にカンマがあります。

また、複数のユーザーに `email_verified` 属性を追加し、その値を `true` に設定することもできます。

```json lines theme={null}
{
   "Id":"auth0|626737a9813c000069daf462",
   "Nickname":"testuser1",
   "Family Name":"Smith",
   "Name":"testuser1@auth0.com",
   "email":"testuser1@auth0.com",
   "email_verified":true,
   "Connection":"Username-Password-Authentication",
   "Created At":"2022-04-26T00:07:05.098Z",
   "Updated At":"2022-07-06T14:54:19.214Z"
}
```

ユーザーファイルへの変更を保存します。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  この方法では複数のユーザーをブロックできません。ユーザーをブロックするには、Auth0 Dashboard または [Auth0 Management API](https://auth0.com/docs/api/management/v2#!/Users/patch_users_by_id) で 1 人ずつ個別に行う必要があります。
</Callout>

<div id="import-updated-user-profile-data">
  ### 更新したユーザープロファイルデータをインポートする
</div>

`users-import` エンドポイントを使用すると、更新したユーザープロファイルファイルをアップロードして、1 つのジョブで複数のユーザーを更新できます。[ユーザーインポートジョブ作成エンドポイント](https://auth0.com/docs/api/management/v2/#!/Jobs/post_users_imports)に移動します。

ユーザーファイルを users パラメーターに追加し、更新対象のデータベースのデータベース接続 ID を追加します。

既存のユーザー情報を更新するには、upsert の値を `true` に設定する必要があります。
更新を反映するには、**Try** を選択するか、Postman を使用してユーザーをインポートします。

ステータスを確認するには、`job_id` を使用して `jobs` [エンドポイント](https://auth0.com/docs/api/management/v2/#!/Jobs/get_jobs_by_id) を参照します。
