Reactor API의 관계

Reactor API의 리소스는 서로 관련되어 있습니다. 이 문서에서는 API에서 리소스 관계가 설정되는 방식과 각 리소스 유형의 관계 요구 사항에 대한 개요를 제공합니다.

해당 리소스의 유형에 따라 일부 관계가 필요합니다. 필수 관계는 상위 리소스가 관계 없이 존재할 수 없음을 의미합니다. 다른 모든 관계는 선택 사항입니다.

필수 또는 선택 사항인지에 관계없이, 관련 리소스를 만들 때 시스템에서 관계를 자동으로 설정하거나 수동으로 만들어야 합니다. 관계를 수동으로 만드는 경우, 해당 리소스에 따라 가능한 두 가지 방법이 있습니다.

의 섹션을 참조하십시오. 관계 요구 사항 각 리소스 유형에 대한 호환 관계 목록 및 해당하는 경우 이러한 관계를 설정하는 데 필요한 방법을 설명합니다.

페이로드별 관계 만들기

처음 리소스를 만들 때 일부 관계를 수동으로 설정해야 합니다. 이를 수행하려면 다음을 제공해야 합니다 relationship 상위 리소스를 처음 만들 때 요청 페이로드에 있는 개체. 이러한 관계의 예는 다음과 같습니다.

API 형식

POST /properties/{PROPERTY_ID}/{RESOURCE_TYPE}
매개 변수 설명
{PROPERTY_ID} 리소스가 속한 속성의 ID입니다.
{RESOURCE_TYPE} 만들 리소스 유형입니다.

요청

다음 요청으로 새 항목이 만들어집니다 rule_component, 관계 설정 rules 그리고 extension.

curl -X POST \
  https://reactor.adobe.io/properties/PRf606dbddfbdc44f580fc6f342b5ff9be/rule_components \
  -H 'Authorization: Bearer [TOKEN]' \
  -H 'x-api-key: [KEY]' \
  -H 'x-gw-ims-org-id: [ORG_ID]' \
  -H 'Accept: application/vnd.api+json;revision=1' \
  -H 'Content-Type: application/vnd.api+json' \
  -d '{
        "data": {
          "attributes": {
            "delegate_descriptor_id": "kessel-test::events::click",
            "name": "My Example Click Event",
            "settings": "{\"elementSelector\":\".accordion\",\"bubbleFireIfChildFired\":true}"
          },
          "relationships": {
            "extension": {
              "data": {
                "id": "EXa2865f4d14204fa094f247406424371b",
                "type": "extensions"
              }
            },
            "rules": {
              "data": [
                {
                  "id": "RLd53598e3f1884e63bbc8e9c95e463dcf",
                  "type": "rules"
                }
              ]
            }
          },
          "type": "rule_components"
        }
      }'
속성 설명
relationships 페이로드별로 관계를 만들 때 제공해야 하는 개체입니다. 이 개체의 각 키는 특정 관계 유형을 나타냅니다. 위의 예에서 extensionrules 관계가 형성되고, 특히 rule_components. 서로 다른 리소스의 호환 관계 유형에 대한 자세한 내용은 리소스별 관계 요구 사항.
data 아래에 제공된 각 관계 유형 relationship 객체에는 다음이 포함되어야 합니다. data 속성을 참조하는 속성입니다 idtype 리소스 중에서 어떤 관계를 설정하고 있는지 확인합니다. 서식을 지정하여 같은 유형의 여러 리소스와 관계를 만들 수 있습니다 data 속성을 객체 배열로서 설정하고 각 객체는 idtype 해당 리소스
id 리소스의 고유 ID입니다. 각 id 형제와 함께 있어야 합니다 type 해당 리소스의 유형을 나타내는 속성입니다.
type 동위 멤버가 참조하는 리소스 유형입니다. id 필드. 허용되는 값은 다음과 같습니다 data_elements, rules, extensions, 및 environments.

URL별 관계 만들기

다른 리소스와 달리 라이브러리는 자신의 전용 리소스를 통해 관계를 구축합니다 /relationship 엔드포인트. 해당 예는 다음과 같습니다.

