InfoGrab DocsInfoGrab Docs

Microsoft SharePoint Trigger 노드

요약

Microsoft SharePoint Trigger 노드를 사용하면 Microsoft SharePoint에서 파일이나 목록 항목이 변경될 때 워크플로를 시작할 수 있습니다. 이 노드는 한 사이트의 문서 라이브러리 하나 또는 목록 하나를 감시합니다.

Microsoft SharePoint Trigger 노드를 사용하면 Microsoft SharePoint에서 파일이나 목록 항목이 변경될 때 워크플로를 시작할 수 있습니다.

이 노드는 한 사이트의 문서 라이브러리 하나 또는 목록 하나를 감시합니다. 사용자가 설정한 일정에 따라 변경 사항을 확인합니다. 확인할 때마다 워크플로는 최대 한 번 시작됩니다. 마지막 확인 이후 둘 이상의 항목이 변경된 경우, 해당 실행에서 항목이 함께 전달되며 확인 시 읽은 항목마다 하나의 항목으로 전달됩니다. 변경 사항이 없으면 노드는 실행을 시작하지 않습니다.

이 페이지에서는 노드가 감시하는 대상, 노드가 생성하는 이벤트, 노드를 기반으로 워크플로를 구축하기 전에 알아야 할 일반적인 문제를 설명합니다.

Note

자격 증명

이 노드는 Microsoft OAuth2 자격 증명과 Microsoft Entra Service Principal 자격 증명을 지원합니다. Microsoft SharePoint 자격 증명은 지원하지 않습니다.

OAuth2 자격 증명을 사용하는 경우 Scope 필드에 openid offline_access Sites.Read.All을 입력합니다. Service Principal 자격 증명을 사용하는 경우 앱 등록에 Sites.Read.All 애플리케이션 권한을 부여합니다. 조직에서 사이트별로 접근 권한을 부여한다면 Sites.Selected를 대신 사용하며, 관리자가 각 사이트에 대해 앱에 접근 권한을 부여해야 합니다.

트리거는 로그인한 사용자가 없어도 계속 확인하므로, 프로덕션에서는 Service Principal 자격 증명을 사용하세요. 사용자 자격 증명은 해당 사용자의 세션이 취소되면 작동을 멈춥니다.

Note

정부 클라우드 지원

정부 클라우드 테넌트(US Government, US Government DOD 또는 China)를 사용하는 경우, Microsoft 자격 증명 구성에서 적절한 Microsoft Graph API Base URL을 선택하세요.

노드가 감시하는 대상#

Site를 선택한 다음, Resource를 해당 사이트에서 감시하려는 대상으로 설정합니다.

  • Document Library: 한 라이브러리의 파일을 감시합니다. Document Library에서 라이브러리를 선택합니다.
  • List: 한 목록의 항목을 감시합니다. List에서 목록을 선택합니다.

각 필드는 선택기와 직접 입력한 값을 모두 제공합니다. 조직에서 사이트별로 접근 권한을 부여하는 경우처럼 선택기로 필요한 대상에 접근할 수 없는 경우가 아니라면 선택기를 사용하세요. Site 필드는 By URL 모드에서 사이트 주소도 사용할 수 있습니다.

노드는 라이브러리 전체 또는 목록 전체를 감시합니다. 하나의 폴더로 범위를 좁힐 수 없습니다. Microsoft Graph의 변경 피드는 서버에서 필터링할 수 없고, 변경된 파일의 폴더 경로도 보고하지 않으므로 신뢰할 수 있는 필터링 기준이 없습니다.

이벤트#

Events에서 이벤트를 선택합니다. 두 이벤트 모두 기본적으로 켜져 있습니다.

  • Changed: 파일이나 항목이 추가, 편집, 이름 변경 또는 이동되었거나 메타데이터가 변경되었습니다.
  • Deleted: 파일이나 항목이 삭제되었습니다.

어느 리소스에서든 폴더는 이벤트를 생성하지 않습니다.

별도의 Created 이벤트가 없는 이유#

Microsoft Graph의 변경 피드는 각 변경이 아니라 각 항목의 최신 상태를 보고합니다. 새로 만들어진 항목과 편집된 항목은 똑같이 보이는 상태로 전달되므로, 노드는 추측하지 않고 둘 다 Changed로 보고합니다.

