Amazon Web Services (AWS) is a public-cloud platform, offering on-demand compute, storage, database, and networking services. Connecting AWS to Serval lets you automate everyday cloud-ops and security workflows—from listing IAM roles to spinning down unused EC2 instances—directly from chat.
Follow these steps to create a cross-account role that Serval can assume. The role’s policies determine exactly which AWS APIs Serval can call.
Open the modal in Serval
In the Serval UI navigate to Apps → Connect AWS. Leave this window open; it shows the Account ID and External ID you will need shortly.
Create a new IAM role
In AWS go to IAM → Roles → Create role and choose Another AWS account as the trusted entity.
Enter the Account ID shown in Serval, then tick Require external ID and paste the External ID.
Attach policies
Select AWS-managed or custom policies that grant the actions Serval needs (e.g. IAMReadOnlyAccess).
Finish the role wizard — name the role something memorable and click Create role.
Update the trust policy
Open the new role → Trust relationships → Edit trust policy and replace the document with the version below (adds the required sts:TagSession action).