API 형식

POST /properties/{PROPERTY_ID}/libraries/{LIBRARY_ID}/relationships/{RESOURCE_TYPE}
매개 변수 설명
{PROPERTY_ID} 라이브러리가 속한 속성의 ID입니다.
{LIBRARY_ID} 관계를 만들 라이브러리의 ID입니다.
{RESOURCE_TYPE} 관계가 타깃팅하는 리소스의 유형입니다. 사용 가능한 값은 다음과 같습니다 environment, data_elements, extensions, 및 rules.

요청

다음 요청에서는 /relationships/environment 브라우저가 환경과의 관계를 만들 수 있는 끝점입니다.

curl -X POST \
  https://reactor.adobe.io/properties/PRf606dbddfbdc44f580fc6f342b5ff9be/libraries/LB10c1fd171cd347f19fcb8659a8d679ef/relationships/environment \
  -H 'Authorization: Bearer [TOKEN]' \
  -H 'x-api-key: [KEY]' \
  -H 'x-gw-ims-org-id: [ORG_ID]' \
  -H 'Accept: application/vnd.api+json;revision=1' \
  -H 'Content-Type: application/vnd.api+json' \
  -d '{
        "data": {
          "id": "ENf395a477d2b24ad696d65b901055b9dc",
          "type": "environments",
        }
      }'
속성 설명
data 를 참조하는 개체 idtype 관계를 위한 대상 리소스의 경로입니다. 같은 유형의 여러 리소스와 관계를 만드는 경우(예: extensionsrules), data 속성은 객체 배열로 포맷되어야 하며 각 객체에는 idtype 해당 리소스
id 리소스의 고유 ID입니다. 각 id 형제와 함께 있어야 합니다 type 해당 리소스의 유형을 나타내는 속성입니다.
type 동위 멤버가 참조하는 리소스 유형입니다. id 필드. 허용되는 값은 다음과 같습니다 data_elements, rules, extensions, 및 environments.

리소스별 관계 요구 사항

다음 표에서는 각 리소스 유형에 대해 사용 가능한 관계, 해당 관계가 필요한지 여부 및 해당하는 경우 관계를 수동으로 생성하는 허용 방법에 대해 설명합니다.

노트

관계가 페이로드 또는 URL에 의해 만들어져서 나열되지 않으면 시스템에 의해 자동으로 할당됩니다.

감사 이벤트

관계 필수 여부 페이로드별로 만들기 URL별 만들기
property
entity

빌드

관계 필수 여부 페이로드별로 만들기 URL별 만들기
data_elements
extensions
rules
environment
library
property

콜백

관계 필수 여부 페이로드별로 만들기 URL별 만들기
property

회사

관계 필수 여부 페이로드별로 만들기 URL별 만들기
properties

데이터 요소

관계 필수 여부 페이로드별로 만들기 URL별 만들기
libraries
revisions
notes
property
origin
extension
updated_with_extension
updated_with_extension_package

환경

관계 필수 여부 페이로드별로 만들기 URL별 만들기
library
builds
host
property

확장

관계 필수 여부 페이로드별로 만들기 URL별 만들기
libraries
revisions
notes
property
origin
extension_package
updated_with_extension_package

호스트

관계 필수 여부 페이로드별로 만들기 URL별 만들기
property

라이브러리

관계 필수 여부 페이로드별로 만들기 URL별 만들기
builds
environment
data_elements
extensions
rules
notes
upstream_library
property
last_build

참고

관계 필수 여부 페이로드별로 만들기 URL별 만들기
resource

속성

관계 필수 여부 페이로드별로 만들기 URL별 만들기
company
callbacks
environments
libraries
data_elements
extensions
extensions

규칙 구성 요소

관계 필수 여부 페이로드별로 만들기 URL별 만들기
updated_with_extensions_package
updated_with_extension
extension
notes
origin
property
rules
revisions

규칙

관계 필수 여부 페이로드별로 만들기 URL별 만들기
libraries
revisions
notes
property
origin
rule_components

비밀

관계 필수 여부 페이로드별로 만들기 URL별 만들기
property
environment

이 페이지에서는