Droid Computers API

Provision and manage Factory computers: create, inspect, refresh, restart, and delete.

GET/api/v0/computers

List computers

Returns all persistent computer environments for the authenticated organization.

cURL
curl 'https://api.factory.ai/api/v0/computers' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

hostIdstring <uuid>queryoptional
includeProvisioningStepsstringqueryoptional

Whether to include provisioning step details.

Allowed values

truefalse

Responses

200Response for status 200
computersobject[]required
idstringrequired
hostIdstring <uuid>
namestringrequired
hostnamestring
providerTypestringrequired

Allowed values

byome2b
statusstring

Allowed values

provisioningactiveerror
createdAtnumberrequired
provisioningStepsobject[]
idstringrequired
namestringrequired
statusstringrequired
errorstring
startedAtnumber
completedAtnumber
installSessionIdstring
relayClientUrlstring <uri>
relayAgentUrlstring <uri>
remoteUserstring
ownerPrincipalKindstring
ownerIdstring
computerSourceobject
variantOption 1 · object
kindstringrequired

Allowed values

template
templateIdstringrequired
variantOption 2 · object
kindstringrequired

Allowed values

computer
computerIdstringrequired
400Response for status 400
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

POST/api/v0/computers

Create a computer

Creates a new persistent computer environment.

cURL
curl -X POST 'https://api.factory.ai/api/v0/computers' \
  -H 'Authorization: Bearer $FACTORY_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ ... }'

Request body

namestringrequired
providerstring

Allowed values

byome2b
hostIdstring <uuid>
remoteUserstring
reposstring[]
autoInstallDepsboolean
serviceAccountIdstring
sourceobject
variantOption 1 · object
kindstringrequired

Allowed values

template
templateIdstringrequired
variantOption 2 · object
kindstringrequired

Allowed values

computer
sourceComputerIdstringrequired

Responses

201Response for status 201
idstringrequired
hostIdstring <uuid>
namestringrequired
hostnamestring
providerTypestringrequired

Allowed values

byome2b
statusstring

Allowed values

provisioningactiveerror
createdAtnumberrequired
provisioningStepsobject[]
idstringrequired
namestringrequired
statusstringrequired
errorstring
startedAtnumber
completedAtnumber
installSessionIdstring
relayClientUrlstring <uri>
relayAgentUrlstring <uri>
remoteUserstring
ownerPrincipalKindstring
ownerIdstring
computerSourceobject
variantOption 1 · object
kindstringrequired

Allowed values

template
templateIdstringrequired
variantOption 2 · object
kindstringrequired

Allowed values

computer
computerIdstringrequired
400Response for status 400
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

402Response for status 402
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

403Response for status 403
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

GET/api/v0/computers/name/{name}

Get a computer by name

Returns details about a specific computer by name.

cURL
curl 'https://api.factory.ai/api/v0/computers/name/{name}' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

namestringpathrequired

Computer name

Responses

200Response for status 200
idstringrequired
hostIdstring <uuid>
namestringrequired
hostnamestring
providerTypestringrequired

Allowed values

byome2b
statusstring

Allowed values

provisioningactiveerror
createdAtnumberrequired
provisioningStepsobject[]
idstringrequired
namestringrequired
statusstringrequired
errorstring
startedAtnumber
completedAtnumber
installSessionIdstring
relayClientUrlstring <uri>
relayAgentUrlstring <uri>
remoteUserstring
ownerPrincipalKindstring
ownerIdstring
computerSourceobject
variantOption 1 · object
kindstringrequired

Allowed values

template
templateIdstringrequired
variantOption 2 · object
kindstringrequired

Allowed values

computer
computerIdstringrequired
401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

GET/api/v0/computers/{computerId}

Get a computer

Returns details about a specific computer by ID.

cURL
curl 'https://api.factory.ai/api/v0/computers/{computerId}' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

computerIdstringpathrequired

Computer ID

Responses

200Response for status 200
idstringrequired
hostIdstring <uuid>
namestringrequired
hostnamestring
providerTypestringrequired

Allowed values

byome2b
statusstring

Allowed values

provisioningactiveerror
createdAtnumberrequired
provisioningStepsobject[]
idstringrequired
namestringrequired
statusstringrequired
errorstring
startedAtnumber
completedAtnumber
installSessionIdstring
relayClientUrlstring <uri>
relayAgentUrlstring <uri>
remoteUserstring
ownerPrincipalKindstring
ownerIdstring
computerSourceobject
variantOption 1 · object
kindstringrequired

Allowed values

