외부 컨텐츠 수집 API

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기29분
  • External Content Ingestion API는 인스턴스 외부의 소스에서 애플리케이션의 인덱스로 ServiceNow® AI 검색 콘텐츠를 수집할 수 있는 ServiceNow® 엔드포인트를 제공합니다.

    외부 컨텐츠 수집 API – DELETE /ais/external_content/deleteByQuery/{schema_table_name}

    인덱스에서 AI 검색 지정된 쿼리와 일치하는 모든 외부 문서를 삭제합니다.

    URL 형식

    버전이 지정된 URL: /api/now/{api_version}/ ais/external_content/deleteByQuery/{schema_table_name}?query={query}

    지원되는 요청 매개변수

    표 1. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    schema_table_name

    인덱싱된 문서에서 삭제할 스키마를 정의하는 외부 컨텐츠 스키마 테이블의 이름입니다. 예: u_ext_content.

    데이터 유형: 문자열

    표 2. 쿼리 매개변수
    이름 설명
    쿼리

    에 의해 지정된 스키마 테이블에 대한 유효한 URL 이스케이프 쿼리입니다 schema_table_name. 예를 들어, title= Introduction은 제목이 Introduction인 문서를 쿼리합니다.

    데이터 유형: 문자열

    표 3. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    없음

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 4. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 5. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 6. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류

    요청을 처리하는 동안 발생한 오류를 설명하는 객체입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보

    요청을 처리하는 동안 발생한 오류에 대한 상세 정보입니다.

    데이터 유형: 문자열

    error.message

    요청을 처리하는 동안 발생한 오류에 대한 메시지입니다.

    데이터 유형: 문자열

    결과

    성공적으로 처리된 요청의 결과입니다.

    데이터 유형: 문자열

    상태

    실패한 요청의 상태입니다.

    유효한 값은 다음과 같습니다.
    • failure

    데이터 유형: 문자열

    cURL 요청

    u_ext_content 스키마 테이블에서 제목 필드 값이 있는 문서를 삭제하고 2020년 10월 31일에 대한 보고서를 작성합니다.

    curl "https://instance.service-now.com/api/now/v2/ais/external_content/deleteByQuery/u_ext_content?query=title%3DIntroduction%20OR%20title%3DReport%20for%2031%20October%202020" \
    --request DELETE \
    --user "username":"password" \
    --header "Accept: application/json"
    {
      "result": "Delete By Query Successfully Executed"
    }

    외부 컨텐츠 수집 API – DELETE /ais/external_content/deleteDocument/{schema_table_name}/{document_id}

    인덱스에서 AI 검색 지정된 고유 식별자를 가진 외부 문서를 삭제합니다.

    URL 형식

    버전이 지정된 URL: /api/now/{api_version}/ ais/external_content/deleteDocument/{schema_table_name}/{document_id}

    지원되는 요청 매개변수

    표 7. 경로 매개변수
    매개변수 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    document_id

    삭제할 외부 문서의 고유 식별자입니다. 예: ADMIN-2027858531-16.

    데이터 유형: 문자열

    schema_table_name

    인덱싱된 문서에서 삭제할 스키마를 정의하는 외부 컨텐츠 스키마 테이블의 이름입니다. 예: u_ext_content.

    데이터 유형: 문자열

    표 8. 쿼리 매개변수
    이름 설명
    없음
    표 9. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    없음

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 10. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 11. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 12. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    요소 설명
    오류

    요청을 처리하는 동안 발생한 오류를 설명하는 객체입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보

    요청을 처리하는 동안 발생한 오류에 대한 상세 정보입니다.

    데이터 유형: 문자열

    error.message

    요청을 처리하는 동안 발생한 오류에 대한 메시지입니다.

    데이터 유형: 문자열

    결과

    성공적으로 처리된 요청의 결과입니다.

    데이터 유형: 문자열

    상태

    실패한 요청의 상태입니다.

    유효한 값은 다음과 같습니다.
    • failure

    데이터 유형: 문자열

    cURL 요청

    u_ext_content 스키마 테이블에서 식별자 ADMIN-2587918521-27 을 사용하여 문서를 삭제합니다.

    curl 'https://instance.service-now.com/api/now/v2/ais/external_content/deleteDocument/u_ext_content/ADMIN-2587918521-27' \
    --request DELETE \
    --user 'username':'password' \
    --header 'Accept: application/json'
    {
      "result":"Document removed"
    }

    외부 콘텐츠 수집 API – POST /ais/external_content/ingestDocument/{schema_table_name}

    인덱싱을 위해 외부 문서 AI 검색 목록을 수집 배치 관리자로 보냅니다. 인덱싱이 완료되면 수집된 문서의 콘텐츠를 검색할 수 있게 됩니다.

    이 엔드포인트를 사용하여 외부 문서에 텍스트 콘텐츠 및 메타데이터를 제공할 수 있습니다.

    검색 가능한 이진 콘텐츠 및 메타데이터를 외부 문서와 연결해야 하는 경우 다음 단계를 수행합니다.
    1. POST /ais/external_content/storeContent 엔드포인트를 사용하여 이진 콘텐츠를 AI 검색 저장합니다. 응답 본문 매개변수의 result 값을 기록합니다.
    2. 이 엔드포인트를 사용하여 외부 문서를 AI 검색 보냅니다. 기록된 result 응답 본문 매개변수 값과 일치하도록 문서의 content_pointer 요청 본문 매개변수를 설정합니다.
    수집하는 AI 검색 동안 이진 컨텐츠를 구문 분석하고 검색 가능한 컨텐츠를 외부 문서를 나타내는 인덱싱된 기록에 추가합니다. 구문 분석하면 저장된 콘텐츠 개체가 제거됩니다.

    URL 형식

    버전이 지정된 URL: /api/now/{api_version}/ ais/external_content/ingestDocument/{schema_table_name}

    지원되는 요청 매개변수

    표 13. 경로 매개변수
    매개변수 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    schema_table_name

    요청의 외부 문서에 대한 스키마를 정의하는 외부 컨텐츠 스키마 테이블의 이름입니다. 예: u_ext_content.

    데이터 유형: 문자열

    표 14. 쿼리 매개변수
    이름 설명
    없음
    표 15. 요청 본문 매개변수(XML 또는 JSON)
    요소 설명
    [배열]

    필수 각 객체가 인덱싱을 위해 수집할 외부 문서를 나타내는 명명되지 않은 객체 배열입니다.

    데이터 유형: 배열

    [
      {
        "content_pointer": "String",
        "document_id": "String",
        "principals": {Object},
        "properties": {Object}
      }
    ]
    [배열].content_pointer
    POST /ais/external_content/storeContent 엔드포인트를 사용하여 저장된 이진 콘텐츠 인스턴스의 식별자입니다. 수집하는 AI 검색 동안 이진 컨텐츠를 구문 분석하고 검색 가능한 컨텐츠를 외부 문서를 나타내는 인덱싱된 기록에 추가합니다. 구문 분석하면 저장된 콘텐츠 개체가 제거됩니다.
    주:
    이 식별자는 storeContent 엔드포인트에서 result 반환된 응답 본문 요소와 일치해야 합니다.

    데이터 유형: 문자열

    [배열].document_id

    필수 path 매개변수로 지정된 외부 컨텐츠 스키마 테이블의 외부 문서에 대한 고유 식별자입니다 schema_table_name .

    주:
    문서를 수집하면 동일한 외부 컨텐츠 스키마 테이블에 document_id있는 기존 문서를 덮어씁니다. 동일한 수집 요청에 있는 두 개 이상의 문서가 동일한 document_id경우 요청이 실패합니다.

    데이터 유형: 문자열

    [배열].principals
    외부에서 정의된 보안 주체(사용자 및 그룹)에 대한 외부 문서의 액세스 권한을 설명하는 키-값 쌍을 포함하는 객체입니다.
    주:

    문서에 대해 이 매개 변수를 생략하면 요청이 성공하지만 AI 검색 The principal of the document is missing이라는 수집 피드백 메시지와 함께 문서를 거부합니다.

    이 매개 변수 개체에 문서에 대한 액세스 권한을 부여하는 키-값 쌍이 포함되어 있지 않으면 요청이 성공하지만 AI 검색 수집 피드백 메시지와 함께 문서를 거부합니다. 문서의 보안 주체가 잘못되었습니다.

    데이터 유형: 객체

    "principals": {
      "everyone": Boolean,
      "groups.deny": [Array],
      "groups.read": [Array],
      "none": Boolean,
      "users.deny": [Array],
      "users.read": [Array]
    }

    지원되는 버전: API v2부터 사용할 수 있습니다.

    [배열].principals.everyone
    모든 사용자에게 외부 문서에 대한 액세스가 허용되는지 여부를 나타내는 플래그입니다. 이 매개 변수를 로 설정하면 true모든 Now Platform 사용자가 문서에서 만든 인덱싱된 레코드를 볼 수 있습니다.
    주:
    문서에 대해 이 매개 변수와 to true 를 모두 설정하면 요청이 성공하지만 AI 검색 수집 피드백 메시지와 [array].principals.none 함께 문서가 거부됩니다. 문서의 보안 주체가 잘못되었습니다. 요청에서 이 두 매개 변수 중 하나만 설정할 true 수 있습니다.
    유효한 값은 다음과 같습니다.
    • true: 모든 사용자가 문서에 액세스할 수 있도록 허용합니다. AI 검색 문서에 대한 매개 변수 설정과 모두 [array].principals.groups.*[array].principals.users.* 무시합니다.
    • false: 모든 사용자가 외부 문서에 액세스할 수 있도록 허용하지 않습니다. 사용자가 false로 설정되어 있고 사용자 매핑과 and [array].principals.users.* 매개 변수의 상호 작용에서 허용되는 경우에만 [array].principals.none 문서에 액세스할 수 있습니다[array].principals.groups.*.

    데이터 유형: 부울

    기본값: true

    지원되는 버전: API v2부터 사용할 수 있습니다.

    [배열].principals.groups.deny

    각 문자열이 외부 문서에 대한 액세스가 거부된 외부 정의 그룹의 이름인 문자열의 배열입니다. Now Platform 이러한 외부 그룹에 매핑된 사용자는 문서에서 만든 인덱싱된 검색 결과 기록을 볼 수 없습니다.

    또는 [array].principals.everyone[array].principals.none 로 설정된 true경우 이 매개 변수는 아무런 영향을 주지 않습니다.

    이 매개변수는 보다 우선합니다 [array].principals.groups.read. 동일한 사용자가 문서에 대한 읽기 및 거부 액세스 권한을 모두 가진 외부 그룹에 매핑된 경우 는 AI 검색 인덱싱된 레코드에 대한 해당 사용자의 액세스를 거부합니다.

    기본적으로 이 [array].principals.users.read 매개변수보다 우선합니다. 인덱싱된 원본에 대해 이 우선 순위를 바꾸려면 Change the precedence of user read and group deny permissions for an external content indexed source.를 참조하십시오.

    데이터 유형: 배열

    값은 지정된 외부 정의 그룹의 이름에 따라 어떤 형식이든 될 수 있습니다. 예제는 다음과 같습니다.

    "groups.deny": [
      "hr-admin",
      "legal"
    ]

    지원되는 버전: API v2부터 사용할 수 있습니다.

    [배열].principals.groups.read

    각 문자열이 외부 문서에 액세스할 수 있는 외부 정의 그룹의 이름인 문자열의 배열입니다. Now Platform 이러한 외부 그룹에 매핑된 사용자는 문서에서 생성된 인덱싱된 검색 결과 기록을 볼 수 있습니다.

    또는 [array].principals.everyone[array].principals.none 로 설정된 true경우 이 매개 변수는 아무런 영향을 주지 않습니다.

    [array].principals.groups.deny 이 매개변수보다 우선합니다. 동일한 사용자가 문서에 대한 읽기 및 거부 액세스 권한을 모두 가진 외부 그룹에 매핑된 경우 는 AI 검색 인덱싱된 레코드에 대한 해당 사용자의 액세스를 거부합니다.

    데이터 유형: 배열

    값은 지정된 외부 정의 그룹의 이름에 따라 어떤 형식이든 될 수 있습니다. 예제는 다음과 같습니다.

    "groups.read": [
      "devops",
      "it",
      "report-admins"
    ]

    지원되는 버전: API v2부터 사용할 수 있습니다.

    [배열].principals.none
    모든 사용자에 대해 외부 문서에 대한 액세스가 거부되는지 여부를 나타내는 부울 옵션입니다. 이 매개 변수를 로 설정하면 true상승된 권한 역할을 가진 ais_high_security_admin 사용자만 Now Platform 문서에서 만든 인덱싱된 레코드를 볼 수 있습니다.
    주:
    문서에 AI 검색 대해 이 매개 변수와 to true 를 모두 설정하면 수집 중에 The principal of the document is invalid라는 오류 메시지와 [array].principals.everyone 함께 문서를 거부합니다. 요청에서 이 두 매개 변수 중 하나만 설정할 true 수 있습니다.
    유효한 값은 다음과 같습니다.
    • true: 상승된 권한 역할을 가진 ais_high_security_admin 사용자를 제외한 모든 사용자에 대해 문서에 대한 액세스를 거부합니다. 문서에 대한 매개변수 [array].principals.groups.*[array].principals.users.* 설정과 모두를 무시합니다. AI 검색
    • false: 모든 사용자의 문서에 대한 액세스를 거부하지 않습니다. 가 로 설정되어 true있거나, 사용자 매핑과 [array].principals.groups.read and [array].principals.users.read 매개 변수의 상호 작용에 의해 허용되는 경우 [array].principals.everyone 사용자가 문서에 액세스할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    지원되는 버전: API v2부터 사용할 수 있습니다.

    [배열].principals.users.deny

    각 문자열이 외부 문서에 대한 액세스가 거부된 외부에서 정의된 사용자의 이름인 문자열의 배열입니다. Now Platform 이러한 외부 사용자에 매핑된 사용자는 문서에서 생성된 인덱싱된 검색 결과 기록을 볼 수 없습니다.

    또는 [array].principals.everyone[array].principals.none 로 설정된 true경우 이 매개 변수는 아무런 영향을 주지 않습니다.

    이 매개변수는 보다 우선합니다 [array].principals.users.read. 동일한 사용자가 문서에 대한 읽기 및 거부 액세스 권한을 모두 가진 외부 사용자에게 매핑된 경우 인덱싱 AI 검색 된 레코드에 대한 해당 사용자의 액세스를 거부합니다.

    데이터 유형: 배열

    값은 지정된 외부 정의 사용자의 이름에 따라 모든 형식이 될 수 있습니다. 예제는 다음과 같습니다.

    "users.deny": [
      "ad\bow-ruggeri",
      "abel-tuter@sharepoint"
    ]

    지원되는 버전: API v2부터 사용할 수 있습니다.

    [배열].principals.users.read

    각 문자열이 외부 문서에 액세스할 수 있는 외부에서 정의된 사용자의 이름인 문자열의 배열입니다. Now Platform 이러한 외부 사용자에 매핑된 사용자는 문서에서 생성된 인덱싱된 검색 결과 기록을 볼 수 있습니다.

    또는 [array].principals.everyone[array].principals.none 로 설정된 true경우 이 매개 변수는 아무런 영향을 주지 않습니다.

    [array].principals.users.deny 이 매개변수보다 우선합니다. 동일한 사용자가 문서에 대한 읽기 및 거부 액세스 권한을 모두 가진 외부 사용자에게 매핑된 경우 인덱싱 AI 검색 된 레코드에 대한 해당 사용자의 액세스를 거부합니다.

    기본적으로 이 매개변수는 보다 우선합니다 [array].principals.groups.deny. 인덱싱된 원본에 대해 이 우선 순위를 바꾸려면 Change the precedence of user read and group deny permissions for an external content indexed source.를 참조하십시오.

    데이터 유형: 배열

    값은 지정된 외부 정의 사용자의 이름에 따라 모든 형식이 될 수 있습니다. 예제는 다음과 같습니다.

    "users.read": [
      "ad\abel-tuter",
      "beth-anglin@sharepoint"
    ]

    지원되는 버전: API v2부터 사용할 수 있습니다.

    [array].properties

    각 쌍이 문서에 대해 수집할 필드 이름과 값을 나타내는 이름-값 쌍을 포함하는 객체입니다. 모든 필드 이름과 값은 문자열로 지정해야 합니다.

    수집 후 이러한 문서 필드 값은 path 매개변수로 지정된 외부 컨텐츠 스키마 테이블에 대해 정의된 인덱싱된 소스를 통해 액세스할 수 있습니다 schema_table_name . 사용자는 이 인덱싱된 소스에서 파생된 검색 소스에서 이러한 필드 값을 검색할 수 있습니다.

    데이터 유형: 객체

    필드 이름에는 소문자와 밑줄만 포함될 수 있습니다. 값에는 모든 문자가 포함될 수 있습니다. 값 길이는 외부 컨텐츠 스키마 테이블의 필드에 대해 정의된 속성으로 제한됩니다 max_length . 필드 이름-값 쌍의 예는 다음과 같습니다.

    "properties": {
      "creation_date": "2020-11-03 12:27:43",
      "file_size": "10285",
      "title": "Introduction",
      "url": "file:///myhost/reports/Introduction.pdf"
    }

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 16. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    컨텐츠-형식 요청 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 17. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 18. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    202 부분적인 성공. 요청이 처리되었습니다. 일부 문서에는 수집 피드백, 경고 또는 오류 메시지가 있습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류

    요청을 처리하는 동안 발생한 오류를 설명하는 객체입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보

    요청을 처리하는 동안 발생한 오류에 대한 상세 정보입니다.

    데이터 유형: 문자열

    error.message

    요청을 처리하는 동안 발생한 오류에 대한 메시지입니다.

    데이터 유형: 문자열

    결과

    수집 요청의 결과 개체를 나타내는 JSON 형식의 문자열입니다.

    데이터 유형: 문자열

    "result": "{\"duration_in_ms\": Number, \"feedback\": [Array] }"
    result.duration_in_ms

    외부 문서를 수집하는 데 소요된 시간입니다.

    데이터 유형: 숫자

    단위: 밀리초

    결과.피드백

    각 객체가 요청 본문에서 수집된 문서에 대한 피드백을 나타내는 객체의 배열입니다.

    데이터 유형: 배열

    "feedback": [
      {
        "document_id": "String",
        "messages": [Array]
      }
    ]
    result.feedback.document_id

    요청 본문에 지정된 외부 문서의 고유 식별자입니다.

    데이터 유형: 문자열

    결과.피드백.메시지

    각 객체가 외부 문서를 인덱싱하는 동안 기록된 수집 피드백 메시지를 나타내는 명명되지 않은 객체의 배열입니다.

    데이터 유형: 배열

    "messages": [
      {
        "code": "String",
        "component": "String",
        "level": "String",
        "message": "String"
      }
    ]
    결과.피드백.메시지.코드

    수집 피드백 메시지를 기록한 인덱싱 워크플로 구성 요소에서 throw된 예외에 대한 코드입니다.

    데이터 유형: 문자열

    결과.피드백.메시지.구성 요소

    수집 피드백 메시지를 로깅한 인덱싱 워크플로우 구성요소의 식별자입니다.

    데이터 유형: 문자열

    결과.피드백.메시지.수준

    수집 피드백 메시지의 로깅 수준입니다.

    유효한 값은 다음과 같습니다.
    • ERROR
    • INFO
    • MINOR_ERROR
    • WARN

    데이터 유형: 문자열

    결과.피드백.메시지.메시지

    수집 피드백 메시지에 대해 기록된 텍스트입니다.

    데이터 유형: 문자열

    상태

    실패한 요청의 상태입니다.

    유효한 값은 다음과 같습니다.
    • failure

    데이터 유형: 문자열

    보안 주체 권한의 우선순위 순서

    사용 권한의 우선 순위는 외부 문서를 수집하는 데 사용되는 인덱싱된 원본의 [array].principals 특성 값에 user_read_takes_precedence_over_group_deny 따라 달라집니다.
    속성 값 보안 주체 권한의 우선순위 순서
    가장 높은 우선 순위에서 가장 낮은 우선 순위로:
    1. [array].principals.everyone, [array].principals.none
    2. [array].principals.users.deny
    3. [array].principals.users.read
    4. [array].principals.groups.deny
    5. [array].principals.groups.read
    주:
    이는 외부 컨텐츠 인덱싱된 원본에 대한 기본 특성 값입니다.
    아니오
    가장 높은 우선 순위에서 가장 낮은 우선 순위로:
    1. [array].principals.everyone, [array].principals.none
    2. [array].principals.users.deny, [array].principals.groups.deny
    3. [array].principals.users.read, [array].principals.groups.read
    주:
    이 특성 값을 설정하는 방법에 대한 자세한 내용은 Change the precedence of user read and group deny permissions for an external content indexed source을 참조하십시오.

    cURL 요청

    u_ext_content 스키마 테이블로 인덱싱하기 위해 두 개의 외부 문서( POST /ais/external_content/storeContent 엔드포인트를 사용하여 이전에 저장된 이진 콘텐츠 개체에 대한 콘텐츠 포인터 포함)를 제공합니다.

    curl 'https://instance.servicenow.com/api/now/v2/ais/external_content/ingestDocument/u_ext_content' \
      --request POST \
      --user 'username':'password' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/json' \
      --data '[
      {
        "document_id": "ADMIN-2027858531-16",
        "content_pointer": "749b52a1-baa8-4556-a4f3-00404c95e6a8",
        "properties": {
          "title": "Introduction",
          "url": "file:///myhost/reports/Introduction.pdf",
          "file_name": "Introduction.pdf",
          "file_size": "10285",
          "creation_date": "2020-11-01 12:27:43"
        },
        "principals": {
          "everyone": false,
          "groups.read": [
            "report-users",
            "report-admins"
          ],
          "users.deny": [
            "ad\abel-tuter"
          ]
        }
      },
      {
        "document_id": "ADMIN-2587918521-27",
        "content_pointer": "bd605435-268b-464f-a7c3-0c5ea894a5c2",
        "properties": {
          "title": "Report for 31 August 2020",
          "url": "file:///myhost/reports/Report-2020-08-31.pdf",
          "file_size": "27597",
          "creation_date": "2020-09-01 12:48:13"
        },
        "principals": {
          "everyone": false,
          "groups.read": [
            "report-users",
            "report-admins"
          ],
          "users.read": [
            "ad\beth-anglin"
          ]
        }
      }
    ]'
    {
      "result":"{\"duration_in_ms\":3822,\"feedback\":[{\"messages\":[{\"level\":\"INFO\",\"message\":\"CREATED\",\"component\":\"init\"},{\"level\":\"INFO\",\"message\":\"OK\",\"component\":\"index-886de18e750030108b23bcd69cdc2dd3-indexer.index-886de18e750030108b23bcd69cdc2dd3-content-dispatcher\"},{\"level\":\"INFO\",\"message\":\"COMPLETED\",\"component\":\"sink.sink\"}],\"document_id\":\"ADMIN-2027858531-16\"},{\"messages\":[{\"level\":\"INFO\",\"message\":\"CREATED\",\"component\":\"init\"},{\"level\":\"WARN\",\"message\":\"field \\u0027text\\u0027 tokens exceed index.maxTokens\",\"code\":\"INDEX_ENGINE-32\",\"component\":\"ingestGlideDocument.standardAnalyzer\"},{\"level\":\"INFO\",\"message\":\"OK\",\"component\":\"index-886de18e750030108b23bcd69cdc2dd3-indexer.index-886de18e750030108b23bcd69cdc2dd3-content-dispatcher\"},{\"level\":\"INFO\",\"message\":\"COMPLETED\",\"component\":\"sink.sink\"}],\"document_id\":\"ADMIN-2587918521-27\"}]}"
    }

    외부 콘텐츠 수집 API – AIS/external_content/storeContent 게시

    이진 컨텐츠를 에 컨텐츠 객체 AI 검색로 저장합니다.

    다음 단계에 따라 저장된 이진 콘텐츠를 외부 문서와 연결할 수 있습니다.
    1. 이 끝점을 사용하여 이진 콘텐츠를 저장합니다. 응답 본문 매개변수의 result 값을 기록합니다.
    2. POST /ais/external_content/ingestDocument/{schema_table_name} 엔드포인트를 사용하여 외부 문서를 AI 검색 보냅니다. 기록된 result 응답 본문 매개변수 값과 일치하도록 문서의 content_pointer 요청 본문 매개변수를 설정합니다.
    수집하는 AI 검색 동안 이진 컨텐츠를 구문 분석하고 검색 가능한 컨텐츠를 외부 문서를 나타내는 인덱싱된 기록에 추가합니다. 구문 분석하면 저장된 콘텐츠 개체가 제거됩니다.

    URL 형식

    버전이 지정된 URL: / api/now/{api_version}/ais/external_content/storeContent

    지원되는 요청 매개변수

    표 19. 경로 매개변수
    매개변수 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다.

    데이터 유형: 문자열

    표 20. 쿼리 매개변수
    이름 설명
    없음
    표 21. 요청 본문 매개변수
    요소 설명
    [이진 데이터] 필수 에 컨텐츠 객체로 저장할 이진 컨텐츠입니다 AI 검색.

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.

    표 22. 요청 헤더
    헤더 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식

    요청 본문의 데이터 형식입니다.

    유효한 값은 다음과 같습니다.
    • application/msword
    • application/octet-stream
    • application/pdf
    • application/vnd.ms-excel
    • application/vnd.ms-powerpoint
    • application/vnd.ms-powerpoint.presentation.macroenabled.12
    • application/vnd.openxmlformats-officedocument.presentationml.presentation
    • application/vnd.openxmlformats-officedocument.presentationml.template
    • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
    • application/vnd.openxmlformats-officedocument.wordprocessingml.document
    • application/vnd.openxmlformats-officedocument.wordprocessingml.template
    • text/html
    • text/plain
    표 23. 응답 헤더
    헤더 설명
    없음

    상태 코드

    다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.

    표 24. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    요소 설명
    오류

    요청을 처리하는 동안 발생한 오류를 설명하는 객체입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보

    요청을 처리하는 동안 발생한 오류에 대한 상세 정보입니다.

    데이터 유형: 문자열

    error.message

    요청을 처리하는 동안 발생한 오류에 대한 메시지입니다.

    데이터 유형: 문자열

    결과

    성공적인 요청에 의해 저장된 이진 컨텐츠 객체의 식별자입니다.

    데이터 유형: 문자열

    "result" : "91841766-2a5f-4c64-a20a-27ca485eca21"
    주:
    저장된 콘텐츠를 수집된 외부 문서에 첨부하려면 이 식별자를 ingestDocument 엔드포인트에 content_pointer 대한 요청의 요청 본문 요소로 지정합니다.
    상태

    실패한 요청의 상태입니다.

    유효한 값은 다음과 같습니다.
    • failure

    데이터 유형: 문자열

    cURL 요청

    PDF 파일의 이진 컨텐트를 컨텐트 객체로 저장합니다.

    curl 'https://instance.servicenow.com/api/now/v2/ais/external_content/storeContent' \
    --request POST \
    --user 'username':'password' \
    --header 'Content-Type: application/pdf' \
    --data-binary '@Report-2020-08-31.pdf'

    응답 본문에는 새 콘텐츠 개체에 대한 고유 식별자가 포함됩니다.

    {
      "result" : "fb439a4f-62ad-4dab-9654-5088d99a6ff9"
    }