[ベータ版]{class="badge informative"}
お客様からの支払いデータの取り込み Stripe API を使用したExperience Platformへのアカウント
次のチュートリアルを読んで、から支払データを取り込む方法を学んでください。 Stripe を使用してAdobe Experience Platformに Flow Service API.
基本を学ぶ
このガイドは、Adobe Experience Platform の次のコンポーネントを実際に利用および理解しているユーザーを対象としています。
認証
詳しくは、 Stripe 概要 認証資格情報の取得方法の詳細。
Platform API の使用
Platform API を正常に呼び出す方法について詳しくは、Platform API の概要のガイドを参照してください。
接続 Stripe Experience Platform
以下のガイドに従って、 Stripe ソース、ソース接続を作成し、データフローを作成して支払いデータをExperience Platformに取り込みます。
ベース接続の作成 base-connection
ベース接続では、ソースとExperience Platform間の情報(ソースの認証資格情報、接続の現在の状態、一意のベース接続 ID など)が保持されます。 ベース接続 ID を使用して、ソース内からファイルを参照およびナビゲートできます。 さらに、取り込む特定の項目を識別できます。これには、これらの項目のデータ型や形式の詳細も含まれます。
ベース接続 ID を作成するには、 /connections
エンドポイントを Stripe 認証資格情報をリクエスト本文の一部として使用します。
API 形式
POST /connections
リクエスト
次のリクエストは、Stripe のベース接続を作成します。
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Stripe base connection",
"description": "Authenticated base connection for Stripe",
"connectionSpec": {
"id": "cc2c31d6-7b8c-4581-b49f-5c8698aa3ab3",
"version": "1.0"
},
"auth": {
"specName": "OAuth2 Refresh Code",
"params": {
"accessToken": "{ACCESS_TOKEN}",
}
}
}'
name
description
connectionSpec.id
cc2c31d6-7b8c-4581-b49f-5c8698aa3ab3
に設定され、この ID は修正されました。auth.specName
auth.params.accessToken
応答
リクエストが成功した場合は、一意の接続識別子(id
)を含む、新しく作成されたベース接続が返されます。この ID は、次の手順でソースのファイル構造と内容を調べるために必要です。
{
"id": "a9950001-a386-4642-a0cd-5eaac6db5556",
"etag": "\"dc01244d-0000-0200-0000-65ea4e500000\""
}
ソースを参照 explore
ベース接続 ID を取得したら、 /connections
エンドポイントを使用して、ベース接続 ID をクエリパラメーターとして指定する必要があります。
API 形式
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=rest&object={OBJECT}&fileType={FILE_TYPE}&preview={PREVIEW}&sourceParams={SOURCE_PARAMS}
リクエスト
ソースのファイル構造とコンテンツを調べるために GET リクエストを実行する場合、次の表に示すクエリのパラメーターを含める必要があります。
{BASE_CONNECTION_ID}
objectType=rest
rest
.{OBJECT}
json
.fileType=json
json
は、サポートされている唯一のファイルタイプです。{PREVIEW}
{SOURCE_PARAMS}
A Base64-参照するリソースパスを指すエンコードされた文字列。 リソースパスは、でエンコードする必要があります。 Base64 ~の承認済みフォーマットを得るために {SOURCE_PARAMS}
. 例: {"resourcePath":"charges"}
は次のようにエンコードされます: eyJyZXNvdXJjZVBhdGgiOiJjaGFyZ2VzIn0%3D
. 使用可能なリソースパスのリストは次のとおりです。
charges
subscriptions
refunds
balance_transactions
customers
prices
curl -X GET \
'https://platform.adobe.io/data/foundation/flowservice/connections/a9950001-a386-4642-a0cd-5eaac6db5556/explore?objectType=rest&object=json&fileType=json&preview=false&sourceParams=eyJyZXNvdXJjZVBhdGgiOiJjaGFyZ2VzIn0%3D' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
応答
正常な応答は、次のような JSON 構造を返します。
code language-json |
---|
|
ソース接続の作成 source-connection
ソース接続を作成するには、 /sourceConnections
エンドポイント Flow Service API. ソース接続は、接続 ID、ソースデータファイルへのパス、接続仕様 ID から構成されます。
API 形式
POST /sourceConnections
リクエスト
次のリクエストは、 Stripe.
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Stripe Source Connection For Charges Data",
"description": "Stripe source connection for charges data",
"baseConnectionId": "a9950001-a386-4642-a0cd-5eaac6db5556",
"connectionSpec": {
"id": "cc2c31d6-7b8c-4581-b49f-5c8698aa3ab3",
"version": "1.0"
},
"data": {
"format": "json"
},
"params": {
"resourcePath": "charges"
},
}'
name
description
baseConnectionId
connectionSpec.id
data.format
json
のみです。リクエストが成功した場合は、新たに作成されたソース接続の一意の ID(id
)が返されます。この ID は、後の手順でデータフローを作成する際に必要になります。
{
"id": "abbfac4e-202c-4e04-902d-6f73e9041068",
"etag": "\"0a033818-0000-0200-0000-65ea5a770000\""
}
ターゲット XDM スキーマの作成 target-schema
ソースデータをExperience Platformで使用するには、必要に応じてソースデータを構造化するために、ターゲットスキーマを作成する必要があります。 次に、ターゲットスキーマを使用して、ソースデータが含まれる Platform データセットを作成します。
Schema Registry API に POST リクエストを実行することで、ターゲット XDM スキーマを作成できます。
ターゲット XDM スキーマの作成手順について詳しくは、 API を使用したスキーマの作成に関するチュートリアルを参照してください。
ターゲットデータセットの作成 target-dataset
Catalog Service API に POST リクエストを実行し、その際にペイロード内でターゲットスキーマの ID を指定することで、ターゲットデータセットを作成できます。
ターゲットデータセットの作成手順について詳しくは、 API を使用したデータセットの作成に関するチュートリアルを参照してください。
ターゲット接続の作成 target-connection
ターゲット接続は、取り込んだデータの保存先への接続を表します。 ターゲット接続を作成するには、データレイクに対応する固定接続仕様 ID を指定する必要があります。 この ID は c604ff05-7f1a-43c0-8e18-33bf874cb11c
です。
これで、ターゲットスキーマとターゲットデータセット、およびデータレイクへの接続仕様 ID の一意の識別子が得られました。 これらの識別子を使用すると、受信ソースデータを格納するデータセットを指定する Flow Service API を使用して、ターゲット接続を作成することができます。
API 形式
POST /targetConnections
リクエスト
次のリクエストは、Stripe のターゲット接続を作成します。
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Stripe Target Connection For Charges Data",
"description": "Stripe target connection for charges data",
"connectionSpec": {
"id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
"version": "1.0"
},
"data": {
"format": "parquet_xdm",
"schema": {
"id": "https://ns.adobe.com/{ORG_ID}/schemas/5f76be8c4e4b847fdac13ca42aa6b596a89a5b91dea48b16",
"version": "application/vnd.adobe.xed-full+json;version=1.3"
}
},
"params": {
"dataSetId": "65e622315f78042c9e8166e8"
}
}'
name
description
connectionSpec.id
c604ff05-7f1a-43c0-8e18-33bf874cb11c
です。data.format
params.dataSetId
応答
リクエストが成功した場合は、新しいターゲット接続の一意の ID(id
)が返されます。この ID は、後の手順で必要になります。
{
"id": "69879751-ba43-48df-8cd0-39d2bb76a5b8",
"etag": "\"4b02ef5b-0000-0200-0000-65ea5f730000\""
}
マッピングの作成 mapping
ソースデータをターゲットデータセットに取り込むには、まず、ターゲットデータセットが準拠するターゲットスキーマにマッピングする必要があります。これを実現するには、リクエストペイロード内で定義されたデータマッピングを使用して、Data Prep API に対して POST リクエストを実行します。
API 形式
POST /conversion/mappingSets
次のリクエストは、 Stripe.
code language-shell |
---|
|
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 | |
---|---|
プロパティ | 説明 |
xdmSchema |
ターゲット XDM スキーマの ID。 この ID は、 target XDM スキーマ. |
destinationXdmPath |
ソース属性のマッピング先の XDM フィールド。 |
sourceAttribute |
マッピングするソースデータフィールド。 |
identity |
フィールドをで保持するかどうかを定義する boolean 値です ID サービス. |
version |
使用しているマッピングバージョン。 |
応答
リクエストが成功した場合は、一意の ID(id
)を含む、新しく作成されたマッピングの詳細が返されます。この値は、後の手順でデータフローを作成する際に必要になります。
{
"id": "f4aad280fdec4770b7e33066945919d8",
"version": 0,
"createdDate": 1709860257007,
"modifiedDate": 1709860257007,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}"
}
フローの作成 flow
からデータを取り込むための最後の手順 Stripe を Platform に送信する場合、データフローを作成します。 現時点で、次の必要な値の準備ができています。
データフローは、ソースからデータをスケジュールおよび収集する役割を果たします。ペイロードに前述の値を提供しながら POST リクエストを実行することで、データフローを作成することができます。
API 形式
POST /flows
リクエスト
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "Stripe Connector Flow Generic Rest",
"description": "Stripe Connector Description Flow Generic Rest",
"flowSpec": {
"id": "6499120c-0b15-42dc-936e-847ea3c24d72",
"version": "1.0"
},
"sourceConnectionIds": [
"abbfac4e-202c-4e04-902d-6f73e9041068"
],
"targetConnectionIds": [
"69879751-ba43-48df-8cd0-39d2bb76a5b8"
],
"transformations": [
{
"name": "Mapping",
"params": {
"mappingId": "f4aad280fdec4770b7e33066945919d8",
"mappingVersion": 0
}
}
],
"scheduleParams": {
"startTime": "1710267858",
"frequency": "minute",
"interval": {{interval}}
}
}'
name
description
flowSpec.id
6499120c-0b15-42dc-936e-847ea3c24d72
です。flowSpec.version
1.0
です。sourceConnectionIds
targetConnectionIds
transformations
transformations.name
transformations.params.mappingId
transformations.params.mappingVersion
0
です。scheduleParams.startTime
scheduleParams.frequency
データフローがデータを収集する頻度。取り込み頻度を設定して、次の操作を実行できます。
- 1 回:頻度をに設定します。
once
:1 回限りの取り込みを作成します。 1 回限りの取り込みデータフローを作成する場合、間隔とバックフィルの設定は使用できません。 デフォルトでは、スケジュールの頻度は 1 回に設定されています。 - 分:頻度をに設定します。
minute
を使用して、1 分ごとにデータを取り込むようにデータフローをスケジュールします。 - 時間:頻度をに設定します。
hour
を使用して、1 時間ごとにデータを取り込むようにデータフローをスケジュールします。 - 日:頻度をに設定します。
day
を使用して、データを日単位で取り込むようにデータフローをスケジュールします。 - 週:頻度をに設定します。
week
を使用して、週単位でデータを取り込むようにデータフローをスケジュールします。
scheduleParams.interval
応答
正常な応答は、新しく作成したデータフローの ID(id
)を返します。この ID を使用して、データフローを監視、更新または削除できます。
{
"id": "84c64142-1741-4b0b-95a9-65644eba0cf6",
"etag": "\"3901770b-0000-0200-0000-655708970000\""
}
付録
次の節では、データフローを監視、更新および削除するための手順について説明します。
データフローの監視
データフローが作成されると、それを通して取り込まれるデータを監視し、フローの実行状況、完了状況、エラーなどの情報を確認することができます。API の完全な例については、 API を使用したソースデータフローの監視.
データフローの更新
の/flows エンドポイントに対してPATCHリクエストを実行することで、データフローの名前や説明、実行スケジュールおよび関連するマッピングセットなど、データフローの詳細を更新します。 Flow Service データフローの ID を指定する際の API。 PATCHリクエストをおこなう場合、データフローの一意の etag
(内) If-Match
ヘッダー。 API の完全な例については、 API を使用したソースデータフローの更新.
アカウントを更新
に対してPATCHリクエストを実行して、ソースアカウントの名前、説明および資格情報を更新します。 Flow Service ベース接続 ID をクエリパラメーターとして指定する際の API。 PATCHリクエストをおこなう場合、ソースアカウントの一意の etag
(内) If-Match
ヘッダー。 API の完全な例については、 API を使用したソースアカウントの更新.
データフローの削除
に対してDELETEリクエストを実行して、データフローを削除する Flow Service クエリパラメーターの一部として削除するデータフローの ID を指定する際の API。 API の完全な例については、 API を使用したデータフローの削除.
アカウントを削除
アカウントを削除するには、 Flow Service 削除するアカウントのベース接続 ID を指定する際の API。 API の完全な例については、 API を使用したソースアカウントの削除.