Skip to main content
POST
/
preview
/
v2
/
instances
Create instance
curl --request POST \
  --url https://api.sfcompute.com/preview/v2/instances \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "capacity": "<string>",
  "image": "<string>",
  "name": "my-resource-name",
  "cloud_init_user_data": "IyEvYmluL2Jhc2gKZWNobyBoZWxsbyB3b3JsZAo=",
  "tags": {
    "env": "prod",
    "team": "infra"
  }
}
'
{
  "id": "<string>",
  "resource_path": "<string>",
  "owner": "<string>",
  "workspace": "<string>",
  "name": "<string>",
  "object": "instance",
  "status": "awaiting_allocation",
  "capacity": "cap_k3R-nX9vLm7Qp2Yw5Jd8F",
  "created_at": 1738972800,
  "image": "image_k3R-nX9vLm7Qp2Yw5Jd8F",
  "cloud_init_user_data_used": true,
  "instance_sku": {
    "id": "<string>",
    "name": "<string>"
  },
  "deployment": "depl_k3R-nX9vLm7Qp2Yw5Jd8F",
  "cloud_init_user_data": "IyEvYmluL2Jhc2gKZWNobyBoZWxsbyB3b3JsZAo=",
  "tags": {
    "env": "prod",
    "team": "infra"
  },
  "expected_shutdown_at": 1738972800
}

Documentation Index

Fetch the complete documentation index at: https://docs.sfcompute.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Create an API token using sf tokens create or at https://sfcompute.com/account/api-keys.

Body

application/json
capacity
string
required

A resource path like 'sfc:capacity:acme:prod:my-capacity' or an ID. Resource paths are human-readable but not stable - they change when resources are renamed or moved. IDs are stable and permanent.

Pattern: (cap_[0-9a-zA-Z_-]{1,21})|(sfc:capacity:[a-zA-Z0-9._-]+(:[a-zA-Z0-9._-]+){1,3})
Example:

"cap_k3R-nX9vLm7Qp2Yw5Jd8F"

image
string
required

A resource path like 'sfc:image:acme:prod:my-image' or an ID. Resource paths are human-readable but not stable - they change when resources are renamed or moved. IDs are stable and permanent.

Pattern: (image_[0-9a-zA-Z_-]{1,21})|(sfc:image:[a-zA-Z0-9._-]+(:[a-zA-Z0-9._-]+){1,3})
Example:

"image_k3R-nX9vLm7Qp2Yw5Jd8F"

name
null | string
Required string length: 1 - 255
Pattern: [a-zA-Z0-9][a-zA-Z0-9._-]{0,254}
Example:

"my-resource-name"

cloud_init_user_data
string<byte>

Base64-encoded cloud-init user data. Maximum 64KB.

Example:

"IyEvYmluL2Jhc2gKZWNobyBoZWxsbyB3b3JsZAo="

tags
object

Optional metadata tags for this instance.

Example:
{ "env": "prod", "team": "infra" }

Response

Instance created.

id
string
required
Pattern: inst_[0-9a-zA-Z_-]{1,21}
Example:

"inst_k3R-nX9vLm7Qp2Yw5Jd8F"

resource_path
string
required

A resource path for a instance resource. Format: sfc:instance:::.

Pattern: sfc:instance:([a-zA-Z0-9._-]+:){2}[a-zA-Z0-9._-]+
Example:

"sfc:instance:<account_id>:<workspace>:<name>"

owner
string
required
Required string length: 1 - 255
Pattern: [a-zA-Z0-9][a-zA-Z0-9._-]{0,254}
Example:

"my-resource-name"

workspace
string
required
Required string length: 1 - 255
Pattern: [a-zA-Z0-9][a-zA-Z0-9._-]{0,254}
Example:

"my-resource-name"

name
string
required
Required string length: 1 - 255
Pattern: [a-zA-Z0-9][a-zA-Z0-9._-]{0,254}
Example:

"my-resource-name"

object
string
default:instance
required
read-only
Allowed value: "instance"
status
enum<string>
required

awaiting_allocation when waiting for compute allocation on its capacity, running once assigned and the physical machine is running (still takes time for the image to be downloaded and booted), terminated when stopped by the user or after running out of allocation, failed on hardware fault.

Available options:
awaiting_allocation,
running,
terminated,
failed
capacity
required

Capacity this instance is utilizing.

Pattern: cap_[0-9a-zA-Z_-]{1,21}
Example:

"cap_k3R-nX9vLm7Qp2Yw5Jd8F"

created_at
integer<int64>
required

Unix timestamp.

Example:

1738972800

image
required

Image this instance was launched from.

Pattern: image_[0-9a-zA-Z_-]{1,21}
Example:

"image_k3R-nX9vLm7Qp2Yw5Jd8F"

cloud_init_user_data_used
boolean
required

Whether cloud-init user data is configured for this instance.

instance_sku
object

Instance SKU this instance is running on. Only present when assigned to a physical machine. Carries the SKU's human-readable name when one is registered.

deployment

Deployment managing this instance, if any.

Pattern: depl_[0-9a-zA-Z_-]{1,21}
Example:

"depl_k3R-nX9vLm7Qp2Yw5Jd8F"

cloud_init_user_data
string<byte>

Base64-encoded cloud-init user data.

Example:

"IyEvYmluL2Jhc2gKZWNobyBoZWxsbyB3b3JsZAo="

tags
object

Metadata tags attached to this instance.

Example:
{ "env": "prod", "team": "infra" }
expected_shutdown_at
null | integer<int64>

Predicted Unix timestamp at which this node will be terminated because its capacity drops below the count of running nodes. null if no shutdown is scheduled in the predictable horizon — either the capacity covers this node indefinitely, or a future capacity increase blocks the prediction. Recomputed on every read.

Example:

1738972800