{
"resources": {
"elbv2-load-balancers": {
"display_name": "Load Balancers",
"service": "elbv2",
"sdk_method": "describe_load_balancers",
"sdk_method_params": {},
"response_path": "load_balancers",
"id_field": "LoadBalancerArn",
"name_field": "LoadBalancerName",
"is_global": false,
"columns": [
{ "header": "NAME", "json_path": "LoadBalancerName", "width": 30 },
{ "header": "TYPE", "json_path": "Type", "width": 12 },
{ "header": "SCHEME", "json_path": "Scheme", "width": 15 },
{ "header": "STATE", "json_path": "State", "width": 10, "color_map": "state" },
{ "header": "DNS NAME", "json_path": "DNSName", "width": 50 },
{ "header": "VPC", "json_path": "VpcId", "width": 23 }
],
"sub_resources": [
{ "shortcut": "l", "display_name": "Listeners", "resource_key": "elbv2-listeners", "parent_id_field": "LoadBalancerArn", "filter_param": "load_balancer_arn" },
{ "shortcut": "t", "display_name": "Target Groups", "resource_key": "elbv2-target-groups", "parent_id_field": "LoadBalancerArn", "filter_param": "load_balancer_arn" }
],
"actions": [
{ "key": "ctrl+d", "display_name": "Delete Load Balancer", "shortcut": "ctrl+d", "sdk_method": "delete_load_balancer", "confirm": { "message": "Delete load balancer", "default_yes": false, "destructive": true } }
],
"api_config": {
"protocol": "query",
"action": "DescribeLoadBalancers",
"response_root": "/DescribeLoadBalancersResponse/DescribeLoadBalancersResult/LoadBalancers/member",
"pagination": {
"input_token": "Marker",
"output_token": "/DescribeLoadBalancersResponse/DescribeLoadBalancersResult/NextMarker",
"max_results_param": "PageSize",
"max_results": 100
}
},
"field_mappings": {
"LoadBalancerArn": { "source": "/LoadBalancerArn", "default": "-" },
"LoadBalancerName": { "source": "/LoadBalancerName", "default": "-" },
"DNSName": { "source": "/DNSName", "default": "-" },
"Type": { "source": "/Type", "default": "-" },
"Scheme": { "source": "/Scheme", "default": "-" },
"State": { "source": "/State/Code", "default": "-" },
"VpcId": { "source": "/VpcId", "default": "-" },
"CreatedTime": { "source": "/CreatedTime", "default": "-" }
},
"action_configs": {
"delete_load_balancer": {
"action_id": "delete_load_balancer",
"protocol": "query",
"action": "DeleteLoadBalancer",
"id_param": "LoadBalancerArn"
}
},
"describe_config": {
"protocol": "query",
"action": "DescribeLoadBalancers",
"id_param": "LoadBalancerArns.member.1",
"response_path": "/DescribeLoadBalancersResponse/DescribeLoadBalancersResult/LoadBalancers/member"
}
},
"elbv2-listeners": {
"display_name": "Listeners",
"service": "elbv2",
"sdk_method": "describe_listeners",
"sdk_method_params": {},
"response_path": "listeners",
"id_field": "ListenerArn",
"name_field": "ListenerArn",
"is_global": false,
"requires_parent": true,
"columns": [
{ "header": "PORT", "json_path": "Port", "width": 8 },
{ "header": "PROTOCOL", "json_path": "Protocol", "width": 10 },
{ "header": "SSL POLICY", "json_path": "SslPolicy", "width": 25 },
{ "header": "DEFAULT ACTION", "json_path": "DefaultActionType", "width": 20 },
{ "header": "ARN", "json_path": "ListenerArn", "width": 80 }
],
"sub_resources": [
{ "shortcut": "r", "display_name": "Rules", "resource_key": "elbv2-rules", "parent_id_field": "ListenerArn", "filter_param": "listener_arn" }
],
"actions": [
{ "key": "ctrl+d", "display_name": "Delete Listener", "shortcut": "ctrl+d", "sdk_method": "delete_listener", "confirm": { "message": "Delete listener", "default_yes": false, "destructive": true } }
],
"api_config": {
"protocol": "query",
"action": "DescribeListeners",
"response_root": "/DescribeListenersResponse/DescribeListenersResult/Listeners/member",
"pagination": {
"input_token": "Marker",
"output_token": "/DescribeListenersResponse/DescribeListenersResult/NextMarker",
"max_results_param": "PageSize",
"max_results": 100
},
"param_mapping": {
"load_balancer_arn": "LoadBalancerArn"
}
},
"field_mappings": {
"ListenerArn": { "source": "/ListenerArn", "default": "-" },
"LoadBalancerArn": { "source": "/LoadBalancerArn", "default": "-" },
"Port": { "source": "/Port", "default": "-" },
"Protocol": { "source": "/Protocol", "default": "-" },
"SslPolicy": { "source": "/SslPolicy", "default": "-" },
"DefaultActionType": { "source": "/DefaultActions/member/Type", "transform": "first_item", "default": "-" }
},
"action_configs": {
"delete_listener": {
"action_id": "delete_listener",
"protocol": "query",
"action": "DeleteListener",
"id_param": "ListenerArn"
}
}
},
"elbv2-rules": {
"display_name": "Rules",
"service": "elbv2",
"sdk_method": "describe_rules",
"sdk_method_params": {},
"response_path": "rules",
"id_field": "RuleArn",
"name_field": "RuleArn",
"is_global": false,
"requires_parent": true,
"columns": [
{ "header": "PRIORITY", "json_path": "Priority", "width": 10 },
{ "header": "IS DEFAULT", "json_path": "IsDefault", "width": 12 },
{ "header": "CONDITIONS", "json_path": "ConditionsSummary", "width": 40 },
{ "header": "ACTION", "json_path": "ActionType", "width": 15 },
{ "header": "TARGET GROUP", "json_path": "TargetGroupArn", "width": 60 }
],
"sub_resources": [],
"actions": [
{ "key": "ctrl+d", "display_name": "Delete Rule", "shortcut": "ctrl+d", "sdk_method": "delete_rule", "confirm": { "message": "Delete rule", "default_yes": false, "destructive": true } }
],
"api_config": {
"protocol": "query",
"action": "DescribeRules",
"response_root": "/DescribeRulesResponse/DescribeRulesResult/Rules/member",
"pagination": {
"input_token": "Marker",
"output_token": "/DescribeRulesResponse/DescribeRulesResult/NextMarker",
"max_results_param": "PageSize",
"max_results": 100
},
"param_mapping": {
"listener_arn": "ListenerArn"
}
},
"field_mappings": {
"RuleArn": { "source": "/RuleArn", "default": "-" },
"Priority": { "source": "/Priority", "default": "-" },
"IsDefault": { "source": "/IsDefault", "transform": "bool_to_yes_no" },
"ConditionsSummary": { "source": "/Conditions/member/Field", "transform": "array_to_csv", "default": "-" },
"ActionType": { "source": "/Actions/member/Type", "transform": "first_item", "default": "-" },
"TargetGroupArn": { "source": "/Actions/member/TargetGroupArn", "transform": "first_item", "default": "-" }
},
"action_configs": {
"delete_rule": {
"action_id": "delete_rule",
"protocol": "query",
"action": "DeleteRule",
"id_param": "RuleArn"
}
}
},
"elbv2-target-groups": {
"display_name": "Target Groups",
"service": "elbv2",
"sdk_method": "describe_target_groups",
"sdk_method_params": {},
"response_path": "target_groups",
"id_field": "TargetGroupArn",
"name_field": "TargetGroupName",
"is_global": false,
"columns": [
{ "header": "NAME", "json_path": "TargetGroupName", "width": 30 },
{ "header": "PROTOCOL", "json_path": "Protocol", "width": 10 },
{ "header": "PORT", "json_path": "Port", "width": 8 },
{ "header": "TARGET TYPE", "json_path": "TargetType", "width": 12 },
{ "header": "VPC", "json_path": "VpcId", "width": 23 },
{ "header": "HEALTH CHECK", "json_path": "HealthCheckPath", "width": 25 }
],
"sub_resources": [
{ "shortcut": "t", "display_name": "Targets", "resource_key": "elbv2-targets", "parent_id_field": "TargetGroupArn", "filter_param": "target_group_arn" }
],
"actions": [
{ "key": "ctrl+d", "display_name": "Delete Target Group", "shortcut": "ctrl+d", "sdk_method": "delete_target_group", "confirm": { "message": "Delete target group", "default_yes": false, "destructive": true } }
],
"api_config": {
"protocol": "query",
"action": "DescribeTargetGroups",
"response_root": "/DescribeTargetGroupsResponse/DescribeTargetGroupsResult/TargetGroups/member",
"pagination": {
"input_token": "Marker",
"output_token": "/DescribeTargetGroupsResponse/DescribeTargetGroupsResult/NextMarker",
"max_results_param": "PageSize",
"max_results": 100
},
"param_mapping": {
"load_balancer_arn": "LoadBalancerArn"
}
},
"field_mappings": {
"TargetGroupArn": { "source": "/TargetGroupArn", "default": "-" },
"TargetGroupName": { "source": "/TargetGroupName", "default": "-" },
"Protocol": { "source": "/Protocol", "default": "-" },
"Port": { "source": "/Port", "default": "-" },
"TargetType": { "source": "/TargetType", "default": "-" },
"VpcId": { "source": "/VpcId", "default": "-" },
"HealthCheckPath": { "source": "/HealthCheckPath", "default": "-" }
},
"action_configs": {
"delete_target_group": {
"action_id": "delete_target_group",
"protocol": "query",
"action": "DeleteTargetGroup",
"id_param": "TargetGroupArn"
}
},
"describe_config": {
"protocol": "query",
"action": "DescribeTargetGroups",
"id_param": "TargetGroupArns.member.1",
"response_path": "/DescribeTargetGroupsResponse/DescribeTargetGroupsResult/TargetGroups/member"
}
},
"elbv2-targets": {
"display_name": "Targets",
"service": "elbv2",
"sdk_method": "describe_target_health",
"sdk_method_params": {},
"response_path": "targets",
"id_field": "TargetId",
"name_field": "TargetId",
"is_global": false,
"requires_parent": true,
"columns": [
{ "header": "TARGET ID", "json_path": "TargetId", "width": 25 },
{ "header": "PORT", "json_path": "Port", "width": 8 },
{ "header": "AZ", "json_path": "AvailabilityZone", "width": 15 },
{ "header": "HEALTH", "json_path": "HealthState", "width": 12, "color_map": "health" },
{ "header": "REASON", "json_path": "HealthReason", "width": 30 },
{ "header": "DESCRIPTION", "json_path": "HealthDescription", "width": 40 }
],
"sub_resources": [],
"actions": [
{ "key": "d", "display_name": "Deregister Target", "shortcut": "d", "sdk_method": "deregister_targets", "confirm": { "message": "Deregister target from target group", "default_yes": false } }
],
"api_config": {
"protocol": "query",
"action": "DescribeTargetHealth",
"response_root": "/DescribeTargetHealthResponse/DescribeTargetHealthResult/TargetHealthDescriptions/member",
"param_mapping": {
"target_group_arn": "TargetGroupArn"
}
},
"field_mappings": {
"TargetId": { "source": "/Target/Id", "default": "-" },
"Port": { "source": "/Target/Port", "default": "-" },
"AvailabilityZone": { "source": "/Target/AvailabilityZone", "default": "-" },
"HealthState": { "source": "/TargetHealth/State", "default": "-" },
"HealthReason": { "source": "/TargetHealth/Reason", "default": "-" },
"HealthDescription": { "source": "/TargetHealth/Description", "default": "-" }
},
"action_configs": {
"deregister_targets": {
"action_id": "deregister_targets",
"protocol": "query",
"action": "DeregisterTargets",
"special_handling": "parse_pipe_format_tg_target"
}
}
}
},
"color_maps": {
"health": [
{ "value": "healthy", "color": [0, 255, 0] },
{ "value": "unhealthy", "color": [255, 0, 0] },
{ "value": "unused", "color": [128, 128, 128] },
{ "value": "draining", "color": [255, 165, 0] },
{ "value": "initial", "color": [255, 255, 0] },
{ "value": "unavailable", "color": [128, 128, 128] }
]
}
}