Skip to content

Apply a configuration bundle

POST
/orgs/{org}/config/bundle
curl --request POST \
--url https://api.sloose.com/orgs/org_9f3c/config/bundle \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "bundleVersion": 1, "org": { "dateFormat": "DMY", "expressionContext": "example", "aiSamples": "allow" }, "registry": { "version": 1, "modules": [ { "key": "example", "apiName": "example", "label": "example", "singular": "example", "color": "example", "defaultEnabled": true, "uniqueFields": [ "example" ], "defaultDuplicateCheck": { "searchField": "example", "searchMethod": "example", "expression": "example" }, "excludedFields": [ "example" ], "seedMappings": { "additionalProperty": { "mode": "column", "source": "example", "staticValue": "example", "transform": "example", "skip": true, "searchField": "example", "searchMethod": "example", "searchExpression": "example", "patch": { "when": [ "pending" ], "overwrite": "always" } } } } ], "expressionContext": "example", "apiDelayMs": 1, "systemExcludedFields": [ "example" ], "dateFormat": "DMY" }, "fields": { "additionalProperty": [ { "apiName": "example", "description": "example", "format": "example", "examples": [ "example" ], "aliases": [ "example" ], "pii": true, "derived": true, "defaultMapping": { "mode": "column", "source": "example", "staticValue": "example", "transform": "example", "skip": true, "searchField": "example", "searchMethod": "example", "searchExpression": "example", "patch": { "when": [ "pending" ], "overwrite": "always" } }, "excluded": true } ] }, "libraries": [ { "manifest": { "namespace": "example", "version": "example", "scope": "global", "description": "example", "functions": [ { "name": "example", "description": "example", "params": [ { "name": "example", "type": "example", "optional": true, "description": "example" } ], "returns": "example", "examples": [ { "call": "example", "result": "example" } ], "tags": [ "example" ] } ] }, "source": "example" } ], "projects": [ { "name": "example", "description": "example", "config": { "additionalProperty": "example" } } ] }'

Applies a whole configuration repository in one call — registry, annotations, settings, helper libraries and seeded projects. This is what the SDK’s push sends.

A bundle’s projects belong to the whole org, so pushing them is sharing: a plan without shared projects is refused rather than silently importing them as private.

org
required

The org id the session was issued for. A token for one org can never read another.

string
Example
org_9f3c

The org id the session was issued for. A token for one org can never read another.

Media typeapplication/json
object
bundleVersion
required
number
Allowed values: 1
org
object
dateFormat
string
Allowed values: DMY MDY YMD
expressionContext
string
/^[A-Za-z_$][\w$]*$/
aiSamples
string
Allowed values: allow masked deny
registry
required
object
version
integer
modules
required
Array<object>
object
key
required
string
/^[a-z][a-z0-9_]*$/
apiName
required
string
>= 1 characters
label
required
string
>= 1 characters
singular
required
string
/^[A-Za-z_$][\w$]*$/
color
string
defaultEnabled
boolean
uniqueFields
Array<string>
defaultDuplicateCheck
object
searchField
string
searchMethod
string
expression
string
excludedFields
Array<string>
seedMappings
object
key
additional properties
object
mode
string
Allowed values: column static expression search skip
source
string | null
staticValue
string | null
transform
string | null
skip
boolean
searchField
string | null
searchMethod
string | null
searchExpression
string | null
patch
object
when
Array<string>
Allowed values: pending created updated exists skipped filtered guarded dryrun error blocked
overwrite
string
Allowed values: always if-absent
expressionContext
string
/^[A-Za-z_$][\w$]*$/
apiDelayMs
integer
systemExcludedFields
Array<string>
dateFormat
string
Allowed values: DMY MDY YMD
fields
object
key
additional properties
Array<object>
object
apiName
required
string
>= 1 characters
description
string
format
string
examples
Array<string>
aliases
Array<string>
pii
boolean
derived
boolean
defaultMapping
object
mode
string
Allowed values: column static expression search skip
source
string | null
staticValue
string | null
transform
string | null
skip
boolean
searchField
string | null
searchMethod
string | null
searchExpression
string | null
patch
object
when
Array<string>
Allowed values: pending created updated exists skipped filtered guarded dryrun error blocked
overwrite
string
Allowed values: always if-absent
excluded
boolean
libraries
Array<object>
object
manifest
required
object
namespace
required
string
/^[a-z][a-z0-9_]*$/
version
required
string
/^\d+\.\d+\.\d+$/
scope
required
string
Allowed values: global org
description
string
functions
required
Array<object>
object
name
required
string
/^[A-Za-z_$][\w$]*$/
description
required
string
params
required
Array<object>
object
name
required
string
type
required
string
optional
boolean
description
string
returns
required
string
examples
Array<object>
object
call
required
string
result
string
tags
Array<string>
source
required
string
projects
Array<object>
object
name
required
string
>= 1 characters <= 200 characters
description
string
<= 2000 characters
config
required
object
key
additional properties

Applied. Counts of what changed are included, along with the new resolved-config etag.

Media typeapplication/json
object
ok
required
boolean
etag
required
string
key
additional properties
Example
{
"ok": true
}

The request body did not match the schema. issues carries the Zod issue list.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

No bearer, or one that is expired, revoked or no longer resolves to a member.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

The plan cannot share projects (code: FEATURE_SHARED_PROJECTS), the module limit would be exceeded, or the role is too low.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

The bundle names a module or field this org does not have.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}