WorkOS · Schema
CreateAuthorizationResourceDto
AuthenticationIdentity ProviderSSOSAMLOIDCSCIMDirectory SyncAuthorizationFGAAudit LogsMFAB2B SaaSAgentsMCP
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/CreateAuthorizationResourceDto",
"title": "CreateAuthorizationResourceDto",
"allOf": [
{
"type": "object",
"properties": {
"external_id": {
"type": "string",
"maxLength": 128,
"pattern": "^[\\x00-\\x7F]+$",
"description": "An external identifier for the resource.",
"example": "my-workspace-01"
},
"name": {
"type": "string",
"maxLength": 48,
"description": "A display name for the resource.",
"example": "Acme Workspace"
},
"description": {
"type": [
"string",
"null"
],
"maxLength": 150,
"description": "An optional description of the resource.",
"example": "Primary workspace for the Acme team"
},
"resource_type_slug": {
"type": "string",
"description": "The slug of the resource type.",
"example": "workspace"
},
"organization_id": {
"type": "string",
"description": "The ID of the organization this resource belongs to.",
"example": "org_01EHQMYV6MBK39QC5PZXHY59C3"
}
},
"required": [
"external_id",
"name",
"resource_type_slug",
"organization_id"
]
},
{
"oneOf": [
{
"type": "object",
"not": {
"anyOf": [
{
"properties": {
"parent_resource_id": {
"x-exclude-from-lint": true
}
},
"required": [
"parent_resource_id"
]
},
{
"properties": {
"parent_resource_external_id": {
"x-exclude-from-lint": true
}
},
"required": [
"parent_resource_external_id"
]
},
{
"properties": {
"parent_resource_type_slug": {
"x-exclude-from-lint": true
}
},
"required": [
"parent_resource_type_slug"
]
}
]
}
},
{
"type": "object",
"properties": {
"parent_resource_id": {
"type": [
"string",
"null"
],
"description": "The ID of the parent resource. Mutually exclusive with `parent_resource_external_id` and `parent_resource_type_slug`.",
"example": "authz_resource_01HXYZ123456789ABCDEFGHIJ"
}
},
"required": [
"parent_resource_id"
],
"not": {
"anyOf": [
{
"properties": {
"parent_resource_external_id": {
"x-exclude-from-lint": true
}
},
"required": [
"parent_resource_external_id"
]
},
{
"properties": {
"parent_resource_type_slug": {
"x-exclude-from-lint": true
}
},
"required": [
"parent_resource_type_slug"
]
}
]
}
},
{
"type": "object",
"properties": {
"parent_resource_external_id": {
"type": "string",
"description": "The external ID of the parent resource. Required with `parent_resource_type_slug`. Mutually exclusive with `parent_resource_id`.",
"example": "parent-workspace-01"
},
"parent_resource_type_slug": {
"type": "string",
"description": "The resource type slug of the parent resource. Required with `parent_resource_external_id`. Mutually exclusive with `parent_resource_id`.",
"example": "workspace"
}
},
"required": [
"parent_resource_external_id",
"parent_resource_type_slug"
],
"not": {
"anyOf": [
{
"properties": {
"parent_resource_id": {
"x-exclude-from-lint": true
}
},
"required": [
"parent_resource_id"
]
}
]
}
}
]
}
],
"x-mutually-exclusive-body-groups": {
"parent_resource": {
"optional": true,
"variants": {
"by_id": [
"parent_resource_id"
],
"by_external_id": [
"parent_resource_external_id",
"parent_resource_type_slug"
]
}
}
}
}