template
templateIdstringrequired
variantOption 2 · object
kindstringrequired

Allowed values

computer
computerIdstringrequired
401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

403Response for status 403
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

DELETE/api/v0/computers/{computerId}

Delete a computer

Terminal deletion: sets `deletedAt`, revokes the API key, archives sessions, and tears down provider resources for managed computers. Cannot be undone.

cURL
curl -X DELETE 'https://api.factory.ai/api/v0/computers/{computerId}' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

computerIdstringpathrequired

Computer ID

Responses

204Response for status 204
401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

403Response for status 403
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

PATCH/api/v0/computers/{computerId}

Update a computer

Updates a computer by ID.

cURL
curl -X PATCH 'https://api.factory.ai/api/v0/computers/{computerId}' \
  -H 'Authorization: Bearer $FACTORY_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ ... }'

Parameters

computerIdstringpathrequired

Computer ID

Request body

namestring
hostIdstring <uuid>
remoteUserstring

Responses

200Response for status 200
idstringrequired
hostIdstring <uuid>
namestringrequired
hostnamestring
providerTypestringrequired

Allowed values

byome2b
statusstring

Allowed values

provisioningactiveerror
createdAtnumberrequired
provisioningStepsobject[]
idstringrequired
namestringrequired
statusstringrequired
errorstring
startedAtnumber
completedAtnumber
installSessionIdstring
relayClientUrlstring <uri>
relayAgentUrlstring <uri>
remoteUserstring
ownerPrincipalKindstring
ownerIdstring
computerSourceobject
variantOption 1 · object
kindstringrequired

Allowed values

template
templateIdstringrequired
variantOption 2 · object
kindstringrequired

Allowed values

computer
computerIdstringrequired
400Response for status 400
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

403Response for status 403
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

409Response for status 409
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

POST/api/v0/computers/{computerId}/install-deps

Retry the install-dependencies step

Resets the install-deps provisioning step to Running and spawns a fresh install session. No-op (409) if a session is already running.

cURL
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/install-deps' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

computerIdstringpathrequired

Computer ID

Responses

202Response for status 202
idstringrequired
hostIdstring <uuid>
namestringrequired
hostnamestring
providerTypestringrequired

Allowed values

byome2b
statusstring

Allowed values

provisioningactiveerror
createdAtnumberrequired
provisioningStepsobject[]
idstringrequired
namestringrequired
statusstringrequired
errorstring
startedAtnumber
completedAtnumber
installSessionIdstring
relayClientUrlstring <uri>
relayAgentUrlstring <uri>
remoteUserstring
ownerPrincipalKindstring
ownerIdstring
computerSourceobject
variantOption 1 · object
kindstringrequired

Allowed values

template
templateIdstringrequired
variantOption 2 · object
kindstringrequired

Allowed values

computer
computerIdstringrequired
400Response for status 400
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

409Response for status 409
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

GET/api/v0/computers/{computerId}/metrics

Get computer metrics

Returns CPU, memory, and disk usage metrics for an active E2B computer.

cURL
curl 'https://api.factory.ai/api/v0/computers/{computerId}/metrics' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

computerIdstringpathrequired

Computer ID

startstring <date-time>queryoptional

Start of time range (ISO 8601)

Responses

200Response for status 200
timestampstringrequired
cpuUsedPctnumberrequired
cpuCountnumberrequired
memUsednumberrequired
memTotalnumberrequired
diskUsednumberrequired
diskTotalnumberrequired
400Response for status 400
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

403Response for status 403
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

503Response for status 503
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

POST/api/v0/computers/{computerId}/refresh

Refresh a computer

Refreshes a computer by re-configuring credentials and environment. Currently configures git credentials for all connected SCM integrations.

cURL
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/refresh' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

computerIdstringpathrequired

Computer ID

Responses

200Response for status 200
configurednumberrequired
401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

403Response for status 403
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

POST/api/v0/computers/{computerId}/restart

Restart a managed computer

Resumes a paused managed sandbox. No-op if the sandbox is already running.

cURL
curl -X POST 'https://api.factory.ai/api/v0/computers/{computerId}/restart' \
  -H 'Authorization: Bearer $FACTORY_API_KEY'

Parameters

computerIdstringpathrequired

Computer ID

Responses

200Response for status 200
400Response for status 400
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

401Response for status 401
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

402Response for status 402
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

403Response for status 403
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

404Response for status 404
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values

500Response for status 500
detailstringrequired

Human-readable error message

statusnumberrequired

HTTP status code

titlestringrequired

HTTP status title

metadataobject (map)

Additional error metadata

Values