API를 사용하여 스트리밍 연결 만들기

Flow Service는 Adobe Experience Platform 내의 다양한 소스에서 수집한 고객 데이터를 중앙에서 수집하고 관리하는 데 사용됩니다. 이 서비스는 지원되는 모든 소스가 연결되어 있는 사용자 인터페이스와 RESTful API를 제공합니다.

이 자습서는 Flow Service API를 사용하여 Flow Service API를 사용하여 스트리밍 연결을 만드는 단계를 안내합니다.

시작하기

이 가이드를 사용하려면 다음과 같은 Adobe Experience Platform 구성 요소에 대해 작업해야 합니다.

다음 섹션에서는 스트리밍 통합 API를 성공적으로 호출하기 위해 알아야 할 추가 정보를 제공합니다.

샘플 API 호출 읽기

이 안내서에서는 요청의 서식을 지정하는 방법을 보여주는 API 호출 예를 제공합니다. 여기에는 경로, 필수 헤더 및 올바른 형식의 요청 페이로드가 포함됩니다. API 응답으로 반환된 샘플 JSON도 제공됩니다. 샘플 API 호출에 대한 설명서에 사용된 규칙에 대한 자세한 내용은 Experience Platform 문제 해결 안내서의 API 호출 예를 읽는 방법에 대한 섹션을 참조하십시오.

필수 헤더에 대한 값 수집

Platform API를 호출하려면 먼저 인증 자습서를 완료해야 합니다. 인증 자습서를 완료하면 아래와 같이 모든 Experience Platform API 호출에서 각 필수 헤더에 대한 값을 제공합니다.

  • 인증:Bearer {ACCESS_TOKEN}
  • x-api-key:{API_KEY}
  • x-gw-ims-org-id:{IMS_ORG}

Flow Service에 속하는 리소스를 포함하여 Experience Platform의 모든 리소스는 특정 가상 샌드박스로 구분됩니다. Platform API에 대한 모든 요청에는 작업이 수행할 샌드박스의 이름을 지정하는 헤더가 필요합니다.

  • x-sandbox-name:{SANDBOX_NAME}
노트

Platform의 샌드박스에 대한 자세한 내용은 샌드박스 개요 설명서를 참조하십시오.

페이로드(POST, PUT, PATCH)을 포함하는 모든 요청에는 추가 헤더가 필요합니다.

  • 컨텐츠 유형:application/json

연결 만들기

연결은 소스를 지정하며 스트리밍 통합 API와 호환되는 흐름을 만드는 데 필요한 정보를 포함합니다. 연결을 만들 때 인증되지 않은 연결 및 인증된 연결을 만들 수 있습니다.

인증되지 않은 연결

인증되지 않은 연결은 데이터를 Platform(플랫폼)으로 스트리밍하고자 할 때 만들 수 있는 표준 스트리밍 연결입니다.

API 형식

POST /flowservice/connections

요청

스트리밍 연결을 만들려면 공급자 ID 및 연결 사양 ID를 POST 요청의 일부로 제공해야 합니다. 공급자 ID는 521eee4d-8cbe-4906-bb48-fb6bd4450033이고 연결 사양 ID는 bc7b00d6-623a-4dfc-9fdb-f1240aeadaeb입니다.

curl -X POST https://platform.adobe.io/data/foundation/flowservice/connections \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'Content-Type: application/json' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}' \
 -d '{
     "name": "Sample streaming connection",
     "providerId": "521eee4d-8cbe-4906-bb48-fb6bd4450033",
     "description": "Sample description",
     "connectionSpec": {
         "id": "bc7b00d6-623a-4dfc-9fdb-f1240aeadaeb",
         "version": "1.0"
     },
     "auth": {
         "specName": "Streaming Connection",
         "params": {
             "sourceId": "Sample connection",
             "dataType": "xdm",
             "name": "Sample connection"
         }
     }
 }
속성 설명
auth.params.sourceId 만들려는 스트리밍 연결의 ID입니다.
auth.params.dataType 스트리밍 연결에 대한 데이터 유형입니다. 이 값은 xdm이어야 합니다.
auth.params.name 만들려는 스트리밍 연결의 이름입니다.
connectionSpec.id 스트리밍 연결을 위한 연결 사양 id입니다.

응답

성공적인 응답은 고유 식별자(id)를 포함하여 새로 만든 연결의 세부 사항과 함께 HTTP 상태 201을 반환합니다.

{
    "id": "77a05521-91d6-451c-a055-2191d6851c34",
    "etag": "\"a500e689-0000-0200-0000-5e31df730000\""
}
속성 설명
id 새로 만든 연결의 id. 이것은 {CONNECTION_ID}이라고 합니다.
etag 연결의 개정을 지정하는 연결에 할당된 식별자입니다.

인증된 연결

인증된 연결은 신뢰할 수 있는 소스와 신뢰할 수 없는 소스에서 나오는 레코드를 구별해야 할 때 사용해야 합니다. PII(개인 식별 정보)로 정보를 전송하려는 사용자는 플랫폼에 정보를 스트리밍할 때 인증된 연결을 만들어야 합니다.

API 형식

POST /flowservice/connections

요청

