aws.apigwv2

Filters

json-diff

Compute the diff from the current resource to a previous version.

A resource matches the filter if a diff exists between the current resource and the selected revision.

Utilizes config as a resource revision database.

Revisions can be selected by date, against the previous version, and against a locked version (requires use of is-locked filter).

properties:
  selector:
    enum:
    - previous
    - date
    - locked
  selector_value:
    type: string
  type:
    enum:
    - json-diff
required:
- type

Permissions - config:GetResourceConfigHistory

Actions

delete

Delete an HTTP or WebSocket API.

example:

policies:
- name: apigwv2-delete
  resource: apigwv2
  filters:
    - Name: empty
  actions:
    - type: delete
properties:
  type:
    enum:
    - delete
required:
- type

Permissions - apigateway:DELETE

rename-tag

Rename an existing tag key to a new value.

example:

rename Application, and Bap to App, if a resource has both of the old keys then we’ll use the value specified by Application, which is based on the order of values of old_keys.

policies:
- name: rename-tags-example
  resource: aws.log-group
  filters:
    - or:
      - "tag:Bap": present
      - "tag:Application": present
  actions:
    - type: rename-tag
      old_keys: [Application, Bap]
      new_key: App
properties:
  new_key:
    type: string
  old_key:
    type: string
  old_keys:
    items:
      type: string
    type: array
  type:
    enum:
    - rename-tag
required:
- type

Permissions - tag:TagResources, tag:UntagResources

update

Update configuration of a WebSocket or HTTP API.

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/apigatewayv2/client/update_api.html

example:

policies:
  - name: apigw-update
    resource: apigwv2
    filters:
      - Name: c7n-test
    actions:
      - type: update
        CorsConfiguration:
          AllowCredentials: False
          MaxAge: 60
        Description: My APIv2
        DisableExecuteApiEndpoint: False
properties:
  ApiKeySelectionExpression:
    type: string
  CorsConfiguration:
    properties:
      AllowCredentials:
        type: boolean
      AllowHeaders:
        items:
          type: string
        type: array
      AllowMethods:
        items:
          type: string
        type: array
      AllowOrigins:
        items:
          type: string
        type: array
      ExposeHeaders:
        items:
          type: string
        type: array
      MaxAge:
        type: integer
    type: object
  CredentialsArn:
    type: string
  Description:
    type: string
  DisableExecuteApiEndpoint:
    type: boolean
  DisableSchemaValidation:
    type: boolean
  IpAddressType:
    enum:
    - ipv4
    - dualstack
    type: string
  Name:
    type: string
  RouteKey:
    type: string
  RouteSelectionExpression:
    type: string
  Target:
    type: string
  Version:
    type: string
  type:
    enum:
    - update
required:
- type

Permissions - apigateway:PATCH