API Management for Serverless and Multi-Cloud (Cloud Next '19)
Thank. You Kathy so. In, this session we're going to talk about a few key concepts, will. Touch on API, management for, cillessen. Multi-cloud, so, my name's Ruth, Paul Bogle I'll, be the. Co-host of this session for the the next 50 minutes and we'll, try and make it interactive, and and interesting, so. I'm part of the Apogee product team I Drive. A few different areas. For the Apogee team for. The core platform and then, I'm also today going to be joined by my. Partner in crime, Kelsey. Hightower, who's, gonna come in and actually show stuff in action, so. Just. A quick show of hands how many developers. In the audience. Excellent. How. About. So. Ellis how. Many folks working with serverless. Okay. And just. One last question how. Many folks out here by. Using multiple, clouds, today. Okay. Just, look around quite a few keep, your hands up for a second if you guys can, look. Around okay excellent. Awesome so then you can't be the right session, so. Let's start with some housekeeping, rules here real quick so, this. This time at next we are doing Q&A, a little bit differently we. Have couple of mics here in the middle so you're more than welcome to line up towards, the end of the session for questions but. If not you. Can also use the cloud. Next app click on the Dory Q&A, and ask. Any questions, out there as well, and towards. The end of the session we will just read up those questions and just take our shot at answering it as you go along. Awesome. So let's spend a few minutes talking a little bit about serverless you. Know as I go spend. Time with many developers. They're, adopting solet's at their own pace but. There are key LEDs from serverless, which. Make it very, attractive the. First one is the. Aspect of completely, abstracting, away the. Underlying. Infrastructure, so. Developers, love to call and they. Want to really deal with coal and say here's, my code just. Go make it happen just go run it for me Oh, business. Obviously there's some other business benefits, to be ascertained from that as well such. As agility. Because. You're working with cord as a construct, and you are not. Worrying about infrastructure. Assuming. A provider can manage there for you you, become more fast at rolling out capabilities. Which are more differentiated. For. Your business, and gain. Competitive, advantage. Productivity. Is another key aspect of it because. You can do that faster, you have multiple, teams who can collaborate, and build, capabilities. At a much faster pace. So. Solace is obviously catching, up as you saw today with, a show of hands lot, of folks are looking, at server less as the next style of architecture in. Building. Newer modern, capabilities and. Micro. Sources, kind of goes hand in hand with serverless in a big way usually. When folks are refactoring, the applications, from. Monoliths, into smaller micro services. Many, of them are choosing, serverless, at the key architecture, style to. Build, those applications and. Clearly. We have seen a big evolution, in server less. Then. So let's hit the stage a few years back it was all about functions, or also, known as functions, as a service. Clearly. There's been an evolution from, functions. To. Building, full-blown. Apps and. Now. To. Serverless containers, of. Course Google Cloud has, capabilities. No, matter which server, this flavor you pick but. This brings a very important. Element of choice which is no. Matter what style you pick you. Have the abilities in Google, cloud today to, be able to leverage. The specific flavor and, create. A application, to power some awesome, experiences, just. Like. The. Internet, happened. We. Believe that, developers. Have a choice. They. Are going to use. Various. Frameworks for. Very. Obvious productivity. Gains and so. To control, which framework, they use doesn't.
Really Work out because, they have a choice you want to empower, developers and, make, sure they have all the. Access. And controls. To be able to use the framework of choice but. Of course as an organization, you also want to be able to put, some method, put, some control, around it so you can manage it very well but, the reality, is. Developers. Are using many underlying frameworks. Some, of these which are mentioned out here to. Build new. Capabilities. But. More so are increasingly, doing that on different. Clouds just. Like yourselves many. Customers, are choosing different clouds for various reasons it, could be it could be diversifying. Risk it could, be some clouds have some capabilities, better than the others right. What. I want to do now is kind, of poke a little bit deeper into what. We believe are some other key differences, between is, service. So. At. The end of the day when. You're building a service application. You, are delivering a service. Services. Of some, value to something right so let's say it's a piece of code a snippet or the entire runtime as we just saw in, a container the. Other spectrum, of the silver is flavor let's. Say you write something in, there let's, pick an example of an ordering. System okay, so you have a small service, that, can take orders well. That. So is, that. Micro service is an architecture, style that's, your back-end if you would that's. What you are writing in terms of business logic as your. Code as a developer. Now. The. Moment, that. Service. Gets. Pushed out to a consumer, so someone who starts to access, their service that. Becomes an API so, an API is a contract. This, is the front-end, of how is service. Is usually accessed, in many. Instances, these, two concepts, are assumed to be implicitly. Together so as an example when, you roll out some piece of serverless capability, of course, it has an HTTP, endpoint, but. The clean line of separation and we'll explain, why why. It is the way it is, as. You start to examine how. Folks are refactoring, into newer modern applications, well, it turns out there, were legacy, applications. Or monolith the applications, which existed before. Turns. Out they were consumers, who are still using those applications. So. Those consumers, are still using an API which is the contract, into an application, the, difference is now you've kind of migrated over to new. Server less style, of building applications so. A back-end has really changed it's, very important to understand this, difference, semantic.
Difference Between a service. And an API and we'll touch on that a little bit more so, what does that matter. At. The end of the day. Enterprises. Are, building. Sort. Of applications, to, eventually, power digital. Experiences. Right. You heard. Thomas. Talk, this morning about digital. Transformation, what. Does digital transformation. Really mean it. Means that in this, day and age. Enterprises. Are building, digital products, with, nothing but api's. So. Aps have become the new. Mechanism. To express. Capabilities. For businesses, and, these. Api's, which. Power these connected. Retail experiences, whether, that. Is powering an app that is used by your employees or, a. Third, party partner, or, essentially, building an ecosystem of different experiences, you know these API that really start to take the, value, that you're building and sell less and make. It accessible. To consumers. So. Let's take a step up and see well great I have. Built some capabilities. How. Do I really manage this turns, out the, moment you build some stuff which. Can easily be accessed the, very first thing in you start thinking about is security, right. Is, this soulless capability, that I've built. Is. It being active as someone who really has the right to access or are authorized to access that capability, right. I control. It from. Making. Sure that it's not abused, right of course so Alice is going to give you endless scalability. Behind the scenes for you right, but, you still want to be able to ensure what. Is this a business quota to it what, if you have signed up for that service and you are really only allowed to use that at thousand, times a minute. Right. Because maybe I'm offering a different tier of service and one, partner, gets more, fair share than, the other based on a subscription plan. The. The other aspect then we get into is great. How, do developers. And consumers or soleus how, do they really find out about your service applications. Right. Is there, a mechanism for them to discover them somewhere and.
Lastly. For. The for, the enterprise, it's also about great. We, took this big effort of refactoring. Our, monolith. And legacy applications, into. Modern, serverless. Style apps. How. Do we know people are using them. Is. There an option what. Is my ROI. These. Are some, very. Hard questions which. Technical. Teams have to answer to their businesses, because, someone is making investment, in that, turns. Out. There. Is a way. To. Answer these questions so. An, API. Management platform, brings. A lot of these capabilities. Out. Of the box so. You as. Enterprises. Can. Continue, focusing, on building. Business. Logic writing. Code in solar. Style, development. Paradigms. Yet. Have. The peace of mind around. How you. Can use an API management, platform, like, Apogee, edge, to. Be able to control. Access to, your. Servers apps, provide. The right level of security. Also. Provide the ability for your, service applications. To be discovered, easily. So, that. Application. Developers, work consuming, a service apps can. Very quickly connect, with them work. With them and then, more importantly as an entered. Use, some. Key dashboards. Which. Give, you a sense of adoption. Metrics, operational. Metrics well, all those things are very important, okay. So. Now. Let's, take a slightly. Deeper dive into what. Is the API management for solace actually, mean, so. Today in this session, we're. Going to very quickly demonstrate. Some, real-world. Capabilities. Using. Google cloud technologies. Including. Apogee edge, but. Let's spend a couple of minutes on this slide so. Turns out when. Developers, take, on. Decomposing. A big monolith application. The. Goal is to be able to separate. Them out into discreet. And independent, usable. Serverless, ass or, chunks. Which. Means there's. Always a need to, take. A bunch. Of these servers applications. And compose. Them into something more meaningful. So. I spoke, very, briefly about the, connected, experiences, that you're trying to deliver, ultimately. Whatever you're building this server less is powering. Some experience. To. A consumer. So. Turns out there are multiple. Ways and, multiple. Design patterns, that you need to be able to adopt to, access, these, capabilities, which are now scattered across and multiple, functions. Or apps, or. Even containers. So. An api gateway, which is part of the APM element platform, starts. To take a very central, role in giving, you the tools and widgets to, be able to not only protect. Your. Service applications, but, more importantly, take. Data. From several. Of them compose. Them into a higher-level experience, API and deliver that and in. Doing that you, can use a lot of capabilities. From the APM and platform, such as ensuring. The light level right level of security. Right. Level of access and, the. Ability for you to make some transformations. Or them okay, so with that I would. Like to invite my partner in crime. See give, a big hand I. Don't. Have any slides hope. That's cool. So. This morning you heard about cloud, run and you want to use cloud run yet. Like. One person do you work at Google, okay. We. Had to check. So. What I'm gonna do is so I'm gonna talk about this kind of from the practitioner. Level. What's. Happening now I guess if you strip away all the buzzwords, serverless multi-cloud, all, the noise you.
Just Have more tools to, build whatever you need to build and ship. It so. We'll start with cloud run is kind of this new service runtime we have from Google cloud my. Foray into the service world I like the idea of these functions and these code snippets, but there are some times where I just really need to write the. App in a way that I'm familiar with some, of the frameworks helps sometimes it doesn't so. In the case of cloud run I can basically build an app. In a language I want build a docker container, push it to a registry, and then deploy it if you've never seen cloud run in action I'll show you a little bit now so. I have a couple of things that we're going to deploy we're gonna step through this one by one so. Cloud run is really straightforward you know what you have is a very simple, application, let's. Do this. So. This is just a go app is really simple and the. Goal with this whole service, paradigm, is you're supposed to focus on the business logic right so you're, not gonna have a lot of things like retries, you're, not gonna do any of your typical. Things that you would do with nginx, I'm gonna put that here just kind of kind of focus on the business logic today. My business logic is just reporting the runtime that I'm using right I want you to focus on the overall architecture not, necessarily, what this app is doing so. When I deployed this container it's, just going to, respond. Cloud. Run the. Reason why I like this particular paradigm is I'd like to be able to develop locally, on my laptop using, common tools so, if I say go build what. I'm expecting is that I can actually test this particular runtime, on my, local machine and, if, I wanted to I should be able to hit this with curl using. The familiar process that. I've been using for years most. Of this stuff is data comes in data. Goes out it shouldn't be that complicated, and, you can see here that I hit it with curl and it says cloud run this. Could be any runtime any language, we don't care it's, just going to make some system calls you're going to get an HTTP, request and you're going to respond so. The. Way we deploy this is with, docker file. So. If you've used, docker before a very similar pattern I don't care what you do in here you're going to end up with some container image with, some entry point I'm using a two-step build just to make this container super small there's. A lot of people in the service community that. Hear containers, and then instantly just, like catch fire I'm like it's. A packaging, format, right. You can ship source code you. Can ship a binary and this. Is just another mechanism for, shipping a binary, so, if you look here and my two-part build the, only thing I'm shipping, is this, small binary, here and I'm thrown away everything, else ok, so. This just gives me that flexibility, to deploy what I want in my own container image then. You ask yourself how do I actually deploy this thing so you can build this thing using cloud built so I don't actually have docker installed, on my. Laptop anymore, these days because I use a tool we call, Google. Or cloud built and what, I can do is I can submit my source code and that, docker file and it would just build it here from my laptop or I, can use the CI CD flow and it will just do it for me but, the idea is we want to make this as simple as possible some. Of our IDE plugins, this will be automated for you so you hit save it, will do a build and then, how do you deploy it to cloud run itself. We. Also want that to be straightforward. So. If you look at my deploy command that's it the. Nice thing about this particular pattern is if you already have, a container, running on docker or in, kubernetes, and you want to get rid of the cluster you want to get rid of the infrastructure, you just, run this one command tell, us what the image is and, we'll deploy it and run it for you and that's serve list style we scale to zero and we scale up on the request, when it comes so. We run this command what you end up getting is a URL so we'll click over here so this is what the cloud, run URL looks like we, also mentioned in the keynote earlier that in cloud run you can also bring your own kubernetes, cluster so, if you're armed Prem maybe. You're already using gke, you, have a collection, of workloads, you just want to use that servlet, style that's, serve this pattern you, could run these side-by-side so you can actually say g-cloud, deployed, to this gke cluster, and it will show up in the same console, so you can kind of mix and match if you really need access to like a GPU, or some specialized, hardware that, we don't do on this stateless, service, platform here so.
Here's I think it's called run time and, it, comes with the URL and tailor certificate, you can also map a custom, domain to it but he's gonna keep it really simple one. Thing that we've done is you, don't necessarily need, to use an api gateway, day one you. Can just hit this particular, endpoint and in. My case this is a private function so if you authenticate, to it then you'll be charged if you. Do not authenticate, to this endpoint you won't be charged and your function will never be invoked. Okay, so that's an important thing here so. We'll copy and paste this and you're gonna run curl on my local machine. And. We. Get this 403, and the. Reason why is that I don't want people hitting this container directly I actually want to go through some, proxy. Or some gateway and this is where this Appaji piece comes in as a. Developer, what I want to focus on is just that business logic and then deploy my endpoints, wherever that may be so, the first I'm gonna do is say hey instead, of me configuring, authentication here. In my app we're just going to delegate that to Apogee now. Last year I'm. Pretty new to Apogee myself, so last year I've built a bunch of hacks to create ooofff, tokens, to. Store an Apogee, key value store and then tell Apogee, to pull it out put it in the header call, my code I was, like this is terrible I call. The effigy team is like there's no way we work at the same company and I have to do these kind of workarounds, so, they built some extensions. For me I was, like let, me see them do they work that. You always ask your product team does it work they. Always say yeah for some reason. So. To. Think about this is there's a new set of things called extensions, and what, you do is you find one of the extension so in this case I want basically our Google off extension, and what, the Google off the extension does is. The. Google auth extension, will, allow me to use a roth token or emit one for me automatically, let me go through this. Let's, see this off. So. Here I just called it cloud run but it's using the Google authentication, extension, and what this does is I can configure this particular, extension with a service, account and tell. It what it's going to be used for so. If you click here you'll. Be given the ability to configure this and deploy it to one of your Apogee environments, so, I basically have a set of credentials that we don't show you on the screen I'm. Glad because that would be bad. And then. Basically, at this point this particular extension using, that service account can then be referenced, when I create a proxy so if you're new to Apogee like, I am when I walk you through a little bit of what this means so the first step is we, use this extension it. Will start to create ooofff, tokens, for me automatically, behind the scenes and I, also have to give access in iam that it can actually invoke certain functions, or cloud, run instances, so it's not going to be able to call anything out-of-the-box you still have I am control, over what it can and can't do. Now. In the apogee space we have to create these proxies, so the first one we're going to create is this cloud run proxy, and. This. Is enterprise stuff so we're using XML, for configuration, I, guess. That I'm gonna mix it Enterprise ready so you see all this XML. Don't. Die I. Almost. Did I had to come back to life, so. The first thing here is this extension, so, the nice thing though is there is a UI composer, you don't really have to write all the XML by hand so. You should click on this composer you can start to configure some of these things so these things were set up ahead of time let, me close this out and what, you'll see here is the configuration for this extension I'm, saying I would like to use the Google cloud run extension, using the Google authentication back in and then, you give it a couple of things so I know from the documentation, in order to call a cloud run service I have, to give it this particular audience, so. I know behind the scenes the extension, is going to use the Google API mint, the OAuth, token using. That particular audience, and then it's going to have the ability to make. That credential available, in this output string, right. So if you can see here we, have this output string and this allows me to then. Compose, a, call. That. Will extract that out and set, it into the header and I'm going to show you that configuration really quickly and to invoke this. So. What I'm saying that when this particular, extension. Is I want, to sit in header before you actually call my app so you can actually see this visual. Request. Preset. Of steps I can. Go to the authorization header reference. That Google Cloud Run credential, and it's going to inject, it in the header for me automatically, okay so.
The Nice thing is so this is the thing that makes Apogee dope in my opinion just this whole little trace thing I wasn't. Sort of lacking did that my nginx why why are you showing me this right now and, then, he did this he. Click on the start trace thing and. You can actually see this complex configuration, like come to life so. If I hit this you can see that it's going to actually move through each of those steps and it's, going to invoke my, particular function, so. You see here I'm going to walk through what the output is it. Goes out to the extension, I'm. Gonna show you some credentials, don't be hacking, my service while I'm on stage ok wait till later if. You're on YouTube this won't work at this point it's expired, my time you watch this. Alright. So down. Here, I'll see if I can make this a little bit bigger. So. Down here we're gonna have a bit of response. Stuff happening here so this is actually going to notice. From all the read here it's, going to create that OAuth token, and it's. Going to store it in a way that I can reference it here. When I set the header, let's. Move this back so, can. I collapse, this there we go all. Right. All. Right so there we go so we have this access, token so. That access token is going to be extracted. Output, into a header and it's going to be used to call the, service underneath and then. You can see here that it's going to respond, cloud run just like my local laptop so. If I grab this now. Hitting the apogee endpoint, we. Can see that we, hit our particular, back-end ok. So, then what makes Apogee. Relevant. To having. Multiple applications. So let's, try something with cloud functions, so this is using. Cloud. Run but, we also want to do toy something to cloud functions so if you never use cloud functions this is a different take on this whole service thing this, is more of a function as a service. And cloud, functions, you write code that looks like this. So. You get rid of all the server initialization. And, you just write your handler, so, this is also going we. Just write a normal go HTTP. Handler, you'll. Get, your request automatically, and just like cloud run we also give you an HTTP, in point you can hit without setting up an api gateway but.
In This case I also want to make this also. A private, function now. This, is deployed using a different thing you don't build a container first here. You just use a deploy command and looks like this. So. I'm going to just be in my source directory I'm going to configure this particular, thing to run as a specific, service account and if, you look down here I'm going to grant the Appaji, service account the ability, to invoke this function all right so that's critical so. The nice thing to about after, she extensions, we also have an extension just for cloud functions so all you have to do is give it the particular set of credentials and, you tell the function that you want to have it and vote and you can skip a lot of the boilerplate that I did a little bit earlier but. Here's where I think Apogee gets super powerful right. The. Other thing you might want to do with API is is each of them will have some response, clients will hit your endpoint you'll respond however you want but. There are cases where I see people that are refactoring. Maybe it's a monolith and, you want to add a V to endpoint in that, case sometimes, I'll build a small function that adds a little bit and we can enhance the particular, response what. You can do an Apogee is I can actually compose, the response before it goes back to the client so, think about it this way I can, deploy a cloud function it's, gonna have its, own response I can take both of those responses, and munge them into, their own output before. I send it back to the client so, we walk you through that configuration, really quickly so. We have another API proxy. And this one's going to be called mash up so. The endpoint here is going to be this cloud function mash up. Then. We're gonna do here is just going to look at the deploy step and. I have a bunch of these steps that have been put in here so very similar to the beginning, we're, going to use. The extension, to grab the authentication to call my first service on cloud run and it's. Going to respond with this run time and then. We're going to hit the lambda run time or not lambda run time the cloud function run time and, that. Extension is going to call it the cloud function, and here. I'm just going to tell it what region the name of the functions also call run time and then, I want to take the response I'm going to show you the configuration here so. In this configuration. You. Can see that I'm going to be able to reference the response from the two invocations. Previous, so. When I call cloud run we're gonna take that output when. I call cloud functions I'm gonna take that output and here, instead of returning a raw, string to the client I'm going to return. This JSON payload that I'm composing, here, without writing any additional, code or hitting any other back-end so.
What Should happen here is if I were to hit this endpoint so. We'll go over here to the overview if, I were to hit this endpoint this mashup endpoint what. We should see is both. Of those functions being called. One. By one and we should compose the response with both of their runtimes. So you can see that there now so, even with the Col starts you can see the coal stocks are pretty fast on both cloud run and cloud, functions, and now, Apogee, is composing, the response from both of those independent. Service calls into something that I want to do for the end user so it gives me the ability to compose and do whatever I want without additional. Code now, there's one more thing that we want to show you like where's the multi cloud piece I typically. Don't say things like multi cloud there's like multiple environments, where. You want to do some computation, the, hard parts about multi, cloud or multiple, environments or multiple cloud providers is composing. The network layer and the, storage layer so. We see people do is they'll just use best-of-breed so if you have if you're using Amazon, maybe you have a lot of data and dynamodb you're probably just going to use lambda if. You have some stuff inside of Google Cloud or cloud storage your projects going to use cloud run or cloud functions, we're not forcing you to choose so. We've also built an extension for lambda very, similar to the other stitches that I had before, when. You write your lambda code if you've not written any lambda good for you you're probably only using Google services that's what we want you to do. But. In the lambda world, here's, another go app very similar you, write a function main, you give it a hand to learn it's going to respond now, the response. Is a little bit different in the lambda world and you'll see when I merge them all together but, we want you to do is also compose this multiple cloud thing for us so, averages, are central control plan it's our central entry point for all of our clients but, it has the ability to go out to. All the other end points and aggregate, all the responses, so this is what we mean by API, management, we don't have to leak all of these details, to our end users if you're in the organization, and some people want to use one, cloud provider and other team, must use a different cloud provider you don't have to argue too much you can normalize. That stuff on the, edge so. We go over here to lamda going to show you that. I actually have it deployed to Amazon's. Lamda it's, just a standard. It's. Also called run time and then, what we do is we're going to show you the last piece here in Apogee where we'll go to a different proxy, now I could have done this all in one single proxy but I broke it up so you can actually see the steps this. Particular, path is called multi cloud so. If I click on multi cloud you'll see the various, calls that I'm doing here so I'm going to show you that configuration, here and. You'll. See hey. Don't be giving me any errors in front of folks. So. The first one here I'm calling out to. That cloud function like we had before. Then. Here, we're gonna be calling out to, the lamda using the lamda extension, and. The nice thing about this lamda extension just like I setup before with cloud run I just give it a set of credentials so you go to Amazon you create a set of credentials that give it limited access to invoke the lambda function you don't need anything else and.
Then I can refer to that extension here, and tell, it very simply, the name of the function is run time this, is gonna be a synchronous, request response and then. I'm going to take that response that comes back from lamda and hold, it in this variable and. Again just like I did with the cloud functions, I can take that variable and then, use it as part, of that pipeline to munge the response, so. The only thing I'm doing here is, taking. That response. Let's. Grow up. I'm. Taking that response, and I'm. Adding the lamda response to it so we should see an additional response, in, our particular array, all. Right so let's go ahead and hit this endpoint to verify that everything works. So. We'll click on this overview here and. Then. We'll grab this endpoint to see, if all three can be invoked and we should get that much response. We'll, click here. And. We'll go back to our browser so you see that there's two there now we'll, hit the multi cloud endpoint. You. Can see now, we've added the response that comes back from Amazon lambda as well using, Apogee, to, sit on top of all of those and it gives you choice between any cloud provider any, servlet stack that you would like to use with, that like to end the particular demo thank you. Thanks. Goofy that. Was awesome. You. Guys think, okay. So. What. You saw Kelsi take us through was something. Very powerful he, mentioned a few key capabilities. That. We built around what we call it a P extensions, which. Give you the ability to able. It, gives you the ability to access many, cloud services, of course, from Google, cloud platform and. Also, from other, cloud providers as well. So. The, apogee API management, platform, is a full lifecycle API, platform which. Is a key component when. You start building your service applications. To, ensure that their. Access securely, they. Have the. Right level of. Controls. In place and you. Have right level of operational, visibility into, it so if you start looking at the different layers of the platform, it starts, with the API runtime what, Kelsey was demonstrating, today was, the core enterprise, gateway and a, set of out-of-the-box, policies. Which. Make it very easy to take data. From different kinds of service apps do some composition, as he just saw the next. Level up is known as a mediation, engine and that provides. Some, of the core capabilities, around taking. And orchestrating, data from different sources in this case in particular. Kelsey. Demonstrated, three, different types of extensions so, two of the extensions, were actually just announced, today at, this session the, Google Cloud the, Google authentication extension. And the, cloud functional, extensions, which, became available generally. Today so. Those extensions, were a perfect, example of how you. Can take capabilities. From different service apps compose, them well, he took it a step further he, all showcased, the lambda extension, which is available within, Apogee as well, which you can use to go access. Your, service. Capability, that you're building on AWS as. You go higher up in the stack some, areas we didn't cover today and I'll show some screenshots real quick is the. API monitoring. And analytics, capabilities, they. Become very important, in the realm of once.
We Have an API program, which is thriving and many, of you consumers are using api's you, want to be able to ensure we have the right level of visibility, not. Only from an operational perspective of. Course taking care of things like our my APS performing, well are they you know do. They have a lot of errors certainly those kind of things to, business. Metrics, around adoption. Right I spoke about create. Your building service applications, who's using them right, do we have the right level of metrics on adoption, and if not some, corrective actions could be taken and the. Developer ecosystem really. Touches on the, next level of how. Do I really get the developers. Access, to these kind of applications which are nothing but API endpoints, at, some point in time so. I'll, just walk you through couple of slides here real quick so, this is an example of the developer portal which is a key part of the API management platform. Using. The constructs, available, here some, of the API endpoints, that Kelsey was demonstrating, they. We. Can very quickly and automatically. Generate. API. Documentation, which. Can be rendered on a developer, portal that, any of the application. Developers. Who, are the consumers, of this soilless capability, that you're building can, very quickly access, they can try them out and more, importantly, they, can register start, using those capabilities so, developer, portal becomes a key entry point for the consumers, of your service applications, and. The. Last I'll going to touch a little bit on the, consumption, aspect. Of it and, monitoring. And analytics so, these dashboards give, you a very high level entry. Point into the different kinds of metrics the. API platform, captures. Out of the box so, just as you saw Kelsey walking us through three different API proxies, the, and API traffic starts to pipe, through those API proxies, we. Collect over 200, different data points and have. Aggregations. Of datasets. Which can be accessed over, api's, or also. Accessed, through the UI which, Kelsey, showed some parts of it today right so one. Example is the, dashboard on the top left we showed you the overall engagement, the, overall, traffic pattern, right, what kind of API calls are being made how. Many of them are in error so on and so forth and then, you start to see some other aspects, of performance latency. Analysis. And then, the, ability to do custom reporting right, so none of the 20. Or so or the walks - personal enough you can actually go build your own custom reports and this is a very important feature because many, times, api's. Once. They become front, and center of how you serve data their, different stakeholders, within the API program, such, as line of businesses, if you're building an order API they want to be able to know well how many orders are passing, through of a specific. Amount for, a specific region right, you. Don't have to go out of the platform you can use the custom report to be able to just quickly whip up that report and give, it to the specific. Line of business stakeholder, who wants it what, does having to rely on getting. Data out using, yet another platform to build that out okay.
So. With that let's, kind of have, Kelsey back over here let's, kind of summarize some of the key takeaways and then, we'll take any questions after this so. If, you wanna come on over Chanelle see. So. Just. Three high-level key takeaways, I think we went through a lot. Of things today but, very. Quickly we spoke, about some. Of the service capabilities, that, many of our customers are dropping so clearly it's it's very popular. You don't talk a little bit about multi cloud and your experience, yeah so I think for me is the the service piece is probably not going to be one provider platform specific I'd look at them as ways, to program in the cloud sometimes, you're responding to events something, got uploaded to a bucket sometimes. You just have business, Largent that you've had for years and you just want to deploy a via container, and ID, couple, the problem so as, much as I like these fully integrated, platforms, I do like the ability to compose, I have a UNIX background, I would like to use an API gateway, for a certain thing I want to use different runtimes for different things and what, we talked about today is the ability to compose what, you saw in my demo all so that I didn't have to use Amazon's API gateway I didn't, have to use a load balancer in GCP and, I was able to pick and choose how I want to orchestrate, my particular stack perfect. And then last but not the least as you, hopefully, would have realized today API. Management is a very vital function, when you're building soulless applications. The, moment you expand. The reach of those service applications, to your consumers, you, want to ensure they are secured, only. The right level of authorization, is. Allowed in, terms, of access you want to have the right visibility, so API management becomes a very critical function, as you, start to roll out more and more service applications.