---
title: force-restart-a-project-daemon-instance
product: vercel
url: /docs/rest-api/daemons/force-restart-a-project-daemon-instance
canonical_url: "https://vercel.com/docs/rest-api/daemons/force-restart-a-project-daemon-instance"
last_updated: 2026-10-19
type: reference
prerequisites:
  []
related:
  - /docs/rest-api
summary: Learn about force-restart-a-project-daemon-instance on Vercel.
install_vercel_plugin: npx plugins add vercel/vercel-plugin
---

# Force restart a project daemon instance

```http
POST /v1/projects/{idOrName}/daemons/{daemonName}/instances/{instanceId}/restart
```

Force restarts the user container of one running daemon instance. The instance's controller stops the current user container and starts a new one from the same configuration, so in-flight requests are interrupted and any state that only lives inside the container is lost. The instance keeps its ID and region. The response returns as soon as the controller accepts the restart, before the new container is running. Only production instances can be restarted. Accepts a Vercel token that can update the project, or a production project OIDC token issued for the same project. No request body or Content-Type header is required.

## Authentication

**bearerToken**: HTTP bearer

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `idOrName` | string | Yes | The unique project identifier or the project name |
| `daemonName` | string. pattern: `^[a-zA-Z0-9_-]+$` | Yes | The name of the daemon that owns the instance |
| `instanceId` | string. pattern: `^dmni_[0-9a-hjkmnp-tv-z]{26}$` | Yes | The ID of the daemon instance whose user container is restarted, for example `dmni_01k7d0q5w3x8y9z0a1b2c3d4e5` |


## Query parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `teamId` | string | No | The Team identifier to perform the request on behalf of. |
| `slug` | string | No | The Team slug to perform the request on behalf of. |


## Example request

### TypeScript

```typescript
const response = await fetch('https://api.vercel.com/v1/projects/idOrName/daemons/daemonName/instances/instanceId/restart?teamId=string&slug=string', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json',
  },
});

const data = await response.json();
console.log(data);
```

### Next.js

```typescript
'use server';

export async function callEndpoint() {
  const response = await fetch('https://api.vercel.com/v1/projects/idOrName/daemons/daemonName/instances/instanceId/restart?teamId=string&slug=string', {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${process.env.VERCEL_ACCESS_TOKEN}`,
      'Content-Type': 'application/json',
    },
    next: { revalidate: 3600 }
  });

  if (!response.ok) {
    throw new Error('Request failed');
  }

  return response.json();
}
```

### cURL

```bash
curl -X POST 'https://api.vercel.com/v1/projects/idOrName/daemons/daemonName/instances/instanceId/restart?teamId=string&slug=string' \
  -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
  -H 'Content-Type: application/json'
```

## Example response

```json
{
  "ok": "false"
}
```

## Responses

### 202: The restart was accepted. The new user container starts asynchronously.

Content-Type: `application/json`

```json
{
  "type": "object",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "enum": [
        false,
        true
      ]
    }
  }
}
```

### 400: One of the provided values in the request query is invalid.

### 401: The request is not authorized.

### 403: You do not have permission to access this resource.

### 404: The daemon has no running production instance with this ID.

### 409: The instance is still starting and cannot be restarted yet.

### 410: No description

### 500: The instance controller did not accept the restart.

---

## Related

- [daemons endpoints](/docs/rest-api#daemons)

- [REST API overview](/docs/rest-api)

- [OpenAPI spec](https://vercel.com/openapi.json) (machine-readable, all endpoints)

---

[View full sitemap](/docs/sitemap)
