BCMS
This is OpenAPI documentation for the BCMS REST API. If JavaScript code base is used to communicate with the BCMS API, it is recommended to use provided tools like @becomes/cms-client, but if custom implementation is required, this documentation will describe all REST routes.
Select a server to which requests will be sent.
In development mode, any string can be used as OTP code. In production, OTP code is not accessible because of predefined allowed callback URLs for specified instance. If in production, access and refresh tokens must be obtained directly from the BCMS UI after successful login.
{
otp: string
}
Response
{
accessToken: string
refreshToken: string
}
It is important to know that user ID and refresh token must be paired, which means that specified refresh token belongs to specified user.
Path parameters
User ID
Response
{
accessToken: string
}
Logout specified user.
After calling this method, specified refresh token will be invalidated (deleted) for specified user.
Path parameters
User ID
Response
{
ok: boolean
}
User
Get current user
Which user will be returned is determent using access token.
Response
{
item: {
( BCMSProtectedUser )
_id: string
createdAt: number
updateAt?: number
username: string
email: string
roles: [
( JWTRole )
{
name: string [ADMIN | USER]
permissions: [
( JWTPermission )
{
name: string [READ | WRITE | DELETE | EXECUTE]
}
]
}
]
customPool: {
( BCMSUserCustomPool )
personal: {
( BCMSUserPersonal )
firstName: string
lastName: string
avatarUri: string
}
address: {
( BCMSUserAddress )
country?: string
city?: string
state?: string
zip?: string
street?: {
name?: string
number?: string
}
}
policy: {
( BCMSUserPolicy )
media: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
templates: [
allOf ((
{
_id: string
} and ( BCMSUserPolicyCRUD )
))
]
plugins?: [
allOf ((
{
name: string
} and ( BCMSUserPolicyCRUD )
))
]
}
}
}
}
Update user
Only user with an ADMIN role is able to call this endpoint.
{
( BCMSUserUpdateData )
_id: string
customPool?: {
policy?: {
media?: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
( BCMSUserPolicyCRUD )
templates?: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
webhooks?: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
plugins?: [
allOf ((
( BCMSUserPolicyCRUD ) and {
name: string
}
))
]
}
}
}
Response
{
item: {
( BCMSProtectedUser )
_id: string
createdAt: number
updateAt?: number
username: string
email: string
roles: [
( JWTRole )
{
name: string [ADMIN | USER]
permissions: [
( JWTPermission )
{
name: string [READ | WRITE | DELETE | EXECUTE]
}
]
}
]
customPool: {
( BCMSUserCustomPool )
personal: {
( BCMSUserPersonal )
firstName: string
lastName: string
avatarUri: string
}
address: {
( BCMSUserAddress )
country?: string
city?: string
state?: string
zip?: string
street?: {
name?: string
number?: string
}
}
policy: {
( BCMSUserPolicy )
media: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
templates: [
allOf ((
{
_id: string
} and ( BCMSUserPolicyCRUD )
))
]
plugins?: [
allOf ((
{
name: string
} and ( BCMSUserPolicyCRUD )
))
]
}
}
}
}
Get all users
Response
{
items: [
( BCMSProtectedUser )
{
_id: string
createdAt: number
updateAt?: number
username: string
email: string
roles: [
( JWTRole )
{
name: string [ADMIN | USER]
permissions: [
( JWTPermission )
{
name: string [READ | WRITE | DELETE | EXECUTE]
}
]
}
]
customPool: {
( BCMSUserCustomPool )
personal: {
( BCMSUserPersonal )
firstName: string
lastName: string
avatarUri: string
}
address: {
( BCMSUserAddress )
country?: string
city?: string
state?: string
zip?: string
street?: {
name?: string
number?: string
}
}
policy: {
( BCMSUserPolicy )
media: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
templates: [
allOf ((
{
_id: string
} and ( BCMSUserPolicyCRUD )
))
]
plugins?: [
allOf ((
{
name: string
} and ( BCMSUserPolicyCRUD )
))
]
}
}
}
]
}
Get a specific user
Path parameters
User ID
Response
{
item: {
( BCMSProtectedUser )
_id: string
createdAt: number
updateAt?: number
username: string
email: string
roles: [
( JWTRole )
{
name: string [ADMIN | USER]
permissions: [
( JWTPermission )
{
name: string [READ | WRITE | DELETE | EXECUTE]
}
]
}
]
customPool: {
( BCMSUserCustomPool )
personal: {
( BCMSUserPersonal )
firstName: string
lastName: string
avatarUri: string
}
address: {
( BCMSUserAddress )
country?: string
city?: string
state?: string
zip?: string
street?: {
name?: string
number?: string
}
}
policy: {
( BCMSUserPolicy )
media: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
templates: [
allOf ((
{
_id: string
} and ( BCMSUserPolicyCRUD )
))
]
plugins?: [
allOf ((
{
name: string
} and ( BCMSUserPolicyCRUD )
))
]
}
}
}
}
Get number of users
Response
{
count: number
}
Template
Create a template
{
label: string
desc: string
singleEntry: boolean
}
Response
{
item: {
( BCMSTemplate )
_id: string
createdAt: number
updatedAt: number
cid: string
name: string
label: string
desc: string
userId: string
singleEntry: boolean
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Update a template
{
( BCMSTemplateUpdateData )
_id: string
label?: string
desc?: string
singleEntry?: boolean
propChanges?: [
( BCMSPropChange )
{
add?: {
( BCMSPropChangeAdd )
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
remove?: string
update?: {
( BCMSPropChangeUpdate )
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
}
]
}
Response
{
item: {
( BCMSTemplate )
_id: string
createdAt: number
updatedAt: number
cid: string
name: string
label: string
desc: string
userId: string
singleEntry: boolean
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Get all templates
Response
{
items: [
( BCMSTemplate )
{
_id: string
createdAt: number
updatedAt: number
cid: string
name: string
label: string
desc: string
userId: string
singleEntry: boolean
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
Get all templates with specified IDs
Headers
Get templates with specified IDs. IDs should be split by -
character.
Response
{
items: [
( BCMSTemplate )
{
_id: string
createdAt: number
updatedAt: number
cid: string
name: string
label: string
desc: string
userId: string
singleEntry: boolean
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
Get number of templates
Response
{
count: number
}
Convert type template
Path parameters
Template ID
Convert in type
Response
{
items: [
( BCMSTypeConverterResultItem )
{
outputFile: string
content: string
}
]
}
Get a specific template
Path parameters
Template ID
Response
{
item: {
( BCMSTemplate )
_id: string
createdAt: number
updatedAt: number
cid: string
name: string
label: string
desc: string
userId: string
singleEntry: boolean
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Delete a template
This route has side effect! When template is deleted, all entries which belong to specified template will also be deleted.
Path parameters
Template ID
Response
{
( BCMSSuccessResponse )
message: string [Success.]
}
Group
Create a group
{
( BCMSGroupAddData )
label: string
desc: string
}
Response
{
item: {
( BCMSGroup )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Update a group
{
( BCMSGroupUpdateData )
_id: string
label?: string
desc?: string
propChanges?: [
( BCMSPropChange )
{
add?: {
( BCMSPropChangeAdd )
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
remove?: string
update?: {
( BCMSPropChangeUpdate )
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
}
]
}
Response
{
item: {
( BCMSGroup )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Get information about where is specified group used.
Path parameters
Group ID
Response
{
groupIds: [
( BCMSIdAndCidGroup )
{
_id: string
cid: string
}
]
templateIds: [
( BCMSIdAndCidGroup )
{
_id: string
cid: string
}
]
widgetIds: [
( BCMSIdAndCidGroup )
{
_id: string
cid: string
}
]
}
Get all groups
Response
{
items: [
( BCMSGroup )
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
Get all groups as lite models.
Response
{
items: [
( BCMSGroupLite )
{
cid: string
name: string
label: string
desc: string
propsCount: number
}
]
}
Get all groups with specified IDs.
Headers
IDs string. IDs should be split by -
character.
Response
{
items: [
( BCMSGroup )
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
Get number of groups
Response
{
count: number
}
Convert type group
Path parameters
Group ID
Convert in type
Response
{
items: [
( BCMSTypeConverterResultItem )
{
outputFile: string
content: string
}
]
}
Get a specific group
Path parameters
Group ID
Response
{
item: {
( BCMSGroup )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Delete a group.
Type Converter
Convert all types from template, group and widget
Response
{
items: [
( BCMSTypeConverterResultItem )
{
outputFile: string
content: string
}
]
}
Widget
Create a widget
{
( BCMSWidgetCreateData )
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
}
Response
{
item: {
( BCMSWidget )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Update a widget
{
( BCMSWidgetUpdateData )
_id: string
label?: string
desc?: string
previewImage?: string
previewScript?: string
previewStyle?: string
propChanges?: [
( BCMSPropChange )
{
add?: {
( BCMSPropChangeAdd )
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
remove?: string
update?: {
( BCMSPropChangeUpdate )
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
}
]
}
Response
{
item: {
( BCMSWidget )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Get information where is specified widget used.
Path parameters
Widget Id
Response
{
entryIds: [
allOf ((
( BCMSIdAndCidGroup ) and {
tid: string
}
))
]
}
Get all widgets
Response
{
items: [
( BCMSWidget )
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
Get widgets with specified IDs
Headers
IDs string. IDs should be split by -
character.
Response
{
items: [
( BCMSWidget )
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
Get number of widgets
Response
{
count: number
}
Convert type widget
Path parameters
Widget ID
Convert in type
Response
{
items: [
( BCMSTypeConverterResultItem )
{
outputFile: string
content: string
}
]
}
Get a specific widget.
Path parameters
Widget ID
Response
{
item: {
( BCMSWidget )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Delete a widget
Entry
Create an entry
Path parameters
ID of the template to which entry will be added.
{
( BCMSEntryCreateData )
templateId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
Response
{
item: {
( BCMSEntry )
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
}
Update entry
Path parameters
ID of the template to which specified entry belongs.
{
( BCMSEntryUpdateData )
_id: string
templateId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
Response
{
item: {
( BCMSEntry )
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
}
Get all entries with specified IDs as lite models.
Headers
IDs string. IDs should be split by -
character.
Response
{
items: [
( BCMSEntry )
{
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
]
}
Get all entries for specified template.
Path parameters
ID of the template for which entries will be returned.
Response
{
items: [
( BCMSEntry )
{
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
]
}
Get all entries for specific template with parsed model.
Path parameters
ID of the template for which entries will be returned.
Response
{
items: [
( BCMSEntryParsed )
{
_id: string
createdAt: number
updatedAt: number
templateId: string
userId: string
status: string
meta: [
( BCMSEntryParsedMeta )
{
<lng>: [
( BCMSPropParsed )
{
<name>: [
( BCMSPropDataParsed )
oneOf ((
string or [
string
] or boolean or [
boolean
] or number or [
number
] or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerDataParsed ) or [
( BCMSPropGroupPointerDataParsed )
] or ( BCMSPropWidgetDataParsed ) or ( BCMSPropMediaDataParsed ) or [
( BCMSPropMediaDataParsed )
] or {
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
( BCMSPropDataParsed )
}
))
]
}
]
}
]
}
]
}
Get all entries for specified template as lite models.
Path parameters
ID of the template for which entries will be returned.
Response
{
items: [
( BCMSEntryLite )
{
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
]
}
Get number of entries for specified template
Path parameters
ID of the template for which entry count will be returned.
Response
{
count: number
}
Get a specified entry for specified template as parsed model.
Path parameters
ID of the template to which entry belongs.
Entry ID
Response
{
item: {
( BCMSEntryParsed )
_id: string
createdAt: number
updatedAt: number
templateId: string
userId: string
status: string
meta: [
( BCMSEntryParsedMeta )
{
<lng>: [
( BCMSPropParsed )
{
<name>: [
( BCMSPropDataParsed )
oneOf ((
string or [
string
] or boolean or [
boolean
] or number or [
number
] or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerDataParsed ) or [
( BCMSPropGroupPointerDataParsed )
] or ( BCMSPropWidgetDataParsed ) or ( BCMSPropMediaDataParsed ) or [
( BCMSPropMediaDataParsed )
] or {
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
( BCMSPropDataParsed )
}
))
]
}
]
}
]
}
}
Get a specified entry for specified template as lite model.
Path parameters
ID of the template to which entry belongs.
Entry ID
Response
{
item: {
( BCMSEntryLite )
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
}
Convert type entry
Path parameters
Template ID
Entry ID
Convert in type
Response
{
items: [
( BCMSTypeConverterResultItem )
{
outputFile: string
content: string
}
]
}
Get a specified entry for specified template.
Path parameters
ID of the template to which entry belongs.
Entry ID
Response
{
item: {
( BCMSEntry )
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
}
Delete an entry of specified template.
Path parameters
ID of the template to which entry belongs.
Entry ID
Response
{
( BCMSSuccessResponse )
message: string [Success.]
}
Media
Create a directory
Directory is a special type of media which can have reference to child media.
{
( BCMSMediaAddDirData )
name: string
parentId?: string
}
Response
{
item: {
( BCMSMedia )
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
}
Create a file
Queries
ID of the media with type DIR
to which file will be added. If not provided, file will be added to the root.
{
media: string [binary]
}
Response
{
item: {
( BCMSMedia )
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
}
Update media
{
( BCMSMediaUpdateData )
_id: string
rename?: string
moveTo?: string
}
Response
{
updatedKey: {
( BCMSMedia )
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
}
Get all media
Response
{
items: [
( BCMSMedia )
{
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
]
}
Get all media aggregated.
Response
{
items: [
( BCMSMediaAggregate )
{
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
path: string
isInRoot: boolean
( BCMSMediaAggregate )
}
]
}
Get all media of specified parent media.
Path parameters
ID of the parent media.
Response
{
items: [
( BCMSMedia )
{
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
]
}
Get all media with specified IDs.
Headers
IDs string. IDs should be split by -
character.
Response
{
items: [
( BCMSMedia )
{
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
]
}
Get number of media
Response
{
count: number
}
Get a binary data for specified media.
If specified media is a directory, error will be thrown.
Path parameters
Media ID
Response
string [binary]
Get specified size for media of type IMG
.
Path parameters
Media ID
Response
string [binary]
Get a binary data for specified media with access token in query.
Path parameters
Media ID
Queries
Access token
Response
string [binary]
Get a thumbnail of a media with type VID
If specified media is not video, error will be thrown.
Path parameters
Media ID
Queries
Access token
Response
string [binary]
Get a binary data for specified media of type IMG
and specified size, with access token in query.
Path parameters
Media ID
Queries
Access token
Response
string [binary]
Get specified media aggregated.
Path parameters
Media ID
Response
{
item: {
( BCMSMediaAggregate )
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
path: string
isInRoot: boolean
( BCMSMediaAggregate )
}
}
Move media
{
( BCMSMediaMoveData )
_id: string
moveTo: string
}
Response
{
item: {
( BCMSMedia )
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
}
Duplicate media
{
( BCMSMediaDuplicateData )
_id: string
duplicateTo: string
}
Response
{
item: {
( BCMSMedia )
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
}
Get a media
Path parameters
Media ID
Response
{
item: {
( BCMSMedia )
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
}
Delete a media
This route has side effects! If specified media is of type DIR
, all child media will also be deleted.
Path parameters
Media ID
Response
{
( BCMSSuccessResponse )
message: string [Success.]
}
Api
Get access list for specified API Key.
Response
{
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
Create an API key
{
( BCMSApiKeyAddData )
name: string
desc: string
blocked: boolean
access: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
Response
{
key: {
( BCMSApiKey )
_id: string
createdAt: number
updatedAt: number
userId: string
name: string
desc: string
blocked: boolean
secret: string
access: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
}
Update an API key
{
( BCMSApiKeyUpdateData )
_id: string
name?: string
desc?: string
blocked?: boolean
access?: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
Response
{
updatedKey: {
( BCMSApiKey )
_id: string
createdAt: number
updatedAt: number
userId: string
name: string
desc: string
blocked: boolean
secret: string
access: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
}
Get all API keys
Response
[
( BCMSMedia )
{
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
]
Get number of API keys
Response
number
Get an API key
Path parameters
API key ID
Response
{
key: {
( BCMSApiKey )
_id: string
createdAt: number
updatedAt: number
userId: string
name: string
desc: string
blocked: boolean
secret: string
access: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
}
Delete an API key
Language
Create a language
{
( BCMSLanguageAddData )
code: string
name: string
nativeName: string
}
Response
{
item: {
( BCMSLanguage )
_id: string
createdAt: number
updatedAt: number
userId: string
code: string
name: string
nativeName: string
def: boolean
}
}
Get all languages
Response
{
items: [
( BCMSLanguage )
{
_id: string
createdAt: number
updatedAt: number
userId: string
code: string
name: string
nativeName: string
def: boolean
}
]
}
Get number of languages
Response
{
count: number
}
Get a language
Path parameters
Language ID
Response
{
item: {
( BCMSLanguage )
_id: string
createdAt: number
updatedAt: number
userId: string
code: string
name: string
nativeName: string
def: boolean
}
}
Delete a language
Function
Get all available function
Response
{
name: string
public: boolean
}
Execute a function
Path parameters
Name of the function to execute.
Response
{
success: boolean
result: {
}
}
Status
Create a status
{
( BCMSStatusCreateData )
label: string
color?: string
}
Response
{
item: {
( BCMSStatus )
_id: string
createdAt: number
updatedAt: number
label: string
name: string
color: string
}
}
Update a status
{
( BCMSStatusUpdateData )
_id: string
label?: string
color?: string
}
Response
{
item: {
( BCMSStatus )
_id: string
createdAt: number
updatedAt: number
label: string
name: string
color: string
}
}
Get all statuses
Response
{
items: [
( BCMSStatus )
{
_id: string
createdAt: number
updatedAt: number
label: string
name: string
color: string
}
]
}
Get number of statuses
Response
{
count: number
}
Get a status
Path parameters
Status ID
Response
{
item: {
( BCMSStatus )
_id: string
createdAt: number
updatedAt: number
label: string
name: string
color: string
}
}
Delete a status
Template Organizer
Create a template organizer
{
( BCMSTemplateOrganizerCreateData )
label: string
parentId?: string
templateIds: [
string
]
}
Response
{
item: {
( BCMSTemplateOrganizer )
_id: string
createdAt: number
updatedAt: number
parentId?: string
label: string
name: string
templateIds: [
string
]
}
}
Update a template organizer
{
( BCMSTemplateOrganizerUpdateData )
_id: string
parentId?: string
label?: string
templateIds?: [
string
]
}
Response
{
item: {
( BCMSTemplateOrganizer )
_id: string
createdAt: number
updatedAt: number
parentId?: string
label: string
name: string
templateIds: [
string
]
}
}
Get all templates organizers
Response
{
items: [
( BCMSTemplateOrganizer )
{
_id: string
createdAt: number
updatedAt: number
parentId?: string
label: string
name: string
templateIds: [
string
]
}
]
}
Get all templates organizers with specified IDs
Headers
IDs string. IDs should be split by -
character.
Response
{
items: [
( BCMSTemplateOrganizer )
{
_id: string
createdAt: number
updatedAt: number
parentId?: string
label: string
name: string
templateIds: [
string
]
}
]
}
Get a template organizer
Path parameters
Template Organizer ID
Response
{
item: {
( BCMSTemplateOrganizer )
_id: string
createdAt: number
updatedAt: number
parentId?: string
label: string
name: string
templateIds: [
string
]
}
}
Delete a template organizer
Path parameters
Template Organizer ID
Response
{
( BCMSSuccessResponse )
message: string [Success.]
}
Color
Create color
{
( BCMSColorCreateData )
label: string
value: string
source: {
id?: string
type?: string
}
}
Response
{
item: {
( BCMSColor )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
value: string
userId: string
source: {
( BCMSColorSource )
_id?: string
type: string
}
}
}
Update color
{
( BCMSColorUpdateData )
_id: string
label?: string
value?: string
}
Response
{
item: {
( BCMSGroup )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
}
Get all colors
Response
{
items: [
( BCMSColor )
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
value: string
userId: string
source: {
( BCMSColorSource )
_id?: string
type: string
}
}
]
}
Get all colors with specified IDs
Headers
Get colors with specified IDs. IDs should be split by -
character.
Response
{
items: [
( BCMSColor )
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
value: string
userId: string
source: {
( BCMSColorSource )
_id?: string
type: string
}
}
]
}
Get number of colors
Response
{
count: number
}
Get a specific color
Path parameters
Color ID
Response
{
item: {
( BCMSColor )
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
value: string
userId: string
source: {
( BCMSColorSource )
_id?: string
type: string
}
}
}
Delete color
Tag
Create tag
{
( BCMSTagCreateData )
value: string
}
Response
{
item: {
( BCMSTag )
_id: string
createdAt: number
updateAt?: number
cid: string
value: string
}
}
Update tag
{
( BCMSTagUpdateData )
_id: string
value: string
}
Response
{
item: {
( BCMSTag )
_id: string
createdAt: number
updateAt?: number
cid: string
value: string
}
}
Get all tags
Response
{
items: [
( BCMSTag )
{
_id: string
createdAt: number
updateAt?: number
cid: string
value: string
}
]
}
Get all tags with specified IDs
Headers
Get colors with specified IDs. IDs should be split by -
character.
Response
{
items: [
( BCMSTag )
{
_id: string
createdAt: number
updateAt?: number
cid: string
value: string
}
]
}
Get a specific tag from value
Path parameters
Set value tag
Response
{
item: {
( BCMSTag )
_id: string
createdAt: number
updateAt?: number
cid: string
value: string
}
}
Get a specific tag
Path parameters
Tag ID
Response
{
item: {
( BCMSTag )
_id: string
createdAt: number
updateAt?: number
cid: string
value: string
}
}
Delete tag
API key has changed
This event is triggered when something is changed with API keys. Event data will contain 2 properties:
t
- Type of the event/change.a
- Holds the ID of the API key which was changed.
{
t: string [UPDATE | REMOVE]
a: string
}
No logs yet... Logs will be available were when event is received.
Entry has changed
This event is triggered when something is changed with Entries. Event data will contain 3 properties:
t
- Type of the event/change.e
- Holds the ID of the entry which was changed.tm
- Holds the ID of the template to which entry belongs.
{
t: string [UPDATE | REMOVE]
e: string
tm: string
}
No logs yet... Logs will be available were when event is received.
Group has changed
This event is triggered when something is changed with Groups. Event data will contain 2 properties:
t
- Type of the event/change.g
- Holds the ID of the group which was changed.
{
t: string [UPDATE | REMOVE]
g: string
}
No logs yet... Logs will be available were when event is received.
Language has changed
This event is triggered when something is changed with Languages. Event data will contain 2 properties:
t
- Type of the event/change.l
- Holds the ID of the language which was changed.
{
t: string [UPDATE | REMOVE]
l: string
}
No logs yet... Logs will be available were when event is received.
Media has changed
This event is triggered when something is changed with Media. Event data will contain 2 properties:
t
- Type of the event/change.m
- Holds the ID of the media which was changed.
{
t: string [UPDATE | REMOVE]
m: string
}
No logs yet... Logs will be available were when event is received.
Status has changed
This event is triggered when something is changed with Statuses. Event data will contain 2 properties:
t
- Type of the event/change.s
- Holds the ID of the status which was changed.
{
t: string [UPDATE | REMOVE]
s: string
}
No logs yet... Logs will be available were when event is received.
Template has changed
This event is triggered when something is changed with Templates. Event data will contain 2 properties:
t
- Type of the event/change.tm
- Holds the ID of the template which was changed.
{
t: string [UPDATE | REMOVE]
tm: string
}
No logs yet... Logs will be available were when event is received.
Template organizer has changed
This event is triggered when something is changed with Template organizers. Event data will contain 2 properties:
t
- Type of the event/change.to
- Holds the ID of the template organizer which was changed.
{
t: string [UPDATE | REMOVE]
to: string
}
No logs yet... Logs will be available were when event is received.
User has changed
This event is triggered when something is changed with Users. Event data will contain 2 properties:
t
- Type of the event/change.u
- Holds the ID of the user which was changed.
{
t: string [UPDATE | REMOVE]
u: string
}
No logs yet... Logs will be available were when event is received.
Widget has changed
This event is triggered when something is changed with Widgets. Event data will contain 2 properties:
t
- Type of the event/change.w
- Holds the ID of the widget which was changed.
{
t: string [UPDATE | REMOVE]
w: string
}
No logs yet... Logs will be available were when event is received.
Components
BCMSApiKey
{
_id: string
createdAt: number
updatedAt: number
userId: string
name: string
desc: string
blocked: boolean
secret: string
access: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
BCMSApiKeyAccess
{
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
BCMSApiKeyAddData
{
name: string
desc: string
blocked: boolean
access: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
BCMSApiKeyRequest
{
payload: {
}
query: {
}
}
BCMSApiKeyUpdateData
{
_id: string
name?: string
desc?: string
blocked?: boolean
access?: {
( BCMSApiKeyAccess )
templates: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
functions: [
{
name: string
}
]
}
}
BCMSColor
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
value: string
userId: string
source: {
( BCMSColorSource )
_id?: string
type: string
}
}
BCMSColorCreateData
{
label: string
value: string
source: {
id?: string
type?: string
}
}
BCMSColorSource
{
_id?: string
type: string
}
BCMSColorUpdateData
{
_id: string
label?: string
value?: string
}
BCMSEntry
{
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
BCMSEntryContent
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
BCMSEntryContentNode
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
BCMSEntryContentNodeHeadingAttr
{
level: number
}
BCMSEntryContentNodeLinkAttr
{
href: string
target: string
}
BCMSEntryContentNodeMarker
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
BCMSEntryContentNodeMarkerType
string [bold | italic | underline | stripe | link]
BCMSEntryContentNodeType
string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
BCMSEntryCreateData
{
templateId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
BCMSEntryLite
{
_id: string
createdAt: number
updatedAt: number
cid: string
templateId: string
userId: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
BCMSEntryMeta
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
BCMSEntryParsed
{
_id: string
createdAt: number
updatedAt: number
templateId: string
userId: string
status: string
meta: [
( BCMSEntryParsedMeta )
{
<lng>: [
( BCMSPropParsed )
{
<name>: [
( BCMSPropDataParsed )
oneOf ((
string or [
string
] or boolean or [
boolean
] or number or [
number
] or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerDataParsed ) or [
( BCMSPropGroupPointerDataParsed )
] or ( BCMSPropWidgetDataParsed ) or ( BCMSPropMediaDataParsed ) or [
( BCMSPropMediaDataParsed )
] or {
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
( BCMSPropDataParsed )
}
))
]
}
]
}
]
}
BCMSEntryParsedMeta
{
<lng>: [
( BCMSPropParsed )
{
<name>: [
( BCMSPropDataParsed )
oneOf ((
string or [
string
] or boolean or [
boolean
] or number or [
number
] or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerDataParsed ) or [
( BCMSPropGroupPointerDataParsed )
] or ( BCMSPropWidgetDataParsed ) or ( BCMSPropMediaDataParsed ) or [
( BCMSPropMediaDataParsed )
] or {
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
( BCMSPropDataParsed )
}
))
]
}
]
}
BCMSEntryUpdateData
{
_id: string
templateId: string
status?: string
meta: [
( BCMSEntryMeta )
{
lng: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
content: [
( BCMSEntryContent )
{
lng: string
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
}
BCMSGroup
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
BCMSGroupAddData
{
label: string
desc: string
}
BCMSGroupLite
{
cid: string
name: string
label: string
desc: string
propsCount: number
}
BCMSGroupUpdateData
{
_id: string
label?: string
desc?: string
propChanges?: [
( BCMSPropChange )
{
add?: {
( BCMSPropChangeAdd )
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
remove?: string
update?: {
( BCMSPropChangeUpdate )
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
}
]
}
BCMSIdAndCidGroup
{
_id: string
cid: string
}
BCMSIdCounter
{
_id: string
createdAt: number
updatedAt: number
name: string
forId: string
count: number
}
BCMSLanguage
{
_id: string
createdAt: number
updatedAt: number
userId: string
code: string
name: string
nativeName: string
def: boolean
}
BCMSLanguageAddData
{
code: string
name: string
nativeName: string
}
BCMSLanguageUpdateData
{
_id: string
def?: boolean
}
BCMSMedia
{
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
isInRoot: boolean
hasChildren: boolean
parentId: string
}
BCMSMediaAddDirData
{
name: string
parentId?: string
}
BCMSMediaAggregate
{
_id: string
createdAt: number
updateAt?: number
userId: string
type: string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
mimetype: string
size: number
name: string
path: string
isInRoot: boolean
( BCMSMediaAggregate )
}
BCMSMediaDuplicateData
{
_id: string
duplicateTo: string
}
BCMSMediaMoveData
{
_id: string
moveTo: string
}
BCMSMediaType
string [DIR | IMG | VID | TXT | GIF | OTH | PDF | JS | HTML | CSS | JAVA]
BCMSMediaUpdateData
{
_id: string
rename?: string
moveTo?: string
}
BCMSProp
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
BCMSPropChange
{
add?: {
( BCMSPropChangeAdd )
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
remove?: string
update?: {
( BCMSPropChangeUpdate )
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
}
BCMSPropChangeAdd
{
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
BCMSPropChangeUpdate
{
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
BCMSPropColorPickerData
{
allowCustom: boolean
options: [
string
]
selected: [
string
]
}
BCMSPropColorPickerDataParsed
{
<key>: [
oneOf ((
( BCMSPropDataParsed ) or [
( BCMSPropDataParsed )
]
))
]
}
BCMSPropData
oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
BCMSPropDataParsed
oneOf ((
string or [
string
] or boolean or [
boolean
] or number or [
number
] or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerDataParsed ) or [
( BCMSPropGroupPointerDataParsed )
] or ( BCMSPropWidgetDataParsed ) or ( BCMSPropMediaDataParsed ) or [
( BCMSPropMediaDataParsed )
] or {
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
( BCMSPropDataParsed )
}
))
BCMSPropDateData
[
number
]
BCMSPropEntryPointerData
{
templateId: string
entryIds: [
string
]
displayProp: string
}
BCMSPropEntryPointerDataParsed
{
<lng>: [
( BCMSPropData )
oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
]
}
BCMSPropEnumData
{
items: [
string
]
selected?: string
}
BCMSPropGroupPointerData
{
_id: string
}
BCMSPropGroupPointerDataParsed
{
<key>: [
oneOf ((
( BCMSPropDataParsed ) or [
( BCMSPropDataParsed )
]
))
]
}
BCMSPropMediaData
string
BCMSPropMediaDataParsed
{
_id: string
src: string
}
BCMSPropParsed
{
<name>: [
( BCMSPropDataParsed )
oneOf ((
string or [
string
] or boolean or [
boolean
] or number or [
number
] or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerDataParsed ) or [
( BCMSPropGroupPointerDataParsed )
] or ( BCMSPropWidgetDataParsed ) or ( BCMSPropMediaDataParsed ) or [
( BCMSPropMediaDataParsed )
] or {
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
( BCMSPropDataParsed )
}
))
]
}
BCMSPropRichTextData
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
BCMSPropType
string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
BCMSPropValue
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
BCMSPropValueColorPickerData
[
string
]
BCMSPropValueData
oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
BCMSPropValueGroupPointerData
{
_id: string
items: [
{
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
]
}
BCMSPropValueRichTextData
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
BCMSPropValueWidgetData
{
_id: string
props: [
( BCMSPropValue )
{
id: string
data: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropValueGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropValueWidgetData ) or [
( BCMSPropValueRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
BCMSPropWidgetData
{
_id: string
}
BCMSPropWidgetDataParsed
{
<key>: [
( BCMSPropDataParsed )
oneOf ((
string or [
string
] or boolean or [
boolean
] or number or [
number
] or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerDataParsed ) or [
( BCMSPropGroupPointerDataParsed )
] or ( BCMSPropWidgetDataParsed ) or ( BCMSPropMediaDataParsed ) or [
( BCMSPropMediaDataParsed )
] or {
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
( BCMSPropDataParsed )
}
))
]
}
BCMSProtectedUser
{
_id: string
createdAt: number
updateAt?: number
username: string
email: string
roles: [
( JWTRole )
{
name: string [ADMIN | USER]
permissions: [
( JWTPermission )
{
name: string [READ | WRITE | DELETE | EXECUTE]
}
]
}
]
customPool: {
( BCMSUserCustomPool )
personal: {
( BCMSUserPersonal )
firstName: string
lastName: string
avatarUri: string
}
address: {
( BCMSUserAddress )
country?: string
city?: string
state?: string
zip?: string
street?: {
name?: string
number?: string
}
}
policy: {
( BCMSUserPolicy )
media: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
templates: [
allOf ((
{
_id: string
} and ( BCMSUserPolicyCRUD )
))
]
plugins?: [
allOf ((
{
name: string
} and ( BCMSUserPolicyCRUD )
))
]
}
}
}
BCMSSocketEventType
string [UPDATE | REMOVE]
BCMSStatus
{
_id: string
createdAt: number
updatedAt: number
label: string
name: string
color: string
}
BCMSStatusCreateData
{
label: string
color?: string
}
BCMSStatusUpdateData
{
_id: string
label?: string
color?: string
}
BCMSSuccessResponse
{
message: string [Success.]
}
BCMSTag
{
_id: string
createdAt: number
updateAt?: number
cid: string
value: string
}
BCMSTagCreateData
{
value: string
}
BCMSTagUpdateData
{
_id: string
value: string
}
BCMSTemplate
{
_id: string
createdAt: number
updatedAt: number
cid: string
name: string
label: string
desc: string
userId: string
singleEntry: boolean
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
BCMSTemplateCreateData
{
label: string
desc: string
singleEntry: boolean
}
BCMSTemplateOrganizer
{
_id: string
createdAt: number
updatedAt: number
parentId?: string
label: string
name: string
templateIds: [
string
]
}
BCMSTemplateOrganizerCreateData
{
label: string
parentId?: string
templateIds: [
string
]
}
BCMSTemplateOrganizerUpdateData
{
_id: string
parentId?: string
label?: string
templateIds?: [
string
]
}
BCMSTemplateUpdateData
{
_id: string
label?: string
desc?: string
singleEntry?: boolean
propChanges?: [
( BCMSPropChange )
{
add?: {
( BCMSPropChangeAdd )
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
remove?: string
update?: {
( BCMSPropChangeUpdate )
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
}
]
}
BCMSTypeConverterResultItem
{
outputFile: string
content: string
}
BCMSUserAddress
{
country?: string
city?: string
state?: string
zip?: string
street?: {
name?: string
number?: string
}
}
BCMSUserCustomPool
{
personal: {
( BCMSUserPersonal )
firstName: string
lastName: string
avatarUri: string
}
address: {
( BCMSUserAddress )
country?: string
city?: string
state?: string
zip?: string
street?: {
name?: string
number?: string
}
}
policy: {
( BCMSUserPolicy )
media: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
templates: [
allOf ((
{
_id: string
} and ( BCMSUserPolicyCRUD )
))
]
plugins?: [
allOf ((
{
name: string
} and ( BCMSUserPolicyCRUD )
))
]
}
}
BCMSUserPersonal
{
firstName: string
lastName: string
avatarUri: string
}
BCMSUserPolicy
{
media: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
templates: [
allOf ((
{
_id: string
} and ( BCMSUserPolicyCRUD )
))
]
plugins?: [
allOf ((
{
name: string
} and ( BCMSUserPolicyCRUD )
))
]
}
BCMSUserPolicyCRUD
{
get: boolean
post: boolean
put: boolean
delete: boolean
}
BCMSUserUpdateData
{
_id: string
customPool?: {
policy?: {
media?: {
( BCMSUserPolicyCRUD )
get: boolean
post: boolean
put: boolean
delete: boolean
}
( BCMSUserPolicyCRUD )
templates?: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
webhooks?: [
allOf ((
( BCMSUserPolicyCRUD ) and {
_id: string
}
))
]
plugins?: [
allOf ((
( BCMSUserPolicyCRUD ) and {
name: string
}
))
]
}
}
}
BCMSWidget
{
_id: string
createdAt: number
updateAt?: number
cid: string
name: string
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
props: [
( BCMSProp )
{
id: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
name: string
label: string
array: boolean
defaultData: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
]
}
BCMSWidgetCreateData
{
label: string
desc: string
previewImage: string
previewScript: string
previewStyle: string
}
BCMSWidgetUpdateData
{
_id: string
label?: string
desc?: string
previewImage?: string
previewScript?: string
previewStyle?: string
propChanges?: [
( BCMSPropChange )
{
add?: {
( BCMSPropChangeAdd )
label: string
type: string [STRING | NUMBER | BOOLEAN | DATE | ENUMERATION | MEDIA | GROUP_POINTER | ENTRY_POINTER | WIDGET | RICH_TEXT]
required: boolean
array: boolean
defaultData?: oneOf ((
[
string
] or [
boolean
] or [
number
] or ( BCMSPropDateData ) or ( BCMSPropEnumData ) or ( BCMSPropEntryPointerData ) or ( BCMSPropGroupPointerData ) or [
( BCMSPropMediaData )
string
] or ( BCMSPropWidgetData ) or [
( BCMSPropRichTextData )
{
nodes: [
( BCMSEntryContentNode )
{
type: string [paragraph | heading | widget | bulletList | listItem | orderedList | text]
content?: [
( BCMSEntryContentNode )
]
attrs?: oneOf ((
( BCMSEntryContentNodeHeadingAttr ) or ( BCMSPropValueWidgetData ) or ( BCMSEntryContentNodeLinkAttr )
))
marks?: [
( BCMSEntryContentNodeMarker )
{
type: string [bold | italic | underline | stripe | link]
attrs: {
( BCMSEntryContentNodeLinkAttr )
href: string
target: string
}
}
]
text?: string
}
]
}
]
))
}
remove?: string
update?: {
( BCMSPropChangeUpdate )
id: string
label: string
move: number
required: boolean
enumItems?: [
string
]
}
}
]
}
JWTPermission
{
name: string [READ | WRITE | DELETE | EXECUTE]
}
JWTPermissionName
string [READ | WRITE | DELETE | EXECUTE]
JWTRole
{
name: string [ADMIN | USER]
permissions: [
( JWTPermission )
{
name: string [READ | WRITE | DELETE | EXECUTE]
}
]
}
JWTRoleName
string [ADMIN | USER]