---
title: "Create config object"
method: POST
path: "/v1/config-objects"
tags: ["Config Objects"]
---

# Create config object

`POST /v1/config-objects`

Creates a new private config object and initial immutable version.

## Request body

- object
  - `type` 'skill' | 'agent' | 'command' | 'tool' | 'mcp' | 'hook' | 'context' | 'custom', required
  - `sourceMode` 'cloud' | 'import' | 'connector', required
  - `pluginIds` string[]
  - `input` object, required
    - `rawSourceText` string
    - `normalizedPayloadJson` object
    - `parserMode` string
    - `schemaVersion` string
    - `metadata` object

## Response `201`

Config object created successfully.

- PluginArchConfigObjectMutationResponse
  - `ok` true, required
  - `item` PluginArchConfigObject, required
    - `id` string, typeid, required — Den TypeID with 'cob_' prefix and a 26-character base32 suffix.
    - `organizationId` string, typeid, required — Den TypeID with 'org_' prefix and a 26-character base32 suffix.
    - `objectType` 'skill' | 'agent' | 'command' | 'tool' | 'mcp' | 'hook' | 'context' | 'custom', required
    - `sourceMode` 'cloud' | 'import' | 'connector', required
    - `title` string, required
    - `description` string, nullable, required
    - `searchText` string, nullable, required
    - `currentFileName` string, nullable, required
    - `currentFileExtension` string, nullable, required
    - `currentRelativePath` string, nullable, required
    - `status` 'active' | 'inactive' | 'deleted' | 'archived' | 'ingestion_error', required
    - `createdByOrgMembershipId` string, typeid, required — Den TypeID with 'om_' prefix and a 26-character base32 suffix.
    - `connectorInstanceId` string, typeid, nullable, required — Den TypeID with 'cin_' prefix and a 26-character base32 suffix.
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `deletedAt` string, date-time, nullable, required
    - `latestVersion` PluginArchConfigObjectVersion, required
      - `id` string, typeid, required — Den TypeID with 'cov_' prefix and a 26-character base32 suffix.
      - `configObjectId` string, typeid, required — Den TypeID with 'cob_' prefix and a 26-character base32 suffix.
      - `schemaVersion` string, nullable, required
      - `normalizedPayloadJson` object, nullable, required
      - `rawSourceText` string, nullable, required
      - `createdVia` 'cloud' | 'import' | 'connector' | 'system', required
      - `createdByOrgMembershipId` string, typeid, nullable, required — Den TypeID with 'om_' prefix and a 26-character base32 suffix.
      - `connectorSyncEventId` string, typeid, nullable, required — Den TypeID with 'cse_' prefix and a 26-character base32 suffix.
      - `sourceRevisionRef` string, nullable, required
      - `isDeletedVersion` boolean, required
      - `createdAt` string, date-time, required

## Other responses

- `400` — The config object creation request was invalid.
- `401` — The caller must be signed in to create config objects.
- `403` — The caller lacks permission to create config objects.

---

[API](https://skmtc.net/openworklabs/apis/den-api.md) · [All operations](https://skmtc.net/openworklabs/apis/den-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openworklabs/den-api/versions/805150503452/schema)
