---
title: "Create a new NVMeoF subsystem"
method: POST
path: "/api/nvmeof/subsystem"
tags: ["NVMe-oF Subsystem"]
---

# Create a new NVMeoF subsystem

`POST /api/nvmeof/subsystem`

## Request body

- object
  - `dhchap_key` string — Subsystem DH-HMAC-CHAP key
  - `gw_group` string — NVMeoF gateway group
  - `max_namespaces` integer — Maximum number of namespaces
  - `network_mask` string[] — Network mask to automatically create listeners
  - `no_group_append` boolean — Do not append gateway group name to the NQN
  - `nqn` string, required — NVMeoF subsystem NQN
  - `port` integer — Port to use for the created listeners
  - `secure_listeners` boolean — Make all the auto-listeners for this subsystem secure
  - `serial_number` string — Subsystem serial number
  - `server_address` string — NVMeoF gateway address
  - `traddr` string — NVMeoF gateway address (deprecated)

## Response `201`

Resource created.

- object

## Other responses

- `202` — Operation is still executing. Please check the task queue.
- `400` — Operation exception. Please check the response body for details.
- `401` — Unauthenticated access. Please login first.
- `403` — Unauthorized access. Please check your permissions.
- `500` — Unexpected error. Please check the response body for the stack trace.

## Changes

- **2026-04-12** `a22268946bcf` — 3 info
  - added the new optional request property `port`
  - added the new optional request property `secure_listeners`
  - added the new optional request property `traddr`
- **2026-03-31** `9cf6ecad921e` — 3 warning
  - removed the request property `port`
  - removed the request property `secure_listeners`
  - removed the request property `traddr`
- **2026-03-27** `5824065b0830` — 4 info
  - added the new optional request property `network_mask`
  - added the new optional request property `port`
  - added the new optional request property `secure_listeners`
  - added the new optional request property `traddr`
- **2026-03-23** `467fa8438858` — 1 breaking, 1 warning
  - the `no_group_append` request property type/format changed from `integer`/`` to `boolean`/``
  - removed the request property `enable_ha`
- **2026-03-17** `72f70029083e` — 1 breaking, 1 info
  - the `no_group_append` request property type/format changed from `boolean`/`` to `integer`/``
  - added the new optional request property `enable_ha`

[Full history](https://skmtc.dev/ceph/apis/ceph-rest-api/changes/api/nvmeof/subsystem/post.md)

---

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