orbit-tui 1.2.0

Terminal UI for AWS - navigate, observe, and manage AWS resources
{
  "resources": {
    "ec2-amis": {
      "display_name": "AMIs",
      "service": "ec2",
      "sdk_method": "describe_images",
      "sdk_method_params": {},
      "response_path": "images",
      "id_field": "ImageId",
      "name_field": "Name",
      "is_global": false,
      "columns": [
        { "header": "NAME", "json_path": "Name", "width": 30 },
        { "header": "IMAGE ID", "json_path": "ImageId", "width": 24 },
        { "header": "STATE", "json_path": "State", "width": 12, "color_map": "state" },
        { "header": "ARCH", "json_path": "Architecture", "width": 10 },
        { "header": "PLATFORM", "json_path": "PlatformDetails", "width": 20 },
        { "header": "ROOT TYPE", "json_path": "RootDeviceType", "width": 14 },
        { "header": "CREATED", "json_path": "CreationDate", "width": 20 },
        { "header": "PUBLIC", "json_path": "Public", "width": 8, "color_map": "bool" }
      ],
      "sub_resources": [],
      "actions": [
        { "key": "ctrl+d", "display_name": "Deregister AMI", "shortcut": "ctrl+d", "sdk_method": "deregister_image", "confirm": { "message": "Deregister AMI", "default_yes": false, "destructive": true } }
      ],
      "api_config": {
        "protocol": "query",
        "action": "DescribeImages",
        "response_root": "/DescribeImagesResponse/imagesSet/item",
        "static_params": {
          "Owner.1": "amazon"
        },
        "pagination": {
          "input_token": "NextToken",
          "output_token": "/DescribeImagesResponse/nextToken",
          "max_results_param": "MaxResults",
          "max_results": 100
        }
      },
      "field_mappings": {
        "ImageId": { "source": "/imageId", "default": "-" },
        "Name": { "source": "/name", "default": "-" },
        "State": { "source": "/imageState", "default": "-" },
        "Architecture": { "source": "/architecture", "default": "-" },
        "PlatformDetails": { "source": "/platformDetails", "default": "-" },
        "RootDeviceType": { "source": "/rootDeviceType", "default": "-" },
        "RootDeviceName": { "source": "/rootDeviceName", "default": "-" },
        "CreationDate": { "source": "/creationDate", "default": "-" },
        "Public": { "source": "/isPublic", "transform": "bool_to_yes_no" },
        "Description": { "source": "/description", "default": "-" },
        "OwnerId": { "source": "/imageOwnerId", "default": "-" },
        "ImageType": { "source": "/imageType", "default": "-" },
        "VirtualizationType": { "source": "/virtualizationType", "default": "-" },
        "Hypervisor": { "source": "/hypervisor", "default": "-" },
        "EnaSupport": { "source": "/enaSupport", "transform": "bool_to_yes_no" },
        "SriovNetSupport": { "source": "/sriovNetSupport", "default": "-" },
        "Tags": { "source": "/tagSet/item", "transform": "tags_to_map" }
      },
      "action_configs": {
        "deregister_image": {
          "action_id": "deregister_image",
          "protocol": "query",
          "action": "DeregisterImage",
          "id_param": "ImageId"
        }
      },
      "describe_config": {
        "protocol": "query",
        "action": "DescribeImages",
        "id_param": "ImageId.1",
        "response_path": "/DescribeImagesResponse/imagesSet/item"
      },
      "filters_config": {
        "enabled": true,
        "hint": "owner=amazon|self, architecture=arm64|x86_64, state=available"
      }
    },
    "ec2-volumes": {
      "display_name": "EBS Volumes",
      "service": "ec2",
      "sdk_method": "describe_volumes",
      "sdk_method_params": {},
      "response_path": "volumes",
      "id_field": "VolumeId",
      "name_field": "Tags.Name",
      "is_global": false,
      "columns": [
        { "header": "NAME", "json_path": "Tags.Name", "width": 20 },
        { "header": "VOLUME ID", "json_path": "VolumeId", "width": 24 },
        { "header": "STATE", "json_path": "State", "width": 12, "color_map": "state" },
        { "header": "SIZE (GB)", "json_path": "Size", "width": 10 },
        { "header": "TYPE", "json_path": "VolumeType", "width": 10 },
        { "header": "IOPS", "json_path": "Iops", "width": 8 },
        { "header": "AZ", "json_path": "AvailabilityZone", "width": 14 },
        { "header": "ENCRYPTED", "json_path": "Encrypted", "width": 10, "color_map": "bool" }
      ],
      "sub_resources": [],
      "actions": [
        { "key": "ctrl+d", "display_name": "Delete Volume", "shortcut": "ctrl+d", "sdk_method": "delete_volume", "confirm": { "message": "Delete EBS volume", "default_yes": false, "destructive": true } }
      ],
      "api_config": {
        "protocol": "query",
        "action": "DescribeVolumes",
        "response_root": "/DescribeVolumesResponse/volumeSet/item",
        "pagination": {
          "input_token": "NextToken",
          "output_token": "/DescribeVolumesResponse/nextToken",
          "max_results_param": "MaxResults",
          "max_results": 100
        }
      },
      "field_mappings": {
        "VolumeId": { "source": "/volumeId", "default": "-" },
        "State": { "source": "/status", "default": "-" },
        "Size": { "source": "/size", "default": "0" },
        "VolumeType": { "source": "/volumeType", "default": "-" },
        "Iops": { "source": "/iops", "default": "-" },
        "AvailabilityZone": { "source": "/availabilityZone", "default": "-" },
        "Encrypted": { "source": "/encrypted", "transform": "bool_to_yes_no" },
        "SnapshotId": { "source": "/snapshotId", "default": "-" },
        "CreateTime": { "source": "/createTime", "default": "-" },
        "Tags": { "source": "/tagSet/item", "transform": "tags_to_map" }
      },
      "action_configs": {
        "delete_volume": {
          "action_id": "delete_volume",
          "protocol": "query",
          "action": "DeleteVolume",
          "id_param": "VolumeId"
        }
      },
      "describe_config": {
        "protocol": "query",
        "action": "DescribeVolumes",
        "id_param": "VolumeId.1",
        "response_path": "/DescribeVolumesResponse/volumeSet/item"
      },
      "filters_config": {
        "enabled": true,
        "hint": "tag:Name=value, status=available|pending"
      }
    },
    "ec2-snapshots": {
      "display_name": "EBS Snapshots",
      "service": "ec2",
      "sdk_method": "describe_snapshots",
      "sdk_method_params": {},
      "response_path": "snapshots",
      "id_field": "SnapshotId",
      "name_field": "Tags.Name",
      "is_global": false,
      "columns": [
        { "header": "NAME", "json_path": "Tags.Name", "width": 20 },
        { "header": "SNAPSHOT ID", "json_path": "SnapshotId", "width": 24 },
        { "header": "STATUS", "json_path": "State", "width": 12, "color_map": "state" },
        { "header": "VOLUME ID", "json_path": "VolumeId", "width": 24 },
        { "header": "SIZE (GB)", "json_path": "VolumeSize", "width": 10 },
        { "header": "PROGRESS", "json_path": "Progress", "width": 10 },
        { "header": "STARTED", "json_path": "StartTime", "width": 20 }
      ],
      "sub_resources": [],
      "actions": [
        { "key": "ctrl+d", "display_name": "Delete Snapshot", "shortcut": "ctrl+d", "sdk_method": "delete_snapshot", "confirm": { "message": "Delete EBS snapshot", "default_yes": false, "destructive": true } }
      ],
      "api_config": {
        "protocol": "query",
        "action": "DescribeSnapshots",
        "response_root": "/DescribeSnapshotsResponse/snapshotSet/item",
        "pagination": {
          "input_token": "NextToken",
          "output_token": "/DescribeSnapshotsResponse/nextToken",
          "max_results_param": "MaxResults",
          "max_results": 100
        },
        "static_params": {
          "Owner.1": "self"
        }
      },
      "field_mappings": {
        "SnapshotId": { "source": "/snapshotId", "default": "-" },
        "VolumeId": { "source": "/volumeId", "default": "-" },
        "State": { "source": "/status", "default": "-" },
        "VolumeSize": { "source": "/volumeSize", "default": "0" },
        "Progress": { "source": "/progress", "default": "-" },
        "StartTime": { "source": "/startTime", "default": "-" },
        "Description": { "source": "/description", "default": "-" },
        "OwnerId": { "source": "/ownerId", "default": "-" },
        "Encrypted": { "source": "/encrypted", "transform": "bool_to_yes_no" },
        "Tags": { "source": "/tagSet/item", "transform": "tags_to_map" }
      },
      "action_configs": {
        "delete_snapshot": {
          "action_id": "delete_snapshot",
          "protocol": "query",
          "action": "DeleteSnapshot",
          "id_param": "SnapshotId"
        }
      },
      "describe_config": {
        "protocol": "query",
        "action": "DescribeSnapshots",
        "id_param": "SnapshotId.1",
        "response_path": "/DescribeSnapshotsResponse/snapshotSet/item"
      },
      "filters_config": {
        "enabled": true,
        "hint": "tag:Name=value, status=completed|pending"
      }
    },
    "ec2-instances": {
      "display_name": "EC2 Instances",
      "service": "ec2",
      "sdk_method": "describe_instances",
      "sdk_method_params": {},
      "response_path": "reservations",
      "id_field": "InstanceId",
      "name_field": "Tags.Name",
      "is_global": false,
      "columns": [
        { "header": "NAME", "json_path": "Tags.Name", "width": 20 },
        { "header": "INSTANCE ID", "json_path": "InstanceId", "width": 21 },
        { "header": "STATE", "json_path": "State", "width": 12, "color_map": "state" },
        { "header": "TYPE", "json_path": "InstanceType", "width": 12 },
        { "header": "AZ", "json_path": "AvailabilityZone", "width": 14 },
        { "header": "PUBLIC IP", "json_path": "PublicIpAddress", "width": 16 },
        { "header": "PRIVATE IP", "json_path": "PrivateIpAddress", "width": 16 }
      ],
      "sub_resources": [],
      "actions": [
        { "key": "c", "display_name": "Connect (SSM)", "shortcut": "c", "sdk_method": "ssm_connect" },
        { "key": "s", "display_name": "Start", "shortcut": "s", "sdk_method": "start_instance", "confirm": { "message": "Start instance", "default_yes": false } },
        { "key": "S", "display_name": "Stop", "shortcut": "S", "sdk_method": "stop_instance", "confirm": { "message": "Stop instance", "default_yes": false } },
        { "key": "r", "display_name": "Reboot", "shortcut": "r", "sdk_method": "reboot_instance", "confirm": { "message": "Reboot instance", "default_yes": false } },
        { "key": "ctrl+d", "display_name": "Terminate", "shortcut": "ctrl+d", "sdk_method": "terminate_instance", "confirm": { "message": "Terminate instance", "default_yes": false, "destructive": true } }
      ],
      "api_config": {
        "protocol": "query",
        "action": "DescribeInstances",
        "response_root": "/DescribeInstancesResponse/reservationSet/item/instancesSet/item",
        "pagination": {
          "input_token": "NextToken",
          "output_token": "/DescribeInstancesResponse/nextToken",
          "max_results_param": "MaxResults",
          "max_results": 100
        }
      },
      "field_mappings": {
        "InstanceId": { "source": "/instanceId", "default": "-" },
        "InstanceType": { "source": "/instanceType", "default": "-" },
        "State": { "source": "/instanceState/name", "default": "-" },
        "AvailabilityZone": { "source": "/placement/availabilityZone", "default": "-" },
        "PublicIpAddress": { "source": "/ipAddress", "default": "-" },
        "PrivateIpAddress": { "source": "/privateIpAddress", "default": "-" },
        "LaunchTime": { "source": "/launchTime", "default": "-" },
        "Platform": { "source": "/platform", "default": "" },
        "Tags": { "source": "/tagSet/item", "transform": "tags_to_map" }
      },
      "action_configs": {
        "start_instance": {
          "action_id": "start_instance",
          "protocol": "query",
          "action": "StartInstances",
          "id_param": "InstanceId.1"
        },
        "stop_instance": {
          "action_id": "stop_instance",
          "protocol": "query",
          "action": "StopInstances",
          "id_param": "InstanceId.1"
        },
        "reboot_instance": {
          "action_id": "reboot_instance",
          "protocol": "query",
          "action": "RebootInstances",
          "id_param": "InstanceId.1"
        },
        "terminate_instance": {
          "action_id": "terminate_instance",
          "protocol": "query",
          "action": "TerminateInstances",
          "id_param": "InstanceId.1"
        }
      },
      "describe_config": {
        "protocol": "query",
        "action": "DescribeInstances",
        "id_param": "InstanceId.1",
        "response_path": "/DescribeInstancesResponse/reservationSet/item/instancesSet/item"
      },
      "filters_config": {
        "enabled": true,
        "hint": "tag:Name=value, instance-state-name=running|stopped"
      }
    }
  }
}