---
title: "Create a new interface"
method: POST
path: "/api/rest/v1/catalog/{catalogEntityId}/interfaces"
tags: ["Interfaces"]
---

# Create a new interface

`POST /api/rest/v1/catalog/{catalogEntityId}/interfaces`

## Request

- Base URL: `https://app.componecat.ai`
- URL: `https://app.componecat.ai/api/rest/v1/catalog/{catalogEntityId}/interfaces`
- Auth: none required

## Path parameters

- `catalogEntityId` string, uuid, required

## Request body

- CreateCatalogInterfaceRequest: Create interface request body.
  - `name` string, required
  - `kind` string
  - `protocol` string, nullable
  - `url` string, nullable
  - `healthCheckUrl` string, nullable
  - `authMethod` string, nullable
  - `specUrl` string, nullable
  - `labels` string[], nullable
  - `visibility` string
  - `rateLimit` string, nullable
  - `executableName` string, nullable
  - `installMethod` string, nullable
  - `installCommand` string, nullable
  - `version` string, nullable
  - `documentationUrl` string, nullable
  - `sourceUrl` string, nullable
  - `transportType` string, nullable
  - `command` string, nullable
  - `toolCount` union
    - integer
    - string, int32
  - `resourceCount` union
    - integer
    - string, int32
  - `sharePlatform` string, nullable
  - `shareName` string, nullable
  - `shareScope` string, nullable
  - `listingUrl` string, nullable
  - `registryType` string, nullable
  - `packageName` string, nullable
  - `registryUrl` string, nullable

## Response `201`

Created

- RestApiResponseOfCatalogInterfaceDetail: Standard REST API response envelope for a single resource.
  - `data` CatalogInterfaceDetail, required: Interface detail view -- full fields for single-resource responses.
    - `id` string, uuid, required
    - `catalogEntityId` string, uuid, required
    - `name` string, required
    - `kind` string, required
    - `protocol` string, nullable, required
    - `url` string, nullable, required
    - `healthCheckUrl` string, nullable, required
    - `authMethod` string, nullable, required
    - `specUrl` string, nullable, required
    - `labels` string[], required
    - `visibility` string, required
    - `rateLimit` string, nullable, required
    - `organizationId` string, uuid, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `executableName` string, nullable
    - `installMethod` string, nullable
    - `installCommand` string, nullable
    - `version` string, nullable
    - `documentationUrl` string, nullable
    - `sourceUrl` string, nullable
    - `transportType` string, nullable
    - `command` string, nullable
    - `toolCount` union
      - integer
      - string, int32
    - `resourceCount` union
      - integer
      - string, int32
    - `sharePlatform` string, nullable
    - `shareName` string, nullable
    - `shareScope` string, nullable
    - `listingUrl` string, nullable
    - `registryType` string, nullable
    - `packageName` string, nullable
    - `registryUrl` string, nullable

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `422`: Unprocessable Entity
- `429`: Too Many Requests

---

[API](https://skmtc.dev/componecat/apis/componecat-rest-api.md) · [All operations](https://skmtc.dev/componecat/apis/componecat-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/componecat/apis/componecat-rest-api/revisions/6c53d4984720?raw)
