orbit-tui 1.1.1

Terminal UI for AWS - navigate, observe, and manage AWS resources
{
  "resources": {
    "rds-instances": {
      "display_name": "RDS Instances",
      "service": "rds",
      "sdk_method": "describe_db_instances",
      "sdk_method_params": {},
      "response_path": "db_instances",
      "id_field": "DBInstanceIdentifier",
      "name_field": "DBInstanceIdentifier",
      "is_global": false,
      "columns": [
        { "header": "DB IDENTIFIER", "json_path": "DBInstanceIdentifier", "width": 25 },
        { "header": "STATUS", "json_path": "DBInstanceStatus", "width": 15, "color_map": "state" },
        { "header": "ENGINE", "json_path": "Engine", "width": 15 },
        { "header": "CLASS", "json_path": "DBInstanceClass", "width": 15 },
        { "header": "AZ", "json_path": "AvailabilityZone", "width": 15 }
      ],
      "sub_resources": [
        { "shortcut": "n", "display_name": "Snapshots", "resource_key": "rds-snapshots", "parent_id_field": "DBInstanceIdentifier", "filter_param": "db_instance_identifier" }
      ],
      "actions": [
        { "key": "s", "display_name": "Start", "shortcut": "s", "sdk_method": "start_db_instance", "confirm": { "message": "Start RDS instance", "default_yes": false } },
        { "key": "S", "display_name": "Stop", "shortcut": "S", "sdk_method": "stop_db_instance", "confirm": { "message": "Stop RDS instance", "default_yes": false } },
        { "key": "r", "display_name": "Reboot", "shortcut": "r", "sdk_method": "reboot_db_instance", "confirm": { "message": "Reboot RDS instance", "default_yes": false } },
        { "key": "ctrl+d", "display_name": "Delete", "shortcut": "ctrl+d", "sdk_method": "delete_db_instance", "confirm": { "message": "Delete RDS instance", "default_yes": false, "destructive": true } }
      ],
      "api_config": {
        "protocol": "query",
        "action": "DescribeDBInstances",
        "response_root": "/DescribeDBInstancesResponse/DescribeDBInstancesResult/DBInstances/DBInstance",
        "pagination": {
          "input_token": "Marker",
          "output_token": "/DescribeDBInstancesResponse/DescribeDBInstancesResult/Marker",
          "max_results_param": "MaxRecords",
          "max_results": 100
        }
      },
      "field_mappings": {
        "DBInstanceIdentifier": { "source": "/DBInstanceIdentifier", "default": "-" },
        "DBInstanceStatus": { "source": "/DBInstanceStatus", "default": "-" },
        "Engine": { "source": "/Engine", "default": "-" },
        "DBInstanceClass": { "source": "/DBInstanceClass", "default": "-" },
        "AvailabilityZone": { "source": "/AvailabilityZone", "default": "-" },
        "Endpoint": { "source": "/Endpoint/Address", "default": "-" }
      },
      "action_configs": {
        "start_db_instance": {
          "action_id": "start_db_instance",
          "protocol": "query",
          "action": "StartDBInstance",
          "id_param": "DBInstanceIdentifier"
        },
        "stop_db_instance": {
          "action_id": "stop_db_instance",
          "protocol": "query",
          "action": "StopDBInstance",
          "id_param": "DBInstanceIdentifier"
        },
        "reboot_db_instance": {
          "action_id": "reboot_db_instance",
          "protocol": "query",
          "action": "RebootDBInstance",
          "id_param": "DBInstanceIdentifier"
        },
        "delete_db_instance": {
          "action_id": "delete_db_instance",
          "protocol": "query",
          "action": "DeleteDBInstance",
          "id_param": "DBInstanceIdentifier",
          "static_params": {
            "SkipFinalSnapshot": "true"
          }
        }
      },
      "describe_config": {
        "protocol": "query",
        "action": "DescribeDBInstances",
        "id_param": "DBInstanceIdentifier",
        "response_path": "/DescribeDBInstancesResponse/DescribeDBInstancesResult/DBInstances/DBInstance"
      }
    },
    "rds-snapshots": {
      "display_name": "RDS Snapshots",
      "service": "rds",
      "sdk_method": "describe_db_snapshots",
      "sdk_method_params": {},
      "response_path": "db_snapshots",
      "id_field": "DBSnapshotIdentifier",
      "name_field": "DBSnapshotIdentifier",
      "is_global": false,
      "columns": [
        { "header": "SNAPSHOT ID", "json_path": "DBSnapshotIdentifier", "width": 35 },
        { "header": "STATUS", "json_path": "Status", "width": 12, "color_map": "state" },
        { "header": "TYPE", "json_path": "SnapshotType", "width": 12 },
        { "header": "ENGINE", "json_path": "Engine", "width": 12 },
        { "header": "SIZE (GB)", "json_path": "AllocatedStorage", "width": 10 },
        { "header": "CREATED", "json_path": "SnapshotCreateTime", "width": 20 }
      ],
      "sub_resources": [],
      "actions": [
        { "key": "ctrl+d", "display_name": "Delete Snapshot", "shortcut": "ctrl+d", "sdk_method": "delete_db_snapshot", "confirm": { "message": "Delete RDS snapshot", "default_yes": false, "destructive": true } }
      ],
      "api_config": {
        "protocol": "query",
        "action": "DescribeDBSnapshots",
        "response_root": "/DescribeDBSnapshotsResponse/DescribeDBSnapshotsResult/DBSnapshots/DBSnapshot",
        "pagination": {
          "input_token": "Marker",
          "output_token": "/DescribeDBSnapshotsResponse/DescribeDBSnapshotsResult/Marker",
          "max_results_param": "MaxRecords",
          "max_results": 100
        },
        "param_mapping": {
          "db_instance_identifier": "DBInstanceIdentifier"
        }
      },
      "field_mappings": {
        "DBSnapshotIdentifier": { "source": "/DBSnapshotIdentifier", "default": "-" },
        "DBInstanceIdentifier": { "source": "/DBInstanceIdentifier", "default": "-" },
        "Status": { "source": "/Status", "default": "-" },
        "SnapshotType": { "source": "/SnapshotType", "default": "-" },
        "Engine": { "source": "/Engine", "default": "-" },
        "AllocatedStorage": { "source": "/AllocatedStorage", "default": "0" },
        "SnapshotCreateTime": { "source": "/SnapshotCreateTime", "default": "-" }
      },
      "action_configs": {
        "delete_db_snapshot": {
          "action_id": "delete_db_snapshot",
          "protocol": "query",
          "action": "DeleteDBSnapshot",
          "id_param": "DBSnapshotIdentifier"
        }
      }
    }
  }
}