> ## 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.

# Hard reboot instance

> Hard resets a running guest without a graceful shutdown. The instance stays on the same host and retains its disks, identity, and network configuration. Unsaved data can be lost. Returns the ID of the instance.reboot_requested activity event. The instance.rebooting event means the reset has started; it does not mean the guest has finished booting. Rejected requests produce instance.reboot_rejected. Pending requests continue to block new reboots if the instance stops responding.



## OpenAPI

````yaml /openapi.json post /v2/instances/{id}/reboot
openapi: 3.1.0
info:
  title: sfc-api
  description: >-
    SF Compute API. Routes under /v2 are stable; routes under /preview/v2 are
    public preview - subject to change.
  version: 0.1.0
servers:
  - url: https://api.sfcompute.com
security:
  - bearer_auth: []
tags:
  - name: Limits
    description: Account limits and current usage.
  - name: Account
    description: The authenticated account and logged-in user.
  - name: Pools
    description: A bucket of owned compute balance over time.
  - name: Orders
    description: >-
      Place orders targeting a capacity to increase your reserved compute
      balance during some time period.
  - name: Instance Templates
    description: Reusable instance configuration.
  - name: Images
    description: Custom machine images for instances.
  - name: Roles
    description: TOML-based permission role definitions.
  - name: Grants
    description: Bind principals (users or tokens) to roles on a workspace.
  - name: Tokens
    description: Workspace-scoped API tokens.
  - name: Instances
    description: Spin up instances in a capacity to use your available compute.
  - name: Instance SKU Catalog
    description: Browse available instance SKU property definitions.
  - name: VPCs
    description: Isolated networks with routed subnets within one availability zone.
  - name: Subnets
    description: Private networks for instance-to-instance communication within a zone.
  - name: Procurements
    description: Market automations that maintain capacity by placing buy/sell orders.
  - name: Users
    description: Read-only access to users within the caller's organization.
  - name: Workspaces
    description: Resource containers scoped to an account.
  - name: Permissions
    description: Inspect what the caller is allowed to do.
  - name: Billing
    description: Billing profile, contacts, and auto top-up settings.
  - name: Faults
    description: Report problems with your resources.
  - name: InfiniBand Partitions
    description: Isolated InfiniBand networks for groups of instances.
  - name: Orderbook
    description: >-
      Read-only orderbook visibility: bid/ask spread, depth, open and filled
      orders, and historical fills, keyed on hardware requirements + delivery
      window.
  - name: Orders
    description: >-
      Estimate an order before placing it: filled price, fee, and operational
      notices.
paths:
  /v2/instances/{id}/reboot:
    post:
      tags:
        - Instances
      summary: Hard reboot instance
      description: >-
        Hard resets a running guest without a graceful shutdown. The instance
        stays on the same host and retains its disks, identity, and network
        configuration. Unsaved data can be lost. Returns the ID of the
        instance.reboot_requested activity event. The instance.rebooting event
        means the reset has started; it does not mean the guest has finished
        booting. Rejected requests produce instance.reboot_rejected. Pending
        requests continue to block new reboots if the instance stops responding.
      operationId: reboot_instance
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            description: >-
              A resource path like 'sfc:instance:acme:prod:my-instance' _or_ an
              ID. Resource paths are human-readable but not stable - they change
              when resources are renamed or moved. IDs are stable and permanent.
            examples:
              - inst_k3R-nX9vLm7Qp2Yw5Jd8F
            pattern: >-
              (inst_[0-9a-zA-Z_-]{1,21})|(sfc:instance:[a-zA-Z0-9._-]+(:[a-zA-Z0-9._-]+){2,2})
        - name: Idempotency-Key
          in: header
          description: >-
            Optional key scoped to this instance. Reusing an accepted key
            returns 202 with the same request ID without scheduling another
            reboot. Use a new key for each new reboot.
          required: false
          schema:
            type:
              - string
              - 'null'
      responses:
        '202':
          description: Reboot request accepted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v2.RebootInstanceResponse'
        '400':
          description: Malformed request parameters or body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestError'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
        '404':
          description: Instance not found or already terminated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
        '409':
          description: Another reboot is pending for this instance.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictError'
        '422':
          description: The instance is not running.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnprocessableEntityError'
        '429':
          description: >-
            Rate limit exceeded. Retry after the interval indicated by the
            rate-limit response headers.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedError'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
        '503':
          description: Reboot is temporarily unavailable for this instance.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableError'
components:
  schemas:
    v2.RebootInstanceResponse:
      type: object
      required:
        - object
        - request_id
      properties:
        object:
          type: string
          const: instance_reboot
          default: instance_reboot
          readOnly: true
        request_id:
          type: string
          description: ID of the instance.reboot_requested activity event.
    BadRequestError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: invalid_request_error
              default: invalid_request_error
            message:
              type: string
              x-speakeasy-error-message: true
            details:
              type: array
              items:
                $ref: '#/components/schemas/ErrorDetail'
    UnauthorizedError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: authentication_error
              default: authentication_error
            message:
              type: string
              x-speakeasy-error-message: true
    ForbiddenError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: forbidden
              default: forbidden
            message:
              type: string
              x-speakeasy-error-message: true
    NotFoundError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: not_found
              default: not_found
            message:
              type: string
              x-speakeasy-error-message: true
    ConflictError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: conflict
              default: conflict
            message:
              type: string
              x-speakeasy-error-message: true
            details:
              type: array
              items:
                $ref: '#/components/schemas/ErrorDetail'
    UnprocessableEntityError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: unprocessable_entity
              default: unprocessable_entity
            message:
              type: string
              x-speakeasy-error-message: true
            details:
              type: array
              items:
                $ref: '#/components/schemas/ErrorDetail'
    RateLimitedError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: rate_limited
              default: rate_limited
            message:
              type: string
              x-speakeasy-error-message: true
    InternalServerError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: api_error
              default: api_error
            message:
              type: string
              x-speakeasy-error-message: true
    ServiceUnavailableError:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - type
            - message
          properties:
            type:
              type: string
              const: service_unavailable
              default: service_unavailable
            message:
              type: string
              x-speakeasy-error-message: true
    ErrorDetail:
      type: object
      required:
        - code
        - message
      properties:
        field:
          type:
            - string
            - 'null'
          description: The field that caused the error (for validation errors)
        code:
          type: string
          description: Specific error code for this detail
        message:
          type: string
          description: Human-readable error message
  securitySchemes:
    bearer_auth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Create an API token using `sf tokens create` or at
        https://sfcompute.com/dashboard/tokens.

````