새 항목과 편집된 항목을 구분해야 한다면 워크플로에서 createdDateTime과 lastModifiedDateTime을 비교하되, 그 결과는 사실이 아니라 참고 자료로 취급하세요. 두 번의 확인 사이에 만들어진 뒤 편집된 항목은 두 타임스탬프가 서로 다른 상태로 한 번 전달됩니다.

노드가 확인하는 주기#

Poll Times는 노드가 변경 사항을 확인하는 주기를 설정합니다. 기본값은 1분마다입니다.

사전 설정된 선택지는 최소 1분에 한 번까지입니다. Custom cron 표현식은 초 단위까지 더 짧게 설정할 수 있지만, Microsoft는 그 주기가 유용해지기 훨씬 전에 요청을 제한합니다.

변경 사항은 다음 확인 때 감지됩니다. 기본 설정에서 한 번 확인할 때 약 40페이지 분량의 변경 사항을 읽으며, 시간이 부족하면 일찍 멈춥니다. 대기 중인 변경 사항이 더 있으면 노드는 위치를 저장하고 다음 확인 때 이어서 진행합니다. 따라서 대량의 변경 사항은 여러 번의 실행에 걸쳐 전달되며, 처리하는 데 한 주기보다 오래 걸릴 수 있습니다.

출력#

노드는 변경된 각 항목을 Microsoft Graph가 반환한 그대로, 형태를 바꾸지 않고 출력합니다. 필드는 감시하는 리소스와 항목에 일어난 일에 따라 달라집니다.

deleted 속성이 있는 항목은 삭제입니다. 없는 항목은 변경입니다.

목록을 감시할 때 항목에는 해당 항목의 ID 정보가 포함됩니다. 노드는 Microsoft Graph의 기본 페이로드를 읽으며 항목의 fields를 확장하지 않으므로, 항목에 열 값이 포함되어 있다고 가정하지 마세요. 열을 읽으려면 트리거 뒤에 Microsoft SharePoint 노드를 추가하고 id로 항목을 가져옵니다.

삭제 항목은 Microsoft Graph가 대부분의 필드를 제거하므로 변경 항목보다 포함하는 정보가 훨씬 적습니다. 항목의 id와 deleted 속성이 있을 것으로 예상하되, 그 외의 값이 있다고 가정하지 마세요. 워크플로에서 삭제된 항목의 이름이 필요하다면, 확인한 항목을 id 기준으로 직접 기록해 두세요.

문서 라이브러리를 감시할 때는 항목에 parentReference.path가 포함되어 있다고 가정하지 마세요. 파일의 위치를 찾으려면 webUrl을 사용하세요.

일반적인 문제#

기존 파일과 항목은 워크플로를 트리거하지 않음#

워크플로를 게시하면 노드는 그 시점부터 감시를 시작합니다. 이미 존재하는 파일과 항목은 이벤트를 발생시키지 않습니다. 라이브러리의 기존 콘텐츠를 처리하려면 대신 Microsoft SharePoint 노드를 사용하세요.

노드를 편집한 후 변경 사항이 누락됨#

Authentication 방법, Site, Resource, Document Library 또는 List를 변경하면 저장된 위치가 초기화됩니다. 노드는 그 시점부터 감시를 시작하며 이전 변경 사항은 보고하지 않습니다. 같은 유형의 다른 자격 증명을 선택하면 위치가 유지됩니다.

워크플로가 비활성 상태였던 후 변경 사항이 누락됨#

노드가 오랫동안 실행되지 않으면 저장된 위치가 Microsoft 쪽에서 만료될 수 있습니다. 그러면 노드는 그 시점부터 감시를 시작하고 경고를 기록합니다. 위치가 만료된 동안 발생한 변경 사항은 보고되지 않습니다.

같은 항목이 두 번 이상 전달됨#

한 번의 확인 안에서 노드는 같은 항목에 대한 반복된 변경을 하나로 합칩니다. 여러 번의 확인에 걸쳐서는, 대량의 변경 사항을 처리하는 동안 같은 항목이 두 번 이상 전달될 수 있습니다. 같은 항목에 대한 반복이 문제가 되지 않도록 워크플로를 설계하세요.

테스트에서 항목은 보이지만 내가 한 변경은 보이지 않음#

