Visual Search Client
microsoft · Developer Tools
Visual Search API lets you discover insights about an image such as visually similar images, shopping sources, and related searches. The API can also perform text recognition, identify entities (people, places, things), return other topical content for the user to explore, and more. For more information, see [Visual Search Overview](https://docs.microsoft.com/azure/cognitive-services/bing-visual-search/overview). **NOTE:** To comply with the new EU Copyright Directive in France, the Bing Visual
Authentication
Sample Requests
Visual Search API lets you discover insights about an image such as visually similar images, shopping sources, and related searches. The API can also perform text recognition, identify entities (people, places, things), return other topical content for the user to explore, and more. For more informa
Hover any highlighted part to learn what it does
| X-BingApis-SDK | true |
curl -X POST "https://api.apis.guru/v2/specs/microsoft.com/cognitiveservices-VisualSearch/1.0/images/visualsearch?mkt=example&setLang=example&safeSearch=Off" \ -H "X-BingApis-SDK: true"
import requests
params = {
"mkt": "example",
"setLang": "example",
"safeSearch": "Off"
}
headers = {
"X-BingApis-SDK": "true"
}
response = requests.post(
"https://api.apis.guru/v2/specs/microsoft.com/cognitiveservices-VisualSearch/1.0/images/visualsearch",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/microsoft.com/cognitiveservices-VisualSearch/1.0/images/visualsearch');
url.searchParams.set('mkt', 'example');
url.searchParams.set('setLang', 'example');
url.searchParams.set('safeSearch', 'Off');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-BingApis-SDK': 'true'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/microsoft.com/cognitiveservices-VisualSearch/1.0/images/visualsearch")
q := baseURL.Query()
q.Set("mkt", "example")
q.Set("setLang", "example")
q.Set("safeSearch", "Off")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-BingApis-SDK", "true")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/microsoft.com/cognitiveservices-VisualSearch/1.0/images/visualsearch")
uri.query = URI.encode_www_form({
"mkt" => "example",
"setLang" => "example",
"safeSearch" => "Off"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-BingApis-SDK"] = "true"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/microsoft.com/cognitiveservices-VisualSearch/1.0/images/visualsearch?" . http_build_query([
"mkt" => "example",
"setLang" => "example",
"safeSearch" => "Off"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-BingApis-SDK: true"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with Visual Search Client?
Visual Search Client is a Developer Tools API. Developers commonly use developer tools APIs for:
- automating code review and quality checks
- integrating CI/CD pipelines and build systems
- managing feature flags and A/B tests
- monitoring errors and application performance
- generating and validating test data
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Visual Search Client is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?