canonical: https://jentic.com/apis/amazonaws.com/aws-appmesh

# AWS App Mesh

AWS App Mesh is a service mesh based on the Envoy proxy that standardises how microservices communicate. It provides routing, retries, circuit breaking, and end-to-end visibility for services running on ECS, EKS, EC2, and Fargate without requiring service code changes.

## For AI agents

Use the AWS App Mesh API to manage service-to-service traffic for microservices on AWS, with 38 operations covering the full control-plane lifecycle.

## Scope

Does not handle service deployment, container orchestration, or load balancer provisioning - use for service mesh routing and traffic policy configuration only.

## Capabilities

- Create a service mesh as the isolation boundary for related microservices
- Define virtual nodes that point at concrete service backends with listeners and service discovery
- Configure virtual services and routers to abstract clients from backend changes
- Add weighted routes that split traffic between backends for canary or blue/green rollouts
- Deploy virtual gateways to handle ingress traffic into the mesh
- Apply circuit breaker, retry, and timeout policies on routes

## Use cases

### Canary release with weighted traffic split

Roll out a new version of a service safely by creating a virtual router with a route that splits traffic between the existing virtual node and a new virtual node pointing at the v2 deployment. App Mesh routes a small percentage of requests to v2 while leaving the rest on v1, and the weights can be shifted incrementally as confidence grows. End-to-end setup is typically under a day per service.

Example prompt: Create a route under the orders virtual router that sends 90% of traffic to the orders-v1 virtual node and 10% to the orders-v2 virtual node.

### Microservice ingress through a virtual gateway

Expose a set of microservices to external clients through a single ingress point by creating a virtual gateway and gateway routes that map host headers or paths to internal virtual services. App Mesh handles TLS termination at the gateway and forwards requests through the mesh with consistent traffic policies. Configuration is typically completed in under a day.

Example prompt: Create a virtual gateway named 'public-gw' in the prod-mesh, then add a gateway route matching prefix '/orders' that forwards traffic to the orders virtual service.

### Resilient service-to-service calls with retries

Improve resilience between microservices by attaching retry policies and timeouts to routes so transient failures retry automatically and slow backends do not exhaust client threads. App Mesh applies these policies through Envoy sidecars without requiring code changes in the calling services.

Example prompt: Update the orders virtual router's primary route to include a retry policy with three attempts and a per-try timeout of two seconds.

### AI agent configuring service mesh routing through Jentic

A platform agent can manage service mesh updates on demand by calling App Mesh through Jentic. It searches for routing operations, loads the route schemas, and executes calls with scoped credentials so cluster-admin keys never enter its context. This turns multi-step canary updates into a single agent intent.

Example prompt: Search Jentic for 'configure traffic routing between microservices', load the UpdateRoute schema, and execute it to shift the orders virtual router weights to 50/50.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| PUT | /v20190125/meshes | Create a service mesh |
| PUT | /v20190125/meshes/{meshName}/virtualNodes | Create a virtual node |
| PUT | /v20190125/meshes/{meshName}/virtualServices | Create a virtual service |
| PUT | /v20190125/meshes/{meshName}/virtualRouters | Create a virtual router |
| PUT | /v20190125/meshes/{meshName}/virtualRouter/{virtualRouterName}/routes | Create a route under a virtual router |
| PUT | /v20190125/meshes/{meshName}/virtualGateways | Create a virtual gateway for ingress |

## Key resources

- **Meshes** — Top-level isolation boundaries for service mesh resources
- **VirtualNodes** — Logical pointers to backend services such as Kubernetes deployments or ECS services
- **VirtualServices** — Abstractions that other services target by hostname
- **VirtualRouters** — Traffic routers that distribute requests between virtual nodes
- **Routes** — Rules under a virtual router defining matching criteria and weighted targets
- **VirtualGateways** — Mesh ingress points for external traffic
- **GatewayRoutes** — Rules under a virtual gateway routing external traffic to virtual services

## Why Jentic

- **Setup:** Wiring AWS App Mesh by hand means creating IAM credentials, choosing the right regional host from appmesh.{region}.amazonaws.com, signing every request with AWS SigV4, and building your own retry and pagination handling. Through Jentic you install once, import AWS App Mesh from the API Directory, store the AWS access key once, and your agent calls it.
- **Permission scoping:** AWS App Mesh puts the mesh name in the URL path (/v20190125/meshes/{meshName}/virtualNodes, /v20190125/meshes/{meshName}/virtualServices), so a rule can pin your agent to one mesh: it can create virtual nodes, services, and routers within that mesh and nothing else. You choose the operations it may call, so destructive ones like deleting a mesh or a virtual router are not included unless you add them.
- **Credential handling:** Your AWS access key for AWS App Mesh is stored once, encrypted, by your own Jentic One instance and signed with SigV4 at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'configure traffic routing between microservices' or 'create a virtual gateway for ingress', and Jentic returns the matching AWS App Mesh operation with its input schema so the agent calls the right endpoint without browsing the AWS service reference.

## Related APIs

- **EKS Kubernetes clusters** — EKS hosts the workloads that App Mesh sidecars route traffic between
- **Cloud Map service discovery** — Cloud Map provides DNS or API-based service registration that App Mesh virtual nodes can target
- **App Runner managed services** — App Runner provides built-in load balancing for individual services rather than mesh-wide traffic policy

## FAQ

### What authentication does the AWS App Mesh API use?

The AWS App Mesh API uses AWS Signature Version 4 (HMAC) request signing with IAM-issued credentials, the same scheme as every AWS service API. Jentic's your Jentic One instance stores those AWS credentials encrypted in the vault, generates short-lived signed requests at execution time, and never passes raw access keys into the agent's context.

### Can I create a service mesh for my microservices with the AWS App Mesh API?

Yes - the AWS App Mesh API exposes 38 operations including the actions needed for that scenario. Use the operations listed in the key endpoints section as the starting point, then chain calls as needed for your workflow.

### What are the rate limits for the AWS App Mesh API?

AWS applies per-account, per-region request rate limits to the AWS App Mesh control plane. Specific limits are not encoded in the OpenAPI spec; consult the AWS service quotas console for the AWS App Mesh entry, and design retries with exponential backoff to absorb throttling responses.

### How do I configure traffic routing between microservices through Jentic?

Run pip install jentic, then call client.search('configure traffic routing between microservices') to discover the AWS App Mesh operations that match. Load the schema for the chosen operation with client.load(...) and execute it with client.execute(...). Jentic handles AWS request signing automatically against the credentials stored in your Jentic One instance.

### Is the AWS App Mesh API free to call?

AWS does not charge for control-plane API calls themselves on most AWS App Mesh operations, but the underlying resources you create or operate (fleets, queries, deployments, and so on) incur usage charges according to the AWS App Mesh pricing page. Refer to the AWS pricing page for the service to estimate cost.

### Which operations should an agent call first when working with the AWS App Mesh API?

For most workflows, agents should start by listing existing resources to understand the current state, then call the create or update operation that matches the intent. The endpoints listed under Key Endpoints in the catalog give a ranked starting set.

### Can I limit what my agent is allowed to do with the AWS App Mesh API?

Yes. Because Jentic One is self-hosted, you write the rules that decide which AWS App Mesh operations and credentials your agent may use. Since App Mesh carries the mesh name in the URL path (for example /v20190125/meshes/{meshName}/virtualNodes and /v20190125/meshes/{meshName}/virtualServices), you can pin the agent to a single mesh so it creates virtual nodes, services, and routers only within that mesh. You also choose the exact operations it may call, so destructive actions like deleting a mesh or a virtual router stay off limits unless you explicitly allow them.
