---
title: "Create a new app"
method: POST
path: "/external-apps"
tags: ["ExternalApps"]
---

# Create a new app

`POST /external-apps`

## Request body

- CreateExternalAppDto
  - `key` string, required — Machine key (e.g., "attio"). Unique per workspace.
  - `name` string, required — Human-readable app name (e.g., "Attio").
  - `appUri` string, uri — App's main URL (e.g., "https://attio.com").
  - `logoUri` string, uri
  - `tenantId` string

## Response `200`

- ExternalAppDto
  - `id` string, required
  - `key` string, required
  - `isReadOnly` boolean, required
  - `isPublic` boolean
  - `isConnected` boolean
  - `uuid` string, required
  - `name` string, required
  - `appUri` string, uri, required
  - `logoUri` string, uri, required
  - `defaultConnectorId` string, required
  - `basePackageId` string
  - `categories` string[], required
  - `popularity` number, required
  - `readmeSlug` string
  - `hasAuth` boolean
  - `hasData` boolean
  - `hasFreeTestAccount` boolean, nullable
  - `freeTestAccountGuide` string
  - `freeTestAccountGuideVerifiedAt` string, date-time, nullable
  - `openapiSpecs` object[]
    - `name` string
    - `sourceUri` string
  - `tenantId` string

---

[API](https://skmtc.net/integration/apis/membrane-api.md) · [All operations](https://skmtc.net/integration/apis/membrane-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/integration/membrane-api/revisions/1db9c5a3d78c/schema)
