Exposing Azure Search Service through API Management

Hi everyone,
I've just setup the API Management and customised the portal for the APIs i'd like to manage. One of the APIs is actually an Azure Search instance. The only problem i can see is that the JSON response from the Azure Search contains a couple of URLs that
tie back to the Search, I've tried to add a policy to mask the URLs in the response, but it doesn't quite get it right and the resulting URLs don't work.
So, is it possible to properly expose the Search service through the API Management service with properly masked URLs?
thanks,
Andrew

Hi Miao,
thanks for your quick response.
Although I don't need to know a specific date - i'd be interested if there is a target for when this functionality may be added? e.g. 2 months, 6 months?
I'm evaluating the technology at the moment for a deliverable required in a couple of months and will need to decide whether to wait or develop a wrapper around the search service that removes the data we don't want exposed.
thanks,
Andrew

Similar Messages

  • Clustered Primary key in Azure search service

    Hi ,
    Can you please let us know if it is possible to created Clustered Primary Key in Azure Search Service.
    We are unable to set the isKey property for more than one field in the index.
    Also can you providers some pointers on enabling search against multiple indexes. we have a use case where the search has to be performed against 3 different tables and the results set is a combination of all the 3 tables.
    Thanks,

    Since you mentioned setting the key property for more than one field, I think you're looking for compound keys, not clustered, is that correct? We don't support compound keys in Azure Search, to work around this you can concatenate (with a separator) the
    all parts of the key into a single string value and use it in Azure Search.
    Regarding multiple indexes, you can't search across multiple indexes in the same request right now. If you have different source tables and don't mind having them in the same index, you can index the content of the 3 tables into a single index (that has
    the combined/overlapped columns of all) and then search that index.
    This posting is provided "AS IS" with no warranties, and confers no rights.

  • Telemetry Support in Azure Search Service

    Does Azure Search Service provides any out-of-the-box telemetry support?
    For, example, does it store any data relating to which keyword has been searched the maximum number of time, or which filter has been applied more number of times, etc.

    Hi Pratik,
    Not yet, although this has certainly been on our radar. I encourage you to submit specific asks on Azure Search UserVoice at
    http://feedback.azure.com/forums/263029-azure-search. That'll let other users vote and great help us prioritize features in this area.
    Thanks!
    Eugene
    Thanks! Eugene Shvets Azure Search

  • How to Upgrade Azure search service ?

    Hi,
    How can i Upgrade Azure search service from Pricing tier FREE to STANDARD(PAID VERSION)?
    I have a Azure search service named https://l******.search.windows.net
    where it contain some document and index,but i has limit of 10000 document for free
    so help me out to Upgrade Azure search service for uninterpreted service ?

    Unfortunately we don't yet have an upgrade option currently. You'll need to create a new standard service and re-run the code that created the index and loaded the documents.
    This posting is provided "AS IS" with no warranties, and confers no rights.

  • BPEL service(SOAP) expose as RESTFul Service through OSB

    I am trying to invoke simple HelloWorld BPEL process exposed as SOAP Web Service through OSB as RESTFul service but always getting XML parsing exception in response action.
    Could any body give me steps how to implement it?
    Thanks
    Edited by: user10475179 on Dec 4, 2011 9:44 PM

    Thanks for your reply. I was able to manage to get xml, is there a simple way with simple steps to use JSON? If you have any steps/screenshots I would appreciate.
    Thanks
    Edited by: user10475179 on Dec 6, 2011 2:24 PM

  • How to upload to Azure Media Services when using HTML5 with Web API

    I keep finding examples demonstrating how to upload video to Azure Media Services through a console application.  I am developing an application using HTML5 with angularjs and web api, but am having trouble finding an example for uploading when you
    are getting the file from a form on a web browser.  The main issue I find is that I see a way to upload from a file path and no way to upload from a stream.  I would like to upload the file to blob storage and then associate the file in blob storage
    with the IAssetFile object, which is then associated with IAsset.  It this possible and if so can you point me in the direction of some tutorials that demonstrate this?  Also, I am allowing site members to upload videos and images.  For this
    images scenario, I saw doc. demonstrating how to start a job that will save the image into a different size, what if I need four different sizes for each image uploaded?

    Hi,
    the following example shows how to upload a stream into a blob and associate the blob with an asset: https://code.msdn.microsoft.com/How-to-upload-a-stream-to-d2750102.
    thanks,
    Julia
    This posting is provided "AS IS" with no warranties, and confers no rights.

  • How to access search service api to get results in JSON format?

    How to access search service api to get results in JSON format in asp.net web application outside SharePoint farm. It should be an app or SharePoint hosted.
    I have tried the same with the help of "http://dotnetmafia.com/blogs/dotnettipoftheday/archive/2013/04/09/how-to-query-sharepoint-2013-using-rest-and-javascript.aspx".
    function onQuerySuccess(data) {
        var results = data.d.query.PrimaryQueryResult.RelevantResults.Table.Rows.results;
        $("#resultsDiv").append('<table>');
        $.each(results, function () {
            $("#resultsDiv").append('<tr>');
            $.each(this.Cells.results, function () {
                $("#resultsDiv").append('<td>' + this.Value + '</td>');
            $("#resultsDiv").append('</tr>');
        $("#resultsDiv").append('</table>');
    But we are getting data.d as undefined.
    I have checked and verify that I am getting success and data in XML format not in JSON. As I expected the JSON. Although I have specified the "JSON" in headers " headers:
    { "Accept": "application/json;
    odata=verbose" } ". 
    Thanks

    Hi,
    Per my understanding, you might want to access search service REST API and get results in JSON format using jQuery.
    The code you use is working in a SharePoint Hosted App project, to compose a working code snippet easier, you can take the demo below for a try:
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
    <script type="text/javascript">
    _spBodyOnLoadFunctionNames.push("ready");
    function ready()
    var spAppWebUrl = _spPageContextInfo.webAbsoluteUrl;
    var queryUrl = spAppWebUrl + "/_api/search/query?querytext='book'";
    $.ajax({
    url: queryUrl,
    method: "GET",
    headers: { "Accept": "application/json; odata=verbose" },
    success: function (data) {
    console.log(data);
    var results = data.d.query.PrimaryQueryResult.RelevantResults.Table.Rows.results;
    $.each(results, function () {
    $.each(this.Cells.results, function () {
    console.log(this.Key+"--"+this.Value);
    error: function (data) {
    console.log(data);
    </script>
    Add the code into a page of your site, it will retrieve JSON format data and print the search result in the console of browser.
    More information about how to work with SharePoint Hosted App:
    https://msdn.microsoft.com/en-us/library/office/fp142379.aspx
    If you want to call the search service REST API in a remote environment, authentication is required to be taken into consideration, the link below with a working demo
    would be helpful:
    https://pholpar.wordpress.com/2013/05/11/accessing-office-365-sharepoint-sites-using-rest-from-a-local-html-javascript-host/
    Best regards
    Patrick Liang
    TechNet Community Support

  • Can Azure Search support indexing of documents (pdf, doc etc)

    Hi,
    I want to implement the azure search service indexing of documents (pdf, docs etc). is it possible ? if yes, then how ?
    Thanks

    Hi Shib,
    I wanted to respond with a few ideas based on your question.  As of today, we do not have a document cracker for Azure Search to allow you to index the content from files such as the ones you suggested.  This is a pretty highly requested feature
    (http://feedback.azure.com/forums/263029-azure-search/suggestions/6328662-blob-indexing-w-file-crackers), but we have not too date been able
    to prioritize this. 
    In the meantime, somethings you might consider looking at are iFilter or Apache Tika.  These are both great options that would allow you to programmatically extract the text from these files.  Based on the extracted text you could then post the
    content to Azure Search.  I personally think this example on CodeProject is a pretty good starting point if you were to consider using iFilter:
    http://www.codeproject.com/Articles/13391/Using-IFilter-in-C
    I hope that helps.
    Liam
    Sr. Program Manager, SQL Azure Strategy -
    Blog

  • SSL and API Management

    Hello,
    Any help with this technical issue would be greatly appreciated.
    When our clients call our API Management front end, we'd like them to connect to https://api.mydomain.com/service
    Traffic Manager will be used to load balance between API Management interfaces at 2 separate Azure DCs.
    Our API Management services are set up with the addresses apimNameSite1.azure-api.net and apimNameSite2.azure-api.net
    Our 2 back-end servers live in an azure IaaS vNets (in separate DCs) and their azure endpoint URLs are webServerSite1.cloudapp.net and webServerSite2.cloudapp.net
    We have a wildcard SSL certificate for *.mydomain.com
    From what I've read (I may have missed something), API management doesn't terminate SSL. (have since found this is incorrect, API Management DOES terminate SSL)  Can anyone give me a solution for configuring HTTPS for the API management interface in
    this scenario?
    One way I've thought of addressing it is to:
    - Create a CNAME record for the alias api.mydomain.com pointing to the traffic manager address
    - Traffic manager is configured using powershell to load balance between the apimNameSite1.azure-api.net and apimNameSite2.azure-api.net endpoints
    - Create a CNAME record for the alias webServerSite1.mydomain.com pointing to webServerSite1.cloudapp.net
    - An API in API management on Site1 is configured with an HTTPS URL scheme and has https://webServerSite1.mydomain.com/service set as the web service URL.
    - The IIS web site on the back end server has a HTTPS binding configured using the *.mydomain.com certificate
    I'm not sure if this will work, and I have to get a number of people to configure stuff on their end to POC it so would prefer to have it right at the start.  Does anyone have suggestions or links to good sources on the subject?

    I found the Custom Domain settings under Configuration for the API Management service.  Will close this thread if all works out ok.  I hope having traffic manager in front of it doesn't cause any issues.

  • Integrating a PHP Web App with an Existing Azure Mobile Services and Mobile App

    I've got an existing mobile app that is integrated with Azure's mobile services. The mobile services are currently connected to Azure Active Directory with MFA enabled. I'd like to build a separate PHP-based web application (Azure VM) that uses this existing
    mobile service and authentication.
    I reviewed the Azure PHP SDK, but didn't see any tie-ins to the Mobile Service. Additionally, Azure has some great tutorials, but for mobile services they all seem to focus on iOS, Android, and Windows phone. Any insight into how to tie a PHP-app into this
    backend would be much appreciated!

    Although there isn't any client library for PHP, you can still access Mobile Service using the
    Azure Mobile Service REST API.
    Abdulwahab Suleiman

  • Sorted dynamic list problem - Azure Search Index

    Hello Everyone,
    Let's consider following problem: Vote app - we have 1000 NBA players and we want to create an app which first: let user vote for a player he wants to see in the All Star Game, second: user gets current rank list (example: Michael Jordan 1st - 1M votes,
    Derrick Rose 2nd - 0,9M votes, .. , Freddy Kruger - 999th - 0 votes and so on).
    Question: what is the best structure that can be implemented here to keep this data sorted? I would like to query this data source already sorted - it is not allowed to get the list of 1000 and sort locally in app. For example: 800 players can have 0 votes
    and I do not want to download their names just to display '0 votes' next to their names. I would like to get only 50 with highest score at the moment. Index should be refreshed-rebuild after each new POST-vote request.
    Can Azure Search service and its Index help me to solve this problem? The perfect .NET SortedList synchronized structure would look like this [votes][name]:
    SortedList[99982]['Michael Jordan']
    SortedList[89921]['Derrick Rose']
    SortedList[0]['Freddy Kruger']
    SortedList[0]['Ace Ventura'] -> but SortedList does not allow the 0 KEY to appear twice.
    Regards,

    Hi pr0t,
    It should be straightforward to get the data you want using the $orderby, $filter, and $top options. For example, if you have a field named vote, you could include this in your search request:
    /indexes/players/docs?$orderby=vote desc&$filter=vote gt 0&$top=50
    This will give the top 50 players by vote in descending order by vote. You can then put the data in whatever data structure you like on the client.
    One thing to be aware of though is the way you update votes in the index. We highly recommend batching index updates as much as possible rather than updating one document at a time. You can have up to 1000 documents in a single batch when indexing. This
    reduces overhead and indexing pressure on your search service.
    Hope this helps,
    -Bruce

  • Exposing rest services in custom managed server

    Hi everybody,
    I want to know how can expose the rest sevices for custom managed server which is created from webcenter custom portal template ????
    Thanks.

    I mean that once i deployed my custom webcenter portal (including web 2.0 services) into managed server. it is possible or not to manage potal services (documents, discussions ..) through rest api using thz following URL: http://myManagedServer:myPort/rest/api/resourceIndex ????

  • Azure API Management - external endpoints

    Hi,
    I'm trying to implement the following scenario by using the preview Azure API management.
    I have a Web API, hosted in an OnPrem IIS. I want to expose this API via the Azure API Management.
    How can I manage exposing an OnPrem endpoint? Must I first be sure that my existing OnPrem API is published on the Internet? Or can I use a Service Bus Relay endpoint?
    Thanks.

    Hi David,
    Thanks for posting!
    Base on my understanding, If your website is hosted on-permission( Intranet), you need expose the endpoints for Azure API management , and you need use the http or https endpoints for this feature. You could use azure service bus service to expose
    your endpoints like this blog (http://blogs.msdn.com/b/paolos/archive/2013/10/24/how-to-integrate-a-windows-azure-web-site-with-a-lob-app-via-a-service-bus-relay-service.aspx
    ) and this thread  (http://stackoverflow.com/questions/9626386/relay-webhttprelaybinding-to-webapi-service ), Also, you could publish the site on internet
    and use the API url (http://blogs.iis.net/tomkmvp/archive/2010/02/03/how-do-you-access-iis-behind-a-nat-router.aspx ).If I am misunderstanding , please
    let me know free.
    Regards,
    Will
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • How to setup Traffic Manager with Azure API Management

    Hello-
    I have been trying to configure traffic manager as a Failover mechanism for Azure API Management (not sure if this is the correct terminology). 
    The gist is this: I have configured Azure API management to point to a set of Web API's hosted in a Cloud Service. I would like to use Traffic Manager as a Failover mechanism to route requests to a different data center, should the primary service becomes
    unresponsive or goes into a degraded state. 
    When going through the portal, there is no selection that is available to configure API Management/Web API: the selections are Cloud Service and Web apps.
    I've also looked into th Powershell Add-AzureTrafficManagerProfile using the -Type ["Any"] option with same result - it adds the endpoint but it is in a "Degraded" state.
    I need to understand the correct way to accomplish this - I'm pretty sure I'm doing something wrong.
    gigabit

    Hi Shaun,
    For most Traffic Manager applications, endpoint health is probed in the same way on each endpoint.  That's why Traffic Manager profiles have endpoint monitoring settings configured at the profile level, not the endpoint level.
    It appears your case is an exception--you need to configure a different monitoring path for each of your endpoints.  To do this, you should use
    'nested' Traffic Manager profiles.  Create a child profile for each endpoint (with endpoint monitoring settings particular to that endpoint) and then join them in a parent profile.  Endpoint health will propagate up from child to parent and should
    give the behaviour you're looking for.
    There's no downside: We bill only for the actual monitored endpoints and actual queries received (so no extra costs), and the parent-child link will be unwound within the Traffic Manager name servers (so no extra latency).
    Regards,
    Jonathan Tuliani
    Program Manager
    Azure Networking - DNS and Traffic Manager

  • Welcome to the Azure App Service API Apps Preview Forum!

    Welcome to the forum! This forum is for support of our customers who are using API Apps. Feel free to post any questions you have related to API Apps.
    The Azure App Service API Apps Team
    Jim Cheshire | Microsoft

    Hey Mikael!
    I actually was struggling through pretty much the same things at the same time that you were.
    The EventTriggered extension is actually in the Microsoft.Azure.AppService.ApiApps.Service namespace, so without a using directive for that it will not be happy.
    I created a library to help with the metadata generation required for Triggers, and did a write-up on exactly what it takes to create both a polling and push trigger (with a few more samples) here: https://github.com/nihaue/TRex#building-a-polling-trigger-api-app
    Hopefully having that combined with
    the official docs, and also
    Sameer's sample can get you on the right track.
    Hope that helps!

Maybe you are looking for