---
title: "Stages new redirects for a project."
method: PUT
path: "/v1/bulk-redirects"
tags: ["bulk-redirects"]
---

# Stages new redirects for a project.

`PUT /v1/bulk-redirects`

## Request

- Base URL: `https://api.vercel.com`
- URL: `https://api.vercel.com/v1/bulk-redirects`
- Auth: HTTP bearer

Stages new redirects for a project and returns the new version.

## Query parameters

- `teamId` string
- `slug` string

## Request body

- object
  - `projectId` string, required
  - `teamId` string, required
  - `overwrite` boolean
  - `name` string
  - `redirects` object[]
    - `source` string, required
    - `destination` string, required
    - `statusCode` union
      - number
      - string
    - `permanent` boolean
    - `caseSensitive` boolean
    - `query` boolean
    - `preserveQueryParams` boolean

## Response `200`

- object
  - `alias` string, nullable, required
  - `version` object, required
    - `alias` string: The staging link for previewing redirects in this version.
    - `createdBy` string, required
    - `id` string, required: The unique identifier for the version.
    - `isLive` false | true: Whether this version is currently live in production.
    - `isStaging` false | true: Whether this version has not been promoted to production yet and is not serving end users.
    - `key` string, required: The key of the version. The key may be duplicated across versions if the contents are the same as a different version.
    - `lastModified` number, required
    - `name` string: Optional name for the version. If not provided, defaults to an ISO timestamp string.
    - `redirectCount` number: The number of redirects in this version.

## Other responses

- `400`: One of the provided values in the request body is invalid.
- `401`: The request is not authorized.
- `403`: You do not have permission to access this resource.
- `404`
- `410`
- `500`

## Changes

- **2026-09-30** `099fbe1f521c`: 1 info
  - added the non-success response with the status `404`
- **2026-07-21** `2ae10ee9d21c`: 1 info
  - added the non-success response with the status `410`
- **2026-02-02** `5264f094c3d3`: 1 info
  - added the new optional request property `redirects/items/preserveQueryParams`
- **2026-01-22** `c12186034433`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/vercel/apis/vercel-api/changes/v1/bulk-redirects/put.md)

---

[API](https://skmtc.dev/vercel/apis/vercel-api.md) - [All operations](https://skmtc.dev/vercel/apis/vercel-api/llms.txt) - [OpenAPI document](https://skmtc.dev/vercel/apis/vercel-api/revisions/60686c0e1f6a?raw)
