---
title: "POST /v1/storages"
method: POST
path: "/v1/storages"
tags: ["Storages"]
---

# POST /v1/storages

`POST /v1/storages`

## Request

- The document declares no server URL.
- Auth: none declared

Register a storage device for management.

## Request body

- union
  - object
    - `host` string, required
    - `port` string, required
    - `username` string, required
    - `password` string, required
    - `name` string
    - `description` string
    - `vendor` string, required
    - `model` string, required
    - `rest` RestAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
    - `ssh` SSHAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
      - `pub_key` string, required
      - `pub_key_type` 'ed25519' | 'ecdsa' | 'rsa', required
    - `cli` CLIAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
    - `smis` SMISAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
      - `namespace` string
    - `extra_attributes` object
  - object
    - `host` string, required
    - `port` string, required
    - `username` string, required
    - `password` string, required
    - `pub_key` string, required
    - `pub_key_type` 'ed25519' | 'ecdsa' | 'rsa', required
    - `name` string
    - `description` string
    - `vendor` string, required
    - `model` string, required
    - `rest` RestAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
    - `ssh` SSHAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
      - `pub_key` string, required
      - `pub_key_type` 'ed25519' | 'ecdsa' | 'rsa', required
    - `cli` CLIAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
    - `smis` SMISAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
      - `namespace` string
    - `extra_attributes` object
  - object
    - `host` string, required
    - `port` string
    - `username` string, required
    - `password` string, required
    - `name` string
    - `description` string
    - `vendor` string, required
    - `model` string, required
    - `rest` RestAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
    - `ssh` SSHAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
      - `pub_key` string, required
      - `pub_key_type` 'ed25519' | 'ecdsa' | 'rsa', required
    - `cli` CLIAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
    - `smis` SMISAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
      - `namespace` string
    - `extra_attributes` object
  - object
    - `host` string, required
    - `port` string
    - `username` string, required
    - `password` string, required
    - `namespace` string
    - `name` string
    - `description` string
    - `vendor` string, required
    - `model` string, required
    - `rest` RestAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
    - `ssh` SSHAccessInfoRegistry
      - `host` string, required
      - `port` string, required
      - `username` string, required
      - `password` string, required
      - `pub_key` string, required
      - `pub_key_type` 'ed25519' | 'ecdsa' | 'rsa', required
    - `cli` CLIAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
    - `smis` SMISAccessInfoRegistry
      - `host` string, required
      - `port` string
      - `username` string, required
      - `password` string, required
      - `namespace` string
    - `extra_attributes` object

## Response `200`

Accepted, items added to the infrastructure management

- StorageBackendResponse
  - `id` string
  - `name` string
  - `description` string
  - `vendor` string
  - `model` string
  - `status` string
  - `firmware` string
  - `serial_number` string
  - `location` string
  - `created_at` string
  - `updated_at` string
  - `sync_status` 'SYNCED' | 'SYNCING'
  - `total_capacity` integer
  - `used_capacity` integer
  - `free_capacity` integer

## Other responses

- `400`: BadRequest
- `401`: NotAuthorized
- `403`: Forbidden
- `409`: An item already exists
- `500`: An unexpected error occured.

## Changes

- **2021-02-02** `97ad4728b0b0`: 3 info
  - added the new optional request property `cli`
  - added the new optional request property `smis`
  - added `#/components/schemas/CLIAccessInfoRegistry, #/components/schemas/SMISAccessInfoRegistry` to the request body `anyOf` list
- **2020-07-29** `d529ded8b1d2`: 4 warning, 3 info
  - removed the request property `host`
  - removed the request property `password`
  - removed the request property `port`
  - removed the request property `username`
  - …3 more
- **2020-06-22** `82d18ce56636`: 1 info
  - added the optional property `sync_status` to the response with the `200` status
- **2020-06-22** `e50f7d699db5`: 10 breaking, 15 info
  - removed the required property `code` from the response with the `400` status
  - removed the required property `code` from the response with the `401` status
  - removed the required property `code` from the response with the `403` status
  - removed the required property `code` from the response with the `409` status
  - …21 more
- **2020-06-22** `0fdcb8a77d6a`: 20 breaking, 5 warning, 10 info
  - added the new required request property `host`
  - added the new required request property `password`
  - added the new required request property `port`
  - added the new required request property `username`
  - …31 more

[Operation history](https://skmtc.dev/sodafoundation/apis/soda-infrastructure-management-api/changes/v1/storages/post.md)

---

[API](https://skmtc.dev/sodafoundation/apis/soda-infrastructure-management-api.md) - [All operations](https://skmtc.dev/sodafoundation/apis/soda-infrastructure-management-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sodafoundation/apis/soda-infrastructure-management-api/revisions/b2017613d719?raw)
