지원 고객 지원 문의 | 시스템 상태 시스템 상태
페이지 내용

    CMS/재생 API: 동영상 검색 v1

    이 항목에서는 CMS API를 사용하여 계정에서 동영상을 검색하는 방법을 배우게 됩니다. 그만큼CMS API Video Cloud 라이브러리에서 비디오를 검색하는 프로그래밍 방식을 제공합니다. 이 항목에서는 검색 구문에 대한 세부 정보를 제공합니다. 참고 : 이것은 원래 검색 구문입니다. 더 간단한 방법을 사용하는 것이 좋습니다. 비디오 검색 구문 v2 .

    서문

    이 항목에서는 다음을 수행하는 방법에 대해 알아 봅니다.

    • 다음을 사용하여 기본 검색을 만들고 제한합니다. q매개 변수
    • 검색 결과 정렬
    • 필수 및 제외 용어를 사용하여 검색
    • 정확한 용어 및 여러 단어를 일치 시키려면 인용 검색을 사용하십시오.
    • 사용자 정의 필드에서 검색
    • 특정 날짜 및 범위로 날짜 필드 검색
    • 검색 기준 결합

    API 사용

    검색 기능은 다음 중 하나와 함께 사용할 수 있습니다. CMS API또는 Playback API.

    CMS API

    CMS API로 검색을 사용하는 경우 다음이 적용됩니다.

    • 모든 요청 (검색 포함)에는 액세스 토큰이 포함 된 인증 헤더가 필요합니다. 클라이언트 자격 증명을 획득하고 이를 사용하여 액세스 토큰을 검색하는 방법에 대한 자세한 내용은브라이트코브 OAuth 개요를참조하십시오.
    • 검색에서 반환되는 최대 동영상 수에는 제한이 없지만 속도 제한이 적용됩니다.
    • 검색 결과에는 재생 가능 여부 및 / 또는 지역 제한 여부에 관계없이 계정의 모든 동영상이 포함됩니다.

    API 요청 / 응답에 대한 자세한 내용은비디오 받기섹션 CMS API 참조 .

    재생 API

    Playback API로 검색을 사용하는 경우 다음이 적용됩니다.

    • Playback API를 사용한 검색 요청에는 다음과 같은 정책 키가 필요합니다. 검색 가능 .
    • 이있다한도검색에서 반환 된 최대 동영상 수
    • 검색 결과는 재생할 수있는 비디오 ( state:inactive무시됩니다).
    • 검색은 결과에서 지역 제한 비디오를 생략하는 것과 같은 재생 정책 제한을 적용합니다.
    • 결과 캐싱은 더 높은 요청 비율과 더 빠른 응답을 제공하며 비율 제한이 없습니다.

    API 요청 / 응답에 대한 자세한 내용은비디오 받기섹션재생 API 참조 .

    미디어 라이브러리에서 용어 검색을 수행하려면q매개 변수.

          q={search terms}

    지정하는 검색어는 공백으로 구분 된 URL로 인코딩 된 검색어 목록이어야합니다.

    검색 지원형태소 분석 . 형태소 분석은 단어를 어근과 같은 어근에서 유래 한 다른 단어로 매핑하는 것입니다. 예를 들어 "run"에 대한 검색은 지정된 필드에 "running"또는 "ran"이있는 동영상과 일치해야합니다. 그것은 것아니 "rune"은 루트로 "run"이 없기 때문에 "rune"과 일치합니다.

    다음과 같이 검색어에 대한 한정자를 제공하지 않는 경우q=bird , 요청은 다음 필드에서 해당 값을 검색합니다.

    • id [1-1]
    • name
    • description
    • long_description
    • text (실제 메타 데이터 필드가 아니라 검색에 사용할 수있는 의사 필드입니다. name , description , 및long_description -예q=text:bird )
    • tags
    • reference_id
    • custom_fields ( 모든 사용자 정의 필드 검색)
    • custom_field_name (명명 된 특정 사용자 정의 필드 검색) [1-2]

    참고 사항

    [1-1]참고 : 일관성을 위해 ID로 검색하는 것이 포함되지만q=id:12345요청과 정확히 동일한 결과를 반환합니다. https://cms.api.brightcove.com/v1/accounts/{account_id}/videos/12345
    [1-2]목록 유형 사용자 정의 필드가 있고 여러 값 중 하나가있는 비디오를 반환하려는 경우 다음과 같이 할 수 있습니다.

    라는 필드가 있다고 가정 해 보겠습니다. color다음 값을 취할 수 있습니다. red , green , yellow , 또는blue . 해당 필드가 값으로 설정된 비디오를 찾고 싶습니다. green또는blue :

          q=color:green%20color:blue

    예: 이 요청은 다음 값을 가진 동영상을 반환합니다. bird위에 나열된 필드 중 하나 이상.

          https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=bird 

    특정 속성으로 검색 제한

    다음과 같은 검색어에 대한 한정자를 제공하는 경우q=name:bird , 요청이 동영상을 검색합니다. name값에 대한 필드bird .

    예: 이 요청은 다음 값을 가진 동영상을 반환합니다. wildlifename들.

          https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=name:wildlife

    지원되는 검색 필드:

    지원되는 검색 필드
    필드 법적 가치
    name 스트링 또는 인용된 스트링
    텍스트 문자열 또는 따옴표로 묶인 문자열 ( name , description , 및long_description )
    tags 문자열 또는 따옴표로 묶인 문자열 (여러 태그는 쉼표로 구분해야 함)
    custom_fields 문자열 또는 인용 문자열 (모든 사용자 정의 필드 검색-특정 사용자 정의 필드를 사용할 수도 있음) 내부의이름) [2-1]
    reference_id 문자열 또는 따옴표로 묶인 문자열
    state ACTIVE , INACTIVE , PENDING , DELETED [2-3]
    updated_at 날짜 범위
    created_at 날짜 범위
    schedule.starts_at 날짜 범위
    schedule.ends_at 날짜 범위
    published_at 날짜 범위
    complete [2-2] true또는false

    참고

    • [2-1]그것은아니값이 없거나 값이없는 사용자 정의 필드가있는 비디오를 검색 할 수 있습니다. null , 필드에 값이 제공되지 않으면 동영상 메타 데이터에 전혀 포함되지 않기 때문입니다.
    • [2-2]새 비디오를 만들 때complete속성이 자동으로 설정됩니다. false . 비디오에 대한 하나의 변환이 존재하는 즉시complete속성이 자동으로 설정됩니다. true .
    • [2-3]삭제 된 동영상 검색에는 다음 제한 사항이 적용됩니다.
      • 삭제 된 동영상 검색은 CMS API를 사용하여 사용할 수 있습니다. Playback API는아니삭제 된 동영상 반환
      • 지난 10 일 (현재 시간에서 10 일을 뺀) 동안 삭제 된 동영상이 반환됩니다.

    검색 결과 정렬

    그만큼sort매개 변수를 사용하면 동영상 가져 오기 요청 결과를 정렬 할 수 있습니다. 다음을 기준으로 정렬 할 수 있습니다.

    • reference_id
    • name
    • created_at
    • published_at
    • updated_at
    • schedule.starts_at
    • schedule.ends_at
    • state
    • plays_total
    • plays_trailing_week

    사용을 통해 명시 적으로 결과를 정렬하지 않을 때sort , 결과는 용어 빈도 / 역 문서 빈도로 알려진 알고리즘에 따라 정렬됩니다. TF-IDF . 보다여기자세한 내용은.

    예를 들어 검색어를 검색한다고 가정 해 보겠습니다. coastal,city계정에는 동영상 메타 데이터 어딘가에 해당 용어가 포함 된 120 개의 동영상이 있습니다 ( name , description , tags등) 및 결과의 정렬 기준과도 일치합니다 (예 : 모두 동일한schedule_starts_at날짜 시간). 비디오가 나타나는 결과의 높이는 하나 또는 두 용어가 메타 데이터에 나타나는 빈도에 따라 결정되며 전체적으로 비디오 라이브러리에서 가장 자주 나타나는 용어에 더 큰 가중치가 부여됩니다.

    필수/제외된 용어

    검색 용어를 필수 (반환된 비디오가 일치해야 함) 또는 제외됨(반환된 비디오가 일치해서는 안 됨)으로 표시할 수 있습니다. 이것은 URI 인코딩으로 제어됩니다. + (%2B)또는-용어 바로 앞에 서명하십시오.

    인코딩해야합니다. +같이%2B필수 용어를 표시하기 위해 사용할 때.

    필수 / 제외 용어
    URL 인코딩 의미
    +foo %2Bfoo 동영상에는fooname , description , long_description , tags , reference_id또는custom_fields
    +custom_fields:foo %2Bcustom_fields:foo 동영상에는 값이 포함되어야합니다. foo일부 사용자 정의 필드
    +foo -bar %2Bfoo%20-bar 동영상에는foo그러나 용어를 포함해서는 안됩니다. barname , description , long_description , tags , reference_id또는custom_fields
    +name:foo -name:bar %2Bname:foo%20-name:bar 동영상에는foo그러나 용어를 포함해서는 안됩니다. barname

    예: 이 요청은 값이있는 동영상을 반환합니다. sea그러나 가치가 없습니다laketags들.

          https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=%2Btags:sea%20-tags:lake

    보다검색 기준 결합아래에서 필수 / 제외 구문을 사용하여 여러 검색어에 대해 AND 논리를 적용하는 방법을 확인하세요.

    다른 매개 변수와 결합

    검색 (사용q매개 변수)는 다른 매개 변수와 결합 될 수 있습니다. sort , limitoffset . 모든 URL 매개 변수는& . 매개 변수 순서는 중요하지 않습니다.

    예: 이 요청은 다음 값을 가져야하는 동영상을 반환합니다. bartag필드 및name값을 포함foo

          .../videos?q=name:foo%20%2Btags:bar&sort=updated_at

    예: 이 요청은 위와 동일한 동영상을 반환하지만 해당 결과를 필드별로 추가로 정렬합니다. updated_at결과를 단 10 개의 동영상으로 제한합니다.

          .../videos?sort=updated_at&q=name:foo%20%2Btags:bar&limit=10

    인용 된 검색어

    기본적으로 검색은 검색 용어와 유사한 단어만 찾습니다. 여러 단어를 일치시키려면 용어를 따옴표로 묶으십시오.

    대부분의 브라우저 및 기타 에이전트는 리터럴 따옴표 ( "..." ) 올바르게하지만 인용 된 검색어가 올바른 결과를 반환하지 않는 것으로 보이는 경우에는 인용 부호를%22 ( %22...%22 )

                
                  q="foo" or q=%22foo%22
                  q="foo%20bar" or q=%22foo%20bar%22
                
              

    특정 필드를 검색 할 때도 작동합니다.

                
                  q=name:"home"
                  q=name:"home%20run"
                
              

    여러 단어

    예: 이 요청은 다음 값 중 하나를 가진 동영상을 반환합니다. sea또는mammaltags들.

          https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=tags:sea,mammal

    그러나 다음 요청은 태그가있는 동영상 만 반환합니다. sea,mammal .

          https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=tags:"sea,mammal"

    사용자 정의 필드

    비디오에 대해 정의한 사용자 정의 필드에서 검색 할 수 있습니다.

          q=my_field:foo
          q=my_field:"foo"

    참고 : 모든 사용자 정의 필드 값은 문자열로 처리됩니다. 예를 들어 값을 사용할 수있는 목록 유형 사용자 정의 필드가있는 경우true또는false , 검색은 부울 값이 아닌 해당 문자열을 찾습니다 (많은 프로그래밍 언어에서10서로 바꿔 사용할 수 있습니다. truefalse부울 값으로 검색하지만q=my_boolean_field:1다음이있는 동영상은 반환하지 않습니다. my_boolean_field로 설정true ).

    예: 이 요청은 다음 값을 가진 동영상을 반환합니다. 동물subject사용자 정의 필드.

          https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=subject:animal

    기간

    날짜 필드에서 검색하는 경우 시작 날짜와 종료 날짜를 구분하기 위해 두 개의 마침표를 사용하여 특정 날짜 또는 날짜 범위를 지정할 수 있습니다 ( q=updated_at:2018-01-01..2018-02-01 ).

    이렇게하면updated_at 2012 년 8 월 1 일부터 2012 년 10 월 8 일 사이의 값입니다. 여기에서는 각 날짜를 UTC 형식으로 지정합니다.

          q=updated_at:2012-08-01T00:00:00Z..2012-10-08T23:59:59Z

    시간 구성 요소를 삭제하여이 검색을 단순화 할 수 있습니다. 다음은 위의 검색과 동일합니다.

          q=updated_at:2012-08-01..2012-10-08

    지원되는 날짜 형식

    지원되는 날짜 형식에는 UTC 및 상대가 포함됩니다.

    날짜 형식 예
    형식 (URI 인코딩 형식) 의미
    2015-08-01T06 : 15 : 00Z 이것은 UTC 시간을 나타냅니다.
    2012-08-01 이것은 UTC로 하루 자정을 나타냅니다. 이 예는 2012-08-01T00 : 00 : 00Z와 동일합니다.
    -1d 현재 시간에서 1 일을 뺀 값입니다. (보다이하 )

    상대 날짜

    상대적인 날짜의 경우 방향 ( +또는- ) 뒤에 숫자, 기간이 표시됩니다. 상대 날짜는 항상 현재 시간에서 측정됩니다. 법적 기간은 분, 시간, 일입니다.

    예:

    상대 날짜 샘플
    날짜에 대한 q 매개 변수 의미
    q = updated_at : -1day..NOW 1 일 전부터 오늘까지 업데이트 된 동영상
    q = created_at : -2 일 2 일 전 동영상 추가됨
    q = updated_at : -4 시간 ..NOW 4 시간 전에서 현재 시간으로 업데이트 된 동영상
    q = created_at : -60 분 .. 60 분 전부터 현재 시간까지 추가 된 동영상
    q = created_at : 2016-01-01 ..- 1d 2015 년 1 월 1 일부터 하루 전에 만든 동영상
    q = updated_at : -14d..NOW 지난 2 주 동안의 동영상

    개설 종료 범위

    주어진 시간까지 모든 날짜를 일치시키거나 주어진 시간 이후의 모든 날짜를 일치시키려면 범위의 한쪽 끝을 남겨 둡니다.

    예: 지난 2 일 동안 수정 된 모든 동영상 검색

          q=updated_at:-2days..
          
          

    예: 2013 년 8 월 11 일 이후에 수정 된 모든 동영상 검색 :

          q=updated_at:2013-08-11T00:00:00Z..
          
          

    NOW일정 날짜 연산자

    에 대한schedule.starts_atschedule.ends_at , 당신이 사용할 수있는NOW날짜 값으로. 현재 날짜-시간을 기반으로 동적 쿼리를 설정할 수있는 편리한 연산자입니다. 몇 가지 예 :

    일정 데이터 예
    매개 변수에서 /까지 URI 인코딩 의미
    ?q=스케줄.시작:.. 지금 ?q=스케줄.시작:.. 지금 starts_at는 시작부터이 순간까지입니다.
    ?Q=스케줄.시작_AT:지금 ?Q=스케줄.시작_AT:지금 starts_at는이 순간부터
    ?Q=스케줄.끝_AT:지금.. ?Q=스케줄.끝_AT:지금.. ends_at는이 순간부터 시간의 끝까지입니다.
    ? q = + schedule.starts_at : .. NOW + schedule.ends_at : NOW .. ? q = % 2Bschedule.starts_at : .. NOW % 20 % 2Bschedule.ends_at : NOW .. 이 순간 이전에 starts_at 및이 순간 이후에 ends_at (동영상이 현재 일정에 있음)

    검색 기준 결합

    복잡한 검색을위한 기준을 결합 할 수 있습니다.

    예: 이 요청은name가치잡담 , 2010 년 8 월 1 일부터 2010 년 10 월 8 일 사이에 업데이트되었습니다. 그런 다음 응답 데이터를updated_at내림차순으로 날짜.

          q=%2Bname:gossip%20%2Bupdated_at:2010-08-01..2010-10-08&sort=-updated_at

    용어 결합

    사용필수 / 제외 구문있는 동영상을 반환하려면모두지정된 용어의.

    예를 들어 다음을 검색하는 경우 :

          q=name:foo +tags:bar (URI-encoded: q=name:foo%20%2Btags:bar)

    응답에는 'bar'태그가있는 동영상이 포함되며foo이름에. 다음이있는 동영상 만 반환하려면foo이름과 태그 'bar'에서 다음을 검색해야합니다.

          (unencoded) q=+name:foo +tags:bar (URI-encoded) q=%2Bname:foo%20%2Btags:bar

    마찬가지로 다음이있는 동영상 만 반환하려는 경우foo이름으로하지만아니 'bar'태그가 있으면 다음을 검색합니다.

          (unencoded) q=+name:foo -tags:bar (encoded) q=%2Bname:foo%20-tags:bar

    견본: 용어 결합
    인코딩되지 않은 검색 문자열 URI로 인코딩 된 검색 문자열 의미
    q=foo bar q=foo%20bar 반환 된 항목에는 "foo"또는 "bar"가 있습니다.
    q=foo +bar q=foo%20%2Bbar 반환 된 항목에는 "bar"가 있어야하며 "foo"가있을 수 있습니다.
    q=+foo bar =%2Bfoo%20bar 반환 된 항목에는 "foo"가 있어야하며 "bar"가있을 수 있습니다.
    q=+foo +bar q=%2Bfoo%20%2Bbar 반환 된 항목에는 "foo"및 "bar"가 있어야합니다.
    q=-foo +bar q=-foo%20%2Bbar 반환 된 항목에는 "bar"가 있어야하고 "foo"가 없어야합니다.
    여러 태그 검색
    q=tags:bee,bop q=tags:bee,bop 태그가 “bee”또는 “bop”인 비디오를 반환합니다.
    q=tags:bee tags:bop q=tags:bee%20tags:bop 태그가 “bee”또는 “bop”인 비디오를 반환합니다.
    q=+tags:bee tags:bop q=%2Btags:bee%20tags:bop 반환 된 모든 동영상에는 "bee"태그가 있어야합니다. 태그 "bop"도있을 수 있습니다.
    q=+tags:bee +tags:bop q=%2Btags:bee%20%2Btags:bop 반환 된 모든 동영상에는 "bee"태그와 "bop"태그가 있습니다.

    특정 동영상 검색

    검색을 특정 비디오 세트로 제한하려면 다음에서 검색 할 수 있습니다. id :

    예: 이 요청은 ID가있는 동영상을 반환합니다. 123456789 , 98765432148376387

          q=id:123456789%20id:987654321%20id:48376387

    주별 검색

    다음 매개 변수를 사용하여 비디오 상태별로 검색을 수행하거나 필터링 할 수 있습니다.

          q=state:ACTIVE( | INACTIVE | PENDING | DELETED)[3]

    참고

    • [삼]삭제 된 동영상 검색은 지난 10 일 (현재 시간에서 10 일을 뺀) 동안 삭제 된 동영상에 대해서만 사용할 수 있습니다. CMS API (재생 API가 아님).

    형태소 분석

    형태소 분석이 지원되지만아니부분 단어 검색. 예를 들면q=name:ban이름이 "인 동영상을 반환해야합니다. Parking Ban Announced "또는" Parking to be Banned "또는" City Banning Parking " 하지만 " Bank Holiday "또는" Bandit Captured ".

    공백 / 특수 문자

    그만큼CMS API일반적으로 몇 가지 예외를 제외하고 검색 문자열의 특수 문자를 처리합니다.

    • 공백은 허용되지 않으며 다음과 같이 인코딩해야합니다. %20 . (인코딩되지 않음+기호는 공백을 대체 할 수도 있지만 이로 인해 쿼리에서 다음과 같은 혼란이 발생할 수 있습니다. +용어가 필요함을 나타낼 수도 있습니다. 보다필수 / 제외 구문 )

      예를 들어, 이름에서 "내가 좋아하는 비디오"를 검색하려면 :

      q=name:"my%20favorite%20video"

    • 리터럴을 검색하려면+서명하거나 사용하려면+반환 된 동영상이절대로 필요한 것용어를 포함하려면+같이%2B :

      포함해야하는 동영상 검색"two+two"이름 필드에

      q=name:two%2Btwo

      포함해야하는 동영상 검색"heron"이름 필드에

      q=%2Bname:heron

    • 일부 에이전트는 리터럴 따옴표를 올바르게 처리하지 못할 수 있으므로 인코딩하는 것이 더 안전합니다. "foo"같이%22foo%22

    일회성 요청의 경우 Brightcove Learning의스트링 인코더검색 문자열을 인코딩합니다. 앱의 경우 사용중인 언어로 URI 인코딩 기능을 찾아야합니다.

    검색어 클립

    클립은 다른 비디오의 섹션에서 만든 비디오입니다. 클립은 다음에 의해 생성 될 수 있습니다. Brightcove 소셜및 기타 수단은 향후에 사용할 수 있습니다. 계정에서 생성 된 클립을 찾는 데 사용할 수있는 몇 가지 특수 검색어가 있습니다.

    • q=%2Bis_clip:true - 클립만 반환합니다.
    • q=%2Bis_clip:false -비 클립 만 반환
    • q=%2Bclip_source_video_id:video_id -지정된 비디오에서 생성 된 클립을 반환합니다.

    무시된 단어

    특정 단어는 너무 일반적이어서 실제로 검색하는 것과 관련이없는 많은 결과를 반환 할 가능성이 있기 때문에 검색 문자열에서 무시됩니다. 다음은 검색에서 무시되는 단어 목록입니다.

    “a”, “a”, “와”, “있다”, “로”, “에서”, “수”, “하지만”, “에”, “경우”, “에”, “이다”, “아니오”, “하지”, “의”, “on”, “또는”, “그런”, “그”, “그”, “그”, “그들의”, “그때”, “거기”, “이들”, “그들”, “이”, “에”, “이었다”, “의지”, “와”

    알려진 문제

    • 중복 결과 :경우에 따라 검색 결과의 일부 항목이 두 번 이상 나타날 수 있습니다.

      해결 방법 :중복 검색 결과를 방지하려면 항상sort검색 요청의 매개 변수.