Nodes

Create VM nodes

post/v1/nodes

Request

  • The document declares no server URL.
  • Auth
    none declared

Request body

desired_countinteger required
zonestring

Zone to create the nodes in. Required for auto reserved nodes if any_zone is false.

any_zoneboolean

Allow auto reserved nodes to be created in any zone that meets the requirements

max_price_per_node_hourinteger required

Max price per hour for a node in cents

start_atinteger

Start time as Unix timestamp in seconds Optional for reserved nodes. If not provided, defaults to now

end_atinteger nullable

End time as Unix timestamp in seconds If provided, end time must be aligned to the hour If not provided, the node will be created as an autoreserved node

node_type'autoreserved' | 'reserved'
namesstring[]

Custom node names Names cannot begin with 'vm_' or 'n_' as this is reserved for system-generated IDs Names cannot be numeric strings Names cannot exceed 256 characters

cloud_init_user_datastring byte

User script to be executed during the VM's boot process Data should be base64 encoded

image_idstring

Custom image ID to use for the VM instances

forward_443boolean

(Optional) If set, enables forwarding to the VM on port 443.

_preview_enable_infinibandboolean

Experimental — subject to change or removal without notice. Enables InfiniBand. Requires hardware in the chosen zone that supports InfiniBand.

Example request

{
  "desired_count": 1,
  "zone": "hayesvalley",
  "max_price_per_node_hour": 1600,
  "start_at": 1640995200,
  "names": [
    "cuda-crunch"
  ],
  "cloud_init_user_data": "aGVsbG8gd29ybGQ=",
  "image_id": "image_1234567890abcdef"
}

Response

Nodes created successfully

objectstring required

Example response

{
  "object": "list",
  "data": [
    {
      "object": "node",
      "id": "n_b1dc52505c6db142",
      "name": "cuda-crunch",
      "zone": "hayesvalley",
      "owner": "sfcompute",
      "created_at": 1640995200,
      "updated_at": 1640995200,
      "start_at": 1640995200,
      "end_at": 1640995200,
      "deleted_at": 1640995200,
      "procurement_id": "proc_b1dc52505c6de142",
      "max_price_per_node_hour": 1000,
      "vms": {
        "object": "list",
        "data": [
          {
            "object": "vm",
            "id": "vm_myOZZXw4pfcp7H9DQOldd",
            "created_at": 1640995200,
            "updated_at": 1640995200,
            "start_at": 1640995200,
            "end_at": 1640998200,
            "image_id": "image_myOZZXw4pfcp7H9DQOldd",
            "zone": "hayesvalley"
          }
        ]
      },
      "current_vm": {
        "object": "vm",
        "id": "vm_myOZZXw4pfcp7H9DQOldd",
        "created_at": 1640995200,
        "updated_at": 1640995200,
        "start_at": 1640995200,
        "end_at": 1640998200,
        "image_id": "image_myOZZXw4pfcp7H9DQOldd",
        "zone": "hayesvalley"
      }
    }
  ]
}

Changes

    • warning

      removed the request property

    • info

      added the new optional request property

    • warning

      removed the optional property / from the response with the status

    • warning

      removed the optional property / from the response with the status

    • warning

      removed the optional property / from the response with the status

    • warning

      removed the optional property / from the response with the status

    • info

      added the new optional request property

    • info

      removed the api_error enum value from the / response property for the response status

    • info

      removed the api_error enum value from the / response property for the response status

    • info

      removed the api_error enum value from the / response property for the response status

    • info

      removed the api_error enum value from the / response property for the response status

    • info

      removed the authentication_error enum value from the / response property for the response status

    • info

      removed the authentication_error enum value from the / response property for the response status

    • info

      removed the authentication_error enum value from the / response property for the response status

    • info

      removed the authentication_error enum value from the / response property for the response status

    • info

      removed the conflict enum value from the / response property for the response status

    • info

      removed the conflict enum value from the / response property for the response status

    • info

      removed the conflict enum value from the / response property for the response status

    • info

      removed the conflict enum value from the / response property for the response status

    • info

      removed the conflict enum value from the / response property for the response status

    • info

      removed the forbidden enum value from the / response property for the response status

    • info

      removed the forbidden enum value from the / response property for the response status

    • info

      removed the forbidden enum value from the / response property for the response status

    • info

      removed the forbidden enum value from the / response property for the response status

    • info

      removed the idempotency_error enum value from the / response property for the response status

    • info

      removed the idempotency_error enum value from the / response property for the response status

    • info

      removed the idempotency_error enum value from the / response property for the response status

    • info

      removed the idempotency_error enum value from the / response property for the response status

    • info

      removed the idempotency_error enum value from the / response property for the response status

    • info

      removed the invalid_request_error enum value from the / response property for the response status

    • info

      removed the invalid_request_error enum value from the / response property for the response status

    • info

      removed the invalid_request_error enum value from the / response property for the response status

    • info

      removed the invalid_request_error enum value from the / response property for the response status

    • info

      removed the not_found enum value from the / response property for the response status

    • info

      removed the not_found enum value from the / response property for the response status

    • info

      removed the not_found enum value from the / response property for the response status

    • info

      removed the not_found enum value from the / response property for the response status

    • info

      removed the not_found enum value from the / response property for the response status

    • info

      removed the not_implemented enum value from the / response property for the response status

    • info

      removed the not_implemented enum value from the / response property for the response status

    • info

      removed the not_implemented enum value from the / response property for the response status

    • info

      removed the not_implemented enum value from the / response property for the response status

    • info

      removed the not_implemented enum value from the / response property for the response status

    • info

      removed the payment_required enum value from the / response property for the response status

    • info

      removed the payment_required enum value from the / response property for the response status

    • info

      removed the payment_required enum value from the / response property for the response status

    • info

      removed the payment_required enum value from the / response property for the response status

    • info

      removed the request_timed_out enum value from the / response property for the response status

    • info

      removed the request_timed_out enum value from the / response property for the response status

    • info

      removed the request_timed_out enum value from the / response property for the response status

    • info

      removed the request_timed_out enum value from the / response property for the response status

    • info

      removed the request_timed_out enum value from the / response property for the response status

    • info

      removed the service_unavailable enum value from the / response property for the response status

    • info

      removed the service_unavailable enum value from the / response property for the response status

    • info

      removed the service_unavailable enum value from the / response property for the response status

    • info

      removed the service_unavailable enum value from the / response property for the response status

    • info

      removed the service_unavailable enum value from the / response property for the response status

    • info

      removed the unprocessable_entity enum value from the / response property for the response status

    • info

      removed the unprocessable_entity enum value from the / response property for the response status

    • info

      removed the unprocessable_entity enum value from the / response property for the response status

    • info

      removed the unprocessable_entity enum value from the / response property for the response status

    • info

      removed the unprocessable_entity enum value from the / response property for the response status

    • info

      removed the upgrade_required enum value from the / response property for the response status

    • info

      removed the upgrade_required enum value from the / response property for the response status

    • info

      removed the upgrade_required enum value from the / response property for the response status

    • info

      removed the upgrade_required enum value from the / response property for the response status

    • info

      removed the upgrade_required enum value from the / response property for the response status