# Granite ## Docs - [HITL Workflows](https://docs.getgranite.ai/agent-execution/hitl-workflows.md): Human-in-the-Loop control for safe automation - [Agent Execution Overview](https://docs.getgranite.ai/agent-execution/overview.md): How Granite's AI agents execute automations - [Recordings](https://docs.getgranite.ai/agent-execution/recordings.md): Video recordings of automation sessions - [Create Run](https://docs.getgranite.ai/api-reference/agent-runs/create.md) - [Get Run](https://docs.getgranite.ai/api-reference/agent-runs/get.md) - [Cancel Run](https://docs.getgranite.ai/api-reference/agent/cancel.md): Cancel an in-progress agent run and release any reserved resources - [Get Run](https://docs.getgranite.ai/api-reference/agent/get-run.md): Get detailed information about a specific agent run - [Get Trace](https://docs.getgranite.ai/api-reference/agent/get-trace.md): Get the full event trace, screenshots, and recording for a run - [HITL Status](https://docs.getgranite.ai/api-reference/agent/hitl-status.md): Get the current Human-in-the-Loop status including pending requests - [List Runs](https://docs.getgranite.ai/api-reference/agent/list-runs.md): Get paginated list of agent runs with token usage information - [Run Agent](https://docs.getgranite.ai/api-reference/agent/run.md): Stream agent execution events via EventSource. Accepts either prompt (new run) or run_id (view existing) as query parameter. - [Submit HITL](https://docs.getgranite.ai/api-reference/agent/submit-hitl.md): Submit a response to a pending Human-in-the-Loop request (user input, approval, pause, resume, or cancel) - [Actions](https://docs.getgranite.ai/api-reference/analytics/action-counts.md) - [Batch Request](https://docs.getgranite.ai/api-reference/analytics/batch.md) - [Complexity](https://docs.getgranite.ai/api-reference/analytics/complexity.md) - [Durations](https://docs.getgranite.ai/api-reference/analytics/durations.md) - [Endpoint Usage](https://docs.getgranite.ai/api-reference/analytics/endpoint-usage.md) - [Executions/Time](https://docs.getgranite.ai/api-reference/analytics/executions-time.md) - [Failures](https://docs.getgranite.ai/api-reference/analytics/failures.md) - [Get Layout](https://docs.getgranite.ai/api-reference/analytics/get-layout.md) - [Queue Metrics](https://docs.getgranite.ai/api-reference/analytics/queue-wait.md) - [Recent Failures](https://docs.getgranite.ai/api-reference/analytics/recent-failures.md) - [Status](https://docs.getgranite.ai/api-reference/analytics/status.md) - [Success Rate](https://docs.getgranite.ai/api-reference/analytics/success-rate.md) - [Summary](https://docs.getgranite.ai/api-reference/analytics/summary.md) - [Top Automations](https://docs.getgranite.ai/api-reference/analytics/top-automations.md) - [Triggers](https://docs.getgranite.ai/api-reference/analytics/triggers.md) - [Update Layout](https://docs.getgranite.ai/api-reference/analytics/update-layout.md) - [Workflows](https://docs.getgranite.ai/api-reference/analytics/workflow-names.md) - [Authenticate](https://docs.getgranite.ai/api-reference/authentication/authenticate.md): Complete authentication using magic link token or OAuth token - [Create Org](https://docs.getgranite.ai/api-reference/authentication/create-org.md): Create a new organization and add the user as a member - [Discovered Orgs](https://docs.getgranite.ai/api-reference/authentication/discovered-orgs.md): Get organizations available to the user during authentication - [List Orgs](https://docs.getgranite.ai/api-reference/authentication/list-orgs.md): Get all organizations accessible to the authenticated user - [Login](https://docs.getgranite.ai/api-reference/authentication/login.md): Authenticate user with email and send magic link - [Logout](https://docs.getgranite.ai/api-reference/authentication/logout.md): End user session and revoke authentication - [Current User](https://docs.getgranite.ai/api-reference/authentication/me.md): Retrieve information about the currently authenticated user - [Switch Org](https://docs.getgranite.ai/api-reference/authentication/switch-org.md): Switch user's active organization context - [Clear Logs](https://docs.getgranite.ai/api-reference/automation-execution/clear-logs.md): Delete all execution logs and agent runs for the organization - [Execute](https://docs.getgranite.ai/api-reference/automation-execution/execute.md): Execute an automation with optional parameters (authenticated users, no API key required) - [Get Details](https://docs.getgranite.ai/api-reference/automation-execution/get-details.md): Get detailed information about a specific execution. - [Get Info](https://docs.getgranite.ai/api-reference/automation-execution/get-info.md): Get automation details including linked endpoint and parameters schema. - [List All](https://docs.getgranite.ai/api-reference/automation-execution/list.md): List all executions across all automations for an organization. - [List History](https://docs.getgranite.ai/api-reference/automation-execution/list-history.md): List all executions for a specific automation. - [Delete Job](https://docs.getgranite.ai/api-reference/automations/delete.md): Delete a workflow job by ID - [Delete All](https://docs.getgranite.ai/api-reference/automations/delete-all.md): Delete all workflow jobs and associated API endpoints for the current user's organization - [Edit Text (AI)](https://docs.getgranite.ai/api-reference/automations/edit-text.md): Apply AI-powered text modifications based on user instructions - [Get Job](https://docs.getgranite.ai/api-reference/automations/get.md): Retrieve details of a specific workflow job by ID - [List Jobs](https://docs.getgranite.ai/api-reference/automations/list.md): Get all workflow jobs with optional status filtering - [Update Job](https://docs.getgranite.ai/api-reference/automations/update.md): Update manual edits or status of a workflow job - [Enroll](https://docs.getgranite.ai/api-reference/driver-enrollment/enroll.md): Exchange enrollment token for permanent VM API key - [Queue Status](https://docs.getgranite.ai/api-reference/driver-queue/status.md) - [List Machines](https://docs.getgranite.ai/api-reference/driver/list.md) - [Register](https://docs.getgranite.ai/api-reference/driver/register.md) - [Register RDP](https://docs.getgranite.ai/api-reference/driver/register-rdp.md): Store RDP credentials for remote access to driver machine - [Create Token](https://docs.getgranite.ai/api-reference/enrollment/create.md) - [List Tokens](https://docs.getgranite.ai/api-reference/enrollment/list.md) - [Revoke Token](https://docs.getgranite.ai/api-reference/enrollment/revoke.md) - [Health Check](https://docs.getgranite.ai/api-reference/health/check.md): Check if the API is running and healthy - [API Status](https://docs.getgranite.ai/api-reference/health/status.md): Get detailed health status of the API server - [Create Job](https://docs.getgranite.ai/api-reference/jobs/create.md): Create and assign a new automation job. - [Get Job](https://docs.getgranite.ai/api-reference/jobs/get.md) - [List Jobs](https://docs.getgranite.ai/api-reference/jobs/list.md) - [Create Instance](https://docs.getgranite.ai/api-reference/mig/create-instance.md): Create a new instance by increasing the MIG target size - [Create VM](https://docs.getgranite.ai/api-reference/mig/create-vm.md): Create Installation VM for organization customization. First step in MIG setup. (Admin only) - [Delete Instance](https://docs.getgranite.ai/api-reference/mig/delete-instance.md): Delete a specific instance by instance name - [Delete VM](https://docs.getgranite.ai/api-reference/mig/delete-vm.md): Delete Installation VM and cleanup GCP resources. (Admin only) - [Finalize](https://docs.getgranite.ai/api-reference/mig/finalize.md): Start finalization process to create custom image, instance template, and MIG from Installation VM. Process runs in background (5-15 minutes). Poll /setup/status to track progress. (Admin only) - [Get MIG](https://docs.getgranite.ai/api-reference/mig/get.md): Get the managed instance group for the authenticated organization - [Instance Details](https://docs.getgranite.ai/api-reference/mig/instance-details.md): Get details of a specific instance by instance name - [List Instances](https://docs.getgranite.ai/api-reference/mig/list-instances.md): Get all instances from database (fast, no GCP API call) - [Resume Instance](https://docs.getgranite.ai/api-reference/mig/resume-instance.md): Start a stopped VM instance (admin only) - [Resume VM](https://docs.getgranite.ai/api-reference/mig/resume-vm.md): Resume a suspended Installation VM to continue configuration - [Suspend Idle](https://docs.getgranite.ai/api-reference/mig/suspend-idle.md): Internal endpoint called by cron to suspend VMs idle for >30 minutes - [Suspend Instance](https://docs.getgranite.ai/api-reference/mig/suspend-instance.md): Stop a running VM instance (admin only) - [Sync Status](https://docs.getgranite.ai/api-reference/mig/sync-status.md): Update instance IPs and status from GCP API - [Heartbeat](https://docs.getgranite.ai/api-reference/mig/update-activity.md): Called by frontend to prevent idle suspension during active VNC sessions - [Update Template](https://docs.getgranite.ai/api-reference/mig/update-template.md): Update the instance template type for a MIG. (Admin only) - [VM Status](https://docs.getgranite.ai/api-reference/mig/vm-status.md): Get current status of Installation VM, synced from GCP - [Complete](https://docs.getgranite.ai/api-reference/onboarding/complete.md): Mark onboarding as complete for the organization - [Dismiss](https://docs.getgranite.ai/api-reference/onboarding/dismiss.md): Hide the onboarding checklist from the dashboard - [Machine Types](https://docs.getgranite.ai/api-reference/onboarding/machine-types.md): Get list of available machine types for selection - [Get Progress](https://docs.getgranite.ai/api-reference/onboarding/progress.md): Get current onboarding progress with checklist items automatically updated based on system state - [Select Type](https://docs.getgranite.ai/api-reference/onboarding/select-type.md): Select the machine type for the organization during onboarding - [Create Endpoint](https://docs.getgranite.ai/api-reference/organization-automations/create-endpoint.md): Create a new REST endpoint for the organization's automations - [Create Key](https://docs.getgranite.ai/api-reference/organization-automations/create-key.md): Generate a new API key for the organization - [Delete Endpoint](https://docs.getgranite.ai/api-reference/organization-automations/delete-endpoint.md): Delete an endpoint by ID - [Get Endpoint](https://docs.getgranite.ai/api-reference/organization-automations/get-endpoint.md): Get endpoint details by ID - [List Endpoints](https://docs.getgranite.ai/api-reference/organization-automations/list-endpoints.md): Get all custom endpoints for the organization - [List API Keys](https://docs.getgranite.ai/api-reference/organization-automations/list-keys.md): Get all API keys for the organization - [Revoke Key](https://docs.getgranite.ai/api-reference/organization-automations/revoke-key.md): Revoke an API key by ID - [Update Endpoint](https://docs.getgranite.ai/api-reference/organization-automations/update-endpoint.md): Update endpoint configuration - [Invoke (GET)](https://docs.getgranite.ai/api-reference/organization-endpoints/invoke.md): Public endpoint to invoke organization-specific automation endpoints - [Invoke (DELETE)](https://docs.getgranite.ai/api-reference/organization-endpoints/invoke-delete.md): Public endpoint to invoke organization-specific automation endpoints - [Invoke (PATCH)](https://docs.getgranite.ai/api-reference/organization-endpoints/invoke-patch.md): Public endpoint to invoke organization-specific automation endpoints - [Invoke (POST)](https://docs.getgranite.ai/api-reference/organization-endpoints/invoke-post.md): Public endpoint to invoke organization-specific automation endpoints - [Invoke (PUT)](https://docs.getgranite.ai/api-reference/organization-endpoints/invoke-put.md): Public endpoint to invoke organization-specific automation endpoints - [Invite Member](https://docs.getgranite.ai/api-reference/organizations/invite.md): Send an email invitation to a new member to join the organization - [List Members](https://docs.getgranite.ai/api-reference/organizations/list-members.md): Get all members in the organization - [Remove Member](https://docs.getgranite.ai/api-reference/organizations/remove-member.md): Remove a member from the organization - [Update Role](https://docs.getgranite.ai/api-reference/organizations/update-role.md): Update the role of an organization member - [API Reference](https://docs.getgranite.ai/api-reference/overview.md): Complete reference for the Granite API - [Get](https://docs.getgranite.ai/api-reference/recordings/get.md) - [Upload](https://docs.getgranite.ai/api-reference/recordings/upload.md) - [Get Logs](https://docs.getgranite.ai/api-reference/rpa-automation/get-logs.md): Get execution trace with screenshots and actions (NO script content) - [Get Run](https://docs.getgranite.ai/api-reference/rpa-automation/get-run.md): Get metadata for a specific RPA run (NO script content) - [List Runs](https://docs.getgranite.ai/api-reference/rpa-automation/list.md): Get paginated list of RPA runs for organization - [Run Pipeline](https://docs.getgranite.ai/api-reference/rpa-automation/run.md): Execute RPA pipeline to create automation from description - [Upload Package](https://docs.getgranite.ai/api-reference/rpa-automation/upload.md) - [Upload](https://docs.getgranite.ai/api-reference/screenshots/upload.md) - [Create Key](https://docs.getgranite.ai/api-reference/vm-api-keys/create.md) - [Delete Key](https://docs.getgranite.ai/api-reference/vm-api-keys/delete.md) - [List Keys](https://docs.getgranite.ai/api-reference/vm-api-keys/list.md) - [List Machines](https://docs.getgranite.ai/api-reference/vm-api-keys/machines.md) - [Architecture](https://docs.getgranite.ai/architecture.md): Understand how Granite's components work together - [Agent Run](https://docs.getgranite.ai/dashboard/agent-run.md): Execute and monitor automations in real-time - [Analytics](https://docs.getgranite.ai/dashboard/analytics.md): Monitor your automation performance with customizable dashboards - [API Endpoints](https://docs.getgranite.ai/dashboard/api-endpoints.md): Create and manage public API endpoints for your automations - [API Management](https://docs.getgranite.ai/dashboard/api-management.md): Manage API keys, enrollment tokens, and driver machines - [Driver Management](https://docs.getgranite.ai/dashboard/driver-management.md): Monitor and manage your connected driver machines - [Members](https://docs.getgranite.ai/dashboard/members.md): Manage team members and roles in your organization - [Dashboard Overview](https://docs.getgranite.ai/dashboard/overview.md): Navigate the Granite dashboard interface - [Processes](https://docs.getgranite.ai/dashboard/processes.md): Create and manage your automation processes - [Run Logs](https://docs.getgranite.ai/dashboard/run-logs.md): View and analyze your execution history - [Settings](https://docs.getgranite.ai/dashboard/settings.md): Configure your organization settings - [Driver Enrollment](https://docs.getgranite.ai/driver/enrollment.md): Register your driver with your Granite organization - [Driver Installation](https://docs.getgranite.ai/driver/installation.md): Install the Granite driver on a Windows machine - [Driver Overview](https://docs.getgranite.ai/driver/overview.md): Understanding Granite's Windows automation driver - [Driver Troubleshooting](https://docs.getgranite.ai/driver/troubleshooting.md): Fix common driver issues - [Key Concepts](https://docs.getgranite.ai/getting-started/concepts.md): Understanding the core ideas behind Granite - [Platform Overview](https://docs.getgranite.ai/getting-started/overview.md): What Granite does and why you'd use it - [Sign Up](https://docs.getgranite.ai/getting-started/sign-up.md): Create your Granite account in under a minute - [Your First Automation](https://docs.getgranite.ai/getting-started/your-first-automation.md): Create and run an automation in 5 minutes - [Welcome to Granite](https://docs.getgranite.ai/introduction.md): Desktop automation platform powered by AI agents and human-in-the-loop workflows - [API Keys](https://docs.getgranite.ai/public-api/api-keys.md): Create and manage API authentication keys - [Creating Endpoints](https://docs.getgranite.ai/public-api/creating-endpoints.md): Set up public API endpoints for your automations - [Invoking Automations](https://docs.getgranite.ai/public-api/invoking-automations.md): Call your endpoints from external systems - [Public API Overview](https://docs.getgranite.ai/public-api/overview.md): Trigger automations from external systems - [Quickstart](https://docs.getgranite.ai/quickstart.md): Get your first automation running in 5 minutes - [Creating RPA Scripts](https://docs.getgranite.ai/rpa-automation/creating-scripts.md): Write your first RPA automation script - [RPA Automation Overview](https://docs.getgranite.ai/rpa-automation/overview.md): Create reliable, repeatable desktop automations with scripts - [Common Errors](https://docs.getgranite.ai/troubleshooting/common-errors.md): Troubleshoot common issues in Granite - [FAQ](https://docs.getgranite.ai/troubleshooting/faq.md): Frequently asked questions about Granite - [GCP Managed Instance Groups](https://docs.getgranite.ai/vm-management/gcp-mig.md): Set up cloud-managed driver VMs on Google Cloud - [Local Sandbox Setup](https://docs.getgranite.ai/vm-management/local-sandbox-setup.md): Set up Windows 11 VMs for local automation testing - [VM Management Overview](https://docs.getgranite.ai/vm-management/overview.md): Understanding Granite's virtual machine options ## OpenAPI Specs - [openapi](https://docs.getgranite.ai/api-reference/openapi.json)