---
title: "POST /v4/key-value-stores/self"
method: POST
path: "/v4/key-value-stores/self"
tags: ["Key Value Store"]
---

# POST /v4/key-value-stores/self

`POST /v4/key-value-stores/self`

Create a key-value store you own (allowlisted users, X-API-Key). `key` is a suffix; the response returns the canonical, owner-namespaced key used for entry writes, update and delete.

## Request body

- object
  - `key` string, required — Unique human-readable key (alphanumeric, hyphens, underscores). Server-namespaced per owner.
  - `description` string
  - `type` union, required — Semantic type — determines the required JSON shape of entry values
    - string
    - string
    - string
    - string
    - string
    - string
  - `sizeLimit` number — Capped at the caller's quota
  - `publicRead` boolean

## Response `200`

Response for status 200

- object
  - `id` string, required
  - `key` string, required
  - `description` string, required
  - `accessMode` string, required
  - `type` string, required
  - `sizeLimit` number, required
  - `publicRead` boolean, required
  - `ownerAddress` string, required
  - `createdAt` string, required
  - `updatedAt` string, required

---

[API](https://skmtc.dev/merkl/apis/merkl-api.md) · [All operations](https://skmtc.dev/merkl/apis/merkl-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/merkl/merkl-api/revisions/a7e5b9f6fb5f/schema)
