Functions Proxies is an API toolkit built into Functions to enable you to build APIs faster! Proxies makes it easy to perform simple API operations, like nesting multiple Functions together under one API, as well as API fundamentals, like mock APIs, OpenAPI definitions, and monitoring.
Since preview we’ve gotten a lot of awesome feedback and responded with some new functionality to make Proxies even better. We’re now releasing Proxies under General Availability today, November 15th. Check out what’s new in Proxies at Connect()
New Portal Experience for Proxies
- Request and response overrides can now be set in the portal
- Modify input request to send different HTTP verbs, headers, or query parameters to a backend service
- Replace backend response status code, headers, and body
Mock API support in Proxies
Using the new editor, you can create mock APIs. You do this by using only response overrides and no backend URL. Mock APIs allow you to create a simple API at your real REST endpoint, allowing developers to start testing API integrations while the API is still under development.
The Functions Core Tools are our set of CLI tools for locally developing Functions, and they now support authoring and running Proxies!
Get started with a new proxy using
Function proxy create --name <yourproxyname>
When prompted for a template, choosing SampleProxy will create a simple proxy to call httpbin.org/ip and returns your public IP address. Choosing RequestResponseOverride will create a simple mock API that returns a sample body and header. Note that the template uses “localhost” to reference a local function. This will allow the same Proxy to work in the cloud, once the Function App has a different hostname.
Read more about developing locally in our docs.
Application Insights Support
Proxies will now publish telemetry to Azure Application Insights when App Insights is enabled for your function App. This allows for real time analytics steaming, as well as rich historical analysis. With Proxies you can not only measure your serverless API, but also proxy a legacy API and leverage App Insights to measure that API. Read more about our Application Insights support in Functions in the docs.
Proxy rules will now show up in OpenAPI definition templates generated in Functions! A completed OpenAPI definition allows you to import APIs defined in Proxies into a wide range of tools and services, like Logic Apps, Visual Studio solutions, Power Apps, Flow, and Azure API Management.
Read more about Functions OpenAPI support here in the docs.
On by Default
As a part of the GA release, Proxies will now be enabled by default on all Function Apps! We have also baked in some performance improvements to Proxies.
Get Started Now!
We’re very excited to release Proxies to the world! We’ve already seen the community build awesome widgets for single page applications, serverless URL shorteners, and much more with Proxies, and we’re excited to see what you build next!
- Get started at our docs at aka.ms/ProxiesDocs
- See a video of what’s new with Proxies at Connect()
- To report bugs, please open an issue on the Azure-FunctionsGitHub repo.
- Submit any feature requests on our UserVoice
- For technical questions, please post on the MSDN forums or StackOverflow. The entire Functions engineering team monitors these questions, so you’re sure to get an expert answer.
- For product news, follow @AzureFunctions
- For walkthroughs and live sessions, check out Azure Functions on Youtube