Skip to main content
POST
Create App

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
slug
string
required

1-256 lowercase letters, digits or underscores.

Pattern: ^[a-z0-9_]{1,256}$
Example:

"my_connector"

manifest
AppManifestV2 · object
required

The app's manifest. See AppManifestV2 for its fields.

api_key
string

The key Narrative sends when it calls the app's API. Stored encrypted and never returned.

Response

CreateApp 201 response

The owner's view, tagged type: owned like the AppResponse it is one case of.

id
integer<int64>
required

The app's id. Installations refer to the app by it.

Required range: x >= 1
Example:

42

slug
string
required

1-256 lowercase letters, digits or underscores.

Pattern: ^[a-z0-9_]{1,256}$
Example:

"my_connector"

status
enum<string>
required
  • pending: visible to and installable by the owning company only.
  • active: visible to and installable by every company.
  • archived: visible to nobody.
Available options:
pending,
active,
archived
manifest
AppManifestV2 · object
required

The app's manifest. See AppManifestV2 for its fields.

client_id
string
required

The app's OAuth client id, hex-encoded: the form POST /oauth/token accepts.

Example:

"85b558340b635861575c462a10df3bd5"

created_at
string
required

An ISO-8601 local date-time in UTC, without an offset.

Example:

"2026-09-24T17:21:03.120581"

updated_at
string
required

An ISO-8601 local date-time in UTC, without an offset.

Example:

"2026-09-24T17:21:03.120581"

type
enum<string>
required
Available options:
owned