Skip to content
StatusSupportDashboard

Update namespace settings

PUT/v1/data/{namespace}/settings

Update the schema and/or settings for a namespace. Each is replaced in full when provided and left unchanged when omitted. Namespaces whose configuration is managed by SafetyKit cannot be updated through this endpoint.

Path ParametersExpand Collapse
namespace: string

The namespace to ingest data into

Body ParametersJSONExpand Collapse
previous_version: optional number

The version returned by GET (or a prior update). When provided, the update is rejected with 409 if the stored configuration has changed since that read, so a stale sync cannot overwrite a newer update. Strongly recommended for automated schema syncs.

minimum0
schema: optional map[object { belongs_to, content_type, display_hint, 2 more } ]

New schema to store for this namespace. Omit to leave the existing schema unchanged.

belongs_to: optional string

The parent object namespace this field belongs to, creating a parent-child relationship with that namespace.

content_type: optional "image_url" or "video_url" or "audio_url" or 5 more

The type of content (image_url, video_url, audio_url, website_url, datetime, metadata, markdown, or html). When specified as a URL type, SafetyKit will process the URL. Use ‘metadata’ for fields that should be stored but not indexed, and ‘markdown’ or ‘html’ for rich text.

One of the following:
"image_url"
"video_url"
"audio_url"
"website_url"
"datetime"
"metadata"
"markdown"
"html"
display_hint: optional object { hidden, name, type }

Optional hint for how this field should be displayed in the UI

hidden: optional boolean

Hide this field from default UI display.

name: optional string

Display label to show for this field in the UI

type: optional "title" or "subtitle" or "category" or 22 more

The display hint type

One of the following:
"title"
"subtitle"
"category"
"identifier"
"canonical_url"
"status"
"primary_tag_set"
"tag_set"
"timestamp"
"rating"
"summary"
"profile_image"
"primary_image"
"image_set"
"video_set"
"audio_set"
"body"
"thread"
"two_person_chat"
"message"
"profile"
"money"
"location"
"attribute_group"
"attribute"
field_limit: optional number

Maximum amount of this field to include when sending to AI models. For text fields, this is the character limit. For array fields (e.g. image URLs), this is the maximum number of items.

minimum0
exclusiveMinimum
ingest_as: optional "float" or "datetime"

Optional parser to apply before indexing this field.

One of the following:
"float"
"datetime"
settings: optional map[unknown]

Namespace settings to store, replacing existing settings. Omit to leave existing settings unchanged. Configure these values with guidance from SafetyKit.

ReturnsExpand Collapse
namespace: string
status: "updated"
version: number

The configuration version after this update. Send it as previous_version on your next update to detect intervening changes.

Update namespace settings

curl https://api.safetykit.com/v1/data/$NAMESPACE/settings \
    -X PUT \
    -H "Authorization: Bearer $SAFETYKIT_API_KEY"
{
  "namespace": "users",
  "status": "updated",
  "version": 5
}
Returns Examples
{
  "namespace": "users",
  "status": "updated",
  "version": 5
}