Skip to content

Generate an import plan from a YAML document.

POST
/api/workspace/admin/entity-definitions/import/plan
curl --request POST \
--url https://example.com/api/workspace/admin/entity-definitions/import/plan \
--header 'Content-Type: application/json' \
--data '{ "Yaml": "example", "TargetEntityDefinitionId": "example", "Refinements": [ { "FieldId": "example", "ResolvedEntityDefinitionId": "example" } ], "Security": { "OperationKey": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "UserSlotMappings": { "additionalProperty": "example" }, "ExpectedRowVersion": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" } }'
  • None
access_token
string

Optional access token for clients that cannot set Authorization headers. Prefer Authorization: Bearer <token> when possible.

Request payload to generate an import plan from YAML.

object
Yaml
required

YAML document content.

string
TargetEntityDefinitionId

Target entity definition for update mode; null for create mode.

string
nullable
Refinements

User-provided reference refinements for unresolved dependencies.

Array<object>
nullable

User-provided mapping for a reference field whose target entity was not found.

object
FieldId

Field identifier from YAML.

string
nullable
ResolvedEntityDefinitionId

Mapped entity definition ID; null to skip the field.

string
nullable
Security
required

Planning input for an Entity YAML v8 Security configuration.

object
OperationKey
required

Caller-owned idempotency key reused by apply.

string format: uuid
UserSlotMappings
required

Workspace-local user mappings for portable user slots.

object
key
additional properties
string
ExpectedRowVersion

Expected current Security configuration row version; null only for create mode.

string format: uuid
nullable
Examplegenerated
{
"Yaml": "example",
"TargetEntityDefinitionId": "example",
"Refinements": [
{
"FieldId": "example",
"ResolvedEntityDefinitionId": "example"
}
],
"Security": {
"OperationKey": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"UserSlotMappings": {
"additionalProperty": "example"
},
"ExpectedRowVersion": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
}
}

OK

Media typeapplication/json
object
Data

Root model for an entity definition import plan.

object
Mode
integer format: int32
Allowed values: 0 1
Header

Plan header with entity definition metadata.

object
TargetEntityDefinitionId

Existing entity definition ID for update mode.

string
nullable
TargetEntityDefinitionName

Existing entity definition name for update mode.

string
nullable
IncomingEntityName

Entity name from YAML.

string
nullable
Action
integer format: int32
Allowed values: 0 1 2 3
Status
integer format: int32
Allowed values: 0 1 2
StatusMessage

Explanatory message when status is not OK.

string
nullable
PropertyDiffs

Property differences for update mode.

Array<object>
nullable

Property difference between current and incoming values.

object
PropertyName

Property name.

string
nullable
CurrentValue

Current value (null for create).

string
nullable
IncomingValue

Incoming value from YAML.

string
nullable
Sections

Hierarchical plan sections.

Array<object>
nullable

One section in the import plan (e.g., Data Schema, Statements).

object
SectionKey

Machine-readable section key.

string
nullable
SectionLabel

Human-readable section label.

string
nullable
Items

Plan items within this section.

Array<object>
nullable

One item in the import plan.

object
ItemId

Identifier (YAML ID or existing ID).

string
nullable
ItemKey

Key/Name for display.

string
nullable
ItemDisplayName

Optional display name.

string
nullable
Action
integer format: int32
Allowed values: 0 1 2 3
Status
integer format: int32
Allowed values: 0 1 2
StatusMessage

Explanatory message when status is not OK.

string
nullable
PropertyDiffs

Property differences when action is Update.

Array<object>
nullable

Property difference between current and incoming values.

object
PropertyName

Property name.

string
nullable
CurrentValue

Current value (null for create).

string
nullable
IncomingValue

Incoming value from YAML.

string
nullable
Children
Array<object> recursive
RequiresResolution

Whether the item cannot be applied without an explicit conflict resolution.

boolean
Security
required

Returns a deterministic atomic replacement plan.

object
Kind
string
nullable
OperationKey
string format: uuid
PlanToken
string
nullable
RowVersion
string format: uuid
Changes
Array<object>
nullable

Describes one portable configuration change.

object
Family
string
nullable
Identity
string
nullable
Action
string
nullable
Blockers
Array<object>
nullable

Describes one portable validation diagnostic.

object
Code
string
nullable
Path
string
nullable
Arguments
Array<string>
nullable
CanApply
boolean
Errors
Array<object>
nullable
object
Code
required
string
nullable
Message
required
string
nullable
Target
string
nullable
Field
string
nullable
Metadata
object
key
additional properties
string
nullable
Type
integer format: int32
Allowed values: 0 1 2
Severity
integer format: int32
Allowed values: 0 1 2
Warnings
Array<object>
nullable
object
Code
required
string
nullable
Message
required
string
nullable
Target
string
nullable
Field
string
nullable
Metadata
object
key
additional properties
string
nullable
Type
integer format: int32
Allowed values: 0 1 2
Severity
integer format: int32
Allowed values: 0 1 2
Success
boolean
Example
{
"Data": {
"Mode": 0,
"Header": {
"Action": 0,
"Status": 0
},
"Sections": [
{
"Items": [
{
"Action": 0,
"Status": 0
}
]
}
]
},
"Errors": [
{
"Type": 0,
"Severity": 0
}
],
"Warnings": [
{
"Type": 0,
"Severity": 0
}
]
}

Forbidden

Media typeapplication/json
object
type
string
nullable
title
string
nullable
status
integer format: int32
nullable
detail
string
nullable
instance
string
nullable
key
additional properties
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"detail": "example",
"instance": "example"
}