편집기에서 노드를 테스트해도 저장된 위치는 이동하지 않으므로, 테스트가 실제 이벤트를 소비하는 일은 없습니다. 테스트는 라이브러리나 목록에 이미 존재하는 항목을 최대 한 페이지까지 나열합니다. 변경을 기다리지 않으며, 삭제는 절대 보여주지 않습니다. 이벤트 선택을 확인하는 용도가 아니라 항목의 구조를 확인하는 용도로 사용하세요.

라이브러리 또는 목록을 찾을 수 없다고 노드가 보고함#

예를 들어 누군가 삭제하는 등 감시 중인 라이브러리나 목록에 더 이상 접근할 수 없으면, 노드는 해당 라이브러리 또는 목록과 노드가 찾아본 사이트를 명시한 오류를 보고합니다. 노드는 저장된 위치를 유지하므로 대상이 복구되면 다시 이어서 진행합니다. 노드는 ID로 감시하기 때문에 이름을 바꿔도 노드가 깨지지 않습니다. By ID or Title 모드에서 목록 제목을 입력했다면 이름을 바꿀 때 노드가 깨집니다.

권한 오류에 라이브러리 또는 목록이 명시되지 않음#

자격 증명이 접근 권한을 잃으면 Microsoft Graph는 보통 권한 오류로 응답합니다. 노드는 그 오류를 받은 그대로 보고하므로 라이브러리나 목록을 명시하지 않습니다. 자격 증명의 범위와 로그인한 계정의 사이트 접근 권한을 확인하세요.

같은 오류가 확인할 때마다 나타나지는 않음#

확인이 실패하면 노드는 실패를 보고합니다. 같은 실패가 반복되는 동안에는 최대 한 시간에 한 번만 다시 보고하고 그 사이에는 로그에 경고를 기록하므로, 지속되는 문제로 실행 목록이 가득 차지 않습니다. 다른 실패는 즉시 보고되며, 확인이 성공하면 기록이 지워집니다. 편집기에서 하는 테스트는 항상 실패를 보고합니다.

관련 리소스#

n8n은 Microsoft SharePoint용 앱 노드를 제공합니다. 자세한 내용은 Microsoft SharePoint 노드 문서를 참조하세요.

이 노드가 읽는 변경 피드에 대한 자세한 내용은 Microsoft의 driveItem delta 문서와 listItem delta 문서를 참조하세요.

Microsoft SharePoint Trigger 노드

n8n v2.42
원문 보기

요약

Microsoft SharePoint Trigger 노드를 사용하면 Microsoft SharePoint에서 파일이나 목록 항목이 변경될 때 워크플로를 시작할 수 있습니다. 이 노드는 한 사이트의 문서 라이브러리 하나 또는 목록 하나를 감시합니다.

Microsoft SharePoint Trigger 노드를 사용하면 Microsoft SharePoint에서 파일이나 목록 항목이 변경될 때 워크플로를 시작할 수 있습니다.

이 노드는 한 사이트의 문서 라이브러리 하나 또는 목록 하나를 감시합니다. 사용자가 설정한 일정에 따라 변경 사항을 확인합니다. 확인할 때마다 워크플로는 최대 한 번 시작됩니다. 마지막 확인 이후 둘 이상의 항목이 변경된 경우, 해당 실행에서 항목이 함께 전달되며 확인 시 읽은 항목마다 하나의 항목으로 전달됩니다. 변경 사항이 없으면 노드는 실행을 시작하지 않습니다.

이 페이지에서는 노드가 감시하는 대상, 노드가 생성하는 이벤트, 노드를 기반으로 워크플로를 구축하기 전에 알아야 할 일반적인 문제를 설명합니다.

Note

자격 증명

이 노드는 Microsoft OAuth2 자격 증명과 Microsoft Entra Service Principal 자격 증명을 지원합니다. Microsoft SharePoint 자격 증명은 지원하지 않습니다.

OAuth2 자격 증명을 사용하는 경우 Scope 필드에 openid offline_access Sites.Read.All을 입력합니다. Service Principal 자격 증명을 사용하는 경우 앱 등록에 Sites.Read.All 애플리케이션 권한을 부여합니다. 조직에서 사이트별로 접근 권한을 부여한다면 Sites.Selected를 대신 사용하며, 관리자가 각 사이트에 대해 앱에 접근 권한을 부여해야 합니다.

트리거는 로그인한 사용자가 없어도 계속 확인하므로, 프로덕션에서는 Service Principal 자격 증명을 사용하세요. 사용자 자격 증명은 해당 사용자의 세션이 취소되면 작동을 멈춥니다.

