---
title: "Publish a new component project release as version to the CI/CD catalog"
method: POST
path: "/api/v4/projects/{id}/catalog/publish"
tags: ["ci_catalog"]
---

# Publish a new component project release as version to the CI/CD catalog

`POST /api/v4/projects/{id}/catalog/publish`

## Request

- Base URL: `https://gitlab.com`
- URL: `https://gitlab.com/api/v4/projects/{id}/catalog/publish`
- Auth: none declared

Publishes a release of a catalog resource as version to the CI/CD catalog.

## Path parameters

- `id` string, required

## Request body

- PostApiV4ProjectsIdCatalogPublish: Publish a new component project release as version to the CI/CD catalog
  - `version` string, required: The version of the catalog resource / tag of the release to publish
  - `metadata` object, required: The metadata for the release

## Response `201`

Publish a new component project release as version to the CI/CD catalog

- APIEntitiesCiCatalogResourcesVersion: API_Entities_Ci_Catalog_Resources_Version model
  - `catalog_url` string, required

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `422`: Unprocessable entity

---

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