< Summary

Class:Microsoft.Azure.CognitiveServices.Search.CustomImageSearch.CustomInstanceExtensions
Assembly:Microsoft.Azure.CognitiveServices.Search.BingCustomImageSearch
File(s):C:\Git\azure-sdk-for-net\sdk\cognitiveservices\Search.BingCustomImageSearch\src\Generated\CustomImageSearch\CustomInstanceExtensions.cs
Covered lines:3
Uncovered lines:0
Coverable lines:3
Total lines:391
Line coverage:100% (3 of 3)
Covered branches:0
Total branches:0

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
ImageSearchAsync()-100%100%

File(s)

C:\Git\azure-sdk-for-net\sdk\cognitiveservices\Search.BingCustomImageSearch\src\Generated\CustomImageSearch\CustomInstanceExtensions.cs

#LineLine coverage
 1// <auto-generated>
 2// Code generated by Microsoft (R) AutoRest Code Generator.
 3// Changes may cause incorrect behavior and will be lost if the code is
 4// regenerated.
 5// </auto-generated>
 6
 7namespace Microsoft.Azure.CognitiveServices.Search.CustomImageSearch
 8{
 9    using Models;
 10    using System.Threading;
 11    using System.Threading.Tasks;
 12
 13    /// <summary>
 14    /// Extension methods for CustomInstance.
 15    /// </summary>
 16    public static partial class CustomInstanceExtensions
 17    {
 18            /// <summary>
 19            /// The Custom Image Search API lets you send an image search query to Bing and
 20            /// get image results found in your custom view of the web.
 21            /// </summary>
 22            /// <param name='operations'>
 23            /// The operations group for this extension method.
 24            /// </param>
 25            /// <param name='customConfig'>
 26            /// The identifier for the custom search configuration
 27            /// </param>
 28            /// <param name='query'>
 29            /// The user's search query term. The term cannot be empty. The term may
 30            /// contain [Bing Advanced
 31            /// Operators](http://msdn.microsoft.com/library/ff795620.aspx). For example,
 32            /// to limit images to a specific domain, use the
 33            /// [site:](http://msdn.microsoft.com/library/ff795613.aspx) operator. To help
 34            /// improve relevance of an insights query (see
 35            /// [insightsToken](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference
 36            /// you should always include the user's query term. Use this parameter only
 37            /// with the Image Search API.Do not specify this parameter when calling the
 38            /// Trending Images API.
 39            /// </param>
 40            /// <param name='acceptLanguage'>
 41            /// A comma-delimited list of one or more languages to use for user interface
 42            /// strings. The list is in decreasing order of preference. For additional
 43            /// information, including expected format, see
 44            /// [RFC2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). This
 45            /// header and the
 46            /// [setLang](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#setla
 47            /// query parameter are mutually exclusive; do not specify both. If you set
 48            /// this header, you must also specify the
 49            /// [cc](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#cc)
 50            /// query parameter. To determine the market to return results for, Bing uses
 51            /// the first supported language it finds from the list and combines it with
 52            /// the cc parameter value. If the list does not include a supported language,
 53            /// Bing finds the closest language and market that supports the request or it
 54            /// uses an aggregated or default market for the results. To determine the
 55            /// market that Bing used, see the BingAPIs-Market header. Use this header and
 56            /// the cc query parameter only if you specify multiple languages. Otherwise,
 57            /// use the
 58            /// [mkt](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#mkt)
 59            /// and
 60            /// [setLang](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#setla
 61            /// query parameters. A user interface string is a string that's used as a
 62            /// label in a user interface. There are few user interface strings in the JSON
 63            /// response objects. Any links to Bing.com properties in the response objects
 64            /// apply the specified language.
 65            /// </param>
 66            /// <param name='userAgent'>
 67            /// The user agent originating the request. Bing uses the user agent to provide
 68            /// mobile users with an optimized experience. Although optional, you are
 69            /// encouraged to always specify this header. The user-agent should be the same
 70            /// string that any commonly used browser sends. For information about user
 71            /// agents, see [RFC
 72            /// 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). The
 73            /// following are examples of user-agent strings. Windows Phone: Mozilla/5.0
 74            /// (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM;
 75            /// Touch; NOKIA; Lumia 822). Android: Mozilla / 5.0 (Linux; U; Android 2.3.5;
 76            /// en - us; SCH - I500 Build / GINGERBREAD) AppleWebKit / 533.1 (KHTML; like
 77            /// Gecko) Version / 4.0 Mobile Safari / 533.1. iPhone: Mozilla / 5.0 (iPhone;
 78            /// CPU iPhone OS 6_1 like Mac OS X) AppleWebKit / 536.26 (KHTML; like Gecko)
 79            /// Mobile / 10B142 iPhone4; 1 BingWeb / 3.03.1428.20120423. PC: Mozilla / 5.0
 80            /// (Windows NT 6.3; WOW64; Trident / 7.0; Touch; rv:11.0) like Gecko. iPad:
 81            /// Mozilla / 5.0 (iPad; CPU OS 7_0 like Mac OS X) AppleWebKit / 537.51.1
 82            /// (KHTML, like Gecko) Version / 7.0 Mobile / 11A465 Safari / 9537.53
 83            /// </param>
 84            /// <param name='clientId'>
 85            /// Bing uses this header to provide users with consistent behavior across Bing
 86            /// API calls. Bing often flights new features and improvements, and it uses
 87            /// the client ID as a key for assigning traffic on different flights. If you
 88            /// do not use the same client ID for a user across multiple requests, then
 89            /// Bing may assign the user to multiple conflicting flights. Being assigned to
 90            /// multiple conflicting flights can lead to an inconsistent user experience.
 91            /// For example, if the second request has a different flight assignment than
 92            /// the first, the experience may be unexpected. Also, Bing can use the client
 93            /// ID to tailor web results to that client ID’s search history, providing a
 94            /// richer experience for the user. Bing also uses this header to help improve
 95            /// result rankings by analyzing the activity generated by a client ID. The
 96            /// relevance improvements help with better quality of results delivered by
 97            /// Bing APIs and in turn enables higher click-through rates for the API
 98            /// consumer. IMPORTANT: Although optional, you should consider this header
 99            /// required. Persisting the client ID across multiple requests for the same
 100            /// end user and device combination enables 1) the API consumer to receive a
 101            /// consistent user experience, and 2) higher click-through rates via better
 102            /// quality of results from the Bing APIs. Each user that uses your application
 103            /// on the device must have a unique, Bing generated client ID. If you do not
 104            /// include this header in the request, Bing generates an ID and returns it in
 105            /// the X-MSEdge-ClientID response header. The only time that you should NOT
 106            /// include this header in a request is the first time the user uses your app
 107            /// on that device. Use the client ID for each Bing API request that your app
 108            /// makes for this user on the device. Persist the client ID. To persist the ID
 109            /// in a browser app, use a persistent HTTP cookie to ensure the ID is used
 110            /// across all sessions. Do not use a session cookie. For other apps such as
 111            /// mobile apps, use the device's persistent storage to persist the ID. The
 112            /// next time the user uses your app on that device, get the client ID that you
 113            /// persisted. Bing responses may or may not include this header. If the
 114            /// response includes this header, capture the client ID and use it for all
 115            /// subsequent Bing requests for the user on that device. If you include the
 116            /// X-MSEdge-ClientID, you must not include cookies in the request.
 117            /// </param>
 118            /// <param name='clientIp'>
 119            /// The IPv4 or IPv6 address of the client device. The IP address is used to
 120            /// discover the user's location. Bing uses the location information to
 121            /// determine safe search behavior. Although optional, you are encouraged to
 122            /// always specify this header and the X-Search-Location header. Do not
 123            /// obfuscate the address (for example, by changing the last octet to 0).
 124            /// Obfuscating the address results in the location not being anywhere near the
 125            /// device's actual location, which may result in Bing serving erroneous
 126            /// results.
 127            /// </param>
 128            /// <param name='location'>
 129            /// A semicolon-delimited list of key/value pairs that describe the client's
 130            /// geographical location. Bing uses the location information to determine safe
 131            /// search behavior and to return relevant local content. Specify the key/value
 132            /// pair as &lt;key&gt;:&lt;value&gt;. The following are the keys that you use
 133            /// to specify the user's location. lat (required): The latitude of the
 134            /// client's location, in degrees. The latitude must be greater than or equal
 135            /// to -90.0 and less than or equal to +90.0. Negative values indicate southern
 136            /// latitudes and positive values indicate northern latitudes. long (required):
 137            /// The longitude of the client's location, in degrees. The longitude must be
 138            /// greater than or equal to -180.0 and less than or equal to +180.0. Negative
 139            /// values indicate western longitudes and positive values indicate eastern
 140            /// longitudes. re (required): The radius, in meters, which specifies the
 141            /// horizontal accuracy of the coordinates. Pass the value returned by the
 142            /// device's location service. Typical values might be 22m for GPS/Wi-Fi, 380m
 143            /// for cell tower triangulation, and 18,000m for reverse IP lookup. ts
 144            /// (optional): The UTC UNIX timestamp of when the client was at the location.
 145            /// (The UNIX timestamp is the number of seconds since January 1, 1970.) head
 146            /// (optional): The client's relative heading or direction of travel. Specify
 147            /// the direction of travel as degrees from 0 through 360, counting clockwise
 148            /// relative to true north. Specify this key only if the sp key is nonzero. sp
 149            /// (optional): The horizontal velocity (speed), in meters per second, that the
 150            /// client device is traveling. alt (optional): The altitude of the client
 151            /// device, in meters. are (optional): The radius, in meters, that specifies
 152            /// the vertical accuracy of the coordinates. Specify this key only if you
 153            /// specify the alt key. Although many of the keys are optional, the more
 154            /// information that you provide, the more accurate the location results are.
 155            /// Although optional, you are encouraged to always specify the user's
 156            /// geographical location. Providing the location is especially important if
 157            /// the client's IP address does not accurately reflect the user's physical
 158            /// location (for example, if the client uses VPN). For optimal results, you
 159            /// should include this header and the X-MSEdge-ClientIP header, but at a
 160            /// minimum, you should include this header.
 161            /// </param>
 162            /// <param name='aspect'>
 163            /// Filter images by the following aspect ratios. All: Do not filter by
 164            /// aspect.Specifying this value is the same as not specifying the aspect
 165            /// parameter. Square: Return images with standard aspect ratio. Wide: Return
 166            /// images with wide screen aspect ratio. Tall: Return images with tall aspect
 167            /// ratio. Possible values include: 'All', 'Square', 'Wide', 'Tall'
 168            /// </param>
 169            /// <param name='color'>
 170            /// Filter images by the following color options. ColorOnly: Return color
 171            /// images. Monochrome: Return black and white images. Return images with one
 172            /// of the following dominant colors: Black, Blue, Brown, Gray, Green, Orange,
 173            /// Pink, Purple, Red, Teal, White, Yellow. Possible values include:
 174            /// 'ColorOnly', 'Monochrome', 'Black', 'Blue', 'Brown', 'Gray', 'Green',
 175            /// 'Orange', 'Pink', 'Purple', 'Red', 'Teal', 'White', 'Yellow'
 176            /// </param>
 177            /// <param name='countryCode'>
 178            /// A 2-character country code of the country where the results come from. For
 179            /// a list of possible values, see [Market
 180            /// Codes](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#market-c
 181            /// If you set this parameter, you must also specify the
 182            /// [Accept-Language](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-referen
 183            /// header. Bing uses the first supported language it finds from the languages
 184            /// list, and combine that language with the country code that you specify to
 185            /// determine the market to return results for. If the languages list does not
 186            /// include a supported language, Bing finds the closest language and market
 187            /// that supports the request, or it may use an aggregated or default market
 188            /// for the results instead of a specified one. You should use this query
 189            /// parameter and the Accept-Language query parameter only if you specify
 190            /// multiple languages; otherwise, you should use the mkt and setLang query
 191            /// parameters. This parameter and the
 192            /// [mkt](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#mkt)
 193            /// query parameter are mutually exclusive—do not specify both.
 194            /// </param>
 195            /// <param name='count'>
 196            /// The number of images to return in the response. The actual number delivered
 197            /// may be less than requested. The default is 35. The maximum value is 150.
 198            /// You use this parameter along with the offset parameter to page results.For
 199            /// example, if your user interface displays 20 images per page, set count to
 200            /// 20 and offset to 0 to get the first page of results.For each subsequent
 201            /// page, increment offset by 20 (for example, 0, 20, 40). Use this parameter
 202            /// only with the Image Search API.Do not specify this parameter when calling
 203            /// the Insights, Trending Images, or Web Search APIs.
 204            /// </param>
 205            /// <param name='freshness'>
 206            /// Filter images by the following discovery options. Day: Return images
 207            /// discovered by Bing within the last 24 hours. Week: Return images discovered
 208            /// by Bing within the last 7 days. Month: Return images discovered by Bing
 209            /// within the last 30 days. Possible values include: 'Day', 'Week', 'Month'
 210            /// </param>
 211            /// <param name='height'>
 212            /// Filter images that have the specified height, in pixels. You may use this
 213            /// filter with the size filter to return small images that have a height of
 214            /// 150 pixels.
 215            /// </param>
 216            /// <param name='id'>
 217            /// An ID that uniquely identifies an image. Use this parameter to ensure that
 218            /// the specified image is the first image in the list of images that Bing
 219            /// returns. The
 220            /// [Image](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#image)
 221            /// object's imageId field contains the ID that you set this parameter to.
 222            /// </param>
 223            /// <param name='imageContent'>
 224            /// Filter images by the following content types. Face: Return images that show
 225            /// only a person's face. Portrait: Return images that show only a person's
 226            /// head and shoulders. Possible values include: 'Face', 'Portrait'
 227            /// </param>
 228            /// <param name='imageType'>
 229            /// Filter images by the following image types. AnimatedGif: Return only
 230            /// animated GIFs. Clipart: Return only clip art images. Line: Return only line
 231            /// drawings. Photo: Return only photographs(excluding line drawings, animated
 232            /// Gifs, and clip art). Shopping: Return only images that contain items where
 233            /// Bing knows of a merchant that is selling the items. This option is valid in
 234            /// the en - US market only.Transparent: Return only images with a transparent
 235            /// background. Possible values include: 'AnimatedGif', 'Clipart', 'Line',
 236            /// 'Photo', 'Shopping', 'Transparent'
 237            /// </param>
 238            /// <param name='license'>
 239            /// Filter images by the following license types. All: Do not filter by license
 240            /// type.Specifying this value is the same as not specifying the license
 241            /// parameter. Any: Return images that are under any license type. The response
 242            /// doesn't include images that do not specify a license or the license is
 243            /// unknown. Public: Return images where the creator has waived their exclusive
 244            /// rights, to the fullest extent allowed by law. Share: Return images that may
 245            /// be shared with others. Changing or editing the image might not be allowed.
 246            /// Also, modifying, sharing, and using the image for commercial purposes might
 247            /// not be allowed. Typically, this option returns the most images.
 248            /// ShareCommercially: Return images that may be shared with others for
 249            /// personal or commercial purposes. Changing or editing the image might not be
 250            /// allowed. Modify: Return images that may be modified, shared, and used.
 251            /// Changing or editing the image might not be allowed. Modifying, sharing, and
 252            /// using the image for commercial purposes might not be allowed.
 253            /// ModifyCommercially: Return images that may be modified, shared, and used
 254            /// for personal or commercial purposes. Typically, this option returns the
 255            /// fewest images. For more information about these license types, see [Filter
 256            /// Images By License Type](http://go.microsoft.com/fwlink/?LinkId=309768).
 257            /// Possible values include: 'All', 'Any', 'Public', 'Share',
 258            /// 'ShareCommercially', 'Modify', 'ModifyCommercially'
 259            /// </param>
 260            /// <param name='market'>
 261            /// The market where the results come from. Typically, mkt is the country where
 262            /// the user is making the request from. However, it could be a different
 263            /// country if the user is not located in a country where Bing delivers
 264            /// results. The market must be in the form &lt;language code&gt;-&lt;country
 265            /// code&gt;. For example, en-US. The string is case insensitive. For a list of
 266            /// possible market values, see [Market
 267            /// Codes](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#market-c
 268            /// NOTE: If known, you are encouraged to always specify the market. Specifying
 269            /// the market helps Bing route the request and return an appropriate and
 270            /// optimal response. If you specify a market that is not listed in [Market
 271            /// Codes](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#market-c
 272            /// Bing uses a best fit market code based on an internal mapping that is
 273            /// subject to change. This parameter and the
 274            /// [cc](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#cc)
 275            /// query parameter are mutually exclusive—do not specify both.
 276            /// </param>
 277            /// <param name='maxFileSize'>
 278            /// Filter images that are less than or equal to the specified file size. The
 279            /// maximum file size that you may specify is 520,192 bytes. If you specify a
 280            /// larger value, the API uses 520,192. It is possible that the response may
 281            /// include images that are slightly larger than the specified maximum. You may
 282            /// specify this filter and minFileSize to filter images within a range of file
 283            /// sizes.
 284            /// </param>
 285            /// <param name='maxHeight'>
 286            /// Filter images that have a height that is less than or equal to the
 287            /// specified height. Specify the height in pixels. You may specify this filter
 288            /// and minHeight to filter images within a range of heights. This filter and
 289            /// the height filter are mutually exclusive.
 290            /// </param>
 291            /// <param name='maxWidth'>
 292            /// Filter images that have a width that is less than or equal to the specified
 293            /// width. Specify the width in pixels. You may specify this filter and
 294            /// maxWidth to filter images within a range of widths. This filter and the
 295            /// width filter are mutually exclusive.
 296            /// </param>
 297            /// <param name='minFileSize'>
 298            /// Filter images that are greater than or equal to the specified file size.
 299            /// The maximum file size that you may specify is 520,192 bytes. If you specify
 300            /// a larger value, the API uses 520,192. It is possible that the response may
 301            /// include images that are slightly smaller than the specified minimum. You
 302            /// may specify this filter and maxFileSize to filter images within a range of
 303            /// file sizes.
 304            /// </param>
 305            /// <param name='minHeight'>
 306            /// Filter images that have a height that is greater than or equal to the
 307            /// specified height. Specify the height in pixels. You may specify this filter
 308            /// and maxHeight to filter images within a range of heights. This filter and
 309            /// the height filter are mutually exclusive.
 310            /// </param>
 311            /// <param name='minWidth'>
 312            /// Filter images that have a width that is greater than or equal to the
 313            /// specified width. Specify the width in pixels. You may specify this filter
 314            /// and maxWidth to filter images within a range of widths. This filter and the
 315            /// width filter are mutually exclusive.
 316            /// </param>
 317            /// <param name='offset'>
 318            /// The zero-based offset that indicates the number of images to skip before
 319            /// returning images. The default is 0. The offset should be less than
 320            /// ([totalEstimatedMatches](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-
 321            /// - count). Use this parameter along with the count parameter to page
 322            /// results. For example, if your user interface displays 20 images per page,
 323            /// set count to 20 and offset to 0 to get the first page of results. For each
 324            /// subsequent page, increment offset by 20 (for example, 0, 20, 40). It is
 325            /// possible for multiple pages to include some overlap in results. To prevent
 326            /// duplicates, see
 327            /// [nextOffset](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-reference#ne
 328            /// Use this parameter only with the Image API. Do not specify this parameter
 329            /// when calling the Trending Images API or the Web Search API.
 330            /// </param>
 331            /// <param name='safeSearch'>
 332            /// Filter images for adult content. The following are the possible filter
 333            /// values. Off: May return images with adult content. If the request is
 334            /// through the Image Search API, the response includes thumbnail images that
 335            /// are clear (non-fuzzy). However, if the request is through the Web Search
 336            /// API, the response includes thumbnail images that are pixelated (fuzzy).
 337            /// Moderate: If the request is through the Image Search API, the response
 338            /// doesn't include images with adult content. If the request is through the
 339            /// Web Search API, the response may include images with adult content (the
 340            /// thumbnail images are pixelated (fuzzy)). Strict: Do not return images with
 341            /// adult content. The default is Moderate. If the request comes from a market
 342            /// that Bing's adult policy requires that safeSearch is set to Strict, Bing
 343            /// ignores the safeSearch value and uses Strict. If you use the site: query
 344            /// operator, there is the chance that the response may contain adult content
 345            /// regardless of what the safeSearch query parameter is set to. Use site: only
 346            /// if you are aware of the content on the site and your scenario supports the
 347            /// possibility of adult content. Possible values include: 'Off', 'Moderate',
 348            /// 'Strict'
 349            /// </param>
 350            /// <param name='size'>
 351            /// Filter images by the following sizes. All: Do not filter by size.
 352            /// Specifying this value is the same as not specifying the size parameter.
 353            /// Small: Return images that are less than 200x200 pixels. Medium: Return
 354            /// images that are greater than or equal to 200x200 pixels but less than
 355            /// 500x500 pixels. Large: Return images that are 500x500 pixels or larger.
 356            /// Wallpaper: Return wallpaper images. You may use this parameter along with
 357            /// the height or width parameters. For example, you may use height and size to
 358            /// request small images that are 150 pixels tall. Possible values include:
 359            /// 'All', 'Small', 'Medium', 'Large', 'Wallpaper'
 360            /// </param>
 361            /// <param name='setLang'>
 362            /// The language to use for user interface strings. Specify the language using
 363            /// the ISO 639-1 2-letter language code. For example, the language code for
 364            /// English is EN. The default is EN (English). Although optional, you should
 365            /// always specify the language. Typically, you set setLang to the same
 366            /// language specified by mkt unless the user wants the user interface strings
 367            /// displayed in a different language. This parameter and the
 368            /// [Accept-Language](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-images-api-v7-referen
 369            /// header are mutually exclusive; do not specify both. A user interface string
 370            /// is a string that's used as a label in a user interface. There are few user
 371            /// interface strings in the JSON response objects. Also, any links to Bing.com
 372            /// properties in the response objects apply the specified language.
 373            /// </param>
 374            /// <param name='width'>
 375            /// Filter images that have the specified width, in pixels. You may use this
 376            /// filter with the size filter to return small images that have a width of 150
 377            /// pixels.
 378            /// </param>
 379            /// <param name='cancellationToken'>
 380            /// The cancellation token.
 381            /// </param>
 382            public static async Task<Images> ImageSearchAsync(this ICustomInstance operations, string customConfig, stri
 383            {
 2384                using (var _result = await operations.ImageSearchWithHttpMessagesAsync(customConfig, query, acceptLangua
 385                {
 2386                    return _result.Body;
 387                }
 2388            }
 389
 390    }
 391}

Methods/Properties

ImageSearchAsync()