プライバシージョブエンドポイント
このドキュメントでは、API 呼び出しを使用したプライバシージョブの操作方法について説明します。 特に、Privacy Service API の /job
エンドポイントの使用について説明します。 このガイドを読む前に、 はじめる前にを参照して、必要なヘッダーやサンプル API 呼び出しの読み取り方法など、API の呼び出しを正しく実行するために必要な重要な情報を確認してください。
すべてのジョッブをリスト list
/jobs
エンドポイントに対してGETリクエストを行うことで、組織内で使用可能なすべてのプライバシージョブのリストを表示できます。
API 形式
このリクエスト形式は、/jobs
エンドポイントで regulation
クエリパラメーターを使用するので、以下に示すように、疑問符(?
)で始まります。 リソースをリストする場合、Privacy ServiceAPI は最大 1,000 個のジョブを返し、応答にページ番号を付けます。 その他のクエリパラメーター(page
、size
、日付のフィルター)を使用して、応答をフィルタリングします。 アンパサンド(&
)を使用して、複数のパラメーターを区切ることができます。
status
、fromDate
、toDate
のクエリパラメーターを使用しているかなどを確認できます。GET /jobs?regulation={REGULATION}
GET /jobs?regulation={REGULATION}&page={PAGE}
GET /jobs?regulation={REGULATION}&size={SIZE}
GET /jobs?regulation={REGULATION}&page={PAGE}&size={SIZE}
GET /jobs?regulation={REGULATION}&fromDate={FROMDATE}&toDate={TODATE}&status={STATUS}
{REGULATION}
クエリする規制の種類。使用できる値は次のとおりです。
apa_aus
ccpa
cpa_usa
cpra_usa
ctdpa_usa
dpdpa
fdbr_usa
gdpr
hipaa_usa
icdpa_usa
lgpd_bra
mcdpa_usa
mhmda_usa
ndpa_usa
nhpa_usa
njdpa_usa
nzpa_nzl
ocpa_usa
pdpa_tha
ql25
tdpsa_usa
ucpa_usa
vcdpa_usa
上記の値が表すプライバシー規制について詳しくは、 サポートされる規制の概要を参照してください。
{PAGE}
0
です。{SIZE}
100
で、最大は 1000
です。最大値を超えると、API は 400 コードエラーを返します。{status}
デフォルトの動作では、すべてのステータスが含まれます。 ステータスタイプを指定すると、リクエストはそのステータスタイプに一致するプライバシージョブのみを返します。 指定できる値は次のとおりです。
processing
complete
error
{toDate}
YYYY-MM-DD の形式を使用できます。 指定した日付は、グリニッジ標準時(GMT)で表された終了日と解釈されます。
このパラメーター(および対応する
fromDate
)を指定しない場合、デフォルトの動作では、過去 7 日間にそのデータを返すジョブが返されます。 toDate
を使用する場合、fromDate
クエリパラメーターも使用する必要があります。 両方を使用しない場合、呼び出しは 400 エラーを返します。{fromDate}
YYYY-MM-DD の形式を使用できます。 指定した日付は、リクエストの原産日としてグリニッジ標準時(GMT)で表されたものと解釈されます。
このパラメーター(および対応する
toDate
)を指定しない場合、デフォルトの動作では、過去 7 日間にそのデータを返すジョブが返されます。 fromDate
を使用する場合、toDate
クエリパラメーターも使用する必要があります。 両方を使用しない場合、呼び出しは 400 エラーを返します。{filterDate}
リクエスト
次のリクエストは、ページ サイズが 50 の 3 番目のページから、組織内のすべてのジョブのページ分割されたリストを取得します。
curl -X GET \
https://platform.adobe.io/data/core/privacy/jobs?regulation=gdpr&page=2&size=50 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}'
応答
正常な応答は、ジョブのリストを返し、各ジョブに jobId
などの詳細などが含まれます。この例では、結果の 3 ページ目から始まる 50 個のリストのジョブが応答に含まれます。
後続のページへのアクセス
ページ分割された応答の次の結果セットを取得するには、page
クエリパラメーターを 1 増やして、同じエンドポイントに対して別の API 呼び出しをおこないます。
プライバシージョブの作成 create-job
新しいジョブリクエストを作成する前に、まず、データにアクセス、削除、またはオプトアウトするデータ主体の識別情報を収集する必要があります。必要なデータを取得したら、/jobs
エンドポイントへのPOSTリクエストのペイロードで指定する必要があります。
Privacy Service API は、個人データに対して、次の 2 種類のジョブリクエストをサポートしています。
アクセス/削除ジョブの作成 access-delete
この節では、API を使用してアクセスおよび削除ジョブリクエストを作成する方法を説明します。
API 形式
POST /jobs
リクエスト
次のリクエストは、以下で説明するように、ペイロードで提供される属性によって構成された新しいジョブリクエストを作成します。
curl -X POST \
https://platform.adobe.io/data/core/privacy/jobs \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-d '{
"companyContexts": [
{
"namespace": "imsOrgID",
"value": "{ORG_ID}"
}
],
"users": [
{
"key": "DavidSmith",
"action": ["access"],
"userIDs": [
{
"namespace": "email",
"value": "dsmith@acme.com",
"type": "standard"
},
{
"namespace": "ECID",
"type": "standard",
"value": "443636576799758681021090721276",
"isDeletedClientSide": false
}
]
},
{
"key": "user12345",
"action": ["access","delete"],
"userIDs": [
{
"namespace": "email",
"value": "ajones@acme.com",
"type": "standard"
},
{
"namespace": "loyaltyAccount",
"value": "12AD45FE30R29",
"type": "integrationCode"
}
]
}
],
"include": ["Analytics", "AudienceManager","profileService"],
"expandIds": false,
"priority": "normal",
"mergePolicyId": 124,
"regulation": "ccpa"
}'
companyContexts
(必須)組織の認証情報を含む配列。リストに表示される各識別子には、次の属性が含まれます。
namespace
:識別子の名前空間。value
:識別子の値。
識別子の 1 つが namespace
として imsOrgId
を使用し、その value
には組織の一意の ID が含まれている 必須。
追加の識別子は、組織に属するアドビ会社との統合を識別する、製品固有の会社修飾子(例:Campaign
)にすることができます。有効な値には、アカウント名、クライアントコード、テナント ID、その他のアプリケーション識別子が含まれます。
users
(必須)アクセスまたは削除する情報を持つユーザーの少なくとも 1 人のコレクションを含む配列。1 回のリクエストで最大 1,000 人のユーザーを指定できます。 各ユーザーオブジェクトには、次の情報が含まれます。
key
:応答データ内の個別のジョブ ID を修飾するために使用されるユーザーの識別子。この値に対して一意の、簡単に識別できる文字列を選択し、後で簡単に参照または参照できるようにすることをお勧めします。action
:ユーザーのデータに対して実行する必要のあるアクションをリストする配列。実行するアクションに応じて、この配列にはaccess
、delete
またはその両方を含める必要があります。userIDs
:ユーザーの ID のコレクションです。1 人のユーザーが持つことのできる ID の数は 9 個に制限されます。各 ID はnamespace
、value
、および名前空間修飾子(type
)で構成されます。これらの必須プロパティの詳細については、付録を参照してください。
users
と userIDs
の詳細については、トラブルシューティングガイドを参照してください。
include
(必須)expandIDs
true
に設定すると、アプリケーションの ID を処理するための最適化を表します(現在は Analytics でのみサポートされています)。 省略した場合、この値はデフォルトで false
になります。priority
normal
および low
です。priority
を省略した場合のデフォルトの動作は normal
です。mergePolicyId
profileService
)のプライバシーリクエストを行う際に、ID のステッチに使用する特定の 結合ポリシーの ID をオプションで指定できます。 結合ポリシーを指定すると、顧客に関するデータを返す際に、プライバシーリクエストにオーディエンス情報を含めることができます。 リクエストごとに指定できる結合ポリシーは 1 つだけです。 結合ポリシーが指定されていない場合、セグメント化情報は応答に含まれません。regulation
(必須)プライバシージョブの規制。 以下の値を使用できます。
apa_aus
ccpa
cpra_usa
gdpr
hipaa_usa
lgpd_bra
nzpa_nzl
pdpa_tha
vcdpa_usa
上記の値が表すプライバシー規制について詳しくは、 サポートされる規制の概要を参照してください。
応答
正常な応答は、新しく作成されたジョブの詳細を返します。
{
"jobs": [
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076b0842b6",
"customer": {
"user": {
"key": "DavidSmith",
"action": [
"access"
]
}
}
},
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076be029f3",
"customer": {
"user": {
"key": "user12345",
"action": [
"access"
]
}
}
},
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076bd023j1",
"customer": {
"user": {
"key": "user12345",
"action": [
"delete"
]
}
}
}
],
"requestStatus": 1,
"totalRecords": 3
}
jobId
ジョブリクエストの送信が完了したら、次の、ジョブのステータスを確認する手順に進むことができます。
ジョブのステータスの確認 check-status
/jobs
エンドポイントに対するGETリクエストのパスにジョブの jobId
を含めることで、特定のジョブに関する情報(現在の処理ステータスなど)を取得できます。
API 形式
GET /jobs/{JOB_ID}
{JOB_ID}
リクエスト
次のリクエストは、リクエストパスで jobId
が指定されたジョブの詳細を取得します。
curl -X GET \
https://platform.adobe.io/data/core/privacy/jobs/6fc09b53-c24f-4a6c-9ca2-c6076b0842b6 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}'
応答
正常な応答は、指定されたジョブの詳細を返します。
{
"jobId": "6fc09b53-c24f-4a6c-9ca2-c6076b0842b6",
"requestId": "15700479082313109RX-899",
"userKey": "David Smith",
"action": "access",
"status": "complete",
"submittedBy": "{ACCOUNT_ID}",
"createdDate": "10/02/2019 08:25 PM GMT",
"lastModifiedDate": "10/02/2019 08:25 PM GMT",
"userIds": [
{
"namespace": "email",
"value": "dsmith@acme.com",
"type": "standard",
"namespaceId": 6,
"isDeletedClientSide": false
},
{
"namespace": "ECID",
"value": "1123A4D5690B32A",
"type": "standard",
"namespaceId": 4,
"isDeletedClientSide": false
}
],
"productResponses": [
{
"product": "Analytics",
"retryCount": 0,
"processedDate": "10/02/2019 08:25 PM GMT",
"productStatusResponse": {
"status": "complete",
"message": "Success",
"responseMsgCode": "PRVCY-6000-200",
"responseMsgDetail": "Finished successfully."
}
},
{
"product": "Profile",
"retryCount": 0,
"processedDate": "10/02/2019 08:25 PM GMT",
"productStatusResponse": {
"status": "complete",
"message": "Success",
"responseMsgCode": "PRVCY-6000-200",
"responseMsgDetail": "Success dataSetIds = [5dbb87aad37beb18a96feb61], Failed dataSetIds = []"
}
},
{
"product": "AudienceManager",
"retryCount": 0,
"processedDate": "10/02/2019 08:25 PM GMT",
"productStatusResponse": {
"status": "complete",
"message": "Success",
"responseMsgCode": "PRVCY-6054-200",
"responseMsgDetail": "PARTIALLY COMPLETED- Data not found for some requests, check results for more info.",
"results": {
"processed": ["1123A4D5690B32A"],
"ignored": ["dsmith@acme.com"]
}
}
}
],
"downloadURL": "http://...",
"regulation": "ccpa"
}
productStatusResponse
productResponses
配列内の各オブジェクトには、特定の Experience Cloud アプリケーションに関するジョブの現在のステータスに関する情報が含まれます。productStatusResponse.status
productStatusResponse.message
productStatusResponse.responseMsgCode
responseMsgDetail
に記載されています。productStatusResponse.responseMsgDetail
productStatusResponse.results
responseMsgDetail
でカバーされない追加情報を提供する results
オブジェクトを返す製品もあります。downloadURL
complete
の場合、この属性はジョブの結果を ZIP ファイルとしてダウンロードする URL を指定します。このファイルは、ジョブの完了後 60 日間ダウンロードできます。ジョブステータスカテゴリ status-categories
次の表に、考えられる様々なジョブステータスカテゴリとそれに対応する意味を示します。
complete
processing
submitted
error
processing
状態のままになることがあります。次の手順
これで、Privacy Service API を使用してプライバシージョブを作成および監視する方法がわかりました。 ユーザーインターフェイスを使用して同じタスクを実行する方法について詳しくは、「Privacy Service UI の概要」を参照してください。