Let me know if you can hear me now. I presume you can hear me. So I think I can you hear me? Yeah, I can hear you now, Renata. OK, I will switch to a better microphone. Please let me know if you can hear next. OK, I don't hear you. OK, now I hear something. OK, you hear back. All right, I'm having a problem with my mobile microphone. I don't know what's going on. So I switched to the webcam microphone. Is it good enough for you? Can you hear me well? I can hear you pretty clearly, yeah? OK, all right, great. All right, thanks, Taurus. I will switch on my webcam just to test it. OK, I can see you. Yeah? Yeah, all right. OK, great. That's good, now. So let me share my screen with the presentation. OK, can you confirm you see my screen, the presentation? Yeah, I can see the presentation perfectly, Renata. That looks good, yeah. All right, great. So everything seems to be working. Let me stop sharing my screen. Maybe you can share yours just to make sure it's working as well. Yeah, sure, let's do that. OK, so let me know when you can see the presentation. Yeah, I can see it. Looks good. OK, good. OK, perfect. And when I stop sharing, then you can see my code. Yes, correct. You can see my browser. Yes, I do. OK, great. Perfect, everything is working. OK, what about my web? Yeah, let me turn it on. I can't start your video because the host has stopped it. It says you need to enable it. OK, I don't see anything here about blocking your web. What's that about? I have made you the host, so you should be able to. Yeah, OK, worked. OK, perfect. So everything is working. So we have 20 minutes to go. I'll leave everything connected here, just switch off my webcom. We have a chat on the Zoom platform as well. So if you need to send me anything in private, you have a chat icon somewhere in your screen, probably at the bottom. You can send to which person you want to send the message. So you can just select my name and only, yeah, correct. So I will be able to. Yeah, so during the presentation, we will be receiving questions on the chat or on the Q&A section of the Zoom. So I will mediate those mediums and call you during the presentation when we have some questions from the audience that would be interesting for us to address. Good. Yeah, I hope we do. Yeah, or would you prefer to address all of them at the end? What do you think? No, I think it's good to address them as they come if we can make it more interactive. All right, OK. I'll just call you after when someone sends it. Yeah, feel free to interrupt me. That's all good. OK. Excellent. There was one thing I forgot to mention actually. I don't know if it's really important, but let me just show you. So we talked about this signing library, the AWS signed Axios library. I'll also cover it. So obviously, we'll talk about this during the presentation. There's another library which is based on this, which is it's actually sorry, not a library, but a command line utility called aws-sigcur. So it uses the AWS signed Axios library. Actually, sorry, it doesn't use AWS signed Axios, but it uses the same AWS for module to do sign credentials. But it allows you to make instead of doing current requests, you can make signed current requests. OK, nice. To an API endpoint. Yeah, so for example, you can, for example, run a command like this. So if you were to just do normal curl, so this is an API gateway endpoint. If you were to do normal curl, you get a 403.  So for developer testing on the API, it's useful. Yeah, so I just wanted to mention that so you were aware that I might bring it up. OK, yeah, it's a handy tool. Nice. I will add it to the repo as well. It's aws-sigcur. It's on GitHub, right? OK. Yeah, that's an NPM module, so yeah. It's an NPM module. OK, great. All right, perfect. OK. OK, so we'll start in 15 minutes from now. Good, great. OK, awesome. Cheers. Yeah. Hello, everyone. Good morning, afternoon, or maybe good night to some of you depending on your time zones. Hi, Owen, can you hear me well? Hi, Renato. Yeah, I can hear you perfectly. OK, awesome. I presume you also see my screen right with the presentation. Yeah. OK, great. I cannot start my webcom now, but it's fine. So I think you're going to be leading the main presentation, so let's go with your webcom. So everyone, thank you very much for joining us for this tech talk. So we'll be talking about securing APIs on AWS Lambda. My name is Renato, my developer advocate at Dashboard. So my main experience is in building serverless backend systems for various large-scale services from data mining to machine learning. And so I will defer now to Owen. He's going to introduce himself. So, Owen. Hi, everybody. Yeah, so my name is Owen Shanahee. And I'm the CTO at a company called Four Theorem. I can explain a little bit later what we're about. But I'm a software developer and architect who's been working for about 20 years across a lot of different industries and different architectures. And focusing in the last couple of years is very much heavily on cloud-native serverless architectures. Awesome. So Dashboard, it's a company I'm working at. So it's a serverless monitoring and debugging service. So it provides automated fault detection algorithms for serverless applications. So regardless of which runtimes you use, Node.js, Python, Java, whatever you're using, we can automatically detect errors on your applications. And we can send alerts. You can customize your performance policies so that you can get alerted, for example, when an API starts performing in a bad way in some way that's not expected by you and your team. We provide real-time alert team. We integrate with AWS X-ray. So there's tons of features. So please go ahead and access dashboard.iu after this tech talk and check it out. And 4Theorem, it's a native-less cloud-consuiting partner. So Owen, would you like to say more about 4Theorem? Sure, yeah. So 4Theorem, we've been around for about two years. So we're quite a young, small company. But we're a consulting partner. And we're focused on, I suppose, two primary things. We deal with a lot of different types of systems. But our strategic focus is really on serverless and machine learning. So on using kind of latest generation cloud technologies like managed services, serverless, and AI-managed serverless to help modernize applications. But we don't have any products for a consulting partner. So we help customers to either build products from scratch, but actually more often than not, taking existing systems that might have a rich history and helping to bridge the gap between traditional technologies and the next generation in serverless DevOps automation and machine learning to really help people go faster. Awesome. So everyone after the tech talk, please go ahead and access Dashboard and 4Theorem websites and Twitter accounts. And please thank them for supporting ourselves in promoting this tech talk today. So we are going to be covering proven and scalable architectural patterns, how you can structure your APIs either using API gateway or an application load balancer, for example, in order to implement scalable and secure APIs on top of AWS Lambda for your cloud back-hands or to serve front-end applications as well, or maybe mobile applications. So whatever you want to serve from a back-hand, this is some of the best patterns you can follow in order to have secure and scalable API back-hands. We have a bunch of resources that are connected to this presentation. After the tech talk, we're going to save the recording and also share in this repo. So you can go to github.com slash dashboard slash tech talks and you're going to have everything we're going to mention here, including the recording and the presentation slides, all right? So I'm going to stop sharing my screen now, Owen, so that you can start sharing yours. And we'll move on to what's actually really interesting for everyone. OK, great. Ronaldo, just let me know if everyone can see my screen. I can see it. OK, great. So this we've already covered about 4Theorem. So just to move on from that, I mentioned that machine learning and serverless are two of the things we're focused on. So it's worth mentioning that I have written a book together with the CEO of 4Theorem, Peter Elger. And it's about these two topics. It's about building serverless applications with AWS. We'd love for people to check it out. And if people are interested, Manning has given us a discount code for all of their titles, which is on the screen right now. But if you're interested in the book itself, I also have some free codes. So if people want to reach out after the tech talk, I'd be happy to see if I can get them a code for the book. So there's my email address and Twitter handle. You can find me. And yeah, even if you're just interested in serverless applications, it's a hands-on engineering guide to building serverless on AWS, but also a lot of the AI managed services that you can find there. So then just to set some context for today's talk, one of the other things apart from the book that we've been busy with and all of our customer projects is some open source work. And what we've created over the last year or so is an open source serverless starter project. So this is something we've put quite a lot of time into and are continuing to develop all the time. It's designed as a resource for people who are getting started with serverless architectures for the first time and either want to use a template to start their own commercial production grade project or even just as a learning resource. It's on GitHub and I'll refer back to it a few times in the talk. So you'll have a chance to explore it in a little bit more detail. It will set a bit of context for our discussion today around APIs. The project is called Slick Starter. So you'll find it there on GitHub and there's also a short code, a short link Slick.app. So why did we go and create this project? Well, I want to talk a little bit about I suppose what I call the problem with serverless and it's not as bad as it sounds really but I suppose with any new technology hype there's a huge promise with serverless but at the same time it's still quite early days in the adoption of serverless. So as with any new technology wave that means there's a couple of associated problems with it and while we build many serverless applications you really kind of have to be aware of those challenges before you start adopting serverless at scale. Otherwise you might end up with a lot of frustration and disappointment and delay as you get started. So really what the problem boils down to is that there's a huge amount of choice when it comes to building serverless applications between cloud and all the different ways you can configure services in any given cloud provider in order to get your application into production. It's actually a minefield of many different decisions which you have to make. If you want to consider what's the best way to structure your project, which services you should use, how should you configure them? What are the best practices in terms of architectural patterns? And this can really slow you down if you don't really consider them all upfront. And it's not necessarily always about making the ultimate best decision upfront but it's about making a decision so that you can just get to production quickly and then start learning from your experiences. So we went through that kind of cycle a few times on serverless projects and after a while we decided to put together a template project to describe and really illustrate what are all those best practices to help us really accelerate the start of our new projects. So we put all of those best practices into a template repository. We wanted to I suppose make 80% of those decisions that you have to make when you start a new project. We wanted it to be production grade. So we wanted it really to cover all of the necessary basis and then we also decided to make it open source because by making it open source, it doesn't just showcase our work and it's not just about providing it as a learning resource but it also allows us to get feedback on it from the wider community and everyone else is doing serverless development. So these are some of the things that we tried to cover off in the Slickstarter project that even things like how do you structure your project? You know, if you're growing serverless projects, typically are like microservices projects and that they're composed of many fragmented, discrete components, different microservices, different cloud resources which are a configuration of a managed service in AWS for example. So you need to kind of think about how you're gonna structure your project if you're going to use one repo or multiple repos and then there's how do you do continuous deployment in a cloud native way? How do you do centralized logging? What are the security considerations? What about observability and monitoring, local development? And there's like how to integration testing. So Slickstarter has integration tests and UI tests as part of the project. So you can see how all of that works end to end in a continuous deployment pipeline. Then we also have things like domains and certificates. So you might, for many projects, if you're imagining launching a SaaS product, you want to publish it to a domain. You might have a domain for the front end and a secure domain for the API. Then you'll want to secure those with a HTTPS certificate and manage the deployment of all those things. That can actually get quite complex and you can get really bogged down in weeds trying to figure out the best way to configure that. So we have an answer for that and that's something we can cover today. Events, so how do you do point to point events? How do you do pub sub events? There's a lot of options there, but when you're getting started, what's the best way to get started? And then you can start thinking about evolving that. And then coming back again to today's topic, when you've got APIs in between services, how do you discover them? How do you actually, if you've got two modules within your application, how do you separate them so you don't have tight cohesion and tight coupling that might cause you problems down the line? But also, you deploy it in such a way where services can discover each other easily, can be confident about the availability of other services and obviously secure them effectively as well. You've got things like user accounts, front end and data access. All of that we've included in this project. The platform itself is actually deployed from the open source repo to slicklists.com and it's quite a simple kind of SaaS application for managing checklists. So you can sign up and this is the React-based front end. You can go in, you can create checklists, you can create items in those checklists and mark them as done. So one of the features then that kind of illustrates some of the architectural patterns is a very basic one. When you create a new list in the system, it will trigger an event that ultimately results in you getting an email, which just welcomes you and congratulates you for creating a checklist. And we can use this simple feature today just to describe how some of our separation of concerns is architected within the system and how we use secure internal API gateway to achieve that. So this is, I suppose, the full diagram for the six-starter application right now. We're not going to go through everything in detail. We don't have to, but we are going to focus on one particular aspect of it, which is the internal API gateway. So at the top, you see the front-end web application, which is our React application. And we're using the Amplify SDK for two things, for authentication and authorization, and then the API invocation. So the JavaScript SDK is a wrapper around Axios, the Axios HTTP client. And we're using Cognito user pool authorizers for the public APIs. So people may already be familiar with that in many of the canonical serverless tutorials. We'll have DynamoDB database with an API gateway on top of it. And then on the front-end, you'll have an API gateway and you'll use Cognito user pools to secure them. It gives you a very nice feature complete, quick way to deploy an API. If you're doing a single API, things get a little bit more complicated as you grow a real system and you end up with multiple API endpoints, but we can talk a little bit about that today. So going back to the welcome message feature I mentioned, when the front-end uses the checklist API to create a new checklist, that record is persisted in the DynamoDB database, but the checklist service will also actually send a lifecycle event to the event bus. So this is a very nice, we're using event bus for the event bus in Slickstarter. So it's a very nice way to do pubs on events, and especially kind of arbitrary events where you just want to publish an event and you don't necessarily have a consumer for that event, as needed. So in our case here, we have a welcome service, which is a separately deployed service within the application, but it's one that can listen to those checklist lifecycle events. And what does that occur? So it listens basically for this message saying a checklist has been created using the CloudWatch rule or the event rule. And when it does, it needs to send that user an email, but the checklist event that comes in doesn't have the user's email address. It just has a user ID because that's all a checklist has, it has a user ID. So the question then is how do we go and get that information? Well, we've got a separate service that's dedicated to functionality around user accounts. So it can go off and retrieve the email address for a user. So in this case, what we're using here is an API. A user service has an API which is only designed for internal use. So we only want it to be consumed by services that need to access user information. Obviously, user information is something you want to protect. So it's a good use case for this. But once it gets the email address, then it can construct this email message, put it on the queue of the email service and that results in the email being sent. So this is the story in the Slick Starter package and people can go in and have a look at the repo and see what this looks like. But today I've got kind of a simplified version of that internal API and an internal API caller, which we can use to kind of showcase what this is all about. Just before I do that, I just wanted to set another little bit of context. So it is worth, why do you need an internal API gateway? Because you don't have to do it this way. This is just one option to do it. I think it's quite a nice pattern to follow this way, but there will be arguments against it. Some people will even prefer, rather than having an internal Lambda function calling an internal API that invokes a Lambda function, they prefer to do the other way or more directly, where you have a Lambda that invokes a Lambda directly. It really depends on your preference and other requirements. So one good reason to put an API gateway in front of it is because you might like some level of decoupling. You don't necessarily want your welcome service to know that the user service is implemented in AWS Lambda. I mean, it doesn't have to be. It could just be a HTTP endpoint. So you might just decide that for most of your services in your application, HTTP is the boundary for synchronous services where you're doing a lookup like this. You might also want to take advantages of features in API gateway like caching or validation. You can also get custom authorizers which you can put into your API gateway. And you could also have something else behind that API gateway. API gateway that isn't Lambda, but you might change it in the future without having to change that public contract. So for example, instead of having a Lambda function called DynamoDB, you can just connect API gateway to DynamoDB directly. If you had an API gateway and as the entry point into that service, you don't have to change the invokers. It's all just done within service. Or you could just change it so that it's actually proxies to an external HTTP origin server. So you've got quite a lot of flexibility with API gateway. But so those are the kind of reasons that I would put forward for using an internal API gateway. Owen. So this is, yeah. Owen, I just wanted to let everyone know if anyone has any questions or comments to make about the presentation, you can send on the chat box on the Zoom platform or the Q&A section as well. So feel free to send your questions and we will address them as soon as possible here. Yeah, absolutely sounds good, Renato. Yeah, I mean, any questions? I'm very happy to be interrupted. So please, please do. So this is how we're going to construct our internal API. So we'll go through this step by step. There is an associated article and Renato has already included that in the GitHub repository we mentioned. So this is our internal API. So in this case, we're just going to create a very simple internal API. It's got a Lambda function with an API gateway in front of it. And then we've got a separate serverless application, which wants to invoke this internal API. So they'll both be deployed into the same AWS account. But we just need to figure out how the caller will discover the internal API and how it will then invoke it in the secure way. So we're going to go ahead and build it. And again, the code for this particular simplified example is the URL is here. I'm going to go through the code now, but that'll also be available for everybody on the GitHub repo. So let me just show you the structure here. So this is our repository. You can see this is the repo I just referred to. And if we go into the internal API itself, let's just first take a look at the Lambda function itself. So this is as simple as it gets. The Lambda function is just going to return a HTTP status code root 200 with a JSON message. This is a response from an internal API. So let's go ahead and look at the configuration of the serverless service. And we're using the serverless framework. Okay, so this is our internal API. A couple of things to point out here. So this is the endpoint type. We're configuring that as a regional API gateway endpoint. There's no particular, there's no good reason really to have an edge endpoint in this case, but that is one of the other options. So if we wanted to be globally distributed, we could use edge and it will, the API gateway will put a cloud front distribution in front of that seamlessly, which will allow our API gateway to be distributed. Even for a public API gateway endpoints, that will actually incur some delay because it will have, if it needs to actually go to talk to your API, it will have to go to your region anyway. So in general, there's not really a good reason to use edge unless you're taking really full advantage of caching at the edge. So this is the configuration then for the Lambda function itself. And the important bit is down here where we configured the HTTP proxy event. So this will, serverless framework is going to take this configuration and create an API gateway for us. And this simple, this line here, the authorizer is configuring how the API is protected. So there's a few options here. We can create a custom authorizer, which is another Lambda function that will check if the incoming HTTP request is in some way authorized to use the API. We can also set up a Cognito user pool authorizer this way. In this case, we're just saying AWS IAM. And that means that it would be protected by IAM and any caller needs to be explicitly authorized using an IAM policy. The last section of the serverless configuration then is the service discovery piece. This is typically how for an internal API, we do API service discovery. And that's by deploying a system manager parameter store parameter for the URL. So this takes the generated ID of the rest API from API gateway and constructs the URL of that endpoint. So we don't create any domains or aliases for internal API endpoints. If we were to do a public API, then my preferred way of doing service discovery is obviously using a domain and having a naming convention like API.cyclists.com slash checklist. That's generally much cleaner for a front end, but for an internal API, we take the generated API and we put it in parameter store. And then the Lambda function that needs to look it up, can take it from parameter store, cache it for as long as it wants to and retrieve it whenever it needs to. So we'll see that when we go through the caller. So let's, yeah, let's take that API, make sure it's deployed. So I'm just running serverless deploy here and deploying it into the account. So it's going to create the Lambda function, configure the API gateway for that endpoint and create the system manager parameter store variable as well. We've actually already deployed it. So I'm going to go into the AWS console and just show you, here's our API and we can check that we've got one method configured here and it uses IAM authorization. So that's going to, that's taken a few seconds to deploy what it is. I know that it's already been deployed because I just, I just checked this beforehand. This is the endpoint that's generated for the API. So you can just see it's given us the endpoint URL here. Serverless framework has printed that out to the console for us. So let's just try and curl that and see what happens just by way of illustration. So that's given us a four or three forbidden and the message coming back is saying it's missing an authentication token. So then let's look at how we provide that authentication token, but let's do it in the context of a real external, well, not an external service, but a service within the same stack that needs to access that internal API. So we've got another, within the same repo, we've got another module here, which is the internal API caller module. And it's got one function, the caller. So let's have a look at the code for that caller. So this isn't the final version of the caller. I've taken out all of the authentication piece for now. But what we're doing here is we're taking the, on each request, we're looking up the URL of the internal API, and then we're invoking the HTTP client to invoke a GET request. By the way, we wouldn't get this parameter every time in a real production Lambda function. We would retrieve it, we'd retrieve it outside the Lambda function and cache it in some way. And we'd probably use the MIDI framework to do that in a neat way. But just to show you what that's like, and how we get, what kind of results we get, let's deploy that caller as well. Okay, well, that's deploying. Let's have another look at it. So we're using the Axios HTTP client, and we're just calling GET with the URL that came from parameter store, which is the same as the URL I just used for this current request here. Okay, so that's been deployed. So let's go into our Lambda console into where that caller function is defined, and run it. So I'm just gonna run it here with an empty event. It doesn't need any inputs at all. And it's going to try and call that URL. Okay, so we get a failed message back. If we look at the details for that, and we can scroll down on the logs that come out here and eventually we'll see missing authentication to open the same message. So I'm going to, yeah. Oh, and so perhaps it would be interesting to address one question we received from Manuel. So what are the benefits of using AWS IAM instead of an API key in this particular case? Yeah, this is really good question. Thanks Manuel. I've actually been through the experience of trying all the different possibilities for internal API authentication, not authorization. API key seems like a good one actually. Basically the way API key's work is that you can specify the, you can specify a private endpoint and mandate that it needs to have an API key. An API gateway will generate those API keys for you. The difficulty I find for an internal API is effectively sharing those keys with the services that need to use them. It's, there's no real neat way to do that. And I have tried using custom cloud formation resources to publish those keys. It's a little bit messy. And I've talked to a lot of people at AWS about that and they kind of recommended against using API keys for internal APIs. Really, I think API keys are better suited when you need to make a public API available to tenants on your system. And for that it works really well. I think IAM is just, it's just cleaner for this purposes, this purpose for internal APIs. So I hope that answers the question, but if it doesn't please feel free to persist and ask me again. Okay, so let's, basically I've taken the security out of this, what I'm gonna do now is go to the full version of this function, which has the correct HTTP requests signing. So our request failed because we were missing the authentication token, the authorization token. That's because we didn't sign the request. So if you're using IAM authorization on an API, the API request has to be signed. So it's the same way that every request you make to any AWS service needs to be signed with an AWS version for signature. That's what you need to do for your HTTP requests, which require IAM authorization. And there's a couple of ways, there's a couple of libraries available where you can construct those signatures and then you can add them into your HTTP headers. I kind of wrapped up all that functionality and we created a library called AWS signed Axios. It's basically a wrapper around the Axios HTTP client. So if you're using HTTP, sorry, if you're using Node.js as your Lambda implementation method as the majority of people are, but if you're using Node.js, you can use this library. It's available on GitHub and it's under my own account. So that's it, AWS signed Axios on GitHub. So what that does is it will take the, it uses the AWS SDK to take the credentials from the role your Lambda function is running in, signs the request and as in the HTTP header, it's for you seamlessly under the hood. And there are other options for different languages. Renato, you have one for Python, right? Yes, it's something I needed some time ago for Python developers, the Boto3 SDK from AWS has one issue is that they implement a blocking code when you fire a request to invoke an AWS Lambda or an API gateway endpoint, for example. And when you have to invoke lots of them in parallel concurrently, it's a problem because your code is going to fire one, Boto3 is going to block the entire execution and then it becomes an issue. So I implemented a very simple way to work around this with the AIO HTTP library. It's a great open source library for Python. So it signs a request, use AI HTTP library and send, you can send those and hundreds of requests in parallel. So it's in the the repo that I shared at the beginning of the presentation as well. Excellent, good stuff. Okay, so I just deployed the updated version of the function which uses the AWS signed Axios to sign the API. So this is basically the only changes that we're swapping Axios with the signed Axios library and that's the one we're using to invoke. Let's give it another try on the console. I'm going to run test again and it fails again. So let's have a look at the failure again.  If we look, the message is a little bit different. So we could see this better in CloudWatch logs but we can actually see here that the role, the Lambda function's role is not authorized to perform and then we get the IAM action. So the action is execute API invoke and then we're given the resource. So this is expected when you think about it because the caller needs to have explicit permissions. So even though it's signed the request, this role hasn't yet been given permission to explicitly invoke this API. So that's the last thing we have to do. So let's have a quick look at our IAM policy. So these are IAM role statements which get included in the role that the serverless framework will use when it deploys the Lambda function. And right now it only has access to the URL parameter in the parameter store. So what we need to do is give it explicit permission to access our API and that's what it looks like. So there's actually two action verbs. We need to grant permissions here. So you need to give it execute API invoke and also the HTTP verb of the API you want to invoke and then the resource. So in the resource, the syntax of the resource is like this with our region and account ID. I'm using for just for simplicity here, I'm using a wild card on the generated API ID and then we've got the stage and then the verb and we can have the path after this. So you can be explicit about that or use a wild card. I'm going to save that updated version and deploy. So we get an updated version of the IAM role. So since Malwell asked about API key, it's probably also worth mentioning the other options for securing. So we mentioned custom authorizers. So you can also use implement whatever level of authorization you want using the custom authorizer. And then you can use JWTs API gateway has performance benefits around that, can catch your keys and stuff without having to invoke your authorizer Lambda every time. You could also use VPCs. And this is in the article that is linked from the slides and also from Renato's GitHub repo on this tech talk. One of the disadvantage at the time, the article was written VPCs were really ruled out because of the massive cold start delay. That's been resolved recently. So it's more viable now to put Lambda's in VPCs. I wouldn't necessarily reach for it unless you need VPCs for other reasons in your application. It is a network level of security. So you do get that comfort from it. And for compliance reasons, it might be necessary to have that network level of security. It does come with additional complexity. There's no way to avoid that. When you have a Lambda in a VPC and you have an API gateway in a VPC, and then you need to call that from either the same VPC or from another VPC. There are many additional resources you need to create. You need to create VPC endpoints, et cetera. So if you need to have that level of network level of routing and security, it's fine. But in general, if you're doing really serverless first applications, then the general way to secure these things is to have the API available publicly but secured using IAM. And by the way, in this repo, the playground repo that we're using for the internal API, there is also a VPC example. So if you're interested in the VPC example, you can go in there and take a look at it. It's more verbose, right? So here we create all of the VPC resources, but we have to create the VPC endpoint too. It's not as neat, right? Because you can't just use, with service discovery, you need to actually discover two URLs. You need to use the URL of the endpoint. And you also need to know the domain of the API endpoint because the host header has to be different from the URL header. If you're interested in it, you can look into it in more detail in those code examples or feel free to ask me afterwards. It's interesting to look at, but I generally try not recommend that if you can avoid it. Let's go back and invoke this now. Given that we have the signed request also signed with the credentials of the role which has explicit permission to invoke that API. Then we see the API invocation is successful and the output shows the message that was retrieved from the internal service. So this is a response from an internal API. So that's the simple example. And if we go back to the diagram here, so this is really an illustration of what we've got. It's quite simple. You've got a lambda with an API gateway in front of it, to figure to use IAM. Requests into that should be signed. So they're signed with an AWS version four signature. And the lambda and function that invokes it has a role with permissions to invoke that API. So it gives you, you know, the great thing about it really is that it uses, I mean, IAM and good IAM discipline is unavoidable with AWS. And it's something that, you know, you spend a lot of time on, but it gives you very powerful fine grained access control. So it's actually makes sense to use that free internal APIs as well. So there's one other topic. I mean, if we're okay, Renato, is it okay to move on beyond internal APIs and talk about some other API gateway patterns here? Yeah, I think that would be great. Yeah, I think most people will be interested in both implementation. So most systems have some sort of internal, certainly. And probably, I don't know, 99% of the systems will have some sort of public APIs as well. So yeah, I mean, the internal API one is one, you know, you could spend a lot of time figuring out what the best approach is. And I think Manuel's question was a good example of that. You know, there's a lot of different ways to try and approach it. And once you pick IAM, you can see the code is quite simple. It's not that, there's not much complexity to it once you know what you need to put in place. This story is a little bit different. So I also wrote another blog on this and the URL is here. Bernardo's also going to share it. But this is about public APIs and it can be a little bit tricky to figure this out. So what the use case is here is that you've got two services in your application which both expose a public API.  So figuring out how to do that is quite important, right? Because the normal case for people is you start off with one API and then you can put a certificate and a domain and DNS entries in front of it. But then you have a problem when you go to the second service because you actually have to construct API a little bit differently in order to facilitate multiple paths from the same top level domain. So I just wanted to share how we do this typically so that people can kind of adopt this practice upfront and really start getting some, really start putting the practice in from the start. So Slick Lists, the Slick Starter application uses that. And it's kind of, in order to see how you do it, you need to kind of look at four services. So we've got the cert service, API service, and then we've got the two services that publish an API. So let's have a look at those things in code. So if we go into certs, for example, first, we've got a serverless configuration in here. And we're using Route 53 for DNS and AWS certificate manager for generating the certificates. It's quite difficult for people to be using other services for DNS, but you still need to think about the same principles here when it comes to setting up the API gateway. The public hosted zone is set here. So that's kind of the hosted zone for your top level domain. And then we deploy, we provision a certificate for the front end website and also a certificate for the API domain. So that's deployed as a standalone service. And it's worth mentioning as well that this is always deployed into the US East one because we're using a CloudFront distribution for the front end and we're using an Edge API gateway for the API. And because you're using CloudFront, if you want to use a certificate with CloudFront or with API gateway Edge APIs, you must create your certificates in US East one. So that's a hard restriction for AWS. So we open up the API service then. So the API service then, this is where we deploy define the domain name. So this is a specific resource within the API gateway service that says we want to configure a domain name for you, so the API gateway. So this is going to be at slicklists.com or whatever it is for your application. We then give it the certificate. So API gateway always has to use HTTPS if you want to use a custom domain, you must configure a certificate. And then we can create some DNS entries for that API gateway domain name. So this CloudFormation resource will output a distribution domain name, which is like a generated domain name, like a generated name.cloudfront.net. And then we create some DNS records, which will alias that domain name to the API gateway endpoint. So that basically sets up the the top level domain endpoint for API. But we actually haven't actually created any APIs yet. Then if you go into one of the specific services, like the checklist service, for example. So this is the resource configuration for the checklist service. And the serverless framework is going to generate an API gateway endpoint for you. What you then have to do is create a path mapping that will take requests on your domain with slash checklist in the suffix. And you need to tell it which domain name to use. So you don't need to refer to the resource using like an ARN or anything like that. You just need to tell it which domain name is used in the path mapping. And once you do that, then all requests from api.slicklists.com slash checklist, they will come into your endpoint, that front endpoint into API gateway, then API gateway will know from your domain name or will know from the base path mapping, which API gateway it needs to redirect that request to. And similarly then in the other service, the sharing service, we've got the exactly same thing here. If I go down to the end, we've also got a base path mapping here with slash share. So they're both using the same domain name. So if you set it up in this way, then it means you can, it's probably good to isolate them into separate stacks like this. So you don't, typically you might put everything in the one stack, then it gets difficult to re-architect it. So if you put everything into separate deployable units like this, then you can say, okay, this is my configuration for APIs in general. This is our endpoint, these are certificates. And then every time you add a service that needs a public endpoint, it is base path mapping. There is, with the serverless framework, there is one gotcha. So there is, if you look in Slickstarter, there is an error which I think is still open in serverless framework, where you need to make sure that there aren't any unresolved dependencies by putting in this dummy resource, essentially. So that's just something for people who are interested in this to watch out for. So that's it on the public API gateway endpoint. If anybody wants to see this, I mean, there's quite, there's a lot of functionality in Slickstarter, but you've kind of, you've probably got some insight into it now because you could see, like with the API service here, checklist service, those are your public API endpoints with sharing service too, got your certs configuration. And then between the user service and the welcome service, you've got the internal API gateway story that we just discussed. So it's the same as this simplified internal API gateway here. So I think that's on the two stories we wanted to cover today. That's everything. Have I missed anything, Renato? I don't think so. Very good stuff. I think it's pretty much everything covered that we had in mind. That's one thing that I just remembered. If you, the API gateway service from AWS is an awesome service. Very good because it makes it easier for you to implement an API, obviously. But in some cases, maybe the API gateway service cannot, is not feasible for you to use it. For example, it has a limitation in terms of the duration of the request. So it has to be up to 29 seconds. So for internal API calls that you're gonna, you know that they might take more than 29 seconds, API gateway cannot serve your needs. So in those cases, maybe an application load balancer could serve that purpose. And it's also quite easy to implement as well. It integrates very well with AWS Lambda. You can use IAM permissions as well with the application load balancer. So all of the architectural patterns that are covered for the API gateway can be implemented in an application load balancer as well, if that suits your needs best. So that's only one thing that I remember right now, additionally to what you covered. It's a good point to mention, because I think it's quite recent that ALB support was added to Lambda. Like it's relatively recent at least. The timeout thing is interesting. So if you've got long-running API requests, yeah, API gateway is 30 seconds. Also, even if you've just got some existing legacy, so you've got existing EC2 instances, it might make sense just to use application load balancer. Anyway, some of the paths will redirect to Lambda, some will go to EC2 or to Fargate or Kubernetes, something else. Yeah, it's a little less... It's good to be aware of what's missing, I suppose. You don't have things like validation. The gateway will give you validation internally. You may or may not need that. But also, ALB, if you really want to use plain HTTP and don't want to use HTTPS and domains and everything certificates, ALB allows you to do that as API gateway does not. So it's up to you really. People also say you can get... Depending on your use case, you can get better cost. So from a business perspective, if API gateway costs are an issue, it may also be worth looking at ALB for that reason. Awesome. So one thing, Owen, Joshua, so Joshua, thanks for bringing that out. So he tried to use your coupon code to buy your book, but he said the code was expired on August 19th. So I don't know, you probably should renew the code or... Yeah, if that's the 40% code, then I'll publish another one. Okay. I'll tweet it out, actually. So if you will have a look, I'll tweet it out after the call, or yeah, were you going to suggest something else there or not? Yeah, so go ahead and follow Owen on Twitter so that you can get that coupon code. Yeah, so this is my Twitter handle. I'll share the 40% code there, but for Joshua as well, if you wanna drop me an email, I'll get you a free code because that code that I showed on screen is a 40% discount code, so I can get you a free code, I'm sure. All right, awesome. So last chance, does anyone have any other questions or comments for Owen about the topics of the talk? Yeah, thank you, Joshua. So Joshua is sending thanks. Albert, thank you very much. We appreciate you guys joining us. So if you have any questions, any comments about implementation or this leak-started project, so Owen would be happy, certainly happy to help you out by email, Twitter, or any other medium. So I would be glad to assist you guys on anything as well that I could possibly help with by email or Twitter. So we will be sharing on that Github repo the recording for this talk and the presentation slides. So you can follow the repo on Github as well in order to receive alerts when we publish there. All right. Okay, thank you very much, Owen. Thank you so much for joining us. It was very, very good stuff. So I really believe it's important for us to get the word out about the best practices for really good architectural patterns on AWS Lambda, API gateway, all this stuff. It's growing a lot and maybe some people could be lost on how to implement these in a scalable way, a secure and scalable way. So this is very, very informative, very useful for everyone. Yeah, listen, thanks very much, Renata. I really, really enjoyed the presentation. I hope people enjoyed it. Thanks very much for joining and listening and I hope I hear from you afterwards. If anybody wants to follow up, I'm happy to chat on any of the topics or point them in any particular direction on Slickstarter or also to hear any tips if people have further suggestions. Like these, this is always a moving target like the serverless world. So we all need to keep learning. Yeah, it's evolving very fast. All right, all right. Thank you guys, have a great day. Bye-bye everyone. Bye.


