[
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-08-20 12:32:56.100866",
  "name": "Update In Place",
  "request_method": "POST",
  "request_path": "/bench/{bench}/update_inplace",
  "steps": [
   {
    "step_name": "Pull App Changes"
   },
   {
    "step_name": "Migrate Sites"
   },
   {
    "step_name": "Rebuild Bench Assets"
   },
   {
    "step_name": "Commit Container Changes"
   },
   {
    "step_name": "Bench Restart"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2025-02-13 13:25:40.384742",
  "name": "Add Domain to Upstream",
  "request_method": "POST",
  "request_path": "/proxy/upstreams/{upstream}/domains",
  "steps": [
   {
    "step_name": "Add Site File to Upstream Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.228754",
  "name": "Rename Upstream",
  "request_method": "POST",
  "request_path": "/proxy/upstreams/{ip}/rename",
  "steps": [
   {
    "step_name": "Rename Upstream Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2024-08-09 10:07:51.319214",
  "name": "Rename Site",
  "request_method": "POST",
  "request_path": "benches/{site.bench}/sites/{site.name}/rename",
  "steps": [
   {
    "step_name": "Enable Maintenance Mode"
   },
   {
    "step_name": "Wait for Enqueued Jobs"
   },
   {
    "step_name": "Update Site Configuration"
   },
   {
    "step_name": "Rename Site"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   },
   {
    "step_name": "Disable Maintenance Mode"
   },
   {
    "step_name": "Enable Scheduler"
   },
   {
    "step_name": "Create User"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.549528",
  "name": "Recover Failed Site Migration",
  "request_method": null,
  "request_path": null,
  "steps": [
   {
    "step_name": "Move Site"
   },
   {
    "step_name": "Restore Touched Tables"
   },
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.927111",
  "name": "Add Domain",
  "request_method": "POST",
  "request_path": "benches/{bench}/sites/{site}/domains",
  "steps": [
   {
    "step_name": "Update Site Configuration"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.946695",
  "name": "Remove Domain",
  "request_method": "DELETE",
  "request_path": "benches/{bench}/sites/{site}/domains/{domain}",
  "steps": [
   {
    "step_name": "Update Site Configuration"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.762138",
  "name": "Update Site Pull",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/update/pull",
  "steps": [
   {
    "step_name": "Enable Maintenance Mode"
   },
   {
    "step_name": "Wait for Enqueued Jobs"
   },
   {
    "step_name": "Move Site"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Bench Setup NGINX Target"
   },
   {
    "step_name": "Reload NGINX"
   },
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.585210",
  "name": "Update Site Migrate",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/update/migrate",
  "steps": [
   {
    "step_name": "Enable Maintenance Mode"
   },
   {
    "step_name": "Wait for Enqueued Jobs"
   },
   {
    "step_name": "Clear Backup Directory"
   },
   {
    "step_name": "Backup Site Tables"
   },
   {
    "step_name": "Move Site"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Bench Setup NGINX Target"
   },
   {
    "step_name": "Reload NGINX"
   },
   {
    "step_name": "Run App Specific Scripts"
   },
   {
    "step_name": "Migrate Site"
   },
   {
    "step_name": "Log Touched Tables"
   },
   {
    "step_name": "Disable Maintenance Mode"
   },
   {
    "step_name": "Build Search Index"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.646447",
  "name": "Add Host to Proxy",
  "request_method": "POST",
  "request_path": "/proxy/hosts",
  "steps": [
   {
    "step_name": "Add Host to Proxy"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.671517",
  "name": "Add Code Server to Upstream",
  "request_method": "POST",
  "request_path": "/proxy/upstreams/{upstream}/sites",
  "steps": [
   {
    "step_name": "Add Site File to Upstream Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.651948",
  "name": "Remove Code Server from Upstream",
  "request_method": "POST",
  "request_path": "/proxy/upstreams/{upstream}/sites",
  "steps": [
   {
    "step_name": "Remove Site File from Upstream Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.724970",
  "name": "Setup Code Server",
  "request_method": "POST",
  "request_path": "benches/{bench}/codeserver",
  "steps": [
   {
    "step_name": "Create Code Server Config"
   },
   {
    "step_name": "Start Code Server"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.707766",
  "name": "Start Code Server",
  "request_method": "POST",
  "request_path": "benches/{bench}/codeserver/start",
  "steps": [
   {
    "step_name": "Start Code Server"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.743617",
  "name": "Stop Code Server",
  "request_method": "POST",
  "request_path": "benches/{bench}/codeserver/stop",
  "steps": [
   {
    "step_name": "Stop Code Server"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.690936",
  "name": "Archive Code Server",
  "request_method": "POST",
  "request_path": "benches/{bench}/codeserver/archive",
  "steps": [
   {
    "step_name": "Remove Code Server"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.607088",
  "name": "Add Upstream to Proxy",
  "request_method": "POST",
  "request_path": "/proxy/upstreams",
  "steps": [
   {
    "step_name": "Add Upstream Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.677444",
  "name": "Install App on Site",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/apps",
  "steps": [
   {
    "step_name": "Install App on Site"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.839292",
  "name": "New Site from Backup",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/restore",
  "steps": [
   {
    "step_name": "Download Backup Files"
   },
   {
    "step_name": "New Site"
   },
   {
    "step_name": "Update Site Configuration"
   },
   {
    "step_name": "Restore Site"
   },
   {
    "step_name": "Delete Downloaded Backup Files"
   },
   {
    "step_name": "Uninstall Unavailable Apps"
   },
   {
    "step_name": "Migrate Site"
   },
   {
    "step_name": "Set Administrator Password"
   },
   {
    "step_name": "Enable Scheduler"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.690831",
  "name": "Reinstall Site",
  "request_method": "POST",
  "request_path": "benches/{bench}/sites/{site}/reinstall",
  "steps": [
   {
    "step_name": "Reinstall Site"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.706871",
  "name": "Update Site Status",
  "request_method": "POST",
  "request_path": "/proxy/upstreams/{upstream}/sites/{site}/status",
  "steps": [
   {
    "step_name": "Update Site File"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.740351",
  "name": "Uninstall App from Site",
  "request_method": "DELETE",
  "request_path": "/benches/{bench}/sites/{site}/apps",
  "steps": [
   {
    "step_name": "Uninstall App from Site"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.805097",
  "name": "Recover Failed Site Pull",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/update/pull/recover",
  "steps": [
   {
    "step_name": "Move Site"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Bench Setup NGINX Target"
   },
   {
    "step_name": "Reload NGINX"
   },
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.786058",
  "name": "Recover Failed Site Update",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/update/recover",
  "steps": [
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.625189",
  "name": "Recover Failed Site Migrate",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/update/migrate/recover",
  "steps": [
   {
    "step_name": "Move Site"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Bench Setup NGINX Target"
   },
   {
    "step_name": "Reload NGINX"
   },
   {
    "step_name": "Restore Touched Tables"
   },
   {
    "step_name": "Run App Specific Scripts"
   },
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.893005",
  "name": "Remove Host from Proxy",
  "request_method": "DELETE",
  "request_path": "/proxy/hosts/{host}",
  "steps": [
   {
    "step_name": "Remove Host from Proxy"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.911153",
  "name": "Migrate Site",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/migrate",
  "steps": [
   {
    "step_name": "Migrate Site"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.963183",
  "name": "Fetch Sites Info",
  "request_method": "POST",
  "request_path": "/benches/{bench}/info",
  "steps": [
   {
    "step_name": "Fetch Sites Info"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.000340",
  "name": "Setup Redirects on Hosts",
  "request_method": "POST",
  "request_path": "/proxy/hosts/redirects",
  "steps": [
   {
    "step_name": "Remove Redirect on Host"
   },
   {
    "step_name": "Setup Redirect on Host"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.979580",
  "name": "Remove Redirects on Hosts",
  "request_method": "DELETE",
  "request_path": "/proxy/hosts/redirects",
  "steps": [
   {
    "step_name": "Remove Redirect on Host"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.100535",
  "name": "Rename Site on Upstream",
  "request_method": "POST",
  "request_path": "/proxy/upstreams/{upstream}/sites/{site}/rename",
  "steps": [
   {
    "step_name": "Rename Site File in Upstream Directory"
   },
   {
    "step_name": "Rename Host Directory"
   },
   {
    "step_name": "Rename Site in Host Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.131920",
  "name": "Add Wildcard Hosts to Proxy",
  "request_method": "POST",
  "request_path": "/proxy/wildcards",
  "steps": [
   {
    "step_name": "Add Wildcard Hosts to Proxy"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.180358",
  "name": "Setup JERP",
  "request_method": "POST",
  "request_path": "/benches/{site.bench}/sites/{site.name}/jerp",
  "steps": [
   {
    "step_name": "Create User"
   },
   {
    "step_name": "Update JERP Configuration"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.157390",
  "name": "Clear Cache",
  "request_method": "DELETE",
  "request_path": "/benches/{bench}/sites/{site}/cache",
  "steps": [
   {
    "step_name": "Clear Cache"
   },
   {
    "step_name": "Clear Website Cache"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.203468",
  "name": "Restore Site Tables",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/update/migrate/restore",
  "steps": [
   {
    "step_name": "Restore Site Tables"
   },
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.283667",
  "name": "Add User to Proxy",
  "request_method": "POST",
  "request_path": "/ssh/users",
  "steps": [
   {
    "step_name": "Add User to Proxy"
   },
   {
    "step_name": "Add Certificate to User"
   },
   {
    "step_name": "Add Principal to User"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.308026",
  "name": "Remove User from Proxy",
  "request_method": "DELETE",
  "request_path": "/ssh/users/{user}",
  "steps": [
   {
    "step_name": "Remove User from Proxy"
   },
   {
    "step_name": "Remove Principal from User"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.327716",
  "name": "Add User to ProxySQL",
  "request_method": "POST",
  "request_path": "/proxysql/users",
  "steps": [
   {
    "step_name": "Add User to ProxySQL"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.345276",
  "name": "Remove User from ProxySQL",
  "request_method": "DELETE",
  "request_path": "/proxysql/users/{username}",
  "steps": [
   {
    "step_name": "Remove User from ProxySQL"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.362722",
  "name": "Create Minio User",
  "request_method": "POST",
  "request_path": "/minio/create",
  "steps": [
   {
    "step_name": "Create Minio User"
   },
   {
    "step_name": "Create Minio Policy"
   },
   {
    "step_name": "Add Minio Policy"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.379874",
  "name": "Remove Minio User",
  "request_method": "POST",
  "request_path": "/minio/remove",
  "steps": [
   {
    "step_name": "Remove Minio User"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.392780",
  "name": "Enable Minio User",
  "request_method": "POST",
  "request_path": "/minio/update",
  "steps": [
   {
    "step_name": "Enable Minio User"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.405690",
  "name": "Disable Minio User",
  "request_method": "POST",
  "request_path": "/minio/update",
  "steps": [
   {
    "step_name": "Disable Minio User"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.256524",
  "name": "Cleanup Unused Files",
  "request_method": "POST",
  "request_path": "server/cleanup",
  "steps": [
   {
    "step_name": "Remove Archived Benches"
   },
   {
    "step_name": "Remove Temporary Files"
   },
   {
    "step_name": "Remove Unused Docker Artefacts"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.446023",
  "name": "Add Backend to ProxySQL",
  "request_method": "POST",
  "request_path": "/proxysql/backends",
  "steps": [
   {
    "step_name": "Add Backend to ProxySQL"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.419313",
  "name": "Update Saas Plan",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/update/saas",
  "steps": [
   {
    "step_name": "Update Saas Plan"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.502147",
  "name": "Run After Migrate Steps",
  "request_method": "POST",
  "request_path": "benches/{bench}/sites/{site}/run_after_migrate_steps",
  "steps": [
   {
    "step_name": "Set Administrator Password"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   },
   {
    "step_name": "Disable Maintenance Mode"
   },
   {
    "step_name": "Enable Scheduler"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.531987",
  "name": "Move Site to Bench",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/move_to_bench",
  "steps": [
   {
    "step_name": "Enable Maintenance Mode"
   },
   {
    "step_name": "Wait for Enqueued Jobs"
   },
   {
    "step_name": "Move Site"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Bench Setup NGINX Target"
   },
   {
    "step_name": "Reload NGINX"
   },
   {
    "step_name": "Migrate Site"
   },
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.556954",
  "name": "Reset Site Usage",
  "request_method": "DELETE",
  "request_path": "benches/{bench}/sites/{site}/usage",
  "steps": [
   {
    "step_name": "Reset Site Usage"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.759939",
  "name": "Reload NGINX Job",
  "request_method": "POST",
  "request_path": "/proxy/reload",
  "steps": [
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.725087",
  "name": "Backup Site",
  "request_method": null,
  "request_path": null,
  "steps": [
   {
    "step_name": "Backup Site"
   },
   {
    "step_name": "Upload Site Backup to S3"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.432717",
  "name": "Bench Restart",
  "request_method": "POST",
  "request_path": "/benches/{bench}/restart",
  "steps": [
   {
    "step_name": "Bench Restart"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.568610",
  "name": "Archive Bench",
  "request_method": "POST",
  "request_path": "/benches/{bench}/archive",
  "steps": [
   {
    "step_name": "Bench Disable Production"
   },
   {
    "step_name": "Move Bench to Archived Directory"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.023648",
  "name": "New Bench",
  "request_method": "POST",
  "request_path": "/benches",
  "steps": [
   {
    "step_name": "Initialize Bench"
   },
   {
    "step_name": "Update Bench Configuration"
   },
   {
    "step_name": "Deploy Bench"
   },
   {
    "step_name": "Bench Setup NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.845251",
  "name": "Force Update Bench Limits",
  "request_method": "POST",
  "request_path": "benches/{bench}/limit",
  "steps": [
   {
    "step_name": "Stop Bench"
   },
   {
    "step_name": "Update Bench Memory Limits"
   },
   {
    "step_name": "Start Bench"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.822202",
  "name": "Update Bench Configuration",
  "request_method": "POST",
  "request_path": "/benches/{bench}/config",
  "steps": [
   {
    "step_name": "Update Bench Configuration"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Generate Docker Compose File"
   },
   {
    "step_name": "Update Bench Memory Limits"
   },
   {
    "step_name": "Deploy Bench"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.803361",
  "name": "Rebuild Bench Assets",
  "request_method": "POST",
  "request_path": "benches/{bench}/rebuild",
  "steps": [
   {
    "step_name": "Rebuild Bench Assets"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.861985",
  "name": "Optimize Tables",
  "request_method": "POST",
  "request_path": "benches/{bench}/sites/{site}/optimize",
  "steps": [
   {
    "step_name": "Optimize Tables"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2024-02-22 20:01:05.606166",
  "name": "Docker Image Build",
  "request_method": "POST",
  "request_path": "builder/build",
  "steps": [
   {
    "step_name": "Docker Image Build"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2024-02-27 13:51:17.142316",
  "name": "Patch App",
  "request_method": "POST",
  "request_path": "/bench/{bench}/patch/{app}",
  "steps": [
   {
    "step_name": "Git Apply"
   },
   {
    "step_name": "Rebuild Bench Assets"
   },
   {
    "step_name": "Bench Restart"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2024-03-19 11:40:26.237476",
  "name": "Call Bench Supervisorctl",
  "request_method": "POST",
  "request_path": "/benches/{bench}/supervisorctl",
  "steps": [
   {
    "step_name": "Run Supervisorctl Command"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2024-03-26 10:28:39.750285",
  "name": "Run Remote Builder",
  "request_method": "POST",
  "request_path": "/builder/build",
  "steps": [
   {
    "step_name": "Build Image"
   },
   {
    "step_name": "Push Docker Image"
   },
   {
    "step_name": "Cleanup Context"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-07-11 12:04:37.550558",
  "name": "Add Database Index",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/add-database-index",
  "steps": [
   {
    "step_name": "Add Database Index With Bench Command"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:19.470276",
  "name": "Restore Site",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/restore",
  "steps": [
   {
    "step_name": "Download Backup Files"
   },
   {
    "step_name": "Restore Site"
   },
   {
    "step_name": "Checksum of Downloaded Backup Files"
   },
   {
    "step_name": "Delete Downloaded Backup Files"
   },
   {
    "step_name": "Uninstall Unavailable Apps"
   },
   {
    "step_name": "Migrate Site"
   },
   {
    "step_name": "Set Administrator Password"
   },
   {
    "step_name": "Enable Scheduler"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-07-18 17:49:54.294402",
  "name": "Column Statistics",
  "request_method": "POST",
  "request_path": "/database/column-stats",
  "steps": [
   {
    "step_name": "Fetch Column Statistics"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-08-09 12:03:58.145567",
  "name": "Complete Setup Wizard",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/complete-setup-wizard",
  "steps": [
   {
    "step_name": "Complete Setup Wizard"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-06-11 19:43:45.877056",
  "name": "Create User",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/create-user",
  "steps": [
   {
    "step_name": "Create User"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2024-08-09 10:10:41.301700",
  "name": "New Site",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites",
  "steps": [
   {
    "step_name": "New Site"
   },
   {
    "step_name": "Install Apps"
   },
   {
    "step_name": "Update Site Configuration"
   },
   {
    "step_name": "Enable Scheduler"
   },
   {
    "step_name": "Create User"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.626647",
  "name": "Add Site to Upstream",
  "request_method": "POST",
  "request_path": "/proxy/upstreams/{upstream}/sites",
  "steps": [
   {
    "step_name": "Add Site File to Upstream Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.663533",
  "name": "Update Site Configuration",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/config",
  "steps": [
   {
    "step_name": "Update Site Configuration"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.587094",
  "name": "Remove Site from Upstream",
  "request_method": "DELETE",
  "request_path": "/proxy/upstreams/{upstream}/sites/{site}",
  "steps": [
   {
    "step_name": "Remove Site File from Upstream Directory"
   },
   {
    "step_name": "Generate NGINX Configuration"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 0,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 6,
  "modified": "2023-11-06 07:28:18.510770",
  "name": "Archive Site",
  "request_method": null,
  "request_path": null,
  "steps": [
   {
    "step_name": "Archive Site"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Reload NGINX"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-09-10 12:11:38.844112",
  "name": "Recover Update In Place",
  "request_method": "POST",
  "request_path": "/bench/{bench}/recover_update_inplace",
  "steps": [
   {
    "step_name": "Enable Maintenance Mode"
   },
   {
    "step_name": "Deploy Bench"
   },
   {
    "step_name": "Bench Setup NGINX"
   },
   {
    "step_name": "Recover Sites"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-09-11 13:28:32.120581",
  "name": "Ping Job",
  "request_method": "POST",
  "request_path": "ping_job",
  "steps": [
   {
    "step_name": "Ping Step"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-08-20 12:51:05.293373",
  "name": "Update Bench In Place",
  "request_method": "POST",
  "request_path": "/bench/{bench}/update_inplace",
  "steps": [
   {
    "step_name": "Pull App Changes"
   },
   {
    "step_name": "Migrate Sites"
   },
   {
    "step_name": "Rebuild Bench Assets"
   },
   {
    "step_name": "Commit Container Changes"
   },
   {
    "step_name": "Bench Restart"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 1,
  "modified": "2024-11-04 14:49:18.592247",
  "name": "Create Database User",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/database/users",
  "steps": [
   {
    "step_name": "Create Database User"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 1,
  "modified": "2024-11-04 14:49:18.592247",
  "name": "Remove Database User",
  "request_method": "DELETE",
  "request_path": "/benches/{bench}/sites/{site}/database/users/{username}",
  "steps": [
   {
    "step_name": "Remove Database User"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 1,
  "modified": "2024-11-04 14:49:18.592247",
  "name": "Modify Database User Permissions",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/database/users/{db_user}/permissions",
  "steps": [
   {
    "step_name": "Modify Database User Permissions"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 1,
  "modified": "2024-10-28 14:49:19.894247",
  "name": "Fetch Database Table Schema",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/database/schema",
  "steps": [
   {
    "step_name": "Fetch Database Table Schema"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2024-12-19 17:21:14.136650",
  "name": "Analyze Slow Queries",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/database/analyze-slow-queries",
  "steps": [
   {
    "step_name": "Analyze Slow Queries"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2025-01-09 17:07:45.359754",
  "name": "Physical Backup Database",
  "request_method": "POST",
  "request_path": "/database/physical-backup",
  "steps": [
   {
    "step_name": "Fetch Database Tables Information"
   },
   {
    "step_name": "Flush Database Tables"
   },
   {
    "step_name": "Flush Changes to Disk"
   },
   {
    "step_name": "Export Table Schema"
   },
   {
    "step_name": "Collect Files Metadata"
   },
   {
    "step_name": "Store Backup Metadata"
   },
   {
    "step_name": "Create Database Snapshot"
   },
   {
    "step_name": "Unlock Tables"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2025-01-19 22:57:23.072792",
  "name": "Physical Restore Database",
  "request_method": "POST",
  "request_path": "/database/physical-restore",
  "steps": [
   {
    "step_name": "Validate Backup Files"
   },
   {
    "step_name": "Validate Connection to Target Database"
   },
   {
    "step_name": "Warmup MyISAM Files"
   },
   {
    "step_name": "Check and Fix MyISAM Table Files"
   },
   {
    "step_name": "Warmup InnoDB Files"
   },
   {
    "step_name": "Prepare Database for Restoration"
   },
   {
    "step_name": "Create Tables from Table Schema"
   },
   {
    "step_name": "Discard InnoDB Tablespaces"
   },
   {
    "step_name": "Copying InnoDB Table Files"
   },
   {
    "step_name": "Import InnoDB Tablespaces"
   },
   {
    "step_name": "Hold Write Lock on MyISAM Tables"
   },
   {
    "step_name": "Copying MyISAM Table Files"
   },
   {
    "step_name": "Validate And Fix Tables"
   },
   {
    "step_name": "Unlock All Tables"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2025-01-21 15:31:19.602466",
  "name": "Activate Site",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/activate",
  "steps": [
   {
    "step_name": "Disable Maintenance Mode"
   }
  ]
 },
 {
  "disabled_auto_retry": 1,
  "pagestatus": 0,
  "pagetype": "Agent Job Type",
  "max_retry_count": 3,
  "modified": "2025-01-21 15:32:21.823510",
  "name": "Deactivate Site",
  "request_method": "POST",
  "request_path": "/benches/{bench}/sites/{site}/deactivate",
  "steps": [
   {
    "step_name": "Enable Maintenance Mode"
   },
   {
    "step_name": "Wait for Enqueued Jobs"
   }
  ]
 }
]