Video Search API v7 query parameters

The following are the query parameters that the request may include. The Required column indicates whether you must specify the parameter. You must URL encode the query parameter values.

For information about query parameters used to filter the videos that Bing returns, see Filter query parameters.

These parameters do not affect the list of videos that Bing Web Search API returns.

Name Value Type Required
cc A 2-character country code of the country where the results come from. For a list of possible values, see Market codes.

If you set this parameter, you must also specify the Accept-Language header. Bing uses the first supported language it finds in the specified languages and combines it with the country code to determine the market to return results for. If the languages list does not include a supported language, Bing finds the closest language and market that supports the request. Or, Bing may use an aggregated or default market for the results.

To know which market Bing used, get the BingAPIs-Market header in the response.

Use this query parameter and the Accept-Language header only if you specify multiple languages. Otherwise, you should use the mkt and setLang query parameters.

This parameter and the mkt query parameter are mutually exclusive — do not specify both.
String No
count The number of videos to return in the response. The actual number delivered may be less than requested. The default is 35 and the maximum is 105.

You may use this parameter along with the offset parameter to page results. For example, if your user interface presents 20 videos per page, set count to 20 and offset to 0 to get the first page of results. For each subsequent page, increment offset by 20 (for example, 0, 20, 40).

Use this parameter only when calling the /videos/search endpoint. Do not specify this parameter when calling the /videos/trending endpoint.
UnsignedShort No
id An ID that uniquely identifies a video. The Video object's videoId field contains the ID that you set this parameter to.

For the /videos/search endpoint, you use this parameter to ensure that the specified video is the first video in the list of videos that Bing returns.

For the /videos/details endpoint, you use this parameter to identify the video to get insights of.
String No
modules A comma-delimited list of insights to request. The following are the possible case-insensitive values:
  • All — Return all available insights.

  • RelatedVideos — Return a list of videos that are similar to the video specified by the id query parameter.

  • VideoResult — Return the video that you're requesting insights of (this is the video that you set the id query parameter to in your insights request).
If you specify an insight and there is no data for it, the response object does not include the related field. For example, if you specify RelatedVideos and none exist, the response does not include the relatedVideos field.

Although the user's query term is not required, you should always include the q query parameter because it helps to improve relevance and the results.

Use this parameter only when calling the /videos/details endpoint. Do not specify this parameter when calling the /videos/search endpoint.
String Yes
mkt The market where the results come from. Typically, mkt is the country where the user is making the request from. However, it could be a different country if the user is not located in a country where Bing delivers results. The market must be in the form <language>-<country/region>. For example, en-US. The string is case insensitive. For a list of possible market values, see Market codes.

NOTE: If known, the market should always be specified. Specifying the market helps Bing route the request and return an appropriate and optimal response. If you specify a market that is not listed in Market codes, Bing uses a best fit market code based on an internal mapping that is subject to change.

To know which market Bing used, get the BingAPIs-Market header in the response.

This parameter and the cc query parameter are mutually exclusive — do not specify both.
String No
offset The zero-based offset that indicates the number of search results to skip before returning results. The default is 0. The offset should be less than (totalEstimatedMatches - count).

Use this parameter along with the count parameter to paginate results. For example, if your user interface displays 10 search results per page, set count to 10 and offset to 0 to get the first page of results. For each subsequent page, increment offset by 10 (for example, 0, 10, 20). It is possible for multiple pages to include some overlap in results. To prevent duplicates, see nextOffset.

Use this parameter only when calling the /videos/search endpoint. Do not specify this parameter when calling the /videos/trending endpoint.
Unsigned Short No
q The user's search query term. The term may not be empty.

The term may contain Bing Advanced Operators. For example, to limit results to a specific domain, use the site: operator (q=fishing+site:fishing.contoso.com). Note that the results may contain results from other sites depending on the number of relevant results found on the specified site.

Use this parameter only when calling the /videos/search endpoint. Do not specify this parameter when calling the /videos/trending endpoint.
String Yes
safeSearch Used to filter videos for adult content. The following are the possible filter values:
  • Moderate — Does not return videos with adult content.
  • Strict — Does not return videos with adult content.
The default is Moderate.

NOTE: If safeSearch is set to Off, Bing ignores it and uses Moderate.

