NerdGraph API 을 사용하여 cross account destinations 생성, 테스트, 나열, 업데이트 및 삭제합니다. Cross account destinations 사용하면 조직 수준에서 공지 관리를 중앙 집중화할 수 있습니다.
목적지 만들기
목적지를 생성하려면 목적지 유형별로 서로 다른 입력값을 제공해야 합니다.
중요
대상이 생성될 위치를 나타내는 스코프 객체를 제공해야 합니다. 스코프 객체에는 다음이 필요합니다.
id: 계정 또는 조직의 ID입니다.
유형: 범위 유형(계정 또는 조직).
양방향 통합을 허용하는 선택적 two_way_integration 속성이 통합에 제공됩니다.
aiNotificationsCreateDestination 변형을 사용하여 뉴렐릭 알림에서 문제를 생성하고 관리하기 위해 Atlassian Jira와 통합되는 Jira 대상을 생성하세요.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 생성될 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 열거형 | (필수) Atlassian Jira 대상의 경우 |
| 문자열 | (필수) Jira 대상에 대한 기술 이름입니다. |
| 물체 | (필수) Jira 선택에 대한 인증 설정입니다. |
| 열거형 | (필수) 사용자 이름과 비밀번호/API 토큰 인증을 사용하는 Jira 통합의 경우 |
| 물체 | (필수) Jira 인증 자격 증명(이메일 및 비밀번호/API 토큰)을 포함합니다. |
| 문자열 | (필수) Jira 계정 이메일 주소. |
| 문자열 | (필수) Jira 계정 비밀번호 또는 API 토큰. 보안을 위해 계정 비밀번호 대신 API 토큰을 사용하세요. |
| 객체의 분리 | (필수) Jira 외부 URL 및 통합 옵션을 포함한 설정 속성입니다. |
| 문자열 | (필수) 키가 "url"이고 값이 Jira 인스턴스 URL로 설정된 속성을 반드시 포함해야 합니다(예: "https://yourcompany.atlassian.net"). |
| 문자열 | (선택 사항) 뉴렐릭과 Jira 간의 양방향 통합을 활성화하려면 "true"로 설정합니다. |
계정 및 조직에 대한 예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: JIRA name: "Destination Name" auth: { type: BASIC basic: { user: YOUR_EMAIL, password: YOUR_PASSWORD } } properties: [ { key: "url", value: "https://YOUR_INSTANCE.atlassian.net" } { key: "two_way_integration", value: "true" } ] } ) { destination { id name scope { id type } } }}조직에 대한 예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ORGANIZATION_ID, type: ORGANIZATION } destination: { type: JIRA name: "Destination Name" auth: { type: BASIC basic: { user: YOUR_EMAIL, password: YOUR_PASSWORD } } properties: [ { key: "url", value: "https://YOUR_INSTANCE.atlassian.net" } { key: "two_way_integration", value: "true" } ] } ) { destination { id name scope { id type } } }}aiNotificationsCreateDestination 변이를 사용하여 공지 알림을 이메일 주소로 보내기 위한 이메일 수신처를 생성하세요.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 생성될 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 열거형 | (필수) 이메일 수신자는 |
| 문자열 | (필수) 이메일 수신자를 위한 기술 이름입니다. |
| 객체의 분리 | (필수) 이메일 설정이 포함된 핵심 가치 쌍입니다. 값으로 타겟, 목표 이메일 주소를 포함하는 |
예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: EMAIL name: "Destination Name" properties: [{ key: "email", value: YOUR_EMAIL }] } ) { destination { id name scope { id type } } }}알림이 트리거될 때 외부로 HTTP POST requests 보내기 위한 웹훅 대상을 생성하려면 aiNotificationsCreateDestination 뮤테이션을 사용하십시오.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 생성될 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 열거형 | (필수) 웹훅 대상의 경우 |
| 문자열 | (필수) 웹훅 대상에 대한 기술 이름입니다. |
| 물체 | (선택 사항) 인증 설정. 웹훅 엔드포인트에 인증이 필요한 경우에만 필요합니다. |
| 열거형 | (인증 정보 제공 시 필수) 인증 방법. 옵션: |
| 물체 | (BASIC 및 인증에 필요) 사용자 이름/비밀번호 또는 정보와 같은 인증 자격 증명을 포함합니다. |
| 객체의 분리 | (필수) 웹훅 설정이 포함된 핵심 가치 쌍입니다. 웹훅 엔드포인트 URL에 |
예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: WEBHOOK name: "Destination Name" auth: { type: BASIC basic: { user: YOUR_EMAIL, password: YOUR_PASSWORD } } properties: [ { key: "url", value: YOUR_WEBHOOK } { key: "two_way_integration", value: "true" } ] } ) { destination { id name scope { id type } } }}aiNotificationsCreateDestination 뮤테이션을 사용하여 통합 키를 통해 특정 PagerDuty 서비스와 통합되는 PagerDuty 서비스 수준 대상을 생성합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 생성될 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 열거형 | (필수) PagerDuty 서비스 수준 대상의 경우 |
| 문자열 | (필수) PagerDuty 서비스 대상에 대한 기술 이름입니다. |
| 물체 | (필수) PagerDuty 키가 포함된 인증 설정입니다. |
| 열거형 | (필수) PagerDuty 서비스 통합을 위해서는 |
| 물체 | (필수) PagerDuty 인증에 필요한 통합 토큰과 접두사를 포함합니다. |
| 문자열 | (필수) PagerDuty 서비스 설정에서 얻은 PagerDuty 통합 키입니다. |
| 문자열 | (필수) PagerDuty 서비스 통합을 위해서는 |
| 객체의 분리 | (선택 사항) 추가 설정 속성입니다. 기본 서비스 통합을 위해 비워둘 수 있습니다. |
예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: PAGERDUTY_SERVICE_INTEGRATION name: "Destination Name" auth: { type: TOKEN basic: { token: YOUR_INTEGRATION_TOKEN, prefix: "Token token=" } } properties: [] } ) { destination { id name scope { id type } } }}aiNotificationsCreateDestination 뮤테이션을 사용하여 API 키를 통해 전체 PagerDuty 계정과 통합되는 PagerDuty 계정 수준 대상을 생성하면 더욱 광범위한 인시던트 관리 기능을 활용할 수 있습니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 생성될 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 열거형 | (필수) PagerDuty 계정 수준 대상의 경우 |
| 문자열 | (필수) PagerDuty 계정 대상에 대한 기술 이름입니다. |
| 물체 | (필수) PagerDuty 계정 API 키가 포함된 인증 설정입니다. |
| 열거형 | (필수) PagerDuty 계정 통합을 위해서는 |
| 물체 | (필수) PagerDuty 계정 인증에 필요한 API 토큰과 접두사를 포함합니다. |
| 문자열 | (필수) PagerDuty 계정 설정에서 얻은 PagerDuty 계정 API 키입니다. |
| 문자열 | (필수) PagerDuty 계정 통합을 위해서는 |
| 객체의 분리 | (선택 사항) 계정 통합에 대한 속성을 설정합니다. 공통 속성: 양방향 통신을 위해 |
예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: PAGERDUTY_ACCOUNT_INTEGRATION name: "Global PagerDuty Account" auth: { type: TOKEN basic: { token: YOUR_API_KEY, prefix: "Token token=" } } properties: [{ key: "two_way_integration", value: "true" }] } ) { destination { id name scope { id type } } }}뉴렐릭에서 교차 계정 Slack 대상을 생성하려면 NerdGraph API 과 Slack 간에 OAuth 인증이 필요합니다. 다음 단계는 인증 URL을 생성하고 설정을 완료하는 방법을 보여줍니다.
OAuth URL을 생성합니다
NerdGraph Explorer 을 열고 다음 쿼리를 쿼리 편집기에 붙여넣으세요. 이 쿼리는 조직에 맞는 고유한 Slack OAuth URL을 생성합니다.
{actor {organization {aiNotifications {oAuthUrl(type: SLACK) {urltransactionIderror {descriptiondetailstype}}}}}}탐색기 상단의 Play (Execute Query) 클릭하세요.
인증 링크에 접속하세요
- 쿼리가 실행되면 화면 오른쪽에 URL이 포함된 JSON 응답이 표시됩니다.
- 응답에서
url필드를 찾으세요. - 따옴표 안의 모든 URL 문자열을 복사하세요.
- 브라우저에서 새 탭을 열고 URL을 붙여넣으세요.
Slack 인증 완료
- 해당 링크를 클릭하면 슬랙 인증 페이지로 이동합니다.
- 그렇다면 연결하려는 Slack 워크스페이스에 로그인하세요.
- 뉴렐릭이 요청한 권한을 검토하세요.
- 연결을 승인하려면 Allow 클릭하십시오.
- "성공" 페이지로 다시 이동될 것입니다.
목적지를 확인하세요
OAuth 인증이 성공적으로 완료되면 대상이 조직 수준에서 자동으로 생성되어 조직 내 모든 계정에서 사용할 수 있게 됩니다.
- one.newrelic.com > Alerts > Destinations 으로 이동합니다.
- Destinations 목록에서 방금 인증한 Slack 워크스페이스에 대한 새 항목을 확인할 수 있습니다.
뉴렐릭 알림에서 인시던트를 생성하고 관리하기 위해 ServiceNow와 통합되는 ServiceNow 대상을 생성하려면 aiNotificationsCreateDestination 변형을 사용하세요.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 생성될 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 열거형 | (필수) ServiceNow 대상의 경우 |
| 문자열 | (필수) ServiceNow 대상에 대한 기술 이름입니다. |
| 물체 | (필수) ServiceNow에 연결하기 위한 인증 설정입니다. |
| 열거형 | (필수) 사용자 이름 및 암호 인증을 사용하는 ServiceNow 통합의 경우 |
| 물체 | (필수) ServiceNow 인증 자격 증명(사용자 이름 및 암호)을 포함합니다. |
| 문자열 | (필수) ServiceNow 계정 사용자 이름 또는 이메일 주소. |
| 문자열 | (필수) ServiceNow 계정 비밀번호입니다. 보안 강화를 위해 서비스 계정 사용을 고려해 보세요. |
| 객체의 분리 | (필수) ServiceNow 추가 URL 및 통합 옵션을 포함한 설정 속성입니다. |
| 문자열 | (필수) 키가 "url"이고 값이 ServiceNow 인스턴스 URL로 설정된 속성을 반드시 포함해야 합니다(예: "https://yourcompany.service-now.com"). |
| 문자열 | (선택 사항) 뉴렐릭과 ServiceNow 간의 양방향 통합을 활성화하려면 "true"로 설정하십시오. |
예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: SERVICE_NOW name: "Destination Name" auth: { type: BASIC basic: { user: YOUR_EMAIL, password: YOUR_PASSWORD } } properties: [ { key: "url", value: "https://YOUR_INSTANCE.service-now.com" } { key: "two_way_integration", value: "true" } ] } ) { destination { id name scope { id type } } }}aiNotificationsCreateDestination 뮤테이션을 사용하여 뉴렐릭 공지 이벤트를 AWS EventBridge로 전송하여 AWS 에코시스템 내에서 추가 처리 및 라우팅을 수행하는 AWS EventBridge 대상을 생성합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 생성될 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 열거형 | (필수) AWS EventBridge 대상의 경우 |
| 문자열 | (필수) AWS EventBridge 대상에 대한 기술 이름입니다. |
| 물체 | (필수) IAM 자격 증명을 사용하여 AWS EventBridge에 연결하기 위한 인증 설정입니다. |
| 열거형 | (필수) IAM 사용자 자격 증명을 사용하는 AWS EventBridge 통합의 경우 |
| 물체 | (필수) AWS IAM 인증 자격 증명(액세스 키 ID 및 비밀 액세스 키)을 포함합니다. |
| 문자열 | (필수) AWS IAM 액세스 키 ID. IAM 사용자에게 EventBridge 권한이 있는지 확인하십시오. |
| 문자열 | (필수) AWS IAM 비밀 액세스 키. 이 정보를 안전하게 보관하고, 가능하면 IAM 역할을 사용하는 것을 고려하십시오. |
| 객체의 분리 | EventBridge에 대한 AWS 계정 ID 및 지역을 포함한 (필수) 설정 속성입니다. |
| 문자열 | (필수) 키가 "AWSAccountId"이고 값이 AWS 계정 ID(12자리 숫자)로 설정된 속성을 반드시 포함해야 합니다. |
| 문자열 | (필수) 키가 "AWSRegion"이고 값이 AWS 리전으로 설정된 속성(예: "us-east-1", "eu-west-1")을 반드시 포함해야 합니다. |
예시 쿼리:
mutation { aiNotificationsCreateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: EVENT_BRIDGE name: "Destination Name" auth: { type: BASIC basic: { user: YOUR_IAM_USER, password: YOUR_PASSWORD } } properties: [ { key: "AWSAccountId", value: YOUR_AWS_ACCOUNT_ID } { key: "AWSRegion", value: YOUR_AWS_REGION } ] } ) { destination { id name scope { id type } } }}계정 간 대상 테스트
cross account destinations 생성 전이나 후에 테스트할 수 있습니다. 스코프 객체를 제공해야 합니다.
대상 설정을 생성하기 전에 테스트하려면 aiNotificationsTestDestination 뮤테이션을 사용하세요. 이를 통해 실제로 대상을 생성하지 않고도 설정 및 자격 증명을 확인할 수 있습니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 테스트 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 물체 | (필수) 테스트할 대상 설정 객체(유형, 이름, 인증 방식 및 속성 포함)입니다. |
| 열거형 | (필수) 테스트할 대상 유형입니다. 옵션: |
| 문자열 | (필수) 테스트할 대상 설정의 이름입니다. |
| 물체 | (선택 사항) 자격 증명이 필요한 대상에 대한 인증 설정입니다. WEBHOOK, PagerDuty, JIRA, SERVICE_NOW 및 EVENT_BRIDGE 대상에 필요합니다. |
| 객체의 분리 | (필수) URL, 이메일 주소 또는 통합 옵션과 같은 대상별 설정을 구성하는 핵심 값 쌍입니다. |
예시 쿼리:
mutation { aiNotificationsTestDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destination: { type: EMAIL name: "Destination Name" properties: [{ key: "email", value: YOUR_EMAIL }] } ) { error { details } details result }}기존 대상을 ID로 테스트하려면 aiNotificationsTestDestinationById 뮤테이션을 사용하세요. 이는 목적지가 올바르게 구성되었으며 공지를 성공적으로 전달할 수 있는지를 확인합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 존재하는 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 문자열 | (필수) 테스트할 기존 대상의 고유 식별자입니다. 이 ID는 목적지를 생성할 때 반환되거나 목적지 목록을 확인하여 찾을 수 있습니다. |
예시 쿼리:
mutation { aiNotificationsTestDestinationById( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destinationId: YOUR_DESTINATION_ID ) { error { details } details result }}목적지 나열 및 필터링
destinations 쿼리를 사용하면 계정 및 조직 수준 모두에서 모든 목적지를 페이지별로 탐색할 수 있습니다. 또한 cross account destinations 에 대한 필터링 기능도 제공합니다.
actor.organization.aiNotifications.destinations 쿼리를 사용하여 조직 수준의 모든 대상을 검색합니다. 여기에는 조직 내 모든 계정에서 사용할 수 있는 cross account destinations 이 포함됩니다.
입력스피커, 변수
이 쿼리는 GraphQL actor.organization 컨텍스트를 사용하며 명시적인 입력이 필요하지 않습니다. 해당 쿼리는 조직 수준에서 접근 가능한 모든 대상을 자동으로 반환합니다.
쿼리 필드 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | 인증된 사용자의 컨텍스트를 나타내는 루트 쿼리 객체입니다. |
| 물체 | 조직 수준 리소스 및 cross account destinations 에 대한 액세스를 제공하는 조직 컨텍스트입니다. |
| 물체 | 공지 관련 리소스에 접근하기 위한 AI 공지 서비스 컨텍스트입니다. |
| 물체 | cross account destinations 포함하여 조직 수준에서 접근 가능한 모든 대상을 반환하는 쿼리 필드입니다. |
예시 쿼리:
{ actor { organization { aiNotifications { destinations { entities { id name scope { id type } } error { details } } } } }}actor.account.aiNotifications.destinations 쿼리를 사용하여 특정 계정에서 액세스할 수 있는 모든 대상을 검색합니다. 여기에는 계정 범위 대상과 해당 계정에서 사용할 수 있는 cross account destinations 모두 포함됩니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 문자열/ID | (필수) 목적지를 검색할 특정 계정 ID입니다. 이 계정은 인증된 사용자가 접근할 수 있어야 합니다. |
쿼리 필드
쿼리 필드 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | 인증된 사용자의 컨텍스트를 나타내는 루트 쿼리 객체입니다. |
| 물체 | 계정별 리소스 및 이 계정에서 사용 가능한 cross account destinations 에 대한 액세스를 제공하는 계정 컨텍스트입니다. |
| 물체 | 공지 관련 리소스에 접근하기 위한 AI 공지 서비스 컨텍스트입니다. |
| 물체 | 지정된 계정에서 액세스 가능한 모든 대상(계정 범위 및 조직 범위 모두 포함)을 반환하는 쿼리 필드입니다. |
예시 쿼리:
{ actor { account(id: YOUR_ACCOUNT_ID) { aiNotifications { destinations { entities { id name scope { id type } } error { details } } } } }}커서 페이지네이션을 사용하여 많은 목적지 목록을 효율적으로 탐색하세요. 페이지네이션을 활성화하려면 쿼리에서 nextCursor 필드를 요청해야 합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 문자열/ID | (필수) 목적지를 검색할 특정 계정 ID입니다. 이 계정은 인증된 사용자가 접근할 수 있어야 합니다. |
| 문자열 | (선택 사항) 페이지네이션용 커서. 첫 번째 요청에는 빈 문자열 |
페이지 매김 흐름
커서 페이지네이션을 사용하면 응답에서 nextCursor 이 반환될 때까지 결과 집합을 통해 계속해서 requests 보냅니다. 이는 결과 보기의 끝에 도달했음을 의미합니다.
다음은 계정의 예시입니다(조직에도 동일한 논리가 적용됩니다).
{ actor { account(id: YOUR_ACCOUNT_ID) { aiNotifications { destinations(cursor: "") { nextCursor entities { id name scope { id type } } totalCount } } } }}위의 코드는 다음과 같은 결과 집합을 반환합니다.
{ "data": { "actor": { "account": { "aiNotifications": { "destinations": { "nextCursor": "/8o0y2qiR54m6thkdgHgwg==:jZTXDFKbTkhKwvMx+CtsPVM=", "entities": [ { "id": "01c0cbe7-3d70-47c1-99e0-adf906eed6c2", "name": "Destination Name", "scope": { "type": "ACCOUNT", "id": "312312" } }, { "id": "05db0207-c137-4985-8cb5-f21e7e57b8cc", "name": "Another Destination Name", "scope": { "type": "ACCOUNT", "id": "312312" } } ], "totalCount": 807 } } } } }}따라서 후속 요청에서 커서가 비어 있을 때까지 다음과 같이 커서를 제공합니다.
{ actor { account(id: YOUR_ACCOUNT_ID) { aiNotifications { destinations( cursor: "/8o0y2qiR54m6thkdgHgwg==:jZTXDFKbTkhKwvMx+CtsPVM=" ) { nextCursor entities { id name scope { id type } } totalCount } } } }}다음은 조직에 대한 또 다른 예입니다.
{ actor { organization { aiNotifications { destinations(cursor: "") { nextCursor entities { id name scope { id type } } totalCount } } } }}위의 코드는 다음과 같은 결과 집합을 반환합니다.
{ "data": { "actor": { "organization": { "aiNotifications": { "destinations": { "nextCursor": "/8o0y2qiR54m6thkdgHgwg==:jZTXDFKbTkhKwvMx+CtsPVM=", "entities": [ { "id": "01c0cbe7-3d70-47c1-99e0-adf906eed6c2", "name": "Destination Name", "scope": { "type": "ORGANIZATION", "id": "01ddcbe7-3d70-47c1-99e0-adf906eed6c2" } }, { "id": "05db0207-c137-4985-8cb5-f21e7e57b8cc", "name": "Another Destination Name", "scope": { "type": "ORGANIZATION", "id": "01ddcbe7-3d70-47c1-99e0-adf906eed6c2" } } ], "totalCount": 807 } } } } }}따라서 후속 요청에서 커서가 비어 있을 때까지 다음과 같이 커서를 제공합니다.
{ actor { organization { aiNotifications { destinations( cursor: "/8o0y2qiR54m6thkdgHgwg==:jZTXDFKbTkhKwvMx+CtsPVM=" ) { nextCursor entities { id name scope { id type } } totalCount } } } }}목적지를 이름으로 검색하려면 이름 필터링을 사용하세요. 이름 필터는 정확한 일치와 부분 일치를 모두 지원하며 대소문자를 구분하지 않습니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 문자열/ID | (필수) 목적지를 검색할 특정 계정 ID입니다. 이 계정은 인증된 사용자가 접근할 수 있어야 합니다. |
| 물체 | (필수) 결과를 좁히기 위한 필터 기준 객체입니다. |
| 문자열 | (필수) 목적지 이름으로 필터링하세요. 부분 일치 검색을 지원하며 대소문자를 구분하지 않습니다. 지정된 문자열을 포함하는 이름을 가진 목적지를 반환합니다. |
예시 쿼리:
이 예제는 이름에 "DevOps"가 포함된 대상을 찾습니다.
{ actor { account(id: YOUR_ACCOUNT_ID) { aiNotifications { destinations(filters: { name: "DevOps" }) { entities { id name scope { id type } } } } } }}고유 식별자를 사용하여 특정 목적지를 검색하려면 ID 필터링을 사용하십시오. 이 필터는 정확히 일치하는 결과만 반환합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 문자열/ID | (필수) 목적지를 검색할 특정 계정 ID입니다. 이 계정은 인증된 사용자가 접근할 수 있어야 합니다. |
| 물체 | (필수) 검색할 정확한 대상을 지정하기 위한 필터 기준 객체입니다. |
| 문자열 | (필수) 목적지 ID로 필터링하세요. 지정된 계정에서 접근 가능하고 해당 ID와 정확히 일치하는 대상을 반환합니다. |
예시 쿼리:
{ actor { account(id: YOUR_ACCOUNT_ID) { aiNotifications { destinations(filters: { id: YOUR_DESTINATION_ID }) { entities { id name scope { id type } } } } } }}특정 유형의 대상을 검색하려면 유형 필터링을 사용하십시오. 이 필터는 지정된 목적지 유형과 일치하는 모든 목적지를 반환합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 문자열/ID | (필수) 목적지를 검색할 특정 계정 ID입니다. 이 계정은 인증된 사용자가 접근할 수 있어야 합니다. |
| 물체 | (필수) 목적지 유형별로 결과를 좁히려면 필터 기준 객체를 사용하십시오. |
| 열거형 | (필수) 목적지 유형별로 필터링하세요. 유효한 값: |
예시 쿼리:
다음 쿼리는 선택한 계정의 모든 이메일 수신처를 반환합니다.
{ actor { account(id: YOUR_ACCOUNT_ID) { aiNotifications { destinations(filters: { type: EMAIL }) { entities { id name scope { id type } } } } } }}계정 간 대상 업데이트
기존 cross-account destination 업데이트하려면 조직 범위와 대상 ID를 제공해야 합니다.
기존 cross-account destination 업데이트하려면 aiNotificationsUpdateDestination 변이를 사용하세요.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 존재하는 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 문자열 | (필수) 업데이트할 대상의 고유 식별자입니다. 이 ID는 목적지를 생성할 때 반환되거나 목적지 목록을 확인하여 찾을 수 있습니다. |
| 물체 | (필수) 수정할 필드가 포함된 대상 업데이트 객체입니다. 변경하려는 필드만 포함하세요. |
| 문자열 | (선택 사항) 목적지의 업데이트된 이름입니다. |
| 물체 | (선택 사항) 자격 증명이 필요한 대상에 대한 인증 설정을 업데이트합니다. |
| 객체의 분리 | (선택 사항) URL, 이메일 주소 또는 통합 옵션과 같은 목적지별 설정에 대한 업데이트된 핵심 값 쌍. |
예시 쿼리:
mutation { aiNotificationsUpdateDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destinationId: YOUR_DESTINATION_ID destination: { name: "Updated destination Name" } ) { destination { id name scope { id type } } }}교차 계정 대상 삭제
scope 과 destination ID 를 제공하여 cross account destinations 삭제합니다.
중요
삭제하기 전에: "엔티티 유형 채널이 사용 중입니다"라는 오류 메시지가 표시되면 먼저 대상과 연결된 모든 채널을 삭제해야 합니다. 연결된 채널을 찾아 개별적으로 삭제한 후 최종 삭제를 진행하십시오.
aiNotificationsDeleteDestination 변이를 사용하여 cross account destination 을 영구적으로 삭제합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 물체 | (필수) 대상이 존재하는 범위를 정의합니다. 계정 수준의 목적지에는 cross account destinations 대신 |
| 문자열 | (필수) cross account destinations 의 조직 ID 또는 계정 수준 대상의 계정 ID입니다. |
| 열거형 | (필수) 계정 수준 목적지의 경우 cross account destinations 은, |
| 문자열 | (필수) 삭제하려는 대상의 고유 식별자입니다. 이 ID는 목적지를 생성할 때 반환되거나 목적지 목록을 확인하여 찾을 수 있습니다. |
예시 쿼리:
mutation { aiNotificationsDeleteDestination( scope: { id: YOUR_ACCOUNT_ID, type: ACCOUNT } destinationId: YOUR_DESTINATION_ID ) { ids error { details } }}이 쿼리를 사용하여 현재 특정 대상을 사용하고 있는 모든 채널을 찾을 수 있습니다. 이는 대상을 삭제하기 전에 활성 채널에 영향을 미치지 않는지 확인하는 데 유용합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 문자열/ID | (필수) 채널을 검색할 특정 계정 ID입니다. 이 계정은 인증된 사용자가 접근할 수 있어야 합니다. |
| 물체 | (필수) 특정 목적지를 사용하는 채널을 찾기 위한 필터 기준 객체입니다. |
| 문자열 | (필수) 검색할 목적지의 고유 식별자입니다. 이 대상을 사용하도록 구성된 모든 채널을 반환합니다. |
예시 쿼리:
{ actor { account(id: YOUR_ACCOUNT_ID) { aiNotifications { channels(filters: { destinationId: YOUR_DESTINATION_ID }) { entities { id name } } } } }}대상 채널을 사용하는 채널을 삭제하려면 aiNotificationsDeleteChannel 변이를 사용하십시오. 대상 자체를 삭제하기 전에 연결된 모든 채널을 먼저 삭제해야 합니다.
입력스피커, 변수
반응, 이름 | 데이터 형식 | 설명 |
|---|---|---|
| 문자열/ID | (필수) 채널이 있는 계정 ID입니다. 이 계정은 인증된 사용자가 접근할 수 있어야 합니다. |
| 문자열 | (필수) 삭제하려는 채널의 고유 식별자입니다. 이 ID는 대상 ID를 사용하여 채널을 조회함으로써 찾을 수 있습니다. |
예시 쿼리:
mutation { aiNotificationsDeleteChannel( accountId: YOUR_ACCOUNT_ID channelId: "YOUR_CHANNEL_ID" ) { ids error { details } }}