Skip to content

Check a system name

POST
/systems:checkName
curl --request POST \
--url https://example.com/api/v1/systems:checkName \
--header 'Content-Type: application/json' \
--data '{ "location": "example", "name": "example", "parent": "example" }'

Reports whether a proposed name is a valid slug and currently free within the given placement (parent wins over location; neither means the root/unplaced bucket). Advisory (Save is still gated by the unique constraint). Gated by system:update.

Media type application/json
object
$schema

A URL to the JSON Schema for this object.

string format: uri
location

The location (by name or uuid) the entity would be placed at, if any and if unparented; ignored by the locations check

string
name
required

The proposed name to check

string
parent

The parent (by name or uuid) the entity would be created under, if any; omit for a root/unplaced check

string

OK

Media type application/json
object
$schema

A URL to the JSON Schema for this object.

string format: uri
available
required

Whether the name is free within the checked placement (parent/location); a name taken elsewhere in the fleet is still available here

boolean
reason

Human explanation when not valid or not available

string
valid
required

Whether the name matches the slug rule

boolean
Example
{
"$schema": "/api/v1/schemas/CheckNameOutputBody.json"
}

Error

Media type application/problem+json
object
$schema

A URL to the JSON Schema for this object.

string format: uri
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object> | null
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank
Example
{
"$schema": "/api/v1/schemas/ErrorModel.json",
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}