Referens för API för sökning efter lokala företag i Bing v7

Varning

Den 30 oktober 2020 flyttades Bing-sökning-API:erna från Azure AI-tjänster till Bing-sökning Services. Den här dokumentationen tillhandahålls endast som referens. Uppdaterad dokumentation finns i dokumentationen för API:et för Bing-sökning. Anvisningar om hur du skapar nya Azure-resurser för Bing-sökning finns i Skapa en Bing-sökning resurs via Azure Marketplace.

API:et för sökning efter lokala företag skickar en sökfråga till Bing för att få resultat som inkluderar restauranger, hotell eller andra lokala företag. För platser kan frågan ange namnet på det lokala företaget eller en kategori (till exempel restauranger nära mig). Entitetsresultat omfattar personer, platser eller saker. Platsen i det här sammanhanget är affärsentiteter, stater, länder/regioner osv.

Det här avsnittet innehåller teknisk information om svarsobjekten och de frågeparametrar och rubriker som påverkar sökresultaten. Exempel som visar hur du gör begäranden finns i Snabbstart för C#-snabbstart för lokal företagssökning eller Java-snabbstart för sökning i lokalt företag.

Information om rubriker som begäranden ska innehålla finns i Rubriker.

Information om frågeparametrar som begäranden ska innehålla finns i Frågeparametrar.

Information om JSON-objekten som svaret innehåller finns i Svarsobjekt.

Information om tillåten användning och visning av resultat finns i Använda och visa krav.

Slutpunkt

Om du vill begära lokala affärsresultat skickar du en GET-begäran till:

https://api.cognitive.microsoft.com/bing/v7.0/localbusinesses/search

Begäran måste använda HTTPS-protokollet.

Anteckning

Den maximala URL-längden är 2 048 tecken. För att säkerställa att URL-längden inte överskrider gränsen bör den maximala längden för dina frågeparametrar vara mindre än 1 500 tecken. Om URL:en överskrider 2 048 tecken returnerar servern 404 Hittades inte.

Sidhuvuden

Följande är de rubriker som en begäran och ett svar kan innehålla.

Huvud Description
Acceptera Valfritt begärandehuvud.

Standardmedietypen är application/json. Om du vill ange att svaret använder JSON-LD anger du accept-huvudet till application/ld+json.
Accept-Language Valfritt begärandehuvud.

En kommaavgränsad lista över språk som ska användas för användargränssnittssträngar. Listan är i fallande prioritetsordning. Mer information, bland annat om det förväntade formatet, finns i RFC2616.

Det här huvudet och frågeparametern setLang är ömsesidigt uteslutande – ange inte båda.

Om du anger huvudet måste du även ange frågeparametern cc. För att fastställa vilken marknad som resultat ska returneras för använder Bing det första språk som stöds på listan och kombinerar det med parametervärdet cc. Om listan inte innehåller något språk som stöds hittar Bing det närmaste språket och marknaden som har stöd för begäran, eller så använder Bing en aggregerad eller standardmarknad för resultatet. För att avgöra vilken marknad som används i Bing kan du gå till BingAPIs-Market-huvudet.

Använd enbart det här huvudet och cc-frågeparametern om du anger flera språk. Annars kan du använda frågeparametrarna mkt och setLang.

En användargränssnittssträng är en sträng som används som en etikett i ett användargränssnitt. Det finns några användargränssnittssträngar i JSON-svarsobjekt. Alla länkar till Bing.com-egenskaper i svarsobjekten använder det angivna språket.
BingAPIs-Market Svarshuvud.

Marknaden som används av begäran. Formuläret är <languageCode-countryCode<>>. Exempel: sv-SE.
BingAPIs-TraceId Svarshuvud.

ID för loggposten som innehåller information om begäran. När ett fel uppstår ska du avbilda detta ID. Om det inte går att fastställa och lösa problemet ska du ange ID:t tillsammans med annan information som du ger supportteamet.
Ocp-Apim-Subscription-Key Begärandehuvud som krävs.

Prenumerationsnyckeln som du fick när du registrerade dig för den här tjänsten i Azure AI-tjänster.
Pragma Valfritt begärandehuvud

