バッチファイルをインポートします
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
!重要機能の利用可能性は段階的に展開される一環です。あなたの組織はまだこの機能に気づいていないかもしれません。環境が導入された際に利用可能になります。
このウォークスルーでは、JSONLファイルをProfile Import APIにアップロードし、完了まで追跡し、結果を確認します。
このウォークスルーでは、以下の方法を説明します:
!通知始める前に
- アップロードできるJSONLファイルが準備されています。フォーマットの要件については バッチファイルフォーマット を参照してください。
- 現在、あなたの環境に合う QUEUED や RUNNING ロットはありません。同時に稼働できるバッチは1つだけです。
APIキーを作成する
本番環境では、静的APIキーを使って認証する必要があります。SitecoreAI設定の プロファイルインポート ページからAPIキーを作成できます。
!注本番環境では、APIキーを作成できるのは組織所有者と組織管理者だけです。非本番環境では、すべてのユーザーがAPIキーを作成できます。
APIキーを作成するには:
-
SitecoreAIで、プロファイルインポート>パフォーマンス>設定をクリックします。
-
「 認証情報 」タブをクリックし、その後「 認証情報を作成」をクリックします。
-
資格名と任意の説明を入力します。
-
APIキーを1年後に失効させたい場合は、「 認証情報は1年で失効する」を選択してください。このオプションを選択しなければ、APIキーは失効しません。
-
「作成」をクリックし、その後APIキーをコピーします。キーは一度だけ表示され、ダイアログを閉じた後は取り出せません。
!警告ダイアログを閉じる前にAPIキーをコピーしてください。消えた後は再開できません。もし失ったら、新しい資格情報を作成しなければなりません。
JSONLファイルを準備してください
入力ファイルはUTF-8エンコードのJSONライン(JSONL)形式で、1行につき1つのJSONオブジェクトが必要です。各行はプロファイルペイロードに対応する独立したレコードです。
{"recordType":"profile","identifiers":{"provider":"email","id":"[email protected]"},"contact":{"firstName":"Alice1","lastName":"Smith2"}, "extensions":{"where": "In the wonderland"}} {"recordType":"profile","identifiers":{"provider":"email","id":"[email protected]"},"contact":{"firstName":"Alice2","lastName":"Smith2"}, "extensions":{"where": "In the wonderland1"}} {"recordType":"profile","identifiers":{"provider":"email","id":"[email protected]"},"contact":{"firstName":"Alice3","lastName":"Smith2"}, "extensions":{"where": "In the wonderland2"}} {"recordType":"profile","identifiers":{"provider":"email","id":"[email protected]"},"contact":{"firstName":"Alice4","lastName":"Smith2"}, "extensions":{"where": "In the wonderland3"}} {"recordType":"profile","identifiers":{"provider":"email","id":"[email protected]"},"contact":{"firstName":"Alice5","lastName":"Smith2"}, "extensions":{"where": "In the wonderland4"}} {"recordType":"profile","identifiers":{"provider":"userid","id":"crm-0042"},{"provider":"email","id":"[email protected]"},"contact":{"firstName":"Bob","lastName":"Jones"}} {"recordType":"profile","identifiers":{"provider":"userid","id":"crm-0044"},"contact":{"firstName":"James","lastName":"Red"}} {"recordType":"profile","identifiers":{"provider":"userid","id":"crm-0044"},"contact":{"firstName":"James","lastName":"Red"}} {"recordType":"profile","identifiers":{"provider":"userid","id":"crm-0044"},"contact":{"firstName":"James","lastName":"Red"}} {"recordType":"profile","identifiers":{"provider":"userid","id":"crm-0044"},"contact":{"firstName":"James","lastName":"Red"}} {"recordType":"profile","identifiers":{"provider":"userid","id":"crm-0044"},"contact":{"firstName":"James","lastName":"Red"}} {"recordType":"profile","identifiers":{"provider":"userid","id":"crm-0044"},"contact":{"firstName":"James","lastName":"Red"}}
必要なidentifiers構造や対応フィールドを含む完全なフォーマット要件については、バッチファイルフォーマットを参照してください。
!ヒントファイルサイズは100MB以下に抑えましょう。データセットがこの制限を超える場合は、複数のファイルに分割して1つずつアップロードし、各バッチが完了するのを待ってから次のバッチを始めてください。
JSONLファイルのMD5チェックサムを計算します
APIはアップロード時にJSONLファイルの整合性を確認するためにMD5チェックサムを必要とします。アップロード前にMD5ハッシュを計算するには、以下のいずれかの方法を用いてください。
::::タブズ:::tab{title="Linux"}
md5sum guests.jsonl | awk '{print $1}'
:::
md5 -q guests.jsonl
(Get-FileHash guests.jsonl -Algorithm MD5).Hash.ToLower()
certutil -hashfile guests.jsonl MD5
コマンドは01556b1dcc2b3cb87889838ee349357aのような32文字の十六進進形文字列を出力します。この値をコピーしてください。APIにアップロードする際にmd5フォーム欄として渡します。
ファイルをアップロードしてください
!注非本番環境ではProfileインポートページからファイルをアップロードできますが、本番環境ではAPIを使わなければなりません。
multipart/form-dataでPOSTリクエストを使って、プロフィールインポートAPIを通じてファイルをアップロードしてください。{base_url}をAPIエンドポイントに置き換えてください。これはプロフィールインポートページの**「認証情報**」タブで確認できます。AuthorizationヘッダーにAPIキーを含めてください。
curl -X POST "{base_url}/v1/batches" \
-H "Authorization: ApiKey
アップロードが成功すると、バッチを追跡するためのbatchIdが返202 Acceptedされます:
{ "batchId": "7266232b-a7d4-496c-b0b3-be8dbde7495a", "status": "QUEUED", "checksumMd5": "01556b1dcc2b3cb87889838ee349357a", "fileSizeBytes": 1873, "createdAt": "2026-07-02T13:14
.546433Z" }救batchId。状況確認や結果のダウンロードに使います。
!注429 Too Many Requestsエラーが出た場合、すでにバッチがキューに入れられているか、あなたの環境で実行中であることを意味します。新しいファイルをアップロードする前に、完成するのを待ちましょう。
エラー応答の全リストについては、プロファイルインポートAPIをご覧ください。
プロフィールインポートページからアップロード(本番外のみ)
SitecoreAI UIを通じてファイルをアップロードするには:
-
SitecoreAIで、プロファイルインポート>パフォーマンス>設定をクリックします。
-
アップロードタブで**「バッチアップロード**」をクリックします。
-
JSONLファイルを選択して アップロードをクリックします。
アップロードが完了すると、バッチは アップロード タブに表示され、進捗を監視できます。
バッチの監視
Profileインポートページからバッチを監視するか、batchIdを使ってステータスエンドポイントをポーリングできます。
curl "{base_url}/v1/batches/{batchId}/status" \
-H "Authorization: ApiKey
回答には現在の状況と記録数が含まれます:
{ "batchId": "7266232b-a7d4-496c-b0b3-be8dbde7495a", "status": "COMPLETED_WITH_ERRORS", "totalRecords": 12, "succeededRecords": 6, "failedRecords": 6, "processingTimeSeconds": 64, "startedProcessingAt": "2026-07-02T13:14
.064400Z", "finishedProcessingAt": "2026-07-02T13:15.475259Z" }各状態および再試行の動作についてはバッチ 状態を参照してください。
結果を見る
バッチが最終状態(COMPLETED、COMPLETED_WITH_ERRORS、またはFAILED)に達した後、プロファイルインポート ページで結果を確認するか、統計エンドポイント を使ってインポートの概要を確認できます。
curl "{base_url}/v1/batches/7266232b-a7d4-496c-b0b3-be8dbde7495a/stats" \
-H "Authorization: ApiKey
回答にはインポートの概要が含まれています:
{ "batchId": "7266232b-a7d4-496c-b0b3-be8dbde7495a", "status": "COMPLETED_WITH_ERRORS", "checksumMd5": "01556b1dcc2b3cb87889838ee349357a", "fileSizeBytes": 1873, "totalRecords": 12, "succeededRecords": 6, "createdRecords": 3, "updatedRecords": 3, "failedRecords": 6, "failedByCode": { "INVALID_RECORD": { "count": 6, "firstRecordIndex": 6, "firstDescription": "No identifier with a valid id and a recognised provider" } }, "processingTimeSeconds": 64, "createdBy": "[email protected]", "createdAt": "2026-07-02T13:14
.546433Z", "startedProcessingAt": "2026-07-02T13:14.064400Z", "finishedProcessingAt": "2026-07-02T13:15.475259Z" }また、各記録の結果を 閲覧するために結果をダウンロード することもできます。
バッチファイルを正常にインポートしました。JSONLファイルを準備し、そのMD5チェックサムを計算し、APIを使ってアップロードし、処理を監視し、結果を取得しました。