---
title: "Issue a new cert"
method: POST
path: "/v8/certs"
tags: ["certs"]
---

# Issue a new cert

`POST /v8/certs`

Issue a new cert

## Query parameters

- `teamId` string
- `slug` string

## Request body

- object
  - `cns` string[] — The common names the cert should be issued for

## Response `200`

- object
  - `id` string, required
  - `createdAt` number, required
  - `expiresAt` number, required
  - `autoRenew` false | true, required
  - `cns` string[], required

## Other responses

- `400` — One of the provided values in the request body is invalid.
- `401` — The request is not authorized.
- `402` — The account is missing a payment so payment method must be updated
- `403` — You do not have permission to access this resource.
- `404`
- `410`
- `449`
- `500`

## Changes

> 39 revisions in range; 24 could not be searched.

- **2026-07-21** `2ae10ee9d21c` — 1 info
  - added the non-success response with the status `410`

[Change history](https://skmtc.dev/vercel/apis/api/changes/v8/certs/post.md)

---

[API](https://skmtc.dev/vercel/apis/api.md) · [All operations](https://skmtc.dev/vercel/apis/api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vercel/api/revisions/4191ba96b0c1/schema)