NOTE: If the request comes from a market that Bing's adult policy requires that safeSearch be set to Strict, Bing ignores the safeSearch value and uses Strict.

NOTE: If you use the site: query operator, there is a chance that the response may contain adult content regardless of what the safeSearch query parameter is set to. Use site: only if you are aware of the content on the site and your scenario supports the possibility of adult content.
String No
setLang The language to use for user interface strings. You may specify the language using either a 2-letter or 4-letter code. Using 4-letter codes is preferred.

For a list of supported language codes, see Bing supported languages.

Bing loads the localized strings if setlang contains a valid 2-letter neutral culture code (fr) or a valid 4-letter specific culture code (fr-ca). For example, for fr-ca, Bing loads the fr neutral culture code strings.

If setlang is not valid (for example, zh) or Bing doesn’t support the language (for example, af, af-na), Bing defaults to en (English).

To specify the 2-letter code, set this parameter to an ISO 639-1 language code.

To specify the 4-letter code, use the form <language>-<country/region> where <language> is an ISO 639-1 language code (neutral culture) and <country/region> is an ISO 3166 country/region (specific culture) code. For example, use en-US for United States English.

Although optional, you should always specify the language. Typically, you set setLang to the same language specified by mkt unless the user wants the user interface strings displayed in a different language.

This parameter and the Accept-Language header are mutually exclusive — do not specify both.

A user interface string is a string that's used as a label in a user interface. There are few user interface strings in the JSON response objects. Also, any links to Bing.com properties in the response objects use the specified language.
String No
textDecorations A Boolean value that determines whether display strings in the results should contain decoration markers such as hit highlighting characters. If true, the strings may include markers. The default is false.

To specify whether to use Unicode characters or HTML tags as the markers, see the textFormat query parameter.

For information about hit highlighting, see Hit highlighting.
Boolean No
textFormat The type of markers to use for text decorations (see the textDecorations query parameter).

The following are the possible values:
  • Raw — Use Unicode characters to mark content that needs special formatting. The Unicode characters are in the range E000 through E019. For example, Bing uses E000 and E001 to mark the beginning and end of query terms for hit highlighting.

  • HTML — Use HTML tags to mark content that needs special formatting. For example, use <b> tags to highlight query terms in display strings.
The default is Raw.

For a list of markers and information about processing strings with the embedded Unicode characters, see Hit highlighting.

For display strings that contain escapable HTML characters such as <, >, and &, if textFormat is set to HTML, Bing escapes the characters as appropriate (for example, < is escaped to &lt;).
String No

Filter query parameters

The following are the optional query parameters that you can use to filter the videos that Bing returns. You must URL encode the query parameters.

These parameters apply only to the Video Search API and not the Trending Videos API. Also, these parameters do not affect the list of videos that Bing Web Search API returns.

Name Value Type
aspect Filter videos by the following aspect ratios:
  • standard — Return videos with standard aspect radio.
  • widescreen — Returns videos with wide screen aspect radio.
String
embedded Filter videos that are embeddable. The following are the possible options:
  • player — Returns videos with an embeddable player.
String
freshness Filter videos by the date and time that Bing discovered the video. The following are the possible filter values:
  • Day — Return videos discovered within the last 24 hours.
  • Week — Return videos discovered within the last 7 days.
  • Month — Return videos discovered within the last 30 days.
String
pricing Filter videos by the following pricing options:
  • Free — Return videos that are free to view.
  • Paid — Return videos that require a subscription or payment to view<./li>
  • All — Do not filter by pricing. Specifying this value is the same as not specifying the pricing parameter.
String
resolution Filter videos by the following resolutions:
  • lowerthan_360p — Return videos with lower than 360p resolution.
  • 360p — Return videos with a 360p or higher resolution.
  • 480p — Return videos with a 480p or higher resolution.
  • 720p — Return videos with a 720p or higher resolution.
  • 1080p — Return videos with a 1080p or higher resolution.
  • All — Do not filter by resolution. Specifying this value is the same as not specifying the resolution parameter.
String
videoLength Filter videos by the following lengths:
  • Short — Return videos that are less than 5 minutes.
  • Medium — Return videos that are between 5 and 20 minutes, inclusive.
  • Long — Return videos that are longer than 20 minutes.
  • All — Do not filter by length. Specifying this value is the same as not specifying the videoLength parameter.
String