Som standard returnerar Bing cachelagrat innehåll om det finns. Om du vill förhindra att Bing returnerar cachelagrat innehåll ska du ställa in huvudet Pragma på no-cache (till exempel Pragma: no-cache).
User-Agent Valfritt begärandehuvud.

Användaragenten som skapade begäran. Bing använder användaragenten för att ge mobila användare en optimerad upplevelse. Även om det är valfritt rekommenderar vi även att du alltid anger det här huvudet.

Användaragenten ska vara samma sträng som alla vanliga webbläsare skickar. Information om användaragenter finns i RFC 2616.

Här följer några exempel på användaragentsträngar.
  • Windows Phone – Mozilla/5.0 (kompatibel; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 822)

  • Android – Mozilla/5.0 (Linux; U; Android 2.3.5; en-us; SCH-I500 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, som Gecko) Version/4.0 Mobile Safari/533.1

  • iPhone – Mozilla/5.0 (iPhone; CPU iPhone OS 6_1 som Mac OS X) AppleWebKit/536.26 (KHTML; som Gecko) Mobile/10B142 iPhone4; 1 BingWeb/3.03.1428.20120423

  • PC – Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; rv:11.0) som Gecko

  • iPad – Mozilla/5.0 (iPad; CPU OS 7_0 som Mac OS X) AppleWebKit/537.51.1 (KHTML, som Gecko) Version/7.0 Mobile/11A465 Safari/9537.53
X-MSEdge-ClientID Valfritt huvud för begäran och svar.

Bing använder det här huvudet för att ge användarna konsekvent beteende i Bing API-anrop. Bing ger ofta förhandsversioner av nya funktioner och förbättringar och använder klient-ID som en nyckel för att tilldela trafik till olika förhandsversioner. Om du inte använder samma klient-ID för en användare vid flera förfrågningar kan sedan Bing tilldela användaren flera motstridiga förhandsversioner. Om du tilldelas flera motstridiga förhandsversioner kan det leda till en inkonsekvent användarupplevelse. Om till exempel den andra begäran har en annan förhandsversionstilldelning än den första kan upplevelsen vara oväntad. Bing kan också använda klient-ID för att skräddarsy webbresultatet för klient-ID:ts sökhistorik, vilket ger användaren en mer omfattande upplevelse.

Bing använder också det här huvudet för att förbättra resultatets rangordning genom att analysera aktiviteten som genererats av ett klient-ID. Relevansförbättringarna kan ge bättre resultat som levereras av Bing-API: er, vilka i sin tur möjliggör högre klickfrekvens för API-konsumenten.

Viktigt! Även om det är valfritt bör du överväga att använda det här huvudet som krävs. Bestående klient-ID för flera förfrågningar för samma slutanvändare och enhetskombination gör det möjligt 1) för API-konsumenten att få en konsekvent användarupplevelse och 2) att få högre klickfrekvens via resultat av högre kvalitet från Bing-API: er.

Följande är de grundläggande användningsregler som gäller för det här huvudet.
  • Varje användare som använder ditt program på enheten måste ha ett unikt, Bing-genererat klient-ID.

    Om du inte använder det här huvudet i begäran genererar Bing ett ID och returnerar det i svarshuvudet X-MSEdge-ClientID. Den enda gången som du inte får inkludera det här huvudet i en begäran är första gången du använder din app på enheten.

  • Använd klient-ID för varje Bing API-begäran som din app gör för den här användaren på enheten.

  • UPPMÄRKSAMHET: Du måste se till att det här klient-ID:t inte kan länkas till någon autentiseringsbar användarkontoinformation.

  • Spara klient-ID:t. Om du vill bevara ID:t i en webbläsarapp ska du använda en beständig HTTP-cookie i alla sessioner. Använd inte en sessionscookie. För andra appar, till exempel mobilappar, använder du enhetens beständiga lagring för att bevara ID.

    Nästa gång användaren använder appen på enheten ska du hämta klient-ID:t som du sparade.

Obs! Bing-svar kanske eller kanske inte omfattar det här huvudet. Om svaret innehåller det här huvudet ska du avbilda klient-ID:t och använda det för alla efterföljande Bing-begäranden för användaren på enheten.

Obs! Om du inkluderar X-MSEdge-ClientID får du inte ta med cookies i begäran.
X-MSEdge-ClientIP Valfritt begärandehuvud.

