Droid Computers API
Provision and manage Factory computers: create, inspect, refresh, restart, and delete.
List computers
Returns the computers owned by the authenticated client, ordered newest first. Provisioning steps are included only when `includeProvisioningSteps=true`.
curl 'https://api.factory.ai/api/v0/computers' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Whether to include provisioning step details.
Allowed values
Whether to include Computers hidden from normal listings.
Allowed values
Responses
Compute provider backing this computer, e.g. 'byom' or 'e2b'.
Allowed values
Allowed values
Allowed values
Allowed values
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Create a computer
Creates a computer. Managed computers are returned in a provisioning state and set up asynchronously; BYOM computers register an existing machine and are active immediately.
curl -X POST 'https://api.factory.ai/api/v0/computers' \
-H 'Authorization: Bearer $FACTORY_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ ... }'Request body
Allowed values
Allowed values
Allowed values
Responses
Compute provider backing this computer, e.g. 'byom' or 'e2b'.
Allowed values
Allowed values
Allowed values
Allowed values
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
402Response for status 402
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Get a computer by name
Returns the authenticated caller's computer with the given name.
curl 'https://api.factory.ai/api/v0/computers/name/{name}' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Computer name
Responses
Compute provider backing this computer, e.g. 'byom' or 'e2b'.
Allowed values
Allowed values
Allowed values
Allowed values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Get a computer
Returns a computer by ID. Callers can access their own computers; organization members with the manager role or higher can also access service-account-owned computers.
curl 'https://api.factory.ai/api/v0/computers/{computerId}' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Computer ID
Responses
Compute provider backing this computer, e.g. 'byom' or 'e2b'.
Allowed values
Allowed values
Allowed values
Allowed values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Delete a computer
Permanently deletes a computer. Deleting a managed computer also shuts down its hosted environment and archives its sessions; deleting a BYOM computer removes the registration but leaves the machine and its sessions intact. Automations running on the computer are paused.
curl -X DELETE 'https://api.factory.ai/api/v0/computers/{computerId}' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Computer ID
Responses
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Update a computer
Updates a computer's name or remote user. A host ID can be assigned to a computer that does not have one; host IDs are immutable once set and must be unique among the owner's computers.
curl -X PATCH 'https://api.factory.ai/api/v0/computers/{computerId}' \
-H 'Authorization: Bearer $FACTORY_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ ... }'Parameters
Computer ID
Request body
Responses
Compute provider backing this computer, e.g. 'byom' or 'e2b'.
Allowed values
Allowed values
Allowed values
Allowed values
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
409Response for status 409
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Complete a computer file upload
Completes a file upload by writing the previously uploaded file into the computer's workspace. Returns `409 Conflict` if a file with that name already exists.
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/files/{fileName}/complete-upload' \
-H 'Authorization: Bearer $FACTORY_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ ... }'Parameters
Computer ID
Workspace file name
Request body
Responses
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
409Response for status 409
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
424Response for status 424
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
503Response for status 503
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Create a computer file download
Creates a download for a file in the computer's workspace and returns a time-limited download URL.
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/files/{fileName}/create-download' \
-H 'Authorization: Bearer $FACTORY_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ ... }'Parameters
Computer ID
Workspace file name
Request body
Responses
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
424Response for status 424
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
503Response for status 503
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Create a computer file upload
Starts a file upload to a computer. Returns a time-limited upload URL and form fields; upload the file there, then call complete-upload to place it in the computer's workspace.
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/files/{fileName}/create-upload' \
-H 'Authorization: Bearer $FACTORY_API_KEY' \
-H 'Content-Type: application/json' \
-d '{ ... }'Parameters
Computer ID
Workspace file name
Request body
Responses
Values
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
424Response for status 424
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
503Response for status 503
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Retry the install-dependencies step
Starts a new dependency-installation attempt on a managed computer that was configured to install dependencies. Installation runs in the background; returns `202 Accepted` with the updated computer, or `409 Conflict` when an install is already in progress.
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/install-deps' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Computer ID
Responses
Compute provider backing this computer, e.g. 'byom' or 'e2b'.
Allowed values
Allowed values
Allowed values
Allowed values
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
409Response for status 409
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Get computer metrics
Returns CPU, memory, and disk usage metrics for an active managed computer. Not supported for BYOM computers.
curl 'https://api.factory.ai/api/v0/computers/{computerId}/metrics' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Computer ID
Start of time range (ISO 8601)
Responses
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
503Response for status 503
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Refresh a computer
Refreshes the Git credentials and user-owned computer secrets on a managed computer. BYOM computers are not modified and return zero counts.
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/refresh' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Computer ID
Responses
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
Restart a managed computer
Ensures an active managed computer is running, resuming it if necessary. Computers that are already running are left untouched and reported with `wasRestarted: false`. Not supported for BYOM computers.
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/restart' \
-H 'Authorization: Bearer $FACTORY_API_KEY'Parameters
Computer ID
Responses
400Response for status 400
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
401Response for status 401
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
402Response for status 402
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
403Response for status 403
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
404Response for status 404
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values
500Response for status 500
Human-readable error message
HTTP status code
HTTP status title
Additional error metadata
Values