Note

정부 클라우드 지원

정부 클라우드 테넌트(US Government, US Government DOD 또는 China)를 사용하는 경우, Microsoft 자격 증명 구성에서 적절한 Microsoft Graph API Base URL을 선택하세요.

노드가 감시하는 대상#

Site를 선택한 다음, Resource를 해당 사이트에서 감시하려는 대상으로 설정합니다.

  • Document Library: 한 라이브러리의 파일을 감시합니다. Document Library에서 라이브러리를 선택합니다.
  • List: 한 목록의 항목을 감시합니다. List에서 목록을 선택합니다.

각 필드는 선택기와 직접 입력한 값을 모두 제공합니다. 조직에서 사이트별로 접근 권한을 부여하는 경우처럼 선택기로 필요한 대상에 접근할 수 없는 경우가 아니라면 선택기를 사용하세요. Site 필드는 By URL 모드에서 사이트 주소도 사용할 수 있습니다.

노드는 라이브러리 전체 또는 목록 전체를 감시합니다. 하나의 폴더로 범위를 좁힐 수 없습니다. Microsoft Graph의 변경 피드는 서버에서 필터링할 수 없고, 변경된 파일의 폴더 경로도 보고하지 않으므로 신뢰할 수 있는 필터링 기준이 없습니다.

이벤트#

Events에서 이벤트를 선택합니다. 두 이벤트 모두 기본적으로 켜져 있습니다.

  • Changed: 파일이나 항목이 추가, 편집, 이름 변경 또는 이동되었거나 메타데이터가 변경되었습니다.
  • Deleted: 파일이나 항목이 삭제되었습니다.

어느 리소스에서든 폴더는 이벤트를 생성하지 않습니다.

별도의 Created 이벤트가 없는 이유#

Microsoft Graph의 변경 피드는 각 변경이 아니라 각 항목의 최신 상태를 보고합니다. 새로 만들어진 항목과 편집된 항목은 똑같이 보이는 상태로 전달되므로, 노드는 추측하지 않고 둘 다 Changed로 보고합니다.

새 항목과 편집된 항목을 구분해야 한다면 워크플로에서 createdDateTime과 lastModifiedDateTime을 비교하되, 그 결과는 사실이 아니라 참고 자료로 취급하세요. 두 번의 확인 사이에 만들어진 뒤 편집된 항목은 두 타임스탬프가 서로 다른 상태로 한 번 전달됩니다.

노드가 확인하는 주기#

Poll Times는 노드가 변경 사항을 확인하는 주기를 설정합니다. 기본값은 1분마다입니다.

사전 설정된 선택지는 최소 1분에 한 번까지입니다. Custom cron 표현식은 초 단위까지 더 짧게 설정할 수 있지만, Microsoft는 그 주기가 유용해지기 훨씬 전에 요청을 제한합니다.

변경 사항은 다음 확인 때 감지됩니다. 기본 설정에서 한 번 확인할 때 약 40페이지 분량의 변경 사항을 읽으며, 시간이 부족하면 일찍 멈춥니다. 대기 중인 변경 사항이 더 있으면 노드는 위치를 저장하고 다음 확인 때 이어서 진행합니다. 따라서 대량의 변경 사항은 여러 번의 실행에 걸쳐 전달되며, 처리하는 데 한 주기보다 오래 걸릴 수 있습니다.

출력#

노드는 변경된 각 항목을 Microsoft Graph가 반환한 그대로, 형태를 바꾸지 않고 출력합니다. 필드는 감시하는 리소스와 항목에 일어난 일에 따라 달라집니다.

deleted 속성이 있는 항목은 삭제입니다. 없는 항목은 변경입니다.

목록을 감시할 때 항목에는 해당 항목의 ID 정보가 포함됩니다. 노드는 Microsoft Graph의 기본 페이로드를 읽으며 항목의 fields를 확장하지 않으므로, 항목에 열 값이 포함되어 있다고 가정하지 마세요. 열을 읽으려면 트리거 뒤에 Microsoft SharePoint 노드를 추가하고 id로 항목을 가져옵니다.

삭제 항목은 Microsoft Graph가 대부분의 필드를 제거하므로 변경 항목보다 포함하는 정보가 훨씬 적습니다. 항목의 id와 deleted 속성이 있을 것으로 예상하되, 그 외의 값이 있다고 가정하지 마세요. 워크플로에서 삭제된 항목의 이름이 필요하다면, 확인한 항목을 id 기준으로 직접 기록해 두세요.

