API Gateway
AWS LabsOfficialPublished by AWS Labs
- Skill
- Tool integration
- Cloud and DevOps
- Apache-2.0
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides comprehensive support for Amazon API Gateway, covering the full lifecycle of API development. It helps users choose between REST, HTTP, and WebSocket APIs based on specific requirements like cost, latency, and management features. The skill includes guidance on architecture patterns, security configurations (including mTLS and Lambda authorizers), performance tuning, and observability. It also provides troubleshooting steps for common errors and supports IaC implementation using SAM, CloudFormation, and CDK.
What it does
- Assists in selecting the appropriate API type (REST, HTTP, or WebSocket) based on enterprise needs.
- Provides architectural patterns for multi-tenant SaaS, private APIs, and cross-account deployments.
- Offers troubleshooting workflows for common 4xx and 5xx errors, including CORS and timeout issues.
- Guides the implementation of security controls like Lambda authorizers, JWT, and mTLS.
- Generates IaC templates for API Gateway resources using SAM, CloudFormation, or CDK.
- Configures performance settings such as throttling, usage plans, and caching strategies.
When to use it
- When designing or deploying APIs on AWS using API Gateway.
- When you need to troubleshoot API Gateway errors like 403, 502, 504, or CORS failures.
- When implementing security, authentication, or authorization for serverless APIs.
- When you need to optimize API performance, scaling, or observability.
- When you require Infrastructure as Code templates for API Gateway resources.
Advantages
- Reduces development time by providing clear decision trees for API types and auth methods.
- Minimizes configuration errors by highlighting common pitfalls and service limits.
- Ensures consistent deployment practices through standardized IaC patterns.
- Simplifies complex tasks like setting up mTLS or cross-account API routing.
- Provides a structured approach to observability and logging for production readiness.
Usage examples
- “I need to build a REST API that requires per-consumer throttling and request validation. Which API type should I use?”
- The agent will recommend the REST API (v1) and explain how to configure usage plans and request validation to meet your requirements.
- “My API is returning a 504 timeout error. How can I fix this?”
- The agent will guide you through checking backend latency, suggest optimizing the integration, or explain how to request a timeout increase for Regional/Private endpoints.
- “Generate a SAM template for a private API Gateway REST API.”
- The agent will provide a complete SAM/CloudFormation YAML template configured for a private endpoint, including necessary VPC link resources.
- “How do I set up mTLS for my API Gateway?”
- The agent will explain the requirements for Regional custom domains, S3 truststore configuration, and the necessary security policies.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/awslabs/api-gateway/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip api-gateway.zip -d .agents/skills
Documentation by AWS Labs
Amazon API Gateway Development
Expert guidance for building, managing, governing, and operating APIs with Amazon API Gateway. Covers REST APIs (v1), HTTP APIs (v2), and WebSocket APIs.
How to Use This Skill
When answering API Gateway questions:
Read the relevant reference file(s) before responding, do not rely solely on this summary
For tasks spanning multiple concerns (e.g., "private API with mTLS and custom domain"), read all relevant references
When the user needs IaC templates, consult
references/sam-cloudformation.mdorreferences/sam-service-integrations.mdand provide complete, working SAM/CloudFormation YAMLAlways mention relevant pitfalls and limits that affect the user's design
Quick Decision: Which API Type?
Choose the right API type first. This decision affects every downstream choice.
REST API is the full-featured API management platform for enterprises. It provides the governance, security, monetization, and operational controls that organizations need to build, publish, and manage APIs at scale, including usage plans with per-consumer throttling and quotas, API keys, request validation, WAF integration, resource policies, caching, canary deployments, and private endpoints.
HTTP API is the lightweight, low-cost proxy optimized for simpler API workloads. It offers ~70% lower cost and lower latency but trades away the API management features. Choose HTTP API when you need a fast, lightweight proxy to Lambda or HTTP backends and don't require the enterprise controls above.
| Factor | REST API (v1) | HTTP API (v2) | WebSocket API |
|---|---|---|---|
| Positioning | Full API management | Low-cost proxy | Real-time bidirectional |
| Cost | Higher | ~70% cheaper | Per-message pricing |
| Latency | Higher | Lower | Persistent connection |
| Max timeout | 50ms-29s (up to 300s Regional/Private) | 30s hard limit | 29s |
| Payload | 10 MB | 10 MB | 128 KB message / 32 KB frame |
| API Management | |||
| Usage plans/API keys | Yes | No | No |
| Request validation | Yes (JSON Schema draft 4) | No | No |
| Caching | Yes (0.5-237 GB) | No | No |
| Custom gateway responses | Yes | No | No |
| VTL mapping templates | Yes | No (parameter mapping only) | Yes |
| Security & Governance | |||
| WAF | Yes | No (use CloudFront + WAF) | No |
| Resource policies | Yes | No | No |
| Private endpoints | Yes | No | No |
| mTLS | Yes (Regional custom domain only) | Yes (Regional custom domain only) | Via CloudFront viewer mTLS |
| Auth | |||
| Lambda authorizer | Yes (TOKEN + REQUEST) | Yes (REQUEST only, simple + IAM policy format) | Yes (REQUEST on $connect only) |
| JWT authorizer | No (use Cognito authorizer) | Yes (native) | No |
| Cognito authorizer | Yes (native) | Use JWT authorizer | No |
| Operations | |||
| Canary deployments | Yes | No | No |
| Response streaming | Yes | No | No |
| X-Ray tracing | Yes | No | No |
| Execution logging | Yes | No | Yes |
| Custom domain sharing | Not with WebSocket | Not with WebSocket | Not with REST/HTTP |
Use REST API when: you are building APIs for external consumers, partners, or multi-tenant platforms; need to enforce per-consumer rate limits and quotas; require request validation, caching, or WAF at the API layer; need private endpoints, resource policies, or canary deployments; or are building an API product with monetization and governance requirements.
Use HTTP API when: you are building lightweight APIs or simple backend proxies; cost and latency are the primary concerns; you don't need per-consumer throttling, request validation, caching, or WAF at the API layer; and native JWT authorization with OIDC/OAuth 2.0 meets your auth needs. Accept the hard 30s timeout and lack of API management features. For WAF, edge caching, or edge compute, place a CloudFront distribution in front of the HTTP API.
Use WebSocket API when you need: persistent bidirectional connections for real-time use cases (chat, notifications, live dashboards).
Instructions
Step 1: Design the API
Before implementation, gather requirements systematically. Consult references/requirements-gathering.md for the full requirements workflow covering endpoints, auth, data models, performance, security, and deployment needs.
Key design decisions:
API type: Use the decision table above
Endpoint type: Edge-optimized (default for global clients; optimizes TCP connections via CloudFront POPs but does not cache at the edge), Regional (same-region clients, or global clients needing their own CloudFront distribution for edge caching, edge compute, granular WAF control, or geo-based routing), Private (VPC-only access, REST API only)
Topology: Centralized (single domain, path-based routing) vs Distributed (subdomains per service)
Authentication: See
references/authentication.mdfor the decision tree
Step 2: Implement the API
Consult these references based on what you're building:
Architecture patterns:
references/architecture-patterns.md: topology, multi-tenant SaaS, hybrid workloads, private APIs, multi-region, streamingWebSocket API:
references/websocket.md: route selection, @connections management, session management, client resilience, SAM templates, limits, multi-regionService integrations:
references/service-integrations.md: direct AWS service integrations (EventBridge, SQS, SNS, DynamoDB, Kinesis, Step Functions, S3), HTTP proxy, mock, VTL mapping templates, binary media types, Lambda sync/async invocationCustom domains and routing:
references/custom-domains-routing.md: base path mappings, routing rules, header-based versioningSecurity:
references/security.md: mTLS (API Gateway native + CloudFront viewer mTLS), TLS policies, resource policies, WAF, HttpOnly cookies, CRL checksSAM/CloudFormation:
references/sam-cloudformation.md: IaC patterns, OpenAPI extensions, VTL reference, binary dataSAM service integration templates:
references/sam-service-integrations.md: EventBridge, SQS, DynamoDB CRUD, Kinesis, Step Functions (REST + WebSocket) templates
Step 3: Configure Performance and Scaling
Throttling: Account-level default is 10,000 rps / 5,000 burst (adjustable; request increases via AWS Support). Configure stage-level and method-level throttling via usage plans. See
references/performance-scaling.mdCaching (REST only): Default TTL 300s, max 3600s. Only GET methods cached by default. Max cached response 1 MB
Edge caching (all API types): For edge caching, place a self-managed CloudFront distribution in front of a Regional API. CloudFront reduces latency, backend load, AND cost (cached responses never reach API Gateway). Also enables edge compute (CloudFront Functions, Lambda@Edge) and granular cache behaviors per path. Use a Regional endpoint, not edge-optimized, when pairing with your own CloudFront distribution
Scaling: API Gateway scales automatically but plan the entire stack (Lambda concurrency, DynamoDB capacity)
Step 4: Set Up Observability
Always configure access logging. For REST and WebSocket APIs, also enable execution logging (ERROR level for production, INFO only for debugging). HTTP API does not support execution logging; use access logs with enhanced observability variables instead.
Consult the observability references based on what you need:
Logging setup, log formats, retention:
references/observability-logging.mdMetrics, alarms, metric filters, X-Ray tracing:
references/observability-metrics-alarms.mdLog analysis and insights, analytics pipeline, cross-account, control plane logs:
references/observability-analytics.md
Step 5: Deploy
Use Infrastructure as Code (SAM, CDK, CloudFormation, Terraform) for production
Canary deployments (REST only): Route a percentage of traffic to test new versions
Blue/green deployments: Use custom domain API mappings to switch between environments with zero downtime
Routing rules (preferred for new domains): Declarative header/path-based routing on custom domains for versioning, A/B testing, gradual rollouts, and cell-based routing
See
references/deployment.mdfor detailed patterns
Step 6: Apply Governance
For organization-wide API standards, see references/governance.md covering:
Preventative controls (SCPs, IAM policies)
Proactive controls (CloudFormation Hooks, Guard rules)
Detective controls (AWS Config rules, EventBridge)
Specific enforcement examples for security, observability, and management
Response Format
When responding to API Gateway questions, structure your answer as:
Recommendation: Lead with the recommended approach and why
Code: Include SAM/CloudFormation YAML or code when the user needs implementation (always read the relevant reference file first)
Pitfalls: Warn about relevant gotchas from the pitfalls below or from
references/pitfalls.mdLimits: Mention any service limits that constrain the design
Troubleshooting Quick Reference
When diagnosing API Gateway errors, consult references/troubleshooting.md for detailed resolution steps. Here are the most common issues:
| Error | Most Common Cause | Quick Fix |
|---|---|---|
| 400 Bad Request | Protocol mismatch (HTTP/HTTPS) with ALB | Match protocol to listener type |
| 401 Unauthorized | Wrong token type (ID vs access) or missing identity sources | Check token type matches scope config; verify all identity sources sent |
| 403 Missing Auth Token | Stage name in URL when using custom domain | Remove stage name from URL path |
| 403 from VPC | Private DNS on VPC endpoint intercepts ALL API calls | Use custom domain names for public APIs |
| 403 Access Denied | Resource policy + auth type mismatch or missing redeployment | Review policy, check auth type, redeploy API |
| 403 mTLS | Certificate issuer not in truststore or weak signature algorithm | Verify CA in truststore, use SHA-256+ |
| 429 Too Many Requests | Account/stage/method throttle limits exceeded | Implement jittered exponential backoff; request limit increase |
| 500 Internal Error | Missing Lambda invoke permission (especially with stage variables) | Add resource-based policy to Lambda function |
| 502 Bad Gateway | Lambda response not in required proxy format | Return {statusCode, headers, body} from Lambda |
| 504 Timeout | Backend exceeds 29s (REST, increasable) or 30s (HTTP, hard). HTTP API body says "Service Unavailable" but status is 504 | Optimize backend, request timeout increase (REST Regional/Private), or switch to async invocation |
| CORS errors | Missing CORS headers on Gateway Responses (4XX/5XX) | Add CORS headers to DEFAULT_4XX and DEFAULT_5XX gateway responses |
| SSL/PKIX errors | Incomplete certificate chain on backend | Provide full cert chain; use insecureSkipVerification only for testing |
Critical Pitfalls
REST API default timeout is 29 seconds (increasable up to 300s for Regional/Private endpoints via quota request). Lambda continues running but client gets 504. Request a timeout increase, or consider async patterns (SQS, EventBridge) for better user experience on long operations
HTTP API hard timeout is 30 seconds. Returns
{"message":"Service Unavailable"}while Lambda continues/pingand/spingare reserved paths. Do not use for API resourcesExecution log events truncated at 1,024 bytes. Use access logs for complete data
413
REQUEST_TOO_LARGEis the only gateway response that cannot be customized. Use DEFAULT_4XX as a catch-all to add CORS headers for all 4xx errors including 413maxItems/minItemsnot validated in REST API request validationRoot-level
securityin OpenAPI is ignored. Must set per-operationJWT authorizer public keys cached 2 hours. Account for this in key rotation
Management API rate limit: 10 rps / 40 burst. Heavy automation can hit this
Always redeploy REST API after configuration changes. Changes don't take effect until deployed
Edge-optimized endpoints do NOT cache at the edge — they only optimize TCP connections via CloudFront POPs. If you need edge caching, edge compute (CloudFront Functions, Lambda@Edge), or granular CloudFront control, use a Regional API with your own CloudFront distribution instead
For additional pitfalls (header handling, URL encoding, caching charges, canary deployments, usage plans), see references/pitfalls.md.
IaC Framework Selection
Default: CDK TypeScript
Override syntax:
"use SAM" → Generate SAM/CloudFormation YAML templates
"use CloudFormation" → Generate CloudFormation YAML templates
"use Terraform" → Generate Terraform HCL
When not specified, ALWAYS use CDK TypeScript.
Error Scenarios
MCP Server Unavailable
Inform user: "AWS Serverless MCP not responding"
Ask: "Proceed without MCP support?"
DO NOT continue without user confirmation
Service Limits Quick Reference
See references/service-limits.md for the complete table. Most numeric quotas below are default values and adjustable; check with your AWS account team and the latest quotas page before using them for architectural decisions. Key limits:
| Resource | REST API | HTTP API | WebSocket |
|---|---|---|---|
| Payload size | 10 MB | 10 MB | 128 KB |
| Integration timeout | 50ms-29s (up to 300s Regional/Private) | 30s hard | 29s |
| APIs per region | 600 Regional/Private; 120 Edge-optimized | 600 | 600 |
| Stages per API | 10 | 10 | 10 |
| Routes/resources per API | 300 | 300 | 300 |
| Custom domains (public) | 120 | 120 | 120 |
| Account throttle | 10,000 rps / 5,000 burst | Same | Same (shared quota) |
| API keys per region | 10,000 | N/A | N/A |
| Usage plans per region | 300 | N/A | N/A |
| Cache sizes | 0.5 GB - 237 GB | N/A | N/A |
Files
- ATTRIBUTION.mdAdded by AutoGineer908 B
- LICENSELicence file added by AutoGineer9.9 KiB
- NOTICELicence file added by AutoGineer89 B
- SKILL.md19.3 KiB
- references/architecture-patterns.md19.0 KiB
- references/authentication.md9.4 KiB
- references/custom-domains-routing.md8.5 KiB
- references/deployment.md14.9 KiB
- references/governance.md9.8 KiB
- references/observability-analytics.md4.2 KiB
- references/observability-logging.md11.2 KiB
- references/observability-metrics-alarms.md5.5 KiB
- references/performance-scaling.md9.0 KiB
- references/pitfalls.md2.0 KiB
- references/requirements-gathering.md14.8 KiB
- references/sam-cloudformation.md7.8 KiB
- references/sam-service-integrations.md22.5 KiB
- references/security.md18.2 KiB
- references/service-integrations.md24.4 KiB
- references/service-limits.md11.5 KiB
- references/troubleshooting.md14.5 KiB
- references/websocket.md7.4 KiB
references/governance.md
API Governance
This document focuses on governance of REST APIs (API Gateway V1), as governance and compliance controls are primarily a concern in enterprise environments where REST APIs are the typical choice due to their full API management capabilities (usage plans, WAF, resource policies, request validation).
Governance Framework
Four types of security controls:
Preventative: Prevent unauthorized changes before they occur (IAM policies, SCPs)
Proactive: Prevent noncompliant resources before deployment (CloudFormation Hooks, Guard rules)
Detective: React to configuration changes after they happen (AWS Config rules, EventBridge)
Responsive: Remediate adverse events (automated remediation via Lambda)
Governance Tools
Preventative Controls
IAM policies and permission boundaries: Fine-grained API Gateway control plane access
Service Control Policies (SCPs): Organization-wide guardrails using API Gateway condition keys. Policy examples below show statement bodies only. SCPs require a complete policy document with
Version,Statementarray, and"Effect", while SCP statements implicitly apply to all principals ("Principal": "*"is not needed in SCPs but is required in resource-based policies)Over 20 IAM condition keys available for API Gateway governance, split into two categories:
apigateway:Request/*: Evaluates the new values being set in the requestapigateway:Resource/*: Evaluates the current values on the existing resource being acted uponBoth are preventative, evaluated at IAM authorization time before the action occurs
Key condition keys:
apigateway:Request/EndpointType,apigateway:Request/SecurityPolicy,apigateway:Resource/ApiKeyRequired,apigateway:Request/AuthorizationType,apigateway:Request/AccessLoggingDestination,apigateway:Request/MtlsTrustStoreUri
Proactive Controls
CloudFormation Hooks: Evaluate resource configuration before deployment. Noncompliant resources block deploy or warn
AWS Control Tower: Preconfigured proactive controls for API Gateway
CloudFormation Guard: Open-source policy-as-code evaluation tool with declarative DSL. Managed rule set available for API Gateway
Limitation: CloudFormation-based proactive controls may not work with non-CloudFormation IaC tools (Terraform, Pulumi)
Detective Controls
AWS Config: Managed rules + custom rules (Guard DSL or Lambda). Key managed rules:
api-gw-xray-enabledapi-gw-associated-with-wafapi-gw-ssl-enabledapi-gw-execution-logging-enabledapi-gw-endpoint-type-check
Amazon EventBridge: React to API Gateway events in real-time with Lambda
AWS Security Hub: Findings trigger EventBridge events for automated remediation
AWS Trusted Advisor: Service-level checks for optimization, performance, security
Enforcing Observability
Require X-Ray Tracing
Preventative: N/A (no IAM/SCP conditions)
Proactive: Custom CloudFormation Hook or Guard rule
Detective: AWS Config rule
api-gw-xray-enabled
Require Access Logging
Preventative: SCP using
apigateway:Request/AccessLoggingDestinationandapigateway:Request/AccessLoggingFormat
{
"Effect": "Deny",
"Action": ["apigateway:PATCH", "apigateway:POST", "apigateway:PUT"],
"Resource": ["arn:aws:apigateway:*::/restapis/*/stages/*"],
"Condition": { "StringLikeIfExists": { "apigateway:Request/AccessLoggingDestination": "" } }
}Side effect:
StringLikeIfExistsmeans any stage update that does not explicitly includeAccessLoggingDestination(e.g., updating cache settings or stage variables) will also be denied. This is intentionally strict; use detective controls instead if this is too restrictiveDetective: AWS Config custom Guard rule:
configuration.accessLogSettings.destinationArn is_string
Require Execution Logging
Preventative: N/A (no IAM/SCP conditions)
Proactive: Custom CloudFormation Hook or Guard rule
Detective: AWS Config rule
api-gw-execution-logging-enabled
Caveat: Preventative/proactive controls may block first deployment via AWS Console (Console does not allow specifying these settings on new stage creation). IaC/CLI works fine.
Enforcing Security
Require WAF
Preventative: N/A
Proactive: Custom CloudFormation Hook
Detective: AWS Config rule
api-gw-associated-with-waf
Require TLS 1.2+
Preventative: SCP denying
apigateway:Request/SecurityPolicyvalueTLS_1_0Detective: EventBridge rule or AWS Config custom rule
Require mTLS
Preventative: SCP requiring
apigateway:Request/MtlsTrustStoreUriis presentDetective: EventBridge rule or AWS Config custom rule
Require Specific Authorizer Type
Preventative: SCP using
apigateway:Request/AuthorizationType(valid values:NONE,AWS_IAM,CUSTOM,COGNITO_USER_POOLS)Use
apigateway:Request/AuthorizerUrito enforce a specific Lambda authorizer. Note: the URI is the full invocation path (arn:aws:apigateway:REGION:lambda:path/2015-03-31/functions/FUNCTION_ARN/invocations), not just the Lambda ARN. UseStringLikewith wildcards for flexibility
Require API Key
Preventative: SCP with
apigateway:Resource/ApiKeyRequiredorapigateway:Request/ApiKeyRequiredDetective: EventBridge rule or AWS Config custom rule
Require Request Validation
Preventative: N/A
Proactive: Custom CloudFormation Hook
Detective: EventBridge rule or AWS Config custom rule
Restrict VPCs in Private API Resource Policy
Preventative: N/A
Proactive: Custom CloudFormation Hook
Detective: EventBridge rule or AWS Config custom rule
Audit Resource Policies for Overly Broad Access
Preventative: N/A (resource policy content is not exposed via IAM condition keys)
Proactive: Custom CloudFormation Hook to reject policies with
"Principal": "*"withoutConditionconstraintsDetective: AWS Config custom rule to flag resource policies granting unrestricted access (e.g., missing
aws:SourceVpceoraws:SourceIpconditions on private APIs)
Enforcing Management Control
Freeze API Modifications by Tag
{
"Effect": "Deny",
"Action": ["apigateway:DELETE", "apigateway:PATCH", "apigateway:POST", "apigateway:PUT"],
"Resource": "*",
"Condition": { "StringEquals": { "aws:ResourceTag/EnvironmentState": "frozen" } }
}To lift freeze: temporarily disable the IAM policy. Note: the
frozentag itself cannot be removed while the policy is active (tag operations useapigateway:PUTwhich is denied)Alternative: Freeze deployments by stage name using
apigateway:Request/StageName
Prevent Custom Domains in Child Accounts
{
"Effect": "Deny",
"Action": ["apigateway:DELETE", "apigateway:PUT", "apigateway:PATCH", "apigateway:POST"],
"Resource": ["arn:aws:apigateway:*::/domainnames", "arn:aws:apigateway:*::/domainnames/*"]
}Prevent Public APIs in Non-Central Accounts
SCP denying
EDGEorREGIONALendpoint types in child accountsDetective: AWS Config rule
api-gw-endpoint-type-check
Require Tags
{
"Effect": "Deny",
"Action": ["apigateway:POST"],
"Resource": ["arn:aws:apigateway:*::/restapis"],
"Condition": { "Null": { "aws:RequestTag/owner": "true" } }
}Use
aws:RequestTagfor enforcing tags at creation time; useaws:ResourceTagfor enforcing tags on updates to existing resourcesREST API child resources of RestApi, DomainName, UsagePlan inherit parent tags
Require Documentation
Proactive: Custom CloudFormation Hook
Detective: AWS Config custom Guard rule:
configuration.documentationVersion is_string
Require Compression
Proactive: Custom CloudFormation Hook
Detective: AWS Config custom Guard rule:
configuration.minimumCompressionSize >= 0
Management Access Control
API Management (Control Plane)
IAM policy scoped to specific API ARN:
arn:aws:apigateway:region::/restapis/apiId/*Tip: Use
arn:aws:apigateway:region::/restapis/??????????/*(10 question marks) to match any API ID. REST API IDs are observed to be exactly 10 alphanumeric characters. This scopes permissions to REST APIs without hardcoding specific IDs. Note: this length is not formally documented by AWS, but the risk of it changing is low given the installed baseThis does NOT grant access to: custom domains, client certificates, VPC links, API keys, usage plans
IAM principals denied by default
Observability Access
Execution logs: IAM for CloudWatch Logs; use data protection policies to mask sensitive data
Access logs: IAM for CloudWatch Logs or Firehose; control access at both Firehose AND destination
Metrics: IAM for CloudWatch
Traces: IAM for X-Ray
CloudTrail: IAM for CloudTrail
Sensitive data protection: CloudWatch Logs data protection policies, Amazon Macie for S3-stored logs
API Lifecycle
Design -> Build -> Manage -> Adoption
Plan: Protocol selection, endpoint type, topology, standards
Develop/Test: IaC, OpenAPI specs, integration testing
Secure: Auth, WAF, mTLS, resource policies
Deploy/Publish: CI/CD, canary, blue/green
Scale: Quotas, caching, cell-based architecture
Monitor: Metrics, logs, traces, dashboards
Insights: CloudWatch Logs Insights, Contributor Insights, QuickSight
Monetize: Usage plans, API segmentation, AWS Marketplace, AWS Data Exchange
Discover: API Gateway Portal, Backstage, partner portals (Readme, Apiable, SmartBear)
Audit
CloudTrail: All REST API management calls captured as events
AWS Config: Record configuration changes, detect drift, enforce compliance
EventBridge: React to changes in real-time
Example EventBridge rule for stage updates:
{
"detail": {
"eventSource": ["apigateway.amazonaws.com"],
"requestParameters": { "restApiId": ["abcd123456"], "stageName": ["prod"] },
"eventName": ["UpdateStage"],
"errorCode": [{ "exists": false }]
}
}Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs an MCP server, Needs an API key
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- AWS Labs
- Publisher
- AWS Labs (Official)
- Source
- awslabs/agent-plugins · plugins/aws-serverless/skills/api-gateway · commit fbefb37
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- NOTICE (added by AutoGineer from NOTICE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by AWS Labs.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download api-gateway.zip