Yeah, we on boss talk 101. Yeah, we gonna talk. We gonna have fun. We be on fire. We'll be lately. It's a unique Check check check in this unique house. It's your boy. He's CEO and I'm here with the lovely amazing official Miss Jamaica. What's going on? None. None.  I want y'all to stop what you're doing right now Go like subscribe follow us on all social media platforms. I mean our Instagram Facebook tiktok snapchat You name it. We're on it. Just type boss talk podcast 101 in Google It will all pop up But if you want to see our visuals, you got to hop on over to our YouTube channel. Don't only sign don't only subscribe We want your membership. Okay. How you get to our membership under every video including this one Description section is a link click that link takes you all the way through. Thank you in advance Man listen guys y'all hear what she said make sure you follow the directions that she gave She ain't gonna lead you astray. I promise you man. Listen, we got a special guest in here today Y'all this woman has been on this show Shutting it down. It's up probably about third or fourth interview.   I don't know. She got 16 but we'll see Let's let's get into it man Nina Loretta's in the building. What's going on?   I don't know if it was kept I don't know if they mess with that damn phone Yeah Williams running and man 4-4 7 This thing is blind.  I said that can't be cat.  You know, I get up at three every morning. I can yeah every day So he works at that time.   Cuz it's like you don't know how to talk to you can get on Live and talk to and people be talking on that Because they be probably nine times ten drunk at the club they at the club too And they just not leaving the club too.   What did you think about that on that on that? I think he's absolutely correct I think he's absolutely telling the truth.  It was in contract Stopping Nina Stopping Nina.  He tried to be So i'm just telling you The nigga came out As a matter of fact rainwater said if if cat william continued to come out of that That charlston was would die down because of how much they're similar But he can't do the cat williams the way cat does which makes sense because Shannon sharp is at 30 million views in two days. Ain't nobody else did that on the internet except for two more interviews That's the third most seen Interview is joe rogan and one more guy That one other guy got 54 million another one is 33 million by this week He will pass the 33 million when now these guys got them numbers over years He didn't got this in three days But that's crazy. That's legendary.    Okay, let's be real though. Have you ever saw any proof that he's on drugs besides weed? I'm gonna stop right there. Don't come in here.   No, no, he's dope man. They ain't gonna lie I told like I know already. I knew what type of energy he bring. He's brilliant He's he's when he come to what he do it ain't nobody really that can touch him when he come to that stage It's a few man that If anybody could could even be on his level to to just come out and do a better show than him It would be jamie fox Jamie fox would be the only one I could see that'll come out and kill that stage With or after him or before him or whatever and shut it down Burning mag pass the way that's the only way not in naming But I'm telling you jamie is about the only one that I know And if anybody else want to come in on this and get him a comment It's and let me know but I don't think nobody else outside of jamie You know somebody else that you think could stand up there blow for blow You see what I'm saying because I want to read because jamie sings and he got so many elements of him coming on that stage He act like people Not me just funny Not no eddie murphy or none of them when they come down to what they do in the day on stage eddie murphy is rusty He ain't been on stage and I think he's more funnier in movies Now because he decided not to do it Have you watched his stand-up like back in the days when he did it? I've never watched eddie murphy He's gonna come out. He's the OG but I just Yeah, he funny It's hard to want to nigga been what the one thing cat wouldn't got us on was He up that night and day So you got to understand this nigga been touring and running up on that stage every night for a long time That make you better Just like boss talking on the one been around for And I think cat cat two years with three thousand videos up on internet I don't think most of these uh comedians are from from the hood. No, is eddie griffin from the hood that nigga I forgot about it. I was about to say it's the eddie griffin here. He a beast Yeah, nigga, man. If you ever want to see it But as far as cat Williams is I mean that he's eddie griffin from it. He from the hood Even cans see they can't they got a hood. I don't know about that Anyway, let's move on So what's the new music man, because I know you've been out here killing it man What was that video shoot today? Let me hear about it. Oh, I had a song called uh Ride that Ride that.  So is it exactly what the name suggests? It's like more new Orleans style because You know, I'm from Louisiana. So it's like a new Orleans bounce beat. Oh really? There's a lot of dancing Yeah, because I'm trying to get more into like because like when I went to buy you plastic I had ran into a popular DJ from s in bad reason. He was just like You need to come on home and do some stuff and Who was the DJ? DJ woody billions. Okay. Okay. Yeah, but he'll hit me up like you need to come home and do some stuff Let us get up in here, you know Because he was basically like I see how Dallas is kind of mad because I see all the comments in oh She not gonna wheezy in and it was one comment.    Well, let's get into that a little bit I mean we uh, we had uh, we had south dallas kiki OOTCU on the come up, which is the baddest newest piece that comes off a boss talk 101 prime time, right? and uh She said basically pretty much that when she was asked by the uh Host what did what did she ask? Do you remember because you don't want to clip it? Yeah, she said that rainwater in a recent interview on our show Yeah, he did so we did ask him who was better Nina loretta or south dallas kiki because there's a lot of um controversy where that is concerned people some people sound Say both though. I didn't say both But he didn't say her at one point in the interview no because whatever he said he said both Worker always she made a mess. You know I always say you can't just say both No, you're always saying that not me I don't give a damn because Everybody has their own perspective and as much as one person might be better in a certain arena Or the person might be better in a different part of it. So it's just clarification. I just needed that clarification You know and he did say, um South dallas kiki boiled down and say south dallas kiki. Yeah, but it was hard It was no easy thing. She asked her about that statement And you know what she said Well at the end of the day, I think the main thing is who gonna say somebody better than them Who gonna tell you a yeah, she bettered at me Ain't nobody fit say that because you had really ain't no podcast period better than this boss talk 101 Now that's not you know, somebody else might say, you know what I'm saying Man, please man. These niggas got a million over here. They got this over there Or that one in LA is this you understand what I'm saying But everybody has their opinion on what's the best and when it comes to me I don't think nobody else got the angles or the clarity or the Or the lighting that I got. I think these niggas slipping the cameras the Expenses I pay. I don't think niggas is putting this up like this. I ain't never seen another niggas podcast in my life So I don't know what they look like but in my mind You can't tell me this ain't the baddest one in the world My take on that is like You supposed to feel like you the best first of all, but I feel like until somebody makes it Out then nobody is really the best But my thing is like I said, I'm not in competition with nobody like I feel like I'm in my online because like To be honest with you with this music game is 90 percent business. It's 10 talent You can literally rap me. You can literally be able to wrap circles around me But do you have the full package? Like I said in my last interview The labels don't care because you can rap better than me. Can they sell you? Like do you have everything? Can do you have the what's everything you got to have the looks you got to have a hustle You got to have the talent you can't just because you can rap don't mean you're marketable Like this is a young generation The this is the young people running running the music shit right now. So You might can rap, but can you grab the attention of the younger crowd? Can you make marketable music or are you marketable?   That's easy for me.  I know there ain't no female artists in there and i'm not When you dropping it I'm making my first drop next week But i'm not letting up on nobody when I say not letting up I'm on next this year because I feel like it's now or never with me now.   Just go get in the studio and make a better song than me go harder than me If you feel like you better than me. It's a friendly competition.  But right now I feel like Can't nobody go harder than me and i'm and I got the music to back it up I got the pin game to back it up. So i'm i'm saying is that erica banks included called erica banks has made waves She's made waves over 1501 and you know reality shows and all that She's nice.   That's real. I can really I can write for five I can get in the room with six people and write for everybody including myself and everything will go hard Wow, that's that's dope. That's remarkable Man, so when you think about just, you know Dallas it really got an open line when it comes down to it. You really don't have a lot of uh You don't really have a lot of you know what I mean just uh People you know that that sticks out. You know what I mean? I think the thing is It's it's a lot of artists that are nice A lot of artists that go hard, but nobody's making hits Nobody's making real songs. Everybody's making retarded as simplest abc hooks are They're making songs where they just rapping all the way through nothing is BET awards like Besides the boy. What's the boy that's going viral right now for bets? Yeah, he's he's star material. Yeah. Yeah I don't know him. Never i'm not even gonna lie I never heard of him a day in my life before this song it went viral, but he is star quality And like and that's the type of music you need to be going for if you want to make it past local And a lot of people have a big head right now, but I don't see them going past local You might get local fame. You might get local buzz. You might be known as the city is You're a good rapper, but Go out of the city.  Yeah, let's let's go.   Okay Let's go to studio. Like we ain't got I ain't got a beef with you because you think you go harder than me Let's go to the studio Like prove let me prove you wrong But you mentioned pain game a lot you said pain pain game a lot But to me is it has a lot more than just the pain game it has to do with the rapping the deliverance the Everything the whole package So my thing is everybody who know me my day one fans and everybody around me So I started out writing poetry. I wasn't rapping I remember you said that before I was 12 I was writing poetry and shit and like These dudes in my city, they found me and my cousins and they Like we transferred to rap and it was a point where I was rapping. I mean writing for all of us So like I said, I started writing poetry. So when I write it's a deeper process to me I'm like I'm Replaying stories in my head and putting it on paper and you got to think for so many years I wasn't dropping music.   Right So I've heard other people's had that problem before so anybody that work with me could tell you I'm one of the artists like they work with other female artists. They got to work on their delivery They got to work on this work on that I'ma go and I know how my delivery go.    Pog little sister or something in this home And that's why I see that's why you trying to come at me with you trying to go hard on me right there with that I know you can rap because you didn't rap didn't hear it with me before But you know at the end of the day South Dallas Kiki got some she got some go get you know I want to hear I want to hear some like I said, it's other girls that be all the truth girl. They mentioned You know, I'm saying I will say be over so it's a bunch of them like it's a bunch of I want to get on the same track and see I want more than just you and South Dallas Kiki That's what I told him the other night. I'm trying to get me one together My thing is I'm not a competition number like I could I like do a cipher That's why I something like that or a mic check without I hadn't reached out to girls that I see in the city That's upcoming that be on like key talk media and shit and they didn't ask me for features And I'm I'm giving them features for free like I'm talking to these girls. I'm helping coach them Like I'm giving them advice. That's never met them. I just see their upcoming So I am a people person But it's like I feel like anybody who's in this rap game looking at the next person's competition I had never in my life Said nothing to kiki never did nothing wrong to her for her to even feel some type of way about me But I'm a I don't think she said you talked down on the city You talked down on the city is what was said now. I know I was here that day. I didn't have you ever talked down She liked your music. I didn't have you ever talked down on Dallas Texas. No, you know me. I like in the The post is on my page and I don't even want to re-bring up old shit But so you knew what she was talking about. Yeah, I knew what she was talking about She took it wrong because I never said Dallas Dallas rappers suck I said Dallas rap scene is so dry right now. They're like like you said the rap scene is open I said the rap scene is so dry right now that they're accepting anybody They can go put say abc on a beat and put a hard video on there accepting you as long as your video Hard, that's what I said and I was in to it with a specific person Being that specific person I was talking about had an argument all day that day and everybody that follows me knows that So that's why when she said I'm talking down on rappers. I said name one artist In Dallas Fort Worth that I talked down on what's the artist I was talking about It's not even from Dallas, Texas at all. I ain't even from Texas at all So I told her name the artist that you're talking about that I was talking down on I ain't got a name to this day I also told her name the person who said I'm a hater. I'm this I'm that When we got into that argument under them comments everybody that was comment are people who don't like me People who've been picking with me for three years now.  It's somebody who don't like me I read a course. They're going to tell you the worst things Yeah, I don't think she did I'm not sure But I don't think she actually went and did research like on your page or anything like that to see what you said I think is Hearing what somebody said. That's what she said. I saw her Interacting with people who don't like me under those comments.  Wow, you know the thing is like I said, um Um Great talent.  It's it's nothing. It's something that puts eye on the talent When rainwater says something or when we ask a question I like the fact that the the eye is on the talent. You guys are talented I want the best out of y'all to be honest with you. I really want some good music Y'all bring the best music that I've heard in Dallas period I'm gonna be real with you them the two y'all the two consistent ones putting stuff out working And and that's what I like, you know what I'm saying? Let's be real for a minute I really like I said, I seen her and I never let her even come on the show early on because of my kin folks She already know that but the thing is when I when I would see her I cringe at the fact because she was steadily dropping and she was getting Momentum and she was going over here and I'm like this and I was calling you of course You've been coming to see me for a while now. You see what I'm saying? So it's like I was it's like damn, you know, like And it's a thing where I really want to see the best talent. I want to see the city rise You know what I'm saying?   I'm basically trying to make y'all hold Motivation wrap we all from the rap motivation. I'm calling y'all out like motivation.  We could shake hands. We could cut like we could take shots together now that but you're not harder than me That's hard. That's hard. There's there. Okay Let me get on lighter. No, we may circle back, but um boozy That's who you were rocking with Mm-hmm He went to see color purple Yeah, nigga, did you see color purple? No, well, he walked out It's gonna go see because what he said he said he walked out because it was it was it was things going on in this movie that He felt like was trying to persuade people into a position of making a choice in pretty much, you know What type of sexuality they gonna have pretty much if you want to be real about it like did you hear him say that?  Yeah They were kissing in the first movie You don't know whoopie golburn was Doing the jupe joint. Yeah, I remember when they kissed so all they did was kiss Now all we all we seen was the kiss it was a little bit of the first one You notice when she left that the girl dropped dead She fell out when the woman left that's how good it was to her like She fell out when when when she gave her left with her husband Well, the first time when she left She had but she thought she won't go with it and and and Danny gloves No, yeah I gotta see what's so good. You know, you know, I ain't seen that one yet, but uh, yeah that first one, you know I heard it's not as bad as people make you sound like That first one a tear jerker for me on the part when the when the boys come back from Africa Kids that mess with me a little bit every time Somebody else said why would we want to go watch movie about slavery when you know Our people had to deal with slavery for so long Why would we want to go? Why would you even want to act as a slave when your ancestors were slaves? I don't I don't play that like I I don't play about my ancestors. Like I study ifa and you know, that's my religion So it's like what is ifa? ifa It's an african religion. You should you should look it up. Like I encourage all people to What what what is that really telling about it? Um, so if I was like it's uh It's sort of like a hudu, you know, like voodoo hudu, but it was created With within our ancestors to get away from I knew I knew you would sit on that voodoo.  I don't do I don't do No, I don't believe in okay. Well, I'm just saying Louisiana folks is known for it and jamaicans Yeah, louis. Yeah, and jamaica. But like not law and have mercy. I got much talk Ifa is hudu, I don't I don't believe in voodoo because if you do voodoo, it's always like I don't care What's the situation? It's always coming back 10 times stronger. So whatever you do to somebody It's gonna hit you work.  Yeah, I feel like I was So you felt like something that has Anybody ever done anything like that to you? Yeah, that's why I got into it. I was in louis. I was living in louisiana when um A lady had put voodoo on me and I uh found out about it, but I didn't know about it.  I had a job making 14 14 an hour with my mama Like we had a nice part all day.  It's like I don't I don't know the extent. How did you break it? How'd you break it? It's like it's like I didn't even try to get into it. It's just like it was stoned in my face Like how did you break it? I'm trying to get to that So it's like I don't know slowly I started getting into Learning the shit and I wouldn't even try and it's just I see commercials. I see books I start reading books.  It's like I can damn no see through I don't know.  This probably was like 19. I remember like I said what a god this was the weirdest shit And I remember it to this day It was this boy in my city and his name was just popular in my city I never saw this boy day in my life But I was in my grandma's house one day and I saw a boy across the street in my grandma's house and I said You know, he it looked like that could be his name and I called the name.  It's like I get like I randomly Picture people face in my dreams and randomly wake up like I see the face and wake up or I hear the name Wake up in it and then weeks later I find out that person doing something to me or that person saying something it was like weird shit But like the more I start studying the more I start Getting clarity with the divine and start getting closer to ancestors. I ain't a lot. I burn candles I do stuff to talk to ancestors and stuff like that. Like I'm got it Like every move I'm making I'm trying to get better with that because I feel like I'm punished by the ancestors If I don't let them god like you do like a sands type of thing where you know Like we need in movies and you see them light the candle in like a circle you sit down and you Yeah, but that's the thing about e5. You don't if you don't go by the guidelines You will be punished like so if I do stuff against my spirit that I know is not right I will be punished for that. So it's like basically I gotta Talk to the spirits with every move. So that's how you broke it Huh is talking to the spirits. That's how you broke the voodoo protection I started learning about I started learning about voodoo and stuff and I started learning the power with blah blah blah I know how to do it, but I just don't do it But it's like I did a protection spell. I got a protection spell on me From my Haitian godmother. I have a godmother that's Haitian. She stays in Haiti and all that and she actually does e5 she does all that stuff, you know Sacrifices all that so she she protected me. So, um, she taught me how to protect myself like and how to make You know protection of my house myself. Da da da da like I just been situations with me and my Dude and been shot at and we leave without a scratch every time like Four times in a year does e5 believe in god? Yeah e5 is just another word for god Okay, I'm just asking I didn't I don't know.  That's heavy It's real heavy. Um Wow, uh, you guys, um so when you think about just music on the whole when you look at Honey come brazy How fast he went back. Have you ever seen any rapper go back to prison that fast back to the field just boom boom back Carter You remember he was out for a month and went back You talking about your husband. I'm not talking.  We know that nigga went back That nigga ain't made now to it. This is how it going brazy. Okay.   She over there doing the interview She made calls Well, so so let's be real like like like have you seen anybody that Come out with that much potential and then just go back Like I hadn't but you might know somebody. It just came from my face 27 days a turnaround I just tripped me out because I was trying to figure out. I actually never saw that That that somebody who had that much potential like this dude could have made 50 000 on the show. You know, I feel like he crashed himself on the show 30 000 in the show. Now this nigga, he never did even get to do a show. Did he? He just did videos. Oh, yeah He did just a video, but like I feel like he crashed himself out.  He came on choosing violence. Like I'm a bully for this damn, you know finesse had had basically um had uh Kind of I don't know. It seemed like finesse kind of didn't talk about it As much when he was locked up. He didn't even say no But then when that once that nigga went in I seen finesse come on just start, you know, I'm saying like A pop in it. I mean, you know, like now I ain't saying he was popping it because of that But I'm saying he maybe just didn't want to interact with him about it But I know soon as he went in that's when I seen a lot about like damn that go at my boy I mean the way it looked I ain't gonna say that was the situation but the way it looked to us the people It looked like you You felt the same thing like I didn't see him. Yeah, it's like he was he was on mute when he was out, but now that he ain't you're like So Yeah, it was why maybe he just didn't want to add But honey cone just sat on the internet that finesse is in his paperwork about the complaint against him. What? Yeah, you didn't see the interview. I mean not interview but uh, what do you have a page? Oh, he got somebody posted on his page. Yeah Oh, he got a cell phone in there. You know how you know how your boys do I think he got what he got caught with guns so he He was in the car with his security guard and I heard they had, you know guns, but they had the judge don't feel They go in federal. I know I know I know man And that's crazy because he got so he had a lot of potential he can make you know I'm saying he could have been He had a lot of potential man to to do a lot of big shows to To basically come out here and really run the game I think he had an opportunity he could have came out here really this time and run the game You know, you got but that was but you gotta understand though When you seen Rollo come home. Look how he came out.  Like it's certain people that came out and it's like you got to come out. I said, what do you think poo shots are gonna come out? How are you gonna come out? He's gonna get I don't know. He's gonna be coming home pretty soon I think he's gonna pop out on us. He's gonna pop out.  You're gonna do a big with him. Uh, what I heard poo shots about a whole Lamborghini from jail Damn He out here doing the same and he ain't even out here. You know what I'm saying?  I like let's be real. Well, I don't just let I don't never just turn it on in my car Let's be real. I don't never I never turn it on. So you don't really rock with her like that I listen to if I hear you like on the internet and you you don't be like put on that sexy red never Why honestly, it's just I'd rather say put on that Kind of me. Oh, you know, yeah, yeah, that's your style more. Yeah Cash I like cash. Do you like cash dog cash dogs underrated that motherfuckers hard. Wow Wow, that's what I'm talking about like you you one of them per I listen to you when they come to music I'm gonna you make a nigga go research That's the thing though a lot of niggas. I mean a lot a lot of men listen to my music. Yeah. Yeah. Yeah That's most of your clientele No, it's a lot of me Oh, he said looking at you Yeah, let me look in they looking you see them on your live, you know, they know all them women like Oh, let me see how she looked now Most of them will say they'll be like my looks grabbed their attention and made them go listen But when they listen, they was like, oh, she's she all right. Yeah. Yeah So, yeah, yeah, that's that's the good thing about it that you really you really take your craft serious Who would you like to work with before we get you off of here?  They told me to um the people trilling the same and they told me to um keep pushing The original version about that let it get a buzz and then we'll do the feature Got it. Wow. Um Is he your favorite out of out of out of Luzelle air out the book a lot webby is that one Is he your favorite? I ain't a lot if I had to choose out of all Louisiana artists like what how like how many songs could you say word for word of theirs? It'll be boost in webby like word for word Is it boost or webby I could say more webby song I figured that because that that savage life one and two got your butt savage used to be I already know what got you. I got me too. That's why I know. I know what got you I ain't crazy this time he was 18 rapping like that. Yeah, he was and was crazy with it Real crazy with it. Do you think that um and I'm gonna ask you this because I gotta ask you these are questions That I just rumble off with so uh before you get off of here. Um How do you think p did it gonna turn out after all this is said and done?  Everything Williams he said he had to tell that man. No That man wanted cat booty.  Yeah, but I know did he like men's books How do you know that you were right there? No, I wasn't right People saying it. I ain't say if he did it or if he didn't do it. I just asked you How is it gonna turn out? How do you think you'll come out? I kill it. Really? You think so R. Kelly had that p did it money. I don't think so. He'll Do got a different kind of money. It's a different kind of money. I think well to be realistic I think his money gonna save him. Do you think because remember trying to pull td. Jackson to all of this Not, you know what? I don't believe nothing against that man Wait a minute. I'm telling you right now. Yeah, I got the truth When it was over Against that man No, you ain't playing my tj. They don't leave that past alone. He ain't going. Yeah We're gonna go to war behind the past That's that's not true.   I'm like, no She's Jason not going you don't understand that he is not going today. She is not trying to hear.  What what's up? I believe everything against them Why I I just believe that they take what did they say that they pick up girls and have three shoes and make them do Freaky stuff. I believe it What? About this little girl that came home and she said, oh, he's acting and they want to start going crazy That's the part I don't like like I really think that people be out here going the extra mile for celebrities I know because we've seen them as we they have lined up from here To all the way up that damn road trying to see them and get next to them And then when they do they do crazy stuff with them and I think it's weird And I I've been around it forever because it's just a one and I think it's sad, you know what I'm saying I think it's really sad.    Yeah, you got to go. We had our fun But they want to be there still they want to stay there.  Like what's wrong with these married people having threesomes because I know When I have threesomes you not finna stay and kick it and chill like once we finish having fun and Do we need to get you over? Like Like what are we sitting and talking about you're not going to be in this relationship? We just call you if we want you again, like And they couldn't handle the disconnect most people's like, uh, they probably couldn't handle the disconnect I don't see nothing wrong what they was doing.  Yeah You don't play with them like you get any down comments if you want to I got it for you Yeah, because the thing is I can't be exposed what anything I do I know exactly what I was doing when I was doing it how I was doing it I agreed to do it and I had a blast. I would probably do it again So it ain't nothing nobody can come out and say Nina. Yeah, I know I did it and I had fun and I would probably do it again Let's start well since you're talking about doing it again. Let's talk about your surgeries and stuff Like you the surgery queen I'm going and uh, I have never had you are gonna do it Well, see y'all cutting me off. I'm trying to get my question in I'm trying to figure.  Nobody else because we don't really just we're not really far out real Um, what's her name have?  I'm real country. I'm real money Take money don't take money. She got boobs and butt I never saw her in person. Oh, you know, you know Yeah, she got she got some work done.  You told me that I never forget it.   No, she said she's working out getting into working out It ain't even about what made you do it your body feel like it make you just feel better But what made you do it?  I ain't because this is what I went I went for one weekend quick because he was doing me too bad. He was killing me. I had a china He was not being nice, but that's their job. I know what I just was done I said, you know what? I gotta prepare for this. I gotta mentally prepare I won't prepare.  What's the name of that ep one more time the one that's coming out next week I don't I ain't dropping the ep next week. I'm dropping a single. I mean you're dropping a video single Yeah, what's the name of the video? I'm sorry. I'll cut that out. It's called ride that and then immediately after that I'm gonna drop this song called girls just want to have fun But the thing about girls just want to have fun I recorded this song three years ago. Really? Yeah, but Nicki Minaj just dropped the version a month ago But me and her versions are different hers more like pop you know girly girly minds more like hood drug dealers Shit like that. So it's two different lanes. So I just feel like she already dropped hers. I I gotta like I had already planned to drop it We just was writing a treatment and trying to get a treatment together So it's like it didn't damn she dropped with a bird. She but I listened to her birds I'm like, oh, it's two complete different lines. So I'm just still gonna drop mine Are you a nicky fan? I love nicky Will you pick nicky or Cardi? So somebody was just asking me about this when I was getting my makeup did and they was like You know if Cardi came if it was an opportunity for me to do a feature with Cardi, would I take it? And I ain't on my Most people wouldn't say this trying to get in the issue But I would I would not take a Cardi feature because what because you hope to get a nicky I want a nicky and you know the reason I say because I was a kid like rapping nicky worried for words I mean you you would not do a verse with Cardi Because you think that would make it to where nicky wouldn't do something with you Yeah, I love nicky so much to the point where if nicky like if I was coming up and nicky This me or something. I would tell her nicky. Just just take it back I don't I don't want to do this with you like I can't picture myself Having a problem with you like I know every song So it's like I I'm not gonna be one of them fake fans that go from being a fan to Oh, we beef it. I would tell her like no, what is your problem?  I ain't on a groupie. She was her. It's like no, she bowed down to lauren hill No, I don't think I was she she got down and she said wait because she gave her But let me just She doesn't actually worship her because she did that she just wanted to show her that I really really really Uh, uh, uh really adore you and what you stand for now. I would do that to me or x Oh, you about yeah. Yeah. Yeah, man. You talk about me or x like so. So you you you love nicky But not to let me know Me or x is like my inspiration mama like that's my I think she here in Dallas I remember I told you that last time I would so that's probably the only female rapper I would meet that I did not send her stuff to her cry. I don't cry if I meet me I think I sent it to her. I'm pretty sure I sent her stuff your stuff to her The last time when you talked about her on here, because I sent it to I'm pretty sure I sent it to klc and I'm pretty sure he said I would love to be there when you're doing that because I want to see If I ever interview her which I am linked to them, you know, I'm linked to him If I ever interview her I'm gonna bring you with me. I don't care if I'm in I don't care if I'm in Vegas I don't care if I'm in New Orleans. I'll fly you down there. Just the cause of how much and a lot of people Always say this and say who is me or x and them the type of people I would get in the comments and argue with I'm gonna send matter of fact. I'm a clip this time. Send it to kl2. What's your favorite song for me? I'm shining I actually DM her and ask for her permission to redo her song She didn't she had her messages on where like everybody came message her like she got approved That was before you met me. Yeah, you should try emailing her Yeah, but I I didn't I wasn't even thinking about doing a song like a lot of people from my hometown Send it to me like you should redo me because they know I love me. It's like you should redo. I'm shining So I listened I was listening to this all over and over like I really want to what's the favorite verse of me or x That read just touched you or you thought it was hard I'm gonna say I'm shining.  She just Yeah Wow. Well, we wind it down. I'm shining and I'm gonna be honest with you man, uh, if I when She already said when she started interviewing pretty much. She was gonna she's gonna rock with me So we just gotta wait till she ready when she ready I promise you how she was on them tracks with them niggas and she was eating them up every time I remember she was eating them up. No, I just love to hear the stories about her when um, any of the new Orleans artists With um, no limit they talk about her and talk about how she was like their mom the way how she would look out for them And stuff. I just love to hear all the stories. Everybody had a story.  I always talk Fiend all of them talk highly about The way That mother instinct is far as around them to kept them unified like that and kept them feeling like They really almost to a point where it felt like they couldn't miss home Because she made outside of being at home a home and I think that's hard I think that's like the only female Yeah, so she probably like mama to them. Do gd ever post you who gdp down in new all Okay, I'll for the sake gd. You better make sure you post in a nina loretta that you a That's my boy. You know, that's my god, man I'm actually going to go to new Orleans for like a week and a half or so and work with my kale You're gonna give me an interview down there. I'm gonna set up your interview with gd. Yeah I'll talk to you. Oh, y'all already talk. Okay. I don't want to make a video down there to do something down there On bourbon I was about to say mark you should do a video around martigar Talk to a little soldier He was with bg yesterday there they were there in vagus I don't feel like bg this way. I feel like he wasn't just the way you talk man.  Yeah, but he know what it was gonna do man. It's new been doing this forever I don't even get cited over niggas doing whatever. I just listen to the music and enjoy it. That's it You know what I'm saying, but thank you for coming on the show man How can people get a hold of you if they're trying to reach out? uh instagram nina loretta facebook nina loretta twitter at d nina rutter music um on all streaming platforms nina loretta And nina you need to wear your natural look more often because i was Everybody say i was scrolling through your page and i'm like you don't need to make up You don't need to weave. I'm like, why don't you rock your natural beauty more often? says a woman that i always be putting makeup on says a woman that i always I definitely don't need it. I do the same thing. I don't have my makeup now. Whatever you do it all the time No, I don't. Oh, it's been some years When will you start doing that? I'm gonna start wearing my natural hair more because it got to the point Where I was wearing so much weave when I wore my natural hair people thought it was weave. I'm like, this is my hair. They're like, oh What? I'm like, yeah, people didn't even know I was mixed unless I have my natural hair in And you're making what I knew I knew you're gonna say indian niggas. I always got to say indian all the niggas. I don't know My daddy is blacker than her shirt But he has the goodest most silkiest longest prettiest hair the wavy hair Yes, the wavy kind curly but in blacker than he blacker than black Wow, that's crazy man. Are your mama real lights gonna she white?   Shout out to me that pointed white nose in the building Thank you so much for coming on the show man. We love you Nina as always man. Appreciate you for coming back I know we're gonna do this again. We don't stay gone. Next time you go out for 16 bars I got you man. Check it man. It's been another great segment of boss talk 101 what a boss is talk and we out