Show Menu
主題×

使用Flow Service API建立SFTP連接器

Flow Service用於收集和集中Adobe Experience Platform內不同來源的客戶資料。 該服務提供用戶介面和REST風格的API,所有支援的源都可從中連接。
本教學課程使用Flow Service API來引導您完成將Experience Platform連接至SFTP(安全檔案傳輸通訊協定)伺服器的步驟。
如果您偏好使用Experience Platform中的使用者介面, 在UI中建立FTP或SFTP來源連接器 UI教學課程會提供執行類似動作的逐步指示。

快速入門

本指南需要有效瞭解Adobe Experience Platform的下列元件:
  • 來源 :Experience Platform可讓您從各種來源擷取資料,同時讓您能夠使用平台服務來建構、標示和增強傳入資料。
  • 沙盒 :Experience Platform提供虛擬沙盒,可將單一Platform實例分割為不同的虛擬環境,以協助開發和發展數位體驗應用程式。
以下各節提供您需要知道的其他資訊,以便使用Flow Service API成功連線至SFTP伺服器。

收集必要的認證

為了讓流服務連接到SFTP,您必須為以下連接屬性提供值:
憑證
說明
host
與您的SFTP伺服器相關聯的名稱或IP位址。
username
可存取您SFTP伺服器的使用者名稱。
password
SFTP伺服器的密碼。

讀取範例API呼叫

本教學課程提供範例API呼叫,以示範如何設定請求的格式。 這些包括路徑、必要標題和正確格式化的請求負載。 也提供API回應中傳回的範例JSON。 如需範例API呼叫檔案中所用慣例的詳細資訊,請參閱「Experience Platform疑難排解指 南」中有關如何讀取範例API呼叫的章節

收集必要標題的值

若要呼叫平台API,您必須先完成驗證教 學課程 。 完成驗證教學課程後,所有Experience Platform API呼叫中每個必要標題的值都會顯示在下方:
  • 授權:生產者 {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}
Experience Platform中的所有資源(包括屬於流服務的資源)都會隔離至特定的虛擬沙盒。 所有對平台API的請求都需要一個標題,該標題會指定要在中執行的操作的沙盒名稱:
  • x-sandbox-name: {SANDBOX_NAME}
所有包含裝載(POST、PUT、PATCH)的請求都需要額外的媒體類型標題:
  • 內容類型: application/json

查找連接規格

若要建立SFTP連線,Flow Service中必須有一組SFTP連線規格。 將平台連接至SFTP的第一步是擷取這些規格。
API格式
每個可用源都有其唯一的連接規範集,用於描述連接器屬性(如驗證要求)。 您可以執行GET請求並使用查詢參數來查找SFTP的連接規範。
傳送不含查詢參數的GET請求時,會傳回所有可用來源的連線規格。 您可以包含查詢, property=name=="sftp" 以取得SFTP的特定資訊。
GET /connectionSpecs
GET /connectionSpecs?property=name=="sftp"

請求
下列請求會擷取SFTP伺服器的連線規格。
curl -X GET \
    'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs?property=name=="sftp"' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {IMS_ORG}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}'

回應
成功的響應返回SFTP伺服器的連接規範,包括其唯一標識符( id )。 在下個步驟中需要此ID才能建立基本連線。
{
    "items": [
        {
            "id": "b7bf2577-4520-42c9-bae9-cad01560f7bc",
            "name": "sftp",
            "providerId": "0ed90a81-07f4-4586-8190-b40eccef1c5a",
            "version": "1.0",
            "authSpec": [
                {
                    "name": "Basic Authentication for sftp",
                    "spec": {
                        "$schema": "http://json-schema.org/draft-07/schema#",
                        "type": "object",
                        "description": "defines auth params required for connecting to sftp",
                        "properties": {
                            "host": {
                                "type": "string",
                                "description": "Specify the name or IP address of the SFTP server."
                            },
                            "userName": {
                                "type": "string",
                                "description": "Specify the user who has access to the SFTP server."
                            },
                            "password": {
                                "type": "string",
                                "description": "Specify the password for the user (userName).",
                                "format": "password"
                            }
                        },
                        "required": [
                            "host",
                            "userName",
                            "password"
                        ]
                    }
                }
            ]
        }
    ]
}

建立基本連接

基本連接指定源,並包含該源的憑據。 每個SFTP帳戶只需要一個基本連線,因為它可用來建立多個來源連接器,以匯入不同的資料。
API格式
POST /connections

請求
curl -X POST \
    'http://platform.adobe.io/data/foundation/flowservice/connections' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {IMS_ORG}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d  "auth": {
        "specName": "Basic Authentication for sftp",
        "params": {
            "host": "{HOST_NAME}",
            "userName": "{USER_NAME}",
            "password": "{PASSWORD}"
        }
    },
    "connectionSpec": {
        "id": "b7bf2577-4520-42c9-bae9-cad01560f7bc",
        "version": "1.0"
    }
}

屬性
說明
auth.params.host
SFTP伺服器的主機名稱。
auth.params.username
與您的SFTP伺服器相關聯的使用者名稱。
auth.params.password
與您的SFTP伺服器相關聯的密碼。
connectionSpec.id
在上一步 id 中擷取的SFTP伺服器連線規格。
回應
成功的響應返回新建基本連 id 接的唯一標識符()。 在下一個教學課程中,瀏覽您的SFTP伺服器時需要此ID。
{
    "id": "bf367b0d-3d9b-4060-b67b-0d3d9bd06094",
    "etag": "\"1700cc7b-0000-0200-0000-5e3b3fba0000\""
}

後續步驟

在本教學課程中,您已使用Flow Service API建立SFTP連線,並取得連線的唯一ID值。 您可以使用此連線ID來 探索使用Flow Service API的雲端儲存空間 ,或 使用Flow Service API內嵌鑲木地板資料