You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

是否可通过AWS CLI删除不同区域下创建的所有Rest API?

解决方案

前提条件

  • 已完成AWS CLI的身份认证配置,账号拥有API网关的查询、删除权限,以及EC2区域列表查询权限
  • 已提前核对所有区域的Rest API资源,确认无需要保留的内容

单区域批量删除

  1. 先查询目标区域的所有Rest API,核对资源清单:
aws apigateway get-rest-apis --region <替换为目标区域ID> --query 'items[*].{ID:id,名称:name}' --output table
  1. 确认清单无误后执行单区域批量删除:
for api_id in $(aws apigateway get-rest-apis --region <替换为目标区域ID> --query 'items[*].id' --output text); do
  aws apigateway delete-rest-api --region <替换为目标区域ID> --rest-api-id $api_id
  echo "已删除API:$api_id"
done

跨所有区域批量删除

直接执行以下脚本即可遍历所有已启用的AWS区域,自动删除各区域下的所有Rest API:

for region in $(aws ec2 describe-regions --query 'Regions[*].RegionName' --output text); do
    echo "正在处理区域:$region"
    api_ids=$(aws apigateway get-rest-apis --region $region --query 'items[*].id' --output text)
    if [ -n "$api_ids" ]; then
        for api_id in $api_ids; do
            aws apigateway delete-rest-api --region $region --rest-api-id $api_id
            echo "已删除区域 $region 下的API:$api_id"
        done
    else
        echo "区域 $region 无待删除的Rest API"
    fi
done

重要提醒:删除操作不可逆,执行前务必先核对查询到的API清单,避免误删业务资源。删除后API网关会有1-5分钟的资源回收周期,短时间内在控制台看到已删除的API属于正常现象,可稍后刷新确认。
如果有指定区域不需要清理,可在遍历区域的循环中添加排除规则即可。

内容的提问来源于stack exchange,提问作者wait3

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 15:54:06