Calling REST API in Snowflake - api

I have a usecase where in API's are published internally. Not using AWS Gateway or Azure. API's are deployed OnPrem. How can i use Snowflake External or internal functions to load data accessing REST API published internally?

Related

How to automate import API's in azure api management service

I have created instance in Azure API management service and want to import 200+ APIs. Is there any way to automatically import the APIs in portal by writing script or any other way also want to create a product and group the imported APIs?
You can automate deployment of API's by using Azure APIM REST API. You will find everything there. Basically whatever you do in Azure Portal on APIM resource by clicking you can do by calling this REST API.
If you don't feel like calling REST API, you can always use Az.ApiManagement PowerShell Module or az apim Azure CLI - they have more or less the same functionality.
I guess that is it, the question is too broad to give you more specifics.

Restrict access to certain azure functions endpoints (REST API)

I am experimenting with Azure Functions and stumbled upon concept that I don't really know how to implement properly.
I have Serverless REST Api with Azure functions which contains different endpoints. Only one of this endpoint is meant to be public aka for customers (e.g. GET /api/items) but it also contains different endpoints that need to be triggered only from code like /api/items/sync, /api/items/external and similar. For now I have HTTP Trigger that makes request to /api/items/sync but this endpoint is also available for others aka no restrictions. I know that Azure Functions has Function & Master Keys. Is there a way how to limit these endpoints so they would work only if called from Azure Functions (Like HTTP Trigger) ?
I've received answer from "Azure Architect" slack. Azure has API Management Service which allows to secure certain endpoints and is probably the best way how to handle Azure Functions (and not only them) endpoints for public. What I've done is limited my Serverless API (Azure Function REST API) to "Function" auth type and added API Management service with appropriate route. So my Azure Function is now accessible through API Management Service and Azure Functions endpoints are not explicit.

Where to call Azure Blob Storage APIs from - web app server side or azure function

Is it better (best practice wise) to use the Azure Blob Storage APIs from an Azure Web App (server side code) or make the API calls from an Azure function.
I think using the functions way is better for 'separation of concerns', more maintainable - in that multiple apps could use the same azure function - one place instead of many, can be monitored from within Azure (metrics) and dashboard. During a data breach a function can be turned off without shutting down the web app. Are there other reasons to use the API from a function vs the Web App backend?
Thanks

APIM Automation

I have multiple API's which I have exposed it via Azure API Management.
I am using one instance for across various environments. So currently I am adding / updating the API's / operations manually. Also I am setting cache, rewrite url for few of these operations. But now managing these are becoming a bit of too much work.
Is there a way, when any operation contracts changes in an API, I can then build / refresh the APIM and also setup the cache, re-write url, policies etc without manual intervention in APIM?
You can consider use Swagger, the OPEN API in Azure to control the data flow with Azure API policy for security and using Azure provided REST API to provision the APIm service and use the App Service to build the backend.
General Concept Flow
AGW <> APIM <> API <> App Service

Create Azure Api App from Swagger meta data

I have created some APIs in API management layer, which are essentially proxies between the calling client and an underlying web api.
I did this by importing the swagger file of the underlying API, and then adding the newly created API to a Product, repeating this for each separate proxy that I needed. This means then that the underlying API could be called but not without the subscriber key of the product that the newly created API was attached to.
Is it possible to do something similar with API apps, i.e. creating API apps using just the swagger file from the underlying API in the azure portal, that act as proxies between the calling client and an underlying web api (as below)?
Do you mind expanding on why do you need to have API Apps acting as proxies?
I am not aware of such capability for API Apps specifically. There are Swagger-based code generation tools available, for example on http://swagger.io/open-source-integrations/. So perhaps you will be able to find something that would work for you.