문서 라이브러리를 감시할 때는 항목에 parentReference.path가 포함되어 있다고 가정하지 마세요. 파일의 위치를 찾으려면 webUrl을 사용하세요.

일반적인 문제#

기존 파일과 항목은 워크플로를 트리거하지 않음#

워크플로를 게시하면 노드는 그 시점부터 감시를 시작합니다. 이미 존재하는 파일과 항목은 이벤트를 발생시키지 않습니다. 라이브러리의 기존 콘텐츠를 처리하려면 대신 Microsoft SharePoint 노드를 사용하세요.

노드를 편집한 후 변경 사항이 누락됨#

Authentication 방법, Site, Resource, Document Library 또는 List를 변경하면 저장된 위치가 초기화됩니다. 노드는 그 시점부터 감시를 시작하며 이전 변경 사항은 보고하지 않습니다. 같은 유형의 다른 자격 증명을 선택하면 위치가 유지됩니다.

워크플로가 비활성 상태였던 후 변경 사항이 누락됨#

노드가 오랫동안 실행되지 않으면 저장된 위치가 Microsoft 쪽에서 만료될 수 있습니다. 그러면 노드는 그 시점부터 감시를 시작하고 경고를 기록합니다. 위치가 만료된 동안 발생한 변경 사항은 보고되지 않습니다.

같은 항목이 두 번 이상 전달됨#

한 번의 확인 안에서 노드는 같은 항목에 대한 반복된 변경을 하나로 합칩니다. 여러 번의 확인에 걸쳐서는, 대량의 변경 사항을 처리하는 동안 같은 항목이 두 번 이상 전달될 수 있습니다. 같은 항목에 대한 반복이 문제가 되지 않도록 워크플로를 설계하세요.

테스트에서 항목은 보이지만 내가 한 변경은 보이지 않음#

편집기에서 노드를 테스트해도 저장된 위치는 이동하지 않으므로, 테스트가 실제 이벤트를 소비하는 일은 없습니다. 테스트는 라이브러리나 목록에 이미 존재하는 항목을 최대 한 페이지까지 나열합니다. 변경을 기다리지 않으며, 삭제는 절대 보여주지 않습니다. 이벤트 선택을 확인하는 용도가 아니라 항목의 구조를 확인하는 용도로 사용하세요.

라이브러리 또는 목록을 찾을 수 없다고 노드가 보고함#

예를 들어 누군가 삭제하는 등 감시 중인 라이브러리나 목록에 더 이상 접근할 수 없으면, 노드는 해당 라이브러리 또는 목록과 노드가 찾아본 사이트를 명시한 오류를 보고합니다. 노드는 저장된 위치를 유지하므로 대상이 복구되면 다시 이어서 진행합니다. 노드는 ID로 감시하기 때문에 이름을 바꿔도 노드가 깨지지 않습니다. By ID or Title 모드에서 목록 제목을 입력했다면 이름을 바꿀 때 노드가 깨집니다.

권한 오류에 라이브러리 또는 목록이 명시되지 않음#

자격 증명이 접근 권한을 잃으면 Microsoft Graph는 보통 권한 오류로 응답합니다. 노드는 그 오류를 받은 그대로 보고하므로 라이브러리나 목록을 명시하지 않습니다. 자격 증명의 범위와 로그인한 계정의 사이트 접근 권한을 확인하세요.

같은 오류가 확인할 때마다 나타나지는 않음#

확인이 실패하면 노드는 실패를 보고합니다. 같은 실패가 반복되는 동안에는 최대 한 시간에 한 번만 다시 보고하고 그 사이에는 로그에 경고를 기록하므로, 지속되는 문제로 실행 목록이 가득 차지 않습니다. 다른 실패는 즉시 보고되며, 확인이 성공하면 기록이 지워집니다. 편집기에서 하는 테스트는 항상 실패를 보고합니다.

관련 리소스#

n8n은 Microsoft SharePoint용 앱 노드를 제공합니다. 자세한 내용은 Microsoft SharePoint 노드 문서를 참조하세요.

이 노드가 읽는 변경 피드에 대한 자세한 내용은 Microsoft의 driveItem delta 문서와 listItem delta 문서를 참조하세요.