스트리밍 연결을 만들려면 공급자 ID 및 연결 사양 ID를 POST 요청의 일부로 제공해야 합니다. 공급자 ID는 521eee4d-8cbe-4906-bb48-fb6bd4450033이고 연결 사양 ID는 bc7b00d6-623a-4dfc-9fdb-f1240aeadaeb입니다.

curl -X POST https://platform.adobe.io/data/foundation/flowservice/connections \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'Content-Type: application/json' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}' \
 -d '{
     "name": "Sample streaming connection",
     "providerId": "521eee4d-8cbe-4906-bb48-fb6bd4450033",
     "description": "Sample description",
     "connectionSpec": {
         "id": "bc7b00d6-623a-4dfc-9fdb-f1240aeadaeb",
         "version": "1.0"
     },
     "auth": {
         "specName": "Streaming Connection",
         "params": {
             "sourceId": "Sample connection",
             "dataType": "xdm",
             "name": "Sample connection",
             "authenticationRequired": true
         }
     }
 }
속성 설명
auth.params.sourceId 만들려는 스트리밍 연결의 ID입니다.
auth.params.dataType 스트리밍 연결에 대한 데이터 유형입니다. 이 값은 xdm이어야 합니다.
auth.params.name 만들려는 스트리밍 연결의 이름입니다.
auth.params.authenticationRequired 생성된 스트리밍 연결을 지정하는 매개 변수
connectionSpec.id 스트리밍 연결을 위한 연결 사양 id입니다.

응답

성공적인 응답은 고유 식별자(id)를 포함하여 새로 만든 연결의 세부 사항과 함께 HTTP 상태 201을 반환합니다.

{
    "id": "77a05521-91d6-451c-a055-2191d6851c34",
    "etag": "\"a500e689-0000-0200-0000-5e31df730000\""
}
속성 설명
id 새로 만든 연결의 id. 이것은 {CONNECTION_ID}이라고 합니다.
etag 연결의 개정을 지정하는 연결에 할당된 식별자입니다.

스트리밍 끝점 URL 가져오기

이제 연결이 만들어지면 스트리밍 끝점 URL을 검색할 수 있습니다.

API 형식

GET /flowservice/connections/{CONNECTION_ID}
매개 변수 설명
{CONNECTION_ID} 이전에 만든 연결의 id 값입니다.

요청

curl -X GET https://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID} \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'

응답

성공적인 응답은 요청된 연결에 대한 자세한 정보와 함께 HTTP 상태 200을 반환합니다. 스트리밍 끝점 URL은 연결과 함께 자동으로 만들어지며 inletUrl 값을 사용하여 검색할 수 있습니다.

{
    "items": [
        {
            "createdAt": 1583971856947,
            "updatedAt": 1583971856947,
            "createdBy": "{API_KEY}",
            "updatedBy": "{API_KEY}",
            "createdClient": "{USER_ID}",
            "updatedClient": "{USER_ID}",
            "id": "77a05521-91d6-451c-a055-2191d6851c34",
            "name": "Another new sample connection (Experience Event)",
            "description": "Sample description",
            "connectionSpec": {
                "id": "bc7b00d6-623a-4dfc-9fdb-f1240aeadaeb",
                "version": "1.0"
            },
            "state": "enabled",
            "auth": {
                "specName": "Streaming Connection",
                "params": {
                    "sourceId": "Sample connection (ExperienceEvent)",
                    "inletUrl": "https://dcs.adobedc.net/collection/a868e1ce678a911ef1482b083329af3cafa4bafdc781285f25911eaae9e00eb2",
                    "inletId": "a868e1ce678a911ef1482b083329af3cafa4bafdc781285f25911eaae9e00eb2",
                    "dataType": "xdm",
                    "name": "Sample connection (ExperienceEvent)"
                }
            },
            "version": "\"56008aee-0000-0200-0000-5e697e150000\"",
            "etag": "\"56008aee-0000-0200-0000-5e697e150000\""
        }
    ]
}

다음 단계

이 자습서를 따라 스트리밍 HTTP 연결을 만들어 스트리밍 끝점을 사용하여 데이터를 플랫폼에 인제스트할 수 있습니다. UI에서 스트리밍 연결을 만드는 지침을 보려면 스트리밍 연결 자습서 만들기를 참조하십시오.

데이터를 플랫폼으로 스트리밍하는 방법을 알아보려면 스트리밍 시간 시리즈 데이터에 대한 자습서 또는 스트리밍 레코드 데이터에 대한 자습서를 읽으십시오.

부록

이 섹션에서는 API를 사용하여 스트리밍 연결을 만드는 방법에 대한 추가 정보를 제공합니다.

인증된 스트리밍 연결로 메시지 보내기

스트리밍 연결에 인증이 활성화되어 있으면 클라이언트는 Authorization 헤더를 요청에 추가해야 합니다.

Authorization 헤더가 없거나 유효하지 않거나 만료된 액세스 토큰이 전송되면 HTTP 401 권한 없는 응답이 아래와 같이 반환됩니다.

응답

{
    "type": "https://ns.adobe.com/adobecloud/problem/data-collection-service-authorization",
    "status": "401",
    "title": "Authorization",
    "report": {
        "message": "[id] Ims service token is empty"
    }
}

이 페이지에서는

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now