Klientenhetens IPv4- eller IPv6-adress. IP-adressen används för att identifiera användarens plats. Bing använder platsinformationen för att fastställa SafeSearch-beteende.

Obs!Även om det är valfritt rekommenderar vi att du alltid anger det här huvudet och huvudet X-Search-Location.

Förvräng inte adressen (till exempel genom att ändra den sista oktetten till 0). Om adressresultatet förvillas på en plats som inte är i närheten av enhetens verkliga plats kan det leda till att Bing presenterar felaktiga resultat.
X-Search-Location Valfritt begärandehuvud.

En semikolonavgränsad lista med nyckel/värde-par som beskriver klientens geografiska plats. Bing använder platsinformationen till att fastställa ett säkert sökbeteende och returnera relevant lokalt innehåll. Ange nyckel/värde-par som <nyckel>:<värde>. Följande är de nycklar som används för att ange användarens plats.

  • lat – Latitud för klientens plats, i grader. Latituden måste vara större än eller lika med -90.0 och vara mindre än eller lika med +90.0. Negativa värden anger sydliga latituder och positiva värden anger nordliga latituder.

  • long – Longitud för klientens plats, i grader. Longituden måste vara större än eller lika med -180.0 och vara mindre än eller lika med +180.0. Negativa värden anger västliga longituder och positiva värden anger östliga longituder.

  • re– Radien i meter, som anger koordinaternas vågräta noggrannhet. Skicka värdet som returneras av enhetens platstjänst. Typiska värden kan vara 22 m för GPS/Wi-Fi, 380 m för mobiltornstriangulering och 18 000 m för omvänd IP-sökning.

  • ts – UTC UNIX-tidsstämpeln för när klienten var på platsen. (UNIX-tidsstämpeln är antalet sekunder sedan den 1 januari 1970.)

  • head – Valfritt. Klientens relativa riktning eller färdriktning. Ange färdriktningen som grader från 0 till 360 där du räknar medurs i förhållande till norr. Ange endast den här nyckeln om nyckeln sp är nollskiljd.

  • sp – Den vågräta hastigheten (hastighet), i meter per sekund, som klientenheten färdas.

  • alt – Höjden på klientenheten i meter.

  • are – Valfritt. Radien, i meter, som anger koordinaternas lodräta exakthet. Radius är som standard 50 kilometer. Ange den här nyckeln endast om du anger nyckeln alt.

OBSERVERA: Även om dessa nycklar är valfria, desto mer information får du, desto mer exakt blir platsresultaten.

OBSERVERA: Du uppmanas att alltid ange användarens geografiska plats. Det är särskilt viktigt att ange plats om klientens IP-adress inte exakt avspeglar användarens fysiska plats (till exempel om klienten använder VPN). För bästa resultat bör du inkludera det här huvudet och huvudet X-MSEdge-ClientIP, men du bör minst inkludera det här huvudet.

Anteckning

Kom ihåg att användningsvillkoren kräver efterlevnad med alla tillämpliga lagar, inklusive lagar om användande av dessa huvud. I till exempel vissa jurisdiktioner, som Europa, finns det krav på att skaffa användarens medgivande innan du placerar vissa spårningsenheter på användarenheter.

Frågeparametrar

Begäran kan innehålla följande frågeparametrar. Se kolumnen Obligatorisk för obligatoriska parametrar. Du måste URL-koda frågeparametrarna.

Name Värde Typ Obligatorisk
Räkna Antalet resultat som ska returneras, med början i det index som anges av parametern offset . Sträng No
localCategories Lista över alternativ som definierar sökning efter affärskategori. Se Sökning efter lokala företagskategorier Sträng No
mkt Marknaden som resultatet kommer från.

En lista över möjliga marknadsvärden finns i Marknadskoder.

OBSERVERA: API:et för sökning efter lokala företag stöder för närvarande endast en-us-marknad och språk.

Sträng Yes
offset Indexet för att starta resultat som anges av parametern count . Integer No
F Användarens sökterm. Sträng No
responseFormat Medietypen som ska användas för svaret. Följande är möjliga skiftlägesokänsliga värden.
  • JSON
  • JSONLD

