Einleitung
In diesem Thema erfahren Sie, wie Sie Folgendes tun:
- Erstellen und begrenzen Sie eine einfache Suche mithilfe der
q
Parameter - Suchergebnisse sortieren
- Suche mit erforderlichen und ausgeschlossenen Begriffen
- Verwenden Sie eine Suche in Anführungszeichen, um genaue Begriffe und mehrere Wörter zu finden
- In benutzerdefinierten Feldern suchen
- Datumsfelder mit einem bestimmten Datum und mit Bereichen suchen
- Suchkriterien kombinieren
API-Nutzung
Die Suchfunktion kann entweder mit dem verwendet werden CMS API oder die Wiedergabe-API.
CMS-API
Bei Verwendung der Suche mit der CMS-API gilt Folgendes:
- Alle Anfragen (einschließlich der Suche) erfordern einen Autorisierungs-Header, der Ihre Zugriffstoken enthält. Ausführliche Informationen zum Abrufen von Client-Anmeldeinformationen und deren Verwendung zum Abrufen von Zugriffstoken finden Sie im Übersicht über Brightcove OAuth.
- Es gibt keine Begrenzung für die maximale Anzahl von Videos, die von einer Suche zurückgegeben werden, aber es gilt eine Ratenbegrenzung.
- Die Suchergebnisse umfassen alle Videos in Ihrem Konto, unabhängig davon, ob sie abspielbar sind oder nicht und/oder geografisch eingeschränkt sind.
Details zu API-Anfragen/-Antworten finden Sie im Videos abrufen Abschnitt der CMS-API-Referenz.
Wiedergabe-API
Bei Verwendung der Suche mit der Playback-API gilt Folgendes:
- Suchanfragen mit der Wiedergabe-API erfordern einen Richtlinienschlüssel, der suchaktiviert ist.
- Da ist ein Grenze auf der maximalen Anzahl von Videos, die von einer Suche zurückgegeben werden.
- In den Suchergebnissen werden nur abspielbare Videos zurückgegeben (Videos mit
state:inactive
wird ignoriert). - Suchvorgänge erzwingen Beschränkungen der Wiedergaberichtlinien, z. B. das Auslassen von Videos mit geografischen Beschränkungen aus den Ergebnissen.
- Das Zwischenspeichern von Ergebnissen bietet höhere Anforderungsraten und schnellere Antworten, und es gibt keine Ratenbegrenzung.
Details zu API-Anfragen/-Antworten finden Sie im Videos abrufen Abschnitt der Wiedergabe-API-Referenz.
Einfache Suche
Um eine Suche nach Begriffen in Ihrer Medienbibliothek durchzuführen, verwenden Sie die q
Parameter.
q={search terms}
Die von Ihnen angegebenen Suchbegriffe sollten eine URL-codierte Liste von Begriffen sein, die durch ein Leerzeichen getrennt sind.
Suchunterstützung Stemming. Stemming ist die Zuordnung eines Wortes zum Wortstamm und anderen Wörtern, die aus demselben Stamm stammen. Beispielsweise sollte eine Suche nach "run" mit Videos übereinstimmen, die in den angegebenen Feldern "running" oder "ran" enthalten. Es würde nicht stimmt mit "rune" überein, da "rune" nicht "run" als Wurzel hat.
Wenn Sie kein Kriterium für einen Suchbegriff angeben, z. B. q=bird
, sucht die Anfrage nach diesem Wert in den folgenden Feldern:
id [1-1]
name
description
long_description
text
(kein echtes Metadatenfeld, sondern ein Pseudofeld, mit dem Sie nachname
description
, und suchen könnenlong_description
- z. B.q=text:bird
)tags
reference_id
custom_fields
(durchsucht alle benutzerdefinierten Felder)custom_field_name
(sucht ein bestimmtes benanntes benutzerdefiniertes Feld)[1-2]
Anmerkungen
q=id:12345
gibt genau die gleichen Ergebnisse wie die Anfrage zurück https://cms.api.brightcove.com/v1/accounts/{account_id}/videos/12345
Nehmen wir an, Sie haben ein color
aufgerufenes Feld, das die Werte annehmen kann: red
green
, yellow
, oder blue
. Sie möchten Videos finden, bei denen dieses Feld auf den Wert gesetzt ist green
oder blue
:
q=color:green%20color:blue
Beispiel: Diese Anfrage gibt Videos zurück, die bird
in mindestens einem der oben aufgeführten Felder einen Wert von haben.
https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=bird
Suche auf eine bestimmte Immobilie beschränken
Wenn Sie einen Qualifier für einen Suchbegriff angeben, z. B. q=name:bird
, durchsucht die Anfrage das name
Videofeld nach einem Wert von bird
.
Beispiel: Diese Anfrage gibt Videos zurück, die den Wert wildlife
im name
Feld haben.
https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=name:wildlife
Die unterstützten Suchfelder sind:
Feld | Gesetzliche Werte |
---|---|
name |
Zeichenketten oder Zeichenketten in Anführungszeichen |
Text | Zeichenketten oder Zeichenketten in Anführungszeichen (sucht nach name description , und long_description ) |
tags |
Zeichenketten oder Zeichenketten in Anführungszeichen (mehrere Tags sollten durch Kommas getrennt sein) |
custom_fields |
Zeichenketten oder Zeichenketten in Anführungszeichen (durchsucht alle benutzerdefinierten Felder — Sie können auch einen bestimmten internen Namen für benutzerdefinierte Felder verwenden) [2-1] |
reference_id |
Zeichenfolge oder Zeichenfolge in Anführungszeichen |
state |
ACTIVE , INACTIVE , PENDING , DELETED [2-3] |
updated_at |
Datumsbereich |
created_at |
Datumsbereich |
schedule.starts_at |
Datumsbereich |
schedule.ends_at |
Datumsbereich |
published_at |
Datumsbereich |
complete [2-2] |
true oder false |
Hinweise
- [2-1] Es ist nicht möglich, nach Videos zu suchen, die ein benutzerdefiniertes Feld haben, das keinen Wert oder einen Wert von hat
null
, denn wenn dem Feld kein Wert zugewiesen wurde, ist es überhaupt nicht in den Video-Metadaten enthalten. - [2-2] Wenn Sie ein neues Video erstellen, wird die
complete
Eigenschaft wird automatisch auf gesetztfalse
. Sobald eine Wiedergabe für das Video existiert, wird diecomplete
Die Eigenschaft wird automatisch auf gesetzttrue
. - [2-3] Die folgenden Einschränkungen gelten für die Suche nach GELÖSCHTEN Videos:
- Suche nach gelöschten Videos ist nur verfügbar über die CMS-API; die Wiedergabe-API wird nicht Gelöschte Videos zurückgeben
- Nur Videos, die in den letzten 10 Tagen (die aktuelle Zeit minus 10 Tage) gelöscht wurden, werden zurückgegeben
Sortierung der Suchergebnisse
Die sort
Mit diesem Parameter können Sie die Ergebnisse einer Get-Anfrage für Videos sortieren. Sie können nach folgendem sortieren:
reference_id
name
created_at
published_at
updated_at
schedule.starts_at
schedule.ends_at
state
plays_total
plays_trailing_week
Wenn die Ergebnisse nicht explizit mithilfe von sortiert werden sort
, werden die Ergebnisse nach einem Algorithmus sortiert, der als Term Frequenz/Inverse Document Frequenz oder bekannt ist TF-IDF
. Sehen Hier für mehr Informationen.
Nehmen wir zum Beispiel an, Sie suchen nach den Begriffen coastal,city
und es gibt 120 Videos in Ihrem Konto, die diese Begriffe irgendwo in den Video-Metadaten enthalten ( name
description
tags
, , usw.) und die auch den Sortierkriterien für die Ergebnisse (zum Beispiel haben sie alle das gleiche Datum/die gleiche schedule_starts_at
Uhrzeit). Wie hoch in den Ergebnissen ein Video erscheint, hängt von der Häufigkeit ab, mit der einer oder beide Begriffe in den Metadaten vorkommen, wobei der Begriff, der in Ihrer gesamten Videobibliothek am häufigsten vorkommt, stärker gewichtet wird.
Erforderliche/ausgeschlossene Bedingungen
Sie können einen Suchbegriff als erforderlich (zurückgegebene Videos MÜSSEN übereinstimmen) oder als ausgeschlossen (zurückgegebene Videos dürfen NICHT übereinstimmen) markieren. Dies wird mit einem URI-codierten gesteuert + (%2B)
oder -
Zeichen unmittelbar vor dem Begriff.
Sie müssen codieren +
wie %2B
wenn es verwendet wird, um einen erforderlichen Begriff anzugeben.
Beispiel | URL-kodiert | Sinn |
---|---|---|
+foo |
%2Bfoo |
Videos MÜSSEN den Begriff foo im name , , description , long_description tags , enthalten reference_id oder custom_fields |
+custom_fields:foo |
%2Bcustom_fields:foo |
Das Video MUSS den Wert foo für ein benutzerdefiniertes Feld enthalten |
+foo -bar |
%2Bfoo%20-bar |
Videos MÜSSEN den Begriff enthalten foo , dürfen den Begriff aber NICHT bar in der name description , long_description , tags , reference_id oder custom_fields |
+name:foo -name:bar |
%2Bname:foo%20-name:bar |
Videos MÜSSEN den Begriff enthalten foo , dürfen den Begriff aber NICHT bar in der name |
Beispiel: Diese Anfrage gibt Videos zurück, die einen Wert von HABEN sea
aber NICHT einen Wert von haben lake
in dem tags
Gebiet.
https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=%2Btags:sea%20-tags:lake
Sehen Suchkriterien kombinieren Unten erfahren Sie, wie Sie die erforderliche/ausgeschlossene Syntax verwenden, um die UND-Logik für mehrere Suchbegriffe zu erzwingen.
Kombiniert mit anderen Parametern
Suche (mit der q
Parameter) kann mit anderen Parametern wie z sort
, limit
Und offset
. Alle URL-Parameter sind durch getrennt &
. Die Reihenfolge der Parameter spielt keine Rolle.
Beispiele
Beispiel: Diese Anfrage gibt Videos zurück, die den Wert bar
im tag
Feld haben müssen und möglicherweise einen name
enthaltenden Wert haben foo
.../videos?q=name:foo%20%2Btags:bar&sort=updated_at
Beispiel: Diese Anfrage gibt dieselben Videos wie oben zurück, sortiert diese Ergebnisse jedoch zusätzlich nach dem Feld updated_at
und begrenzt dann die Ergebnisse auf nur 10 Videos.
.../videos?sort=updated_at&q=name:foo%20%2Btags:bar&limit=10
Zitierte Suchbegriffe
Standardmäßig entspricht eine Suche ähnlichen Wörtern Ihren Suchbegriffen. Wenn Sie mehrere Wörter zuordnen möchten, schließen Sie den Begriff einfach in Anführungszeichen ein.
Die meisten Browser und andere Agenten behandeln wörtliche Anführungszeichen ("..."
) korrekt. Wenn Sie jedoch auf einen Fall stoßen, in dem angeführte Suchbegriffe anscheinend keine korrekten Ergebnisse liefern, versuchen Sie, die Anführungszeichen durch %22
(%22...%22
) zu ersetzen.
q="foo" or q=%22foo%22
q="foo%20bar" or q=%22foo%20bar%22
Dies funktioniert auch bei der Suche nach einem bestimmten Feld:
q=name:"home"
q=name:"home%20run"
Mehrere Wörter
Beispiel: Beachten Sie, dass diese Anfrage Videos zurückgibt, die entweder den Wert sea
oder mammal
im tags
Feld haben.
https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=tags:sea,mammal
Die folgende Anfrage gibt jedoch nur die Videos zurück, die ein Tag haben sea,mammal
.
https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=tags:"sea,mammal"
Benutzerdefinierte Felder
Sie können in jedem benutzerdefinierten Feld suchen, das Sie für Ihre Videos definiert haben.
q=my_field:foo
q=my_field:"foo"
Hinweis: Alle benutzerdefinierten Feldwerte werden als Zeichenfolgen behandelt. Zum Beispiel, wenn Sie ein benutzerdefiniertes Feld vom Typ Liste haben, das die Werte annehmen kann true
oder false
, sucht die Suche nach diesen Zeichenfolgen, nicht nach booleschen Werten (in vielen Programmiersprachen 1
Und 0
kann austauschbar mit verwendet werden true
Und false
als boolesche Werte, aber Suche weiter q=my_boolean_field:1
wird keine Videos zurückgeben, die haben my_boolean_field
einstellen true
).
Beispiel: Diese Anfrage gibt Videos zurück, die einen Wert von haben Tier im subject
benutzerdefinierte Feld.
https://cms.api.brightcove.com/v1/accounts/921483702001/videos?q=subject:animal
Datumsbereiche
Wenn Sie nach einem Datumsfeld suchen, können Sie ein bestimmtes Datum oder einen Datumsbereich angeben, indem Sie zwei Punkte verwenden, um das Start- und Enddatum zu trennen (q=updated_at:2018-01-01..2018-02-01
).
Dadurch wird nach allen Videos mit einem updated_at
Wert zwischen dem 1. August 2012 und dem 8. Oktober 2012 gesucht. Hier geben wir jedes Datum im UTC-Format an.
q=updated_at:2012-08-01T00:00:00Z..2012-10-08T23:59:59Z
Sie können diese Suche vereinfachen, indem Sie die Zeitkomponenten weglassen. Das Folgende entspricht der obigen Suche.
q=updated_at:2012-08-01..2012-10-08
Unterstützte Datumsformate
Zu den unterstützten Datumsformaten gehören UTC und Relativ.
Format (URI-kodiertes Format) | Sinn |
---|---|
2015-08-01T 06:15:00 UHR | Dies repräsentiert eine Zeit in UTC. |
2012-08-01 | Dies entspricht Mitternacht an einem Tag in UTC. Das Beispiel entspricht 2012-08-01T 00:00:00 Z |
-1d | Die aktuelle Uhrzeit minus 1 Tag. (sehen unter) |
Relative Daten
Für relative Daten unterstützen wir eine Richtung ( +
oder -
) , gefolgt von einer Zahl, gefolgt von einer Dauer. Relative Daten werden immer von der aktuellen Zeit aus gemessen. Gesetzliche Laufzeiten sind: Minuten, Stunden, Tage.
Beispiele:
q Parameter für Daten | Bedeutung |
---|---|
q=updated_at: -1day.. JETZT | Videos wurden von vor einem Tag auf den aktuellen Tag aktualisiert |
q=created_at:-2days | Videos vor 2 Tagen hinzugefügt |
q=updated_at:-4hours..NOW | Video von vor 4 Stunden auf die aktuelle Uhrzeit aktualisiert |
q=created_at:-60minutes.. | Videos, die von vor 60 Minuten zur aktuellen Zeit hinzugefügt wurden |
q=created_am:01.01.2016.. -1d | Videos, die vom 1. Januar 2015 bis vor einem Tag erstellt wurden |
q=updated_at:-14d..NOW | Videos der letzten zwei Wochen |
Offene Bereiche
Wenn Sie alle Daten bis zu einem bestimmten Zeitpunkt oder alle Daten seit einem bestimmten Zeitpunkt abgleichen möchten, lassen Sie ein Ende des Bereichs weg.
Beispiel: Suche nach allen Videos, die in den letzten 2 Tagen geändert wurden
q=updated_at:-2days..
Beispiel: Suche nach allen Videos, die am oder nach dem 11. August 2013 geändert wurden:
q=updated_at:2013-08-11T00:00:00Z..
NOW
Operator für Fahrplantermine
Für schedule.starts_at
und schedule.ends_at
können Sie NOW
als Datumswert verwenden. Dies ist ein praktischer Operator, mit dem Sie eine dynamische Abfrage basierend auf dem aktuellen Datum/Uhrzeit einrichten können. Ein paar Beispiele:
von/bis Parameter | URI-codiert | Bedeutung |
---|---|---|
? q=schedule.starts_at:.. JETZT | ? q=schedule.starts_at:.. JETZT | start_at ist vom Anfang der Zeit bis zu diesem Moment |
? q=schedule.starts_AT:now | ? q=schedule.starts_AT:now | start_at ist ab diesem Moment |
? q=schedule.ends_AT:Now.. | ? q=schedule.ends_AT:Now.. | end_at ist von diesem Moment bis zum Ende der Zeit |
? q=+schedule.starts_at:.. JETZT +schedule.ends_AT:JETZT.. | ? q=%2bSchedule.starts_at:.. JETZT% 20% 2bSchedule.endet_AT:JETZT.. | beginnt_at vor diesem Moment und endet_at nach diesem Moment (Video ist in diesem Moment geplant) |
Suchkriterien kombinieren
Sie können Kriterien für komplexe Suchen kombinieren.
Beispiel: Diese Anfrage sucht nach Videos mit einem name
gewissen Klatschwert, die zwischen dem 1. August 2010 und dem 8. Oktober 2010 aktualisiert wurden. Es sortiert dann die Antwortdaten nach updated_at
Datum in absteigender Reihenfolge.
q=%2Bname:gossip%20%2Bupdated_at:2010-08-01..2010-10-08&sort=-updated_at
Begriffe kombinieren
Verwenden Sie die erforderliche/ausgeschlossene Syntax um Videos zurückzugeben, die haben alle der angegebenen Begriffe.
Wenn Sie beispielsweise suchen nach:
q=name:foo +tags:bar (URI-encoded: q=name:foo%20%2Btags:bar)
Die Antwort wird Videos enthalten, die das Schlagwort 'bar' haben und möglicherweise auch foo
im Namen enthalten sind. Wenn Sie nur die Videos zurückgeben möchten, die über foo
im Namen UND dem Tag 'bar' müssen Sie suchen nach:
(unencoded) q=+name:foo +tags:bar (URI-encoded) q=%2Bname:foo%20%2Btags:bar
Ebenso, wenn Sie nur Videos zurückgeben möchten, die foo
im Namen, aber mach nicht das Tag 'bar' haben, würden Sie suchen nach:
(unencoded) q=+name:foo -tags:bar (encoded) q=%2Bname:foo%20-tags:bar
Beispiele
Uncodierte Suchzeichenfolge | URI-codierter Suchstring | Bedeutung |
---|---|---|
q=foo bar |
q=foo%20bar |
zurückgegebene Artikel haben "foo" ODER "bar" |
q=foo +bar |
q=foo%20%2Bbar |
zurückgegebene Artikel müssen "bar" haben, können "foo" haben |
q=+foo bar |
q =%2Bfoo%20bar |
zurückgegebene Artikel müssen "foo" haben, können "bar" haben |
q=+foo +bar |
q=%2Bfoo%20%2Bbar |
zurückgegebener Artikel muss "foo" UND "bar" haben |
q=-foo +bar |
q=-foo%20%2Bbar |
Der zurückgegebene Artikel muss „bar“ UND nicht „foo“ haben |
Mehrere Tag-Suchen | ||
q=tags:bee,bop |
q=tags:bee,bop |
gibt Videos mit dem Tag "bee" ODER "bop" zurück |
q=tags:bee tags:bop |
q=tags:bee%20tags:bop |
gibt Videos mit dem Tag "bee" ODER "bop" zurück |
q=+tags:bee tags:bop |
q=%2Btags:bee%20tags:bop |
alle zurückgegebenen Videos müssen das Tag "Biene" haben; sie können auch das Tag "bop" haben |
q=+tags:bee +tags:bop |
q=%2Btags:bee%20%2Btags:bop |
alle zurückgegebenen Videos werden den Tag „bee“ UND den Tag „bop“ haben |
Bestimmte Videos suchen
Wenn Sie Ihre Suche auf eine bestimmte Gruppe von Videos beschränken möchten, können Sie dies über die Suche tun id
:
Beispiel: Diese Anfrage gibt Videos mit IDs 123456789
zurück 987654321
und 48376387
q=id:123456789%20id:987654321%20id:48376387
Suche nach Bundesland
Mithilfe des Parameters können Sie Suchen nach dem Status des Videos durchführen oder filtern:
q=state:ACTIVE( | INACTIVE | PENDING | DELETED)[3]
Hinweise
- [3] Die Suche nach GELÖSCHTEN Videos ist nur für Videos verfügbar, die in den letzten 10 Tagen (die aktuelle Zeit minus 10 Tage) gelöscht wurden, und nur über die CMS API (nicht die Wiedergabe-API).
Stemming
Stemming wird unterstützt, aber nicht Teilwortsuche. Zum Beispiel, q=name:ban
sollten Videos mit den Namen "Parking Ban Announced
" oder "Parking to be Banned
" oder "City Banning Parking
" aber nicht "Bank Holiday
" oder "Bandit Captured
".
Leerzeichen/Sonderzeichen
Das CMS API Im Allgemeinen werden Sonderzeichen in Suchzeichenfolgen behandelt, mit einigen Ausnahmen:
- Leerzeichen sind nicht erlaubt und müssen als kodiert werden
%20
. (Unkodiert+
Zeichen können auch Leerzeichen ersetzen, dies kann jedoch zu Verwirrung bei Ihren Abfragen führen, da+
kann auch angeben, dass ein Begriff erforderlich ist. Sehen erforderliche/ausgeschlossene Syntax)Um beispielsweise nach "mein Lieblingsvideo" im Namen zu suchen:
q=name:"my%20favorite%20video"
- Um nach einem Literal zu suchen
+
unterschreiben oder verwenden+
um anzuzeigen, dass die zurückgegebenen Videos muss einen Begriff einfügen, müssen Sie ihn codieren+
wie%2B
:Suche nach Videos, die enthalten müssen
"two+two"
im Namensfeldq=name:two%2Btwo
Suche nach Videos, die enthalten müssen
"heron"
im Namensfeldq=%2Bname:heron
- Einige Agenten verarbeiten wörtliche Anführungszeichen möglicherweise nicht richtig, daher ist die Codierung sicherer
"foo"
wie%22foo%22
Für einmalige Anfragen können Sie Brightcove Learnings String-Encoder um Ihre Suchzeichenfolgen zu verschlüsseln. Für Apps müssen Sie eine URI-Codierungsfunktion in der von Ihnen verwendeten Sprache finden.
Suchbegriffe zu Clips
Clips sind Videos, die aus Abschnitten anderer Videos erstellt wurden. Clips können von Brightcove Social generiert werden, und in Zukunft werden auch andere Methoden verfügbar sein. Es gibt einige spezielle Suchbegriffe, mit denen Sie generierte Clips in einem Konto finden können:
q=%2Bis_clip:true
- gibt nur Clips zurückq=%2Bis_clip:false
- gibt nur Nicht-Clips zurückq=%2Bclip_source_video_id:video_id
- gibt Clips zurück, die aus dem angegebenen Video generiert wurden
Ignorierte Wörter
Bestimmte Wörter werden in Suchzeichenfolgen ignoriert, da sie so häufig sind, dass sie wahrscheinlich viele Ergebnisse liefern, die nichts mit dem zu tun haben, wonach Sie tatsächlich suchen. Nachfolgend finden Sie eine Liste von Wörtern, die bei der Suche ignoriert werden:
„a“, „an“, „und“, „sind“, „als“, „bei“, „sein“, „aber“, „von“, „für“, „wenn“, „in“, „in“, „in“, „ist“, „es“, „nein“, „nicht“, „von“, „am“, „oder“, „solche“, „dass“, „der“, „ihr“, „dann“, „dort“, „diese“, „sie“, „dies“, „zu“, „war“, „werden“, „mit“
Bekannte Probleme
- Doppelte Ergebnisse: In bestimmten Fällen können einige Elemente in den Suchergebnissen mehr als einmal erscheinen.
Problemumgehung: Um doppelte Suchergebnisse zu vermeiden, verwenden Sie immer a
sort
Parameter in Ihren Suchanfragen.