---
title: "Redeploy a preview"
method: POST
path: "/api/v1/apps/previews/{preview_id}/redeploy"
tags: ["Raff Apps"]
---

# Redeploy a preview

`POST /api/v1/apps/previews/{preview_id}/redeploy`

## Request

- Base URL: `https://api.rafftechnologies.com`
- URL: `https://api.rafftechnologies.com/api/v1/apps/previews/{preview_id}/redeploy`
- Auth: API key in header `X-API-Key`

Build and deploy the pull request's latest commit again.

## Path parameters

- `preview_id` string, uuid, required

## Response `200`

Redeploy started

- object
  - `success` boolean
  - `preview` AppPreview
    - `id` string, uuid
    - `service_id` string, uuid
    - `pr_number` integer
    - `pr_title` string
    - `branch` string
    - `head_sha` string
    - `status` 'pending' | 'building' | 'deploying' | 'live' | 'error' | 'paused' | 'deleting' | 'deleted'
    - `status_message` string
    - `url` string
    - `current_deployment_id` string
    - `expires_at` string
    - `created_at` string, date-time
    - `updated_at` string, date-time
  - `deployment_id` string, uuid

## Other responses

- `400`: Invalid request parameters
- `401`: Authentication required
- `404`: Resource not found
- `429`: The preview limit for this app's size is reached

## Changes

- **2026-10-19** `e80a4b1b5024`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rafftechnologies/apis/raff-api/changes/api/v1/apps/previews/:preview_id/redeploy/post.md)

---

[API](https://skmtc.dev/rafftechnologies/apis/raff-api.md) - [All operations](https://skmtc.dev/rafftechnologies/apis/raff-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rafftechnologies/apis/raff-api/revisions/3d30cde0acb4?raw)