Standardvärdet är JSON. Information om JSON-objekten som svaret innehåller finns i Svarsobjekt.

Om du anger JsonLd innehåller svarstexten JSON-LD-objekt som innehåller sökresultaten. Information om JSON-LD finns i JSON-LD.
Sträng No
safeSearch Ett filter som används för att filtrera innehåll som är olämpligt för barn. Här följer de möjliga skiftlägeskänsliga filtervärdena.
  • Av – Returnera webbsidor med vuxentext, bilder eller videor.

  • Måttlig – Returnera webbsidor med vuxentext, men inte vuxna bilder eller videor.

  • Strikt – Returnera inte webbsidor med vuxentext, bilder eller videor.

Standardinställningen är Måttlig.

OBSERVERA: Om begäran kommer från en marknad som Bings vuxenpolicy kräver som safeSearch är inställd på Strikt ignorerar safeSearch Bing värdet och använder Strict.

Obs! Beroende på om du använder frågeoperator site: finns det en risk att svaret har innehåll som är olämpligt för barn oberoende av vad frågeparametern safeSearch är inställd på. Använd endast site: om du är medveten om innehållet på webbplatsen och ditt scenario tillåter möjligheten att det förekommer innehåll som är olämpligt för barn.
Sträng No
setLang Språket som ska användas för användargränssnittssträngar. Ange språk med hjälp av den tvåstaviga språkkoden ISO 639-1. Språkkoden för engelska är till exempel EN. Standardvärdet är EN (engelska).

Även om det är valfritt bör du alltid ange språket. Normalt anger du setLang på samma språk som anges av mkt om inte användaren vill att gränssnittets strängar ska visas på ett annat språk.

Den här parametern och rubriken Accept-Language är ömsesidigt uteslutande – ange inte båda.

En användargränssnittssträng är en sträng som används som en etikett i ett användargränssnitt. Det finns några användargränssnittssträngar i JSON-svarsobjekt. Alla länkar till Bing.com-egenskaper i svarsobjekten använder det angivna språket.
Sträng No

Svarsobjekt

Följande är JSON-svarsobjekten som svaret kan innehålla. Om begäran lyckas är objektet på den översta nivån i svaret SearchResponse-objektet . Om begäran misslyckas är objektet på den översta nivån ErrorResponse-objektet .

Objekt Description
Plats Definierar information om ett lokalt företag, till exempel en restaurang eller ett hotell.

Fel

Definierar felet som inträffade.

Element Beskrivning Typ
Koden Felkoden som identifierar felkategorin. En lista över möjliga koder finns i Felkoder. Sträng
Meddelande En beskrivning av felet. Sträng
moreDetails En beskrivning som ger ytterligare information om felet. Sträng
Parametern Frågeparametern i begäran som orsakade felet. Sträng
subCode Felkoden som identifierar felet. Om code till exempel är InvalidRequest subCode kan det vara ParameterInvalid eller ParameterInvalidValue. Sträng
Värde Frågeparameterns värde som inte var giltigt. Sträng

ErrorResponse

Det objekt på den översta nivån som svaret innehåller när begäran misslyckas.

Name Värde Typ
_Typ Typtips. Sträng
Fel En lista med fel som beskriver orsakerna till att begäran misslyckades. Fel[]

Licens

Definierar den licens under vilken texten eller fotot kan användas.

Name Värde Typ
name Namnet på licensen. Sträng
url URL:en till en webbplats där användaren kan få mer information om licensen.

Använd namnet och URL:en för att skapa en hyperlänk.
Sträng

Definierar komponenterna i en hyperlänk.

Name Värde Typ
_Typ Typtips. Sträng
text Visningstexten. Sträng
url En URL. Använd URL:en och visa text för att skapa en hyperlänk. Sträng

Organisation

Definierar en utgivare.

Observera att en utgivare kan ange sitt namn eller sin webbplats eller båda.

Name Värde Typ
name Utgivarens namn. Sträng
url URL:en till utgivarens webbplats.

Observera att utgivaren kanske inte tillhandahåller någon webbplats.
Sträng

Plats

Definierar information om ett lokalt företag, till exempel en restaurang eller ett hotell.

Name Värde Typ
_Typ Typtips, som kan vara inställt på något av följande:

  • Hotell
  • LocalBusiness
  • Restaurang
  • Sträng
    adress Postadressen till den plats där entiteten finns. PostalAddress
    entityPresentationInfo Ytterligare information om entiteten, till exempel tips som du kan använda för att fastställa entitetens typ. Till exempel om det är en restaurang eller ett hotell. Fältet entityScenario är inställt på ListItem. EntityPresentationInfo
    name Entitetens namn. Sträng
    telefon Enhetens telefonnummer. Sträng
    url URL:en till entitetens webbplats.

    Använd den här URL:en tillsammans med entitetens namn för att skapa en hyperlänk som när du klickar tar användaren till entitetens webbplats.
    Sträng
    webSearchUrl URL:en till Bings sökresultat för den här platsen. Sträng

    QueryContext

    Definierar frågekontexten som Bing använde för begäran.

    Element Beskrivning Typ
    adultIntent Ett booleskt värde som anger om den angivna frågan har en vuxet avsikt. Värdet är sant om frågan har en avsikt som är vuxet. annars falskt. Boolesk
    ändringOverrideQuery Frågesträngen som ska användas för att tvinga Bing att använda den ursprungliga strängen. Om frågesträngen till exempel salingar nedåt, kommer åsidosättningsfrågesträngen att vara +saling downwind. Kom ihåg att koda frågesträngen som resulterar i %2Bsaling+downwind.

    Det här fältet inkluderas bara om den ursprungliga frågesträngen innehåller ett stavfel.
    Sträng
    alteredQuery Frågesträngen som används av Bing för att utföra frågan. Bing använder den ändrade frågesträngen om den ursprungliga frågesträngen innehöll stavfel. Om frågesträngen till exempel är saling downwindblir den ändrade frågesträngen sailing downwind.

    Det här fältet inkluderas bara om den ursprungliga frågesträngen innehåller ett stavfel.
    Sträng
    askUserForLocation Ett booleskt värde som anger om Bing kräver att användarens plats ger korrekta resultat. Om du har angett användarens plats med hjälp av rubrikerna X-MSEdge-ClientIP och X-Search-Location kan du ignorera det här fältet.

    För platsmedvetna frågor, till exempel "dagens väder" eller "restauranger nära mig" som behöver användarens plats för att ge korrekta resultat, är det här fältet inställt på sant.

    För platsmedvetna frågor som innehåller platsen (till exempel "Väder i Seattle" anges det här fältet till falskt. Det här fältet är också inställt på falskt för frågor som inte är platsmedvetna, till exempel "bästsäljare".
    Boolesk
    originalQuery Frågesträngen som anges i begäran. Sträng

    Identifierbar

    Name Värde Typ
    id En resursidentifierare Sträng

    RankingGroup

    Definierar en sökresultatgrupp, till exempel huvudlinjen.

    Name Värde Typ
    objekt En lista med sökresultat som ska visas i gruppen. RankingItem

    RankingItem

    Definierar ett sökresultatobjekt som ska visas.

    Name Värde Typ
    resultIndex Ett nollbaserat index för objektet i svaret som ska visas. Om objektet inte innehåller det här fältet visar du alla objekt i svaret. Visa till exempel alla nyhetsartiklar i nyhetssvaret. Integer
    answerType Svaret som innehåller objektet som ska visas. Till exempel Nyheter.

    Använd typen för att hitta svaret i SearchResponse-objektet. Typen är namnet på ett SearchResponse-fält.

    Använd dock bara svarstypen om det här objektet innehåller värdefältet. annars kan du ignorera det.
    Sträng
    textualIndex Indexet för svaret i textualAnswers som ska visas. Osignerat heltal
    värde Det ID som identifierar antingen ett svar som ska visas eller ett objekt i ett svar som ska visas. Om ID:t identifierar ett svar visar du alla objekt i svaret. Identifierbar

    RankingResponse

    Definierar var innehållet på sökresultatsidan ska placeras och i vilken ordning.

    Name Värde
    Mainline Sökresultaten som ska visas i huvudraden.
    Pole De sökresultat som ska ges den mest synliga behandlingen (till exempel visas ovanför huvudlinjen och sidopanelen).
    Sidofältet Sökresultaten som ska visas i sidopanelen.

    SearchResponse

    Definierar objektet på den översta nivån som svaret innehåller när begäran lyckas.

    Observera att om tjänsten misstänker en Denial of Service-attack kommer begäran att lyckas (HTTP-statuskoden är 200 OK); Brödtexten i svaret är dock tom.

    Name Värde Typ
    _Typ Typtips, som är inställt på SearchResponse. Sträng
    placerar En lista över entiteter som är relevanta för sökfrågan. JSON-objekt
    queryContext Ett objekt som innehåller frågesträngen som Bing använde för begäran.

    Det här objektet innehåller frågesträngen som angetts av användaren. Den kan också innehålla en ändrad frågesträng som Bing använde för frågan om frågesträngen innehöll ett stavfel.
    QueryContext

    Felkoder

    Följande är de möjliga HTTP-statuskoder som en begäran returnerar.

    Statuskod Description
    200 Åtgärden lyckades.
    400 En av frågeparametrarna saknas eller är ogiltig.
    401 Prenumerationsnyckeln saknas eller är inte giltig.
    403 Användaren autentiseras (till exempel använde de en giltig prenumerationsnyckel) men de har inte behörighet till den begärda resursen.

    Bing kan också returnera den här statusen om anroparen överskred sina frågor per månadskvot.
    410 Begäran använde HTTP i stället för HTTPS-protokollet. HTTPS är det enda protokoll som stöds.
    429 Anroparen överskred sin kvot för frågor per sekund.
    500 Oväntat serverfel.

    Om begäran misslyckas innehåller svaret ett ErrorResponse-objekt som innehåller en lista över felobjekt som beskriver vad som orsakade felet. Om felet är relaterat till en parameter identifierar fältet parameter den parameter som är problemet. Och om felet är relaterat till ett parametervärde value identifierar fältet det värde som inte är giltigt.

    {
      "_type": "ErrorResponse", 
      "errors": [
        {
          "code": "InvalidRequest", 
          "subCode": "ParameterMissing", 
          "message": "Required parameter is missing.", 
          "parameter": "q" 
        }
      ]
    }
    
    {
      "_type": "ErrorResponse", 
      "errors": [
        {
          "code": "InvalidAuthorization", 
          "subCode": "AuthorizationMissing", 
          "message": "Authorization is required.", 
          "moreDetails": "Subscription key is not recognized."
        }
      ]
    }
    

    Följande är möjliga felkods- och underfelskodvärden.

    Kod Underkod Description
    ServerError UnexpectedError
    ResourceError
    NotImplemented
    HTTP-statuskoden är 500.
    InvalidRequest ParameterMissing
    ParameterInvalidValue
    HttpNotAllowed
    Blockerad
    Bing returnerar InvalidRequest när någon del av begäran inte är giltig. Till exempel saknas en obligatorisk parameter eller så är ett parametervärde ogiltigt.

    Om felet är ParameterMissing eller ParameterInvalidValue är HTTP-statuskoden 400.

    Om du använder HTTP-protokollet i stället för HTTPS returnerar Bing HttpNotAllowed och HTTP-statuskoden är 410.
    RateLimitExceeded Inga underkoder Bing returnerar RateLimitExceeded när du överskrider kvoten för frågor per sekund (QPS) eller frågor per månad (QPM).

    Om du överskrider QPS returnerar Bing HTTP-statuskod 429, och om du överskrider QPM returnerar Bing 403.
    InvalidAuthorization AuthorizationMissing
    AuthorizationRedundancy
    Bing returnerar InvalidAuthorization när Bing inte kan autentisera anroparen. Till exempel Ocp-Apim-Subscription-Key saknas rubriken eller så är prenumerationsnyckeln inte giltig.

    Redundans inträffar om du anger mer än en autentiseringsmetod.

    Om felet är InvalidAuthorization är HTTP-statuskoden 401.
    InsufficientAuthorization AuthorizationDisabled
    AuthorizationExpired
    Bing returnerar InsufficientAuthorization när anroparen inte har behörighet att komma åt resursen. Detta kan inträffa om prenumerationsnyckeln har inaktiverats eller har upphört att gälla.

    Om felet är InsufficientAuthorization är HTTP-statuskoden 403.

    Nästa steg