/users
Provides endpoints which allow the manipulation of users.
Create a new user.
Load multiple users and return a paged list response.
post /users/
Create a new user.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
admin | false | boolean | Flag which indicates whether the user is an admin. |
emailAddress | false | string | Email address of the user. |
firstname | false | string | Firstname of the user. |
forcedPasswordChange | false | boolean | When true, the user needs to change their password on the next login. |
groupUuid | false | string | Optional group id for the user. If provided the user will automatically be assigned to the identified group. |
lastname | false | string | Lastname of the user. |
nodeReference | false | object | New node reference of the user. This can also explicitly set to null in order to remove the assigned node from the user |
password | true | string | Password of the new user. |
username | true | string | Username of the user. |
Example:
{
"username" : "newuser",
"emailAddress" : "j.doe@nowhere.com",
"lastname" : "Doe",
"firstname" : "Joe",
"groupUuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d",
"password" : "iesiech0eewinioghaRa",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
}
}
HTTP status code 201
User response of the created user.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
admin | false | boolean | Flag which indicates whether the user is an admin. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
emailAddress | false | string | Email address of the user |
enabled | true | boolean | Flag which indicates whether the user is enabled or disabled. Disabled users can no longer log into Gentics Mesh. Deleting a user user will not remove it. Instead the user will just be disabled. |
firstname | false | string | Firstname of the user. |
forcedPasswordChange | true | boolean | When true, the user needs to change their password on the next login. |
groups | true | array | List of group references to which the user belongs. |
lastname | false | string | Lastname of the user. |
nodeReference | false | object | Optional node reference of the user. Users can directly reference a single node. This can be used to store additional data that is user related. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rolesHash | true | string | Hashsum of user roles which can be used for user permission caching. |
username | true | string | Username of the user. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "newuser",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
get /users/
Load multiple users and return a paged list response.
Query Parameters
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
- perPage: (number)
Number of elements per page.
Example:
42
- resolveLinks: (string)
The resolve links parameter can be set to either short, medium or full. Stored mesh links will automatically be resolved and replaced by the resolved webroot link. With the parameter set the path property as well as the languagesPath property (for available language variants) will be included in the response. Gentics Mesh links in any HTML-typed field will automatically be resolved and replaced by the resolved WebRoot path. No resolving occurs if no link has been specified.
Example:
medium
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- lang: (string)
ISO 639-1 language tag of the language which should be loaded. Fallback handling can be applied by specifying multiple languages in a comma-separated list. The first matching language will be returned. If omitted or the requested language is not available then the defaultLanguage as configured in mesh.yml will be returned.
Example:
en,de
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
User list response which may also contain an expanded node references.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "jdoe",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Roe",
"firstname" : "Jane",
"username" : "jroe",
"emailAddress" : "j.roe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
}, {
"name" : "webclient",
"uuid" : "4267d8bf30824e36a7d8bf3082de36a3"
}, {
"name" : "editors",
"uuid" : "589319933be24ec79319933be24ec7fe"
} ],
"admin" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Update the user with the given uuid. The user is created if no user with the specified uuid could be found.
Read the user with the given uuid
Deactivate the user with the given uuid. Please note that users can't be deleted since they are needed to construct creator/editor information.
post /users/{userUuid}
Update the user with the given uuid. The user is created if no user with the specified uuid could be found.
URI Parameters
- userUuid: required (string)
Uuid of the user.
Example:
589319933be24ec79319933be24ec7fe
Query Parameters
- token: (string)
Token code which can be used to update the user even if the connection is not authenticated. This can be used to implement a password recovery feature.
Example:
FDrbBDWRY3aS
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
admin | false | boolean | Flag which indicates whether the user is an admin. |
emailAddress | false | string | New email address of the user |
firstname | false | string | New firstname of the user |
forcedPasswordChange | false | boolean | When true, the user needs to change their password on the next login. |
lastname | false | string | New lastname of the user |
nodeReference | false | object | New node reference of the user. This can also explicitly set to null in order to remove the assigned node from the user |
password | false | string | New password of the user |
username | false | string | New username of the user |
Example:
{
"password" : "iesiech0eewinioghaRa",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "jdoe42",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
}
}
HTTP status code 200
Updated user response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
admin | false | boolean | Flag which indicates whether the user is an admin. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
emailAddress | false | string | Email address of the user |
enabled | true | boolean | Flag which indicates whether the user is enabled or disabled. Disabled users can no longer log into Gentics Mesh. Deleting a user user will not remove it. Instead the user will just be disabled. |
firstname | false | string | Firstname of the user. |
forcedPasswordChange | true | boolean | When true, the user needs to change their password on the next login. |
groups | true | array | List of group references to which the user belongs. |
lastname | false | string | Lastname of the user. |
nodeReference | false | object | Optional node reference of the user. Users can directly reference a single node. This can be used to store additional data that is user related. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rolesHash | true | string | Hashsum of user roles which can be used for user permission caching. |
username | true | string | Username of the user. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "jdoe42",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
get /users/{userUuid}
Read the user with the given uuid
URI Parameters
- userUuid: required (string)
Uuid of the user.
Example:
589319933be24ec79319933be24ec7fe
Query Parameters
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
- resolveLinks: (string)
The resolve links parameter can be set to either short, medium or full. Stored mesh links will automatically be resolved and replaced by the resolved webroot link. With the parameter set the path property as well as the languagesPath property (for available language variants) will be included in the response. Gentics Mesh links in any HTML-typed field will automatically be resolved and replaced by the resolved WebRoot path. No resolving occurs if no link has been specified.
Example:
medium
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- lang: (string)
ISO 639-1 language tag of the language which should be loaded. Fallback handling can be applied by specifying multiple languages in a comma-separated list. The first matching language will be returned. If omitted or the requested language is not available then the defaultLanguage as configured in mesh.yml will be returned.
Example:
en,de
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 200
User response which may also contain an expanded node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
admin | false | boolean | Flag which indicates whether the user is an admin. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
emailAddress | false | string | Email address of the user |
enabled | true | boolean | Flag which indicates whether the user is enabled or disabled. Disabled users can no longer log into Gentics Mesh. Deleting a user user will not remove it. Instead the user will just be disabled. |
firstname | false | string | Firstname of the user. |
forcedPasswordChange | true | boolean | When true, the user needs to change their password on the next login. |
groups | true | array | List of group references to which the user belongs. |
lastname | false | string | Lastname of the user. |
nodeReference | false | object | Optional node reference of the user. Users can directly reference a single node. This can be used to store additional data that is user related. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rolesHash | true | string | Hashsum of user roles which can be used for user permission caching. |
username | true | string | Username of the user. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "jdoe",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
delete /users/{userUuid}
Read the user permissions on the element that can be located by the specified path. Requires READ permission on the user.
get /users/{userUuid}/permissions/{path}
Read the user permissions on the element that can be located by the specified path. Requires READ permission on the user.
URI Parameters
- path: required (string)
Path to the element from which the permissions should be loaded.
Example:
projects/:projectUuid/schemas
- userUuid: required (string)
Uuid of the user.
Example:
589319933be24ec79319933be24ec7fe
HTTP status code 200
Response which contains the loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | boolean | Flag which indicates whether the create permission is granted. |
delete | true | boolean | Flag which indicates whether the delete permission is granted. |
publish | false | boolean | Flag which indicates whether the publish permission is granted. |
read | true | boolean | Flag which indicates whether the read permission is granted. |
readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
update | true | boolean | Flag which indicates whether the update permission is granted. |
Example:
{
"create" : true,
"read" : true,
"update" : true,
"delete" : true
}
Return a one time token which can be used by any user to update a user (e.g.: Reset the password). Requires CREATE permission on the user.
post /users/{userUuid}/reset_token
Return a one time token which can be used by any user to update a user (e.g.: Reset the password). Requires CREATE permission on the user.
URI Parameters
- userUuid: required (string)
Uuid of the user.
Example:
589319933be24ec79319933be24ec7fe
HTTP status code 200
User token response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 date of the creation date for the provided token |
token | true | string | JSON Web Token which was issued by the API. |
Example:
{
"token" : "FDrbBDWRY3aS",
"created" : "2018-11-20T20:12:01.084Z"
}
Get the permissions on the user for all roles.
Grant permissions on the user to multiple roles.
Revoke permissions on the user from multiple roles.
get /users/{userUuid}/rolePermissions
Get the permissions on the user for all roles.
URI Parameters
- userUuid: required (string)
Uuid of the user
Example:
589319933be24ec79319933be24ec7fe
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /users/{userUuid}/rolePermissions
Grant permissions on the user to multiple roles.
URI Parameters
- userUuid: required (string)
Uuid of the user
Example:
589319933be24ec79319933be24ec7fe
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "125c24a329df464dbedba475c3cb8970"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /users/{userUuid}/rolePermissions
Revoke permissions on the user from multiple roles.
URI Parameters
- userUuid: required (string)
Uuid of the user
Example:
589319933be24ec79319933be24ec7fe
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
Return API token which can be used to authenticate the user. Store the key somewhere save since you won't be able to retrieve it later on. This invalidates all tokens previously issued for this user. Requires UPDATE permission on the user.
Invalidate the issued API token.
post /users/{userUuid}/token
Return API token which can be used to authenticate the user. Store the key somewhere save since you won't be able to retrieve it later on. This invalidates all tokens previously issued for this user. Requires UPDATE permission on the user.
URI Parameters
- userUuid: required (string)
Uuid of the user.
Example:
589319933be24ec79319933be24ec7fe
HTTP status code 200
The User API token response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
previousIssueDate | true | string | Date of the last time the API token was issued. |
token | true | string | Issued client API token. |
Example:
{
"token" : "30fa3e4ae00c4ad6ba3e4ae00cfad6cc"
}
delete /users/{userUuid}/token
Invalidate the issued API token.
URI Parameters
- userUuid: required (string)
Uuid of the user.
Example:
589319933be24ec79319933be24ec7fe
HTTP status code 200
Message confirming the invalidation of the API token. Requires DELETE permission on the user.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
/roles
Provides endpoints which allow the manipulation of roles.
Create a new role.
Load multiple roles and return a paged list response
post /roles/
Create a new role.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | New name of the role |
Example:
{
"name" : "New role"
}
HTTP status code 201
Created role.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
groups | true | array | List of groups which are assigned to the role. |
name | true | string | Name of the role. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "ddcddceb33d648318ddceb33d618314f",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "New role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ ]
}
get /roles/
Load multiple roles and return a paged list response
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
Loaded list of roles.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "ddcddceb33d648318ddceb33d618314f",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Reader role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ ]
}, {
"uuid" : "cc9999a4194d4f069999a4194d1f06d7",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Admin role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
}, {
"name" : "clients",
"uuid" : "df81c23d9ff1450081c23d9ff195005e"
} ]
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Load the role with the given uuid.
Update the role with the given uuid. The role is created if no role with the specified uuid could be found.
Delete the role with the given uuid
get /roles/{roleUuid}
Load the role with the given uuid.
URI Parameters
- roleUuid: required (string)
Uuid of the role
Example:
ddcddceb33d648318ddceb33d618314f
Query Parameters
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
HTTP status code 200
Loaded role.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
groups | true | array | List of groups which are assigned to the role. |
name | true | string | Name of the role. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "ddcddceb33d648318ddceb33d618314f",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Admin Role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ ]
}
post /roles/{roleUuid}
Update the role with the given uuid. The role is created if no role with the specified uuid could be found.
URI Parameters
- roleUuid: required (string)
Uuid of the role
Example:
ddcddceb33d648318ddceb33d618314f
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | New name of the role |
Example:
{
"name" : "New role name"
}
HTTP status code 200
Updated role.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
groups | true | array | List of groups which are assigned to the role. |
name | true | string | Name of the role. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "ddcddceb33d648318ddceb33d618314f",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "New role name",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ ]
}
Set the permissions between role and the targeted element.
Load the permissions between given role and the targeted element.
post /roles/{roleUuid}/permissions/{path}
Set the permissions between role and the targeted element.
URI Parameters
- path: required (string)
API path to the element.
Example:
projects/217f8c981ada4642bf8c981adaa642c3 projects/217f8c981ada4642bf8c981adaa642c3/nodes/adaf48da8c124049af48da8c12a0493e
- roleUuid: required (string)
Uuid of the role.
Example:
ddcddceb33d648318ddceb33d618314f
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
permissions | true | object | Set of permissions which should be applied. |
recursive | false | boolean | Flag which indicates whether the permission update should be applied recursively. |
Example:
{
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"recursive" : false
}
HTTP status code 200
Permissions were set.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
get /roles/{roleUuid}/permissions/{path}
Load the permissions between given role and the targeted element.
URI Parameters
- path: required (string)
API path to the element.
Example:
projects/217f8c981ada4642bf8c981adaa642c3 projects/217f8c981ada4642bf8c981adaa642c3/nodes/adaf48da8c124049af48da8c12a0493e
- roleUuid: required (string)
Uuid of the role.
Example:
ddcddceb33d648318ddceb33d618314f
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | boolean | Flag which indicates whether the create permission is granted. |
delete | true | boolean | Flag which indicates whether the delete permission is granted. |
publish | false | boolean | Flag which indicates whether the publish permission is granted. |
read | true | boolean | Flag which indicates whether the read permission is granted. |
readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
update | true | boolean | Flag which indicates whether the update permission is granted. |
Example:
{
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
Get the permissions on the role for all roles.
Grant permissions on the role to multiple roles.
Revoke permissions on the role from multiple roles.
get /roles/{roleUuid}/rolePermissions
Get the permissions on the role for all roles.
URI Parameters
- roleUuid: required (string)
Uuid of the role
Example:
ddcddceb33d648318ddceb33d618314f
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /roles/{roleUuid}/rolePermissions
Grant permissions on the role to multiple roles.
URI Parameters
- roleUuid: required (string)
Uuid of the role
Example:
ddcddceb33d648318ddceb33d618314f
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "60aa8b37a26e439ab883f716dc9096ca"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /roles/{roleUuid}/rolePermissions
Revoke permissions on the role from multiple roles.
URI Parameters
- roleUuid: required (string)
Uuid of the role
Example:
ddcddceb33d648318ddceb33d618314f
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
/groups
Provides endpoints which allow the manipulation of groups.
Create a new group.
Read multiple groups and return a paged list response.
post /groups/
Create a new group.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | Name of the group. |
Example:
{
"name" : "New group"
}
HTTP status code 201
Created group.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the group |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
roles | true | array | List of role references |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "25ba1622a1f7458fba1622a1f7658fea",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "New group",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ {
"name" : "admin",
"uuid" : "cc9999a4194d4f069999a4194d1f06d7"
} ]
}
get /groups/
Read multiple groups and return a paged list response.
Query Parameters
- perPage: (number)
Number of elements per page.
Example:
42
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List response which contains the found groups.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "25ba1622a1f7458fba1622a1f7658fea",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Admin Group",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ {
"name" : "admin",
"uuid" : "cc9999a4194d4f069999a4194d1f06d7"
} ]
}, {
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d",
"name" : "Editor Group",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ ]
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Read the group with the given uuid.
Update the group with the given uuid. The group is created if no group with the specified uuid could be found.
Delete the given group.
get /groups/{groupUuid}
Read the group with the given uuid.
URI Parameters
- groupUuid: required (string)
Uuid of the group which should be deleted.
Example:
e728c2fc5a0146a2a8c2fc5a0186a28d
Query Parameters
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
HTTP status code 200
Loaded group.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the group |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
roles | true | array | List of role references |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "25ba1622a1f7458fba1622a1f7658fea",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Admin Group",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ {
"name" : "admin",
"uuid" : "cc9999a4194d4f069999a4194d1f06d7"
} ]
}
post /groups/{groupUuid}
Update the group with the given uuid. The group is created if no group with the specified uuid could be found.
URI Parameters
- groupUuid: required (string)
Uuid of the group which should be deleted.
Example:
e728c2fc5a0146a2a8c2fc5a0186a28d
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | New name of the group |
Example:
{
"name" : "New group name"
}
HTTP status code 200
Updated group.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the group |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
roles | true | array | List of role references |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "25ba1622a1f7458fba1622a1f7658fea",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "New group name",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ {
"name" : "admin",
"uuid" : "cc9999a4194d4f069999a4194d1f06d7"
} ]
}
Get the permissions on the group for all roles.
Grant permissions on the group to multiple roles.
Revoke permissions on the group from multiple roles.
get /groups/{groupUuid}/rolePermissions
Get the permissions on the group for all roles.
URI Parameters
- groupUuid: required (string)
Uuid of the group
Example:
df81c23d9ff1450081c23d9ff195005e
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /groups/{groupUuid}/rolePermissions
Grant permissions on the group to multiple roles.
URI Parameters
- groupUuid: required (string)
Uuid of the group
Example:
df81c23d9ff1450081c23d9ff195005e
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "7b92c595e71e42f8bcde60ea26268332"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /groups/{groupUuid}/rolePermissions
Revoke permissions on the group from multiple roles.
URI Parameters
- groupUuid: required (string)
Uuid of the group
Example:
df81c23d9ff1450081c23d9ff195005e
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
Load multiple roles that are assigned to the group. Return a paged list response.
get /groups/{groupUuid}/roles
Load multiple roles that are assigned to the group. Return a paged list response.
URI Parameters
- groupUuid: required (string)
Uuid of the group.
Example:
df81c23d9ff1450081c23d9ff195005e
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List of roles which were assigned to the group.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "ddcddceb33d648318ddceb33d618314f",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Reader role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ ]
}, {
"uuid" : "cc9999a4194d4f069999a4194d1f06d7",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Admin role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
}, {
"name" : "clients",
"uuid" : "df81c23d9ff1450081c23d9ff195005e"
} ]
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Add the specified role to the group.
Remove the given role from the group.
post /groups/{groupUuid}/roles/{roleUuid}
Add the specified role to the group.
URI Parameters
- groupUuid: required (string)
Uuid of the group.
Example:
df81c23d9ff1450081c23d9ff195005e
- roleUuid: required (string)
Uuid of the role.
Example:
ddcddceb33d648318ddceb33d618314f
HTTP status code 200
Loaded role.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the group |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
roles | true | array | List of role references |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "25ba1622a1f7458fba1622a1f7658fea",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Group name",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ {
"name" : "admin",
"uuid" : "cc9999a4194d4f069999a4194d1f06d7"
} ]
}
delete /groups/{groupUuid}/roles/{roleUuid}
Load a list of users which have been assigned to the group.
get /groups/{groupUuid}/users
Load a list of users which have been assigned to the group.
URI Parameters
- groupUuid: required (string)
Uuid of the group.
Example:
df81c23d9ff1450081c23d9ff195005e
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List of users which belong to the group.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "jdoe",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Roe",
"firstname" : "Jane",
"username" : "jroe",
"emailAddress" : "j.roe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
}, {
"name" : "webclient",
"uuid" : "4267d8bf30824e36a7d8bf3082de36a3"
}, {
"name" : "editors",
"uuid" : "589319933be24ec79319933be24ec7fe"
} ],
"admin" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Add the given user to the group
Remove the given user from the group.
post /groups/{groupUuid}/users/{userUuid}
Add the given user to the group
URI Parameters
- groupUuid: required (string)
Uuid of the group.
Example:
df81c23d9ff1450081c23d9ff195005e
- userUuid: required (string)
Uuid of the user which should be removed from the group.
Example:
4267d8bf30824e36a7d8bf3082de36a3
HTTP status code 200
Updated group.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the group |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
roles | true | array | List of role references |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "25ba1622a1f7458fba1622a1f7658fea",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Group name",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ {
"name" : "admin",
"uuid" : "cc9999a4194d4f069999a4194d1f06d7"
} ]
}
delete /groups/{groupUuid}/users/{userUuid}
Remove the given user from the group.
URI Parameters
- groupUuid: required (string)
Uuid of the group.
Example:
df81c23d9ff1450081c23d9ff195005e
- userUuid: required (string)
Uuid of the user which should be removed from the group.
Example:
4267d8bf30824e36a7d8bf3082de36a3
HTTP status code 204
User was removed from the group.
/projects
Provides endpoints which allow the manipulation of projects.
Create a new project.
Load multiple projects and return a paged response.
post /projects/
Create a new project.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
hostname | false | string | The hostname of the project can be used to generate links across multiple projects. The hostname will be stored along the initial branch of the project. |
name | true | string | Name of the project |
pathPrefix | false | string | Optional path prefix for webroot path and rendered links. |
schema | true | object | Reference to the schema of the root node. Creating a project will also automatically create the base node of the project and link the schema to the initial branch of the project. |
ssl | false | boolean | SSL flag of the project which will be used to generate links across multiple projects. The flag will be stored along the intial branch of the project. |
Example:
{
"name" : "New project",
"schema" : {
"name" : "folder",
"uuid" : "e287e8a7497940ac87e8a7497940ac82"
},
"hostname" : "getmesh.io",
"ssl" : true
}
HTTP status code 201
Created project.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
languages | false | array | Project's languages. |
name | true | string | The name of the project. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rootNode | true | object | The project root node. All futher nodes are children of this node. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "d3b1840b01464b54b1840b0146cb54f5",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "New Project",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
get /projects/
Load multiple projects and return a paged response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
Loaded project list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "d3b1840b01464b54b1840b0146cb54f5",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Dummy project",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "217f8c981ada4642bf8c981adaa642c3",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Dummy Project (Mobile)",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Load the project with the given uuid.
Update the project with the given uuid. The project is created if no project with the specified uuid could be found.
Delete the project and all attached nodes, tagfamiles and branches.
get /projects/{projectUuid}
Load the project with the given uuid.
URI Parameters
- projectUuid: required (string)
Uuid of the project.
Example:
217f8c981ada4642bf8c981adaa642c3
Query Parameters
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
HTTP status code 200
Loaded project.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
languages | false | array | Project's languages. |
name | true | string | The name of the project. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rootNode | true | object | The project root node. All futher nodes are children of this node. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "d3b1840b01464b54b1840b0146cb54f5",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Project name",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
post /projects/{projectUuid}
Update the project with the given uuid. The project is created if no project with the specified uuid could be found.
URI Parameters
- projectUuid: required (string)
Uuid of the project.
Example:
217f8c981ada4642bf8c981adaa642c3
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | New name of the project |
Example:
{
"name" : "New project name"
}
HTTP status code 200
Updated project.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
languages | false | array | Project's languages. |
name | true | string | The name of the project. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rootNode | true | object | The project root node. All futher nodes are children of this node. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "d3b1840b01464b54b1840b0146cb54f5",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "New project name",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
Invoke a version purge of the project.
post /projects/{projectUuid}/maintenance/purge
Invoke a version purge of the project.
URI Parameters
- projectUuid: required (string)
Uuid of the project.
Example:
217f8c981ada4642bf8c981adaa642c3
Query Parameters
- before: (string)
Limit the purge operation to versions which are older than the given date.
Example:
2019-04-20T18:00Z
HTTP status code 200
Project versions purge job added.
Get the permissions on the project for all roles.
Grant permissions on the project to multiple roles.
Revoke permissions on the project from multiple roles.
get /projects/{projectUuid}/rolePermissions
Get the permissions on the project for all roles.
URI Parameters
- projectUuid: required (string)
Uuid of the project
Example:
217f8c981ada4642bf8c981adaa642c3
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /projects/{projectUuid}/rolePermissions
Grant permissions on the project to multiple roles.
URI Parameters
- projectUuid: required (string)
Uuid of the project
Example:
217f8c981ada4642bf8c981adaa642c3
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "58fa5c7aef4146d6afcb24a2e703dd70"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /projects/{projectUuid}/rolePermissions
Revoke permissions on the project from multiple roles.
URI Parameters
- projectUuid: required (string)
Uuid of the project
Example:
217f8c981ada4642bf8c981adaa642c3
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
/schemas
Provides endpoints which allow the manipulation of schemas.
Read multiple schemas and return a paged list response.
Create a new schema.
get /schemas/
Read multiple schemas and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
Loaded list of schemas.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
post /schemas/
Create a new schema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should create new versions. |
container | false | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
description | false | string | Description of the schema |
displayField | false | string | Name of the display field. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | false | array | List of schema fields |
name | true | string | Name of the schema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
Example:
{
"displayField" : "name",
"segmentField" : "name",
"container" : true,
"description" : "Some description text",
"name" : "video",
"fields" : [ {
"name" : "name",
"required" : false,
"noIndex" : false,
"type" : "string"
} ],
"microschema" : false
}
HTTP status code 201
Created schema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should be automatically purged on update. |
container | true | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the schema. |
displayField | true | string | Name of the display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | Flag which indicates whether nodes which use this schema should be excluded from the indexing. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the schema. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
Load the schema with the given uuid.
Update the schema.
Delete the schema with the given uuid.
get /schemas/{schemaUuid}
Load the schema with the given uuid.
URI Parameters
- schemaUuid: required (string)
Uuid of the schema.
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
Query Parameters
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 200
Loaded schema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should be automatically purged on update. |
container | true | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the schema. |
displayField | true | string | Name of the display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | Flag which indicates whether nodes which use this schema should be excluded from the indexing. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the schema. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
post /schemas/{schemaUuid}
Update the schema.
URI Parameters
- schemaUuid: required (string)
Uuid of the schema.
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
Query Parameters
- strictValidation: (boolean)
Validate the Elasticsearch settings in the schema. When this parameter is set, a schema update or creation will fail, when the respective Elasticsearch index cannot be created.
- updateAssignedBranches: (boolean - default: true)
Update the schema version for all branches which already utilize the schema.
- updateBranchNames: (string)
List of branch names which should be included in the update process. By default all branches which use the schema will be updated. You can thus use this parameter to only include a subset of branch in the update.
Example:
summerBranch,winterBranch
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should create new versions. |
container | false | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
description | false | string | New description of the schema. |
displayField | false | string | Name of the display field. |
elasticsearch | false | object | Additional elasticsearch index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | 'Exclude from indexing' schema flag. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
version | false | string | Version of the schema. |
Example:
{
"description" : "New description",
"name" : "extended-content",
"fields" : [ ],
"microschema" : false
}
HTTP status code 200
Updated schema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should be automatically purged on update. |
container | true | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the schema. |
displayField | true | string | Name of the display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | Flag which indicates whether nodes which use this schema should be excluded from the indexing. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the schema. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
Apply the posted changes to the schema. The schema migration will not automatically be started.
post /schemas/{schemaUuid}/changes
Apply the posted changes to the schema. The schema migration will not automatically be started.
URI Parameters
- schemaUuid: required (string)
Uuid of the schema.
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
changes.items.operation | false | string | Type of operation for this change |
changes.items.uuid | false | string | Uuid of the change entry |
Example:
{
"changes" : [ {
"operation" : "ADDFIELD",
"properties" : {
"field" : "listFieldToBeAddedField",
"elasticsearch" : "{\"key\":\"value\"}",
"label" : "Field Label Value",
"type" : "list",
"listType" : "html"
}
}, {
"operation" : "CHANGEFIELDTYPE",
"properties" : {
"field" : "fieldToBeUpdated",
"type" : "string"
}
}, {
"operation" : "REMOVEFIELD",
"properties" : {
"field" : "fieldToBeRemoved"
}
}, {
"operation" : "UPDATEFIELD",
"properties" : {
"field" : "fieldToBeUpdated",
"displayFieldname" : "newDisplayField",
"label" : "newLabel"
}
}, {
"operation" : "UPDATESCHEMA",
"properties" : { }
} ]
}
HTTP status code 200
Schema changes have been applied.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Compare the given schema with the stored schema and create a changeset.
post /schemas/{schemaUuid}/diff
Compare the given schema with the stored schema and create a changeset.
URI Parameters
- schemaUuid: required (string)
Uuid of the schema.
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should be automatically purged on update. |
container | true | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the schema. |
displayField | true | string | Name of the display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | Flag which indicates whether nodes which use this schema should be excluded from the indexing. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the schema. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 200
List of schema changes that were detected by comparing the posted schema and the current version.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
changes.items.operation | false | string | Type of operation for this change |
changes.items.uuid | false | string | Uuid of the change entry |
Example:
{
"changes" : [ {
"operation" : "ADDFIELD",
"properties" : {
"field" : "listFieldToBeAddedField",
"elasticsearch" : "{\"key\":\"value\"}",
"label" : "Field Label Value",
"type" : "list",
"listType" : "html"
}
}, {
"operation" : "CHANGEFIELDTYPE",
"properties" : {
"field" : "fieldToBeUpdated",
"type" : "string"
}
}, {
"operation" : "REMOVEFIELD",
"properties" : {
"field" : "fieldToBeRemoved"
}
}, {
"operation" : "UPDATEFIELD",
"properties" : {
"field" : "fieldToBeUpdated",
"displayFieldname" : "newDisplayField",
"label" : "newLabel"
}
}, {
"operation" : "UPDATESCHEMA",
"properties" : { }
} ]
}
Get the permissions on the schema for all roles.
Grant permissions on the schema to multiple roles.
Revoke permissions on the schema from multiple roles.
get /schemas/{schemaUuid}/rolePermissions
Get the permissions on the schema for all roles.
URI Parameters
- schemaUuid: required (string)
Uuid of the schema
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /schemas/{schemaUuid}/rolePermissions
Grant permissions on the schema to multiple roles.
URI Parameters
- schemaUuid: required (string)
Uuid of the schema
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "6d460171977747c7ad2fb61dfddde90e"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /schemas/{schemaUuid}/rolePermissions
Revoke permissions on the schema from multiple roles.
URI Parameters
- schemaUuid: required (string)
Uuid of the schema
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
/microschemas
Endpoint which provides methods to manipulate microschemas.
Create a new microschema.
Read multiple microschemas and return a paged list response.
post /microschemas/
Create a new microschema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
description | false | string | Description of the microschema |
elasticsearch | false | object | Additional elasticsearch index configuration. This can be used to setup custom analyzers and filters. |
fields | false | array | List of microschema fields |
name | true | string | Name of the microschema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
Example:
{
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true
}
HTTP status code 201
Created microschema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the microschema |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of microschema fields |
name | true | string | Name of the microschema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the microschema |
Example:
{
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
get /microschemas/
Read multiple microschemas and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List of miroschemas.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Read the microschema with the given uuid.
Update the microschema with the given uuid.
Delete the microschema with the given uuid.
get /microschemas/{microschemaUuid}
Read the microschema with the given uuid.
URI Parameters
- microschemaUuid: required (string)
Uuid of the microschema.
Example:
2715307deafc4ecc95307deafccecc10
Query Parameters
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 200
Loaded microschema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the microschema |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of microschema fields |
name | true | string | Name of the microschema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the microschema |
Example:
{
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
post /microschemas/{microschemaUuid}
Update the microschema with the given uuid.
URI Parameters
- microschemaUuid: required (string)
Uuid of the microschema.
Example:
2715307deafc4ecc95307deafccecc10
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
description | false | string | Description of the microschema |
elasticsearch | false | object | Additional elasticsearch index configuration. This can be used to setup custom analyzers and filters. |
fields | false | array | List of microschema fields |
name | false | string | Name of the microschema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
version | false | string | Version of the microschema |
Example:
{
"name" : "geolocation-renamed",
"fields" : [ ],
"microschema" : true
}
HTTP status code 200
Migration message.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Apply the provided changes on the latest version of the schema and migrate all nodes which are based on the schema. Please note that this operation is non-blocking and will continue to run in the background.
post /microschemas/{microschemaUuid}/changes
Apply the provided changes on the latest version of the schema and migrate all nodes which are based on the schema. Please note that this operation is non-blocking and will continue to run in the background.
URI Parameters
- microschemaUuid: required (string)
Uuid of the microschema.
Example:
2715307deafc4ecc95307deafccecc10
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
changes.items.operation | false | string | Type of operation for this change |
changes.items.uuid | false | string | Uuid of the change entry |
Example:
{
"changes" : [ {
"operation" : "ADDFIELD",
"properties" : {
"field" : "listFieldToBeAddedField",
"elasticsearch" : "{\"key\":\"value\"}",
"label" : "Field Label Value",
"type" : "list",
"listType" : "html"
}
}, {
"operation" : "CHANGEFIELDTYPE",
"properties" : {
"field" : "fieldToBeUpdated",
"type" : "string"
}
}, {
"operation" : "REMOVEFIELD",
"properties" : {
"field" : "fieldToBeRemoved"
}
}, {
"operation" : "UPDATEFIELD",
"properties" : {
"field" : "fieldToBeUpdated",
"displayFieldname" : "newDisplayField",
"label" : "newLabel"
}
}, {
"operation" : "UPDATESCHEMA",
"properties" : { }
} ]
}
HTTP status code 200
Microschema migration was invoked.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Compare the provided schema with the schema which is currently stored and generate a set of changes that have been detected.
post /microschemas/{microschemaUuid}/diff
Compare the provided schema with the schema which is currently stored and generate a set of changes that have been detected.
URI Parameters
- microschemaUuid: required (string)
Uuid of the microschema.
Example:
2715307deafc4ecc95307deafccecc10
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
description | false | string | Description of the microschema |
elasticsearch | false | object | Additional elasticsearch index configuration. This can be used to setup custom analyzers and filters. |
fields | false | array | List of microschema fields |
name | true | string | Name of the microschema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
Example:
{
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true
}
HTTP status code 200
Found difference between both microschemas.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
changes.items.operation | false | string | Type of operation for this change |
changes.items.uuid | false | string | Uuid of the change entry |
Example:
{
"changes" : [ {
"operation" : "ADDFIELD",
"properties" : {
"field" : "listFieldToBeAddedField",
"elasticsearch" : "{\"key\":\"value\"}",
"label" : "Field Label Value",
"type" : "list",
"listType" : "html"
}
}, {
"operation" : "CHANGEFIELDTYPE",
"properties" : {
"field" : "fieldToBeUpdated",
"type" : "string"
}
}, {
"operation" : "REMOVEFIELD",
"properties" : {
"field" : "fieldToBeRemoved"
}
}, {
"operation" : "UPDATEFIELD",
"properties" : {
"field" : "fieldToBeUpdated",
"displayFieldname" : "newDisplayField",
"label" : "newLabel"
}
}, {
"operation" : "UPDATESCHEMA",
"properties" : { }
} ]
}
Get the permissions on the microschema for all roles.
Grant permissions on the microschema to multiple roles.
Revoke permissions on the microschema from multiple roles.
get /microschemas/{microschemaUuid}/rolePermissions
Get the permissions on the microschema for all roles.
URI Parameters
- microschemaUuid: required (string)
Uuid of the microschema
Example:
2715307deafc4ecc95307deafccecc10
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /microschemas/{microschemaUuid}/rolePermissions
Grant permissions on the microschema to multiple roles.
URI Parameters
- microschemaUuid: required (string)
Uuid of the microschema
Example:
2715307deafc4ecc95307deafccecc10
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "df05a6d05af44821b695fda148784c86"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /microschemas/{microschemaUuid}/rolePermissions
Revoke permissions on the microschema from multiple roles.
URI Parameters
- microschemaUuid: required (string)
Uuid of the microschema
Example:
2715307deafc4ecc95307deafccecc10
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
/admin
Collection of administrative endpoints which usually require admin permission
Clear all internal caches (cluster wide).
delete /admin/cache
Clear all internal caches (cluster wide).
HTTP status code 200
Clearing the caches has been invoked.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Loads the cluster configuration.
Update the cluster configuration.
get /admin/cluster/config
Loads the cluster configuration.
HTTP status code 200
Currently active cluster configuration.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
readQuorum | false | integer | Global read quorum setting. |
servers | false | array | List of server configurations. |
writeQuorum | false | string | Global write quorum setting. Allowed values are numbers and 'all', 'majority'. |
Example:
{
"servers" : [ {
"name" : "master-1",
"role" : "MASTER"
}, {
"name" : "replica-1",
"role" : "REPLICA"
}, {
"name" : "replica-2",
"role" : "REPLICA"
} ],
"writeQuorum" : "majority",
"readQuorum" : 1
}
post /admin/cluster/config
Update the cluster configuration.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
readQuorum | false | integer | Global read quorum setting. |
servers | false | array | List of server configurations. |
writeQuorum | false | string | Global write quorum setting. Allowed values are numbers and 'all', 'majority'. |
Example:
{
"servers" : [ {
"name" : "master-1",
"role" : "MASTER"
}, {
"name" : "replica-1",
"role" : "REPLICA"
}, {
"name" : "replica-2",
"role" : "REPLICA"
} ],
"writeQuorum" : "1",
"readQuorum" : 1
}
HTTP status code 200
Updated cluster configuration.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
readQuorum | false | integer | Global read quorum setting. |
servers | false | array | List of server configurations. |
writeQuorum | false | string | Global write quorum setting. Allowed values are numbers and 'all', 'majority'. |
Example:
{
"servers" : [ {
"name" : "master-1",
"role" : "MASTER"
}, {
"name" : "replica-1",
"role" : "REPLICA"
}, {
"name" : "replica-2",
"role" : "REPLICA"
} ],
"writeQuorum" : "majority",
"readQuorum" : 1
}
Loads the cluster status information.
get /admin/cluster/status
Loads the cluster status information.
HTTP status code 200
Cluster status.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
Example:
{
"instances" : [ {
"address" : "127.0.0.1:2424",
"name" : "node1",
"status" : "ONLINE",
"startDate" : "2019-11-04T13:54:59.131Z",
"role" : "MASTER"
}, {
"address" : "127.0.0.1:2425",
"name" : "node2",
"status" : "ONLINE",
"startDate" : "2019-11-04T13:54:59.131Z",
"role" : "REPLICA"
} ]
}
Retrieves the currently active local configuration of this instance.
Sets the currently active local configuration of this instance.
get /admin/config
Retrieves the currently active local configuration of this instance.
HTTP status code 200
The currently active local configuration
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
readOnly | false | boolean | If true, mutating requests to this instance are not allowed. |
Example:
{
"readOnly" : false
}
post /admin/config
Sets the currently active local configuration of this instance.
HTTP status code 200
The currently active local configuration
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
readOnly | false | boolean | If true, mutating requests to this instance are not allowed. |
Example:
{
"readOnly" : false
}
Invokes a consistency check of the graph database without attempting to repairing the found issues. A list of found issues will be returned. When an async=true
query parameter is used, a new consistency check Job is queued, and the check results should be obtained with the call to the link:#admin_jobs__jobUuid__get[corresponding job].Please note that some checks do require an async
flag set.
get /admin/consistency/check
Invokes a consistency check of the graph database without attempting to repairing the found issues. A list of found issues will be returned. When an async=true
query parameter is used, a new consistency check Job is queued, and the check results should be obtained with the call to the link:#admin_jobs__jobUuid__get[corresponding job].Please note that some checks do require an async
flag set.
Query Parameters
- async: (boolean)
Specifiy whether the consistency check should be executed asynchronously (as job). Please note that some checks do require this flag set!
Example:
true
HTTP status code 200
Consistency check report
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
inconsistencies | true | array | List of found inconsistencies. |
outputTruncated | true | boolean | Flag which indicates whether the output was truncated because more than 250 have been found. |
repairCount | true | object | Counter for repair operations |
result | true | string | Result of the consistency check. |
Example:
{
"outputTruncated" : false,
"result" : "INCONSISTENT",
"repairCount" : { },
"inconsistencies" : [ {
"description" : "A dangling field container has been found.",
"severity" : "LOW",
"elementUuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"repaired" : false,
"repairAction" : "DELETE"
} ]
}
Invokes a consistency check and repair of the graph database and returns a list of found issues and their state. When an async=true
query parameter is used, a new consistency repair Job is queued, and the repair results should be obtained with the call to the link:#admin_jobs__jobUuid__get[corresponding job]. Please note that some repairs do require an async
flag set.
post /admin/consistency/repair
Invokes a consistency check and repair of the graph database and returns a list of found issues and their state. When an async=true
query parameter is used, a new consistency repair Job is queued, and the repair results should be obtained with the call to the link:#admin_jobs__jobUuid__get[corresponding job]. Please note that some repairs do require an async
flag set.
Query Parameters
- async: (boolean)
Specifiy whether the consistency check should be executed asynchronously (as job). Please note that some checks do require this flag set!
Example:
true
HTTP status code 200
Consistency check and repair report
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
inconsistencies | true | array | List of found inconsistencies. |
outputTruncated | true | boolean | Flag which indicates whether the output was truncated because more than 250 have been found. |
repairCount | true | object | Counter for repair operations |
result | true | string | Result of the consistency check. |
Example:
{
"outputTruncated" : false,
"result" : "INCONSISTENT",
"repairCount" : { },
"inconsistencies" : [ {
"description" : "A dangling field container has been found.",
"severity" : "LOW",
"elementUuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"repaired" : true,
"repairAction" : "DELETE"
} ]
}
Returns the currently active coordination configuration.
Update the coordinator configuration of this instance. Note that the updated config will not be persisted.
get /admin/coordinator/config
Returns the currently active coordination configuration.
HTTP status code 200
The currently active coordination config on this instance.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
mode | false | string | Coordinator mode which can be set to DISABLED to disable coordination, to CUD to handle only modifying requests or to ALL to handle all requests. |
Example:
{
"mode" : "CUD"
}
post /admin/coordinator/config
Update the coordinator configuration of this instance. Note that the updated config will not be persisted.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
mode | false | string | Coordinator mode which can be set to DISABLED to disable coordination, to CUD to handle only modifying requests or to ALL to handle all requests. |
Example:
{
"mode" : "DISABLED"
}
HTTP status code 200
The currently active config on this instance.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
mode | false | string | Coordinator mode which can be set to DISABLED to disable coordination, to CUD to handle only modifying requests or to ALL to handle all requests. |
Example:
{
"mode" : "CUD"
}
Returns information on the elected coordinator master.
Make this instance the coordination master.
get /admin/coordinator/master
Returns information on the elected coordinator master.
HTTP status code 200
Currently elected master.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
host | false | string | Hostname of the coordination master instance. |
name | false | string | Cluster node name of the coordination master. |
port | false | integer | HTTP port of the coordination master Gentics Mesh API. |
Example:
{
"name" : "gentics-mesh-1",
"port" : 8080,
"host" : "172.10.1.10"
}
post /admin/coordinator/master
Make this instance the coordination master.
HTTP status code 200
Election status message.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Downloads a zip file of various debug information files.
get /admin/debuginfo
Downloads a zip file of various debug information files.
Query Parameters
- include: (string)
Information to include. See the documentation for possible values.
Example:
-backup,consistencyCheck
Invoke a graph database backup and dump the data to the configured backup location. Note that this operation will block all current operation. Irrelevant for non-OrientDB server.
post /admin/graphdb/backup
Invoke a graph database backup and dump the data to the configured backup location. Note that this operation will block all current operation. Irrelevant for non-OrientDB server.
Query Parameters
- consistencyCheck: (boolean)
Specify whether the consistency check should be run before running the backup.
Example:
true
HTTP status code 200
Incremental backup was invoked.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Invoke a orientdb graph database export. Irrelevant for non-OrientDB server.
post /admin/graphdb/export
Invoke a orientdb graph database export. Irrelevant for non-OrientDB server.
HTTP status code 200
Export process was invoked.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Invoke a orientdb graph database import. The latest import file from the import directory will be used for this operation. Irrelevant for non-OrientDB server.
post /admin/graphdb/import
Invoke a orientdb graph database import. The latest import file from the import directory will be used for this operation. Irrelevant for non-OrientDB server.
HTTP status code 200
Database import command was invoked.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Invoke a graph database restore. The latest dump from the backup directory will be inserted. Please note that this operation will block all current operation and effectively destroy all previously stored data. Irrelevant for non-OrientDB server.
post /admin/graphdb/restore
Invoke a graph database restore. The latest dump from the backup directory will be inserted. Please note that this operation will block all current operation and effectively destroy all previously stored data. Irrelevant for non-OrientDB server.
HTTP status code 200
Database restore command was invoked.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
List all currently queued jobs.
get /admin/jobs
List all currently queued jobs.
Query Parameters
- fromVersion: (string)
Parameter for filtering jobs by the 'from' version. Multiple values can be given separated by commas.
- microschemaName: (string)
Parameter for filtering jobs by the microschema name. Multiple values can be given separated by commas.
- microschemaUuid: (string)
Parameter for filtering jobs by the microschema uuid. Multiple values can be given separated by commas.
- branchName: (string)
Parameter for filtering jobs by the branch name. Multiple values can be given separated by commas.
- branchUuid: (string)
Parameter for filtering jobs by the branch uuid. Multiple values can be given separated by commas.
- type: (string)
Parameter for filtering jobs by their type. Multiple values can be given separated by commas.
- schemaName: (string)
Parameter for filtering jobs by the schema name. Multiple values can be given separated by commas.
- status: (string)
Parameter for filtering jobs by their status. Multiple values can be given separated by commas.
- schemaUuid: (string)
Parameter for filtering jobs by the schema uuid. Multiple values can be given separated by commas.
- toVersion: (string)
Parameter for filtering jobs by the 'to' version. Multiple values can be given separated by commas.
HTTP status code 200
List of jobs.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "afacd93df77a44a2acd93df77a54a27b",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"type" : "branch",
"properties" : {
"fromVersion" : "1.0",
"branchUuid" : "39f69bee0baa415eb69bee0baa115e82",
"schemaUuid" : "2aa83a2b3cba40a1a83a2b3cba90a1de",
"toVersion" : "2.0"
},
"completionCount" : 0,
"warnings" : [ ]
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 25,
"pageCount" : 1,
"totalCount" : 1
}
}
Load a specific job.
Deletes the job. Note that it is only possible to delete failed jobs
get /admin/jobs/{jobUuid}
Load a specific job.
URI Parameters
- jobUuid: required (string)
Uuid of the job.
Example:
afacd93df77a44a2acd93df77a54a27b
HTTP status code 200
Job information.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
completionCount | true | integer | The completion count of the job. This indicates how many items the job has processed. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
errorDetail | false | string | The detailed error information of the job. |
errorMessage | false | string | The error message of the job. |
nodeName | false | string | Name of the Gentics Mesh instance on which the job was executed. |
properties | true | object | Properties of the job. |
startDate | true | string | The start date of the job. |
status | true | string | Migration status. |
stopDate | true | string | The stop date of the job. |
type | true | string | The type of the job. |
uuid | true | string | Uuid of the element |
warnings | false | array | List of warnings which were encoutered while executing the job. |
Example:
{
"uuid" : "afacd93df77a44a2acd93df77a54a27b",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"type" : "branch",
"properties" : {
"fromVersion" : "1.0",
"branchUuid" : "39f69bee0baa415eb69bee0baa115e82",
"schemaUuid" : "2aa83a2b3cba40a1a83a2b3cba90a1de",
"toVersion" : "2.0"
},
"completionCount" : 0,
"warnings" : [ ]
}
delete /admin/jobs/{jobUuid}
Deletes the job. Note that it is only possible to delete failed jobs
URI Parameters
- jobUuid: required (string)
Uuid of the job.
Example:
afacd93df77a44a2acd93df77a54a27b
Deletes error state from the job. This will make it possible to execute the job once again.
delete /admin/jobs/{jobUuid}/error
Deletes error state from the job. This will make it possible to execute the job once again.
URI Parameters
- jobUuid: required (string)
Uuid of the job.
Example:
afacd93df77a44a2acd93df77a54a27b
Process the job. Failed jobs will be automatically reset and put in queued state.
post /admin/jobs/{jobUuid}/process
Process the job. Failed jobs will be automatically reset and put in queued state.
URI Parameters
- jobUuid: required (string)
Uuid of the job.
Example:
afacd93df77a44a2acd93df77a54a27b
Deploys the plugin using the provided deployment information.
Loads deployment information for all deployed plugins.
post /admin/plugins
Deploys the plugin using the provided deployment information.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
path | true | string | Deployment path of the plugin which is relative to the plugin directory. |
Example:
{
"path" : "my-plugin.jar"
}
HTTP status code 200
Plugin response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
id | true | string | Id of the plugin. |
manifest | true | object | Manifest of the plugin |
name | true | string | Name of the plugin. |
status | true | string | Status of the plugin |
Example:
{
"id" : "hello-world",
"name" : "Hello World 1",
"manifest" : {
"id" : "hello-world",
"name" : "Hello World 1",
"description" : "A dummy plugin",
"version" : "1.0",
"author" : "Joe Doe",
"inception" : "2018-10-12T14:15:06.024Z",
"license" : "Apache License 2.0"
}
}
get /admin/plugins
Loads deployment information for all deployed plugins.
HTTP status code 200
Plugin list response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"id" : "hello-world-1",
"name" : "Hello World 1",
"manifest" : {
"id" : "hello-world-1",
"name" : "Hello World 1",
"description" : "A dummy plugin",
"version" : "1.0",
"author" : "Joe Doe",
"inception" : "2018-10-12T14:15:06.024Z",
"license" : "Apache License 2.0"
}
}, {
"id" : "hello-world-2",
"name" : "Hello World 2",
"manifest" : {
"id" : "hello-world-2",
"name" : "Hello World 2",
"description" : "A dummy plugin",
"version" : "1.0",
"author" : "Joe Doe",
"inception" : "2018-10-12T14:15:06.024Z",
"license" : "Apache License 2.0"
}
}, {
"id" : "hello-world-3",
"name" : "Hello World 3",
"manifest" : {
"id" : "hello-world-3",
"name" : "Hello World 3",
"description" : "A dummy plugin",
"version" : "1.0",
"author" : "Joe Doe",
"inception" : "2018-10-12T14:15:06.024Z",
"license" : "Apache License 2.0"
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 25,
"pageCount" : 1,
"totalCount" : 3
}
}
Undeploys the plugin with the given uuid.
delete /admin/plugins/{id}
Undeploys the plugin with the given uuid.
URI Parameters
- id: required (string)
Id of the plugin.
Example:
hello-world
HTTP status code 200
Plugin response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
id | true | string | Id of the plugin. |
manifest | true | object | Manifest of the plugin |
name | true | string | Name of the plugin. |
status | true | string | Status of the plugin |
Example:
{
"id" : "hello-world",
"name" : "Hello World 1",
"manifest" : {
"id" : "hello-world",
"name" : "Hello World 1",
"description" : "A dummy plugin",
"version" : "1.0",
"author" : "Joe Doe",
"inception" : "2018-10-12T14:15:06.024Z",
"license" : "Apache License 2.0"
}
}
Loads deployment information for the plugin with the given id.
get /admin/plugins/{uuid}
Loads deployment information for the plugin with the given id.
URI Parameters
- uuid: required (string)
Uuid of the plugin.
Example:
hello-world
HTTP status code 200
Plugin response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
id | true | string | Id of the plugin. |
manifest | true | object | Manifest of the plugin |
name | true | string | Name of the plugin. |
status | true | string | Status of the plugin |
Example:
{
"id" : "hello-world",
"name" : "Hello World 1",
"manifest" : {
"id" : "hello-world",
"name" : "Hello World 1",
"description" : "A dummy plugin",
"version" : "1.0",
"author" : "Joe Doe",
"inception" : "2018-10-12T14:15:06.024Z",
"license" : "Apache License 2.0"
}
}
Invoke the processing of remaining jobs.
post /admin/processJobs
Invoke the processing of remaining jobs.
HTTP status code 200
Response message.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Initiates shutdown of this instance.
post /admin/shutdown
Initiates shutdown of this instance.
HTTP status code 200
Shutdown initiated.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Return the Gentics Mesh server status.
/health
Endpoints for Mesh health checks
Returns an empty response with status code 200 if Gentics Mesh is alive.
get /health/live
Returns an empty response with status code 200 if Gentics Mesh is alive.
Returns an empty response with status code 200 if Gentics Mesh is ready. Responds with 503 otherwise.
get /health/ready
Returns an empty response with status code 200 if Gentics Mesh is ready. Responds with 503 otherwise.
Returns an empty response with status code 200 if Gentics Mesh is writable. Responds with 503 otherwise.
get /health/writable
Returns an empty response with status code 200 if Gentics Mesh is writable. Responds with 503 otherwise.
/search
Provides search endpoints which can be used to invoke global searches
Drops all indices and recreates them. The index sync is not invoked automatically.
post /search/clear
Drops all indices and recreates them. The index sync is not invoked automatically.
Query Parameters
- index: (string)
Index pattern to handle
Example:
node-.*
HTTP status code 200
Recreated all indices.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Invoke a search query for groups and return a paged list response.
post /search/groups
Invoke a search query for groups and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for groups
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "25ba1622a1f7458fba1622a1f7658fea",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Admin Group",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ {
"name" : "admin",
"uuid" : "cc9999a4194d4f069999a4194d1f06d7"
} ]
}, {
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d",
"name" : "Editor Group",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"roles" : [ ]
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for microschemas and return a paged list response.
post /search/microschemas
Invoke a search query for microschemas and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for microschemas
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for nodes and return a paged list response.
post /search/nodes
Invoke a search query for nodes and return a paged list response.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- perPage: (number)
Number of elements per page.
Example:
42
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for nodes
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for projects and return a paged list response.
post /search/projects
Invoke a search query for projects and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for projects
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "d3b1840b01464b54b1840b0146cb54f5",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Dummy project",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "217f8c981ada4642bf8c981adaa642c3",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Dummy Project (Mobile)",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for roles and return a paged list response.
post /search/roles
Invoke a search query for roles and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for roles
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "ddcddceb33d648318ddceb33d618314f",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Reader role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ ]
}, {
"uuid" : "cc9999a4194d4f069999a4194d1f06d7",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Admin role",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
}, {
"name" : "clients",
"uuid" : "df81c23d9ff1450081c23d9ff195005e"
} ]
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for schemas and return a paged list response.
post /search/schemas
Invoke a search query for schemas and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for schemas
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Returns the search index status.
get /search/status
Returns the search index status.
HTTP status code 200
Search index status.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
available | true | boolean | Flag which indicates whether Elasticsearch is available and search queries can be executed. |
metrics | false | object | Map which contains various metric values. |
Example:
{
"available" : true,
"metrics" : {
"tagfamily" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"schema" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"node" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"role" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"microschema" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"project" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"tag" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"user" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
},
"group" : {
"insert" : {
"synced" : 0,
"pending" : 0
},
"update" : {
"synced" : 0,
"pending" : 0
},
"delete" : {
"synced" : 0,
"pending" : 0
}
}
}
}
Invokes the manual synchronisation of the search indices. This operation may take some time to complete and is performed asynchronously. When clustering is enabled it will be executed on any free instance.
post /search/sync
Invokes the manual synchronisation of the search indices. This operation may take some time to complete and is performed asynchronously. When clustering is enabled it will be executed on any free instance.
Query Parameters
- index: (string)
Index pattern to handle
Example:
node-.*
HTTP status code 200
Invoked index synchronisation on all indices.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Invoke a search query for tagFamilies and return a paged list response.
post /search/tagFamilies
Invoke a search query for tagFamilies and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for tagFamilies
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Colors",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for tags and return a paged list response.
post /search/tags
Invoke a search query for tags and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for tags
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "green",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Name for language tag en",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for users and return a paged list response.
post /search/users
Invoke a search query for users and return a paged list response.
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result for users
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "jdoe",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Roe",
"firstname" : "Jane",
"username" : "jroe",
"emailAddress" : "j.roe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
}, {
"name" : "webclient",
"uuid" : "4267d8bf30824e36a7d8bf3082de36a3"
}, {
"name" : "editors",
"uuid" : "589319933be24ec79319933be24ec7fe"
} ],
"admin" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
/rawSearch
Provides search endpoints which can be used to invoke global searches which return the unmodified Elasticsearch response.
Invoke a search query for groups and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/groups
Invoke a search query for groups and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for microschemas and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/microschemas
Invoke a search query for microschemas and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for nodes and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/nodes
Invoke a search query for nodes and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for projects and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/projects
Invoke a search query for projects and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for roles and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/roles
Invoke a search query for roles and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for schemas and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/schemas
Invoke a search query for schemas and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for tagFamilies and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/tagFamilies
Invoke a search query for tagFamilies and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for tags and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/tags
Invoke a search query for tags and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for users and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /rawSearch/users
Invoke a search query for users and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
/utilities
Provides endpoints for various utility actions
Return the posted text and resolve and replace all found mesh links. A mesh link must be in the format {{mesh.link("UUID","languageTag")}}
post /utilities/linkResolver
Return the posted text and resolve and replace all found mesh links. A mesh link must be in the format {{mesh.link("UUID","languageTag")}}
Query Parameters
- lang: (string)
ISO 639-1 language tag of the language which should be loaded. Fallback handling can be applied by specifying multiple languages in a comma-separated list. The first matching language will be returned. If omitted or the requested language is not available then the defaultLanguage as configured in mesh.yml will be returned.
Example:
en,de
- resolveLinks: (string)
The resolve links parameter can be set to either short, medium or full. Stored mesh links will automatically be resolved and replaced by the resolved webroot link. With the parameter set the path property as well as the languagesPath property (for available language variants) will be included in the response. Gentics Mesh links in any HTML-typed field will automatically be resolved and replaced by the resolved WebRoot path. No resolving occurs if no link has been specified.
Example:
medium
Body
Type: text/plain
Example:
Some text before {{mesh.link("adaf48da8c124049af48da8c12a0493e", "en")}} and after.
HTTP status code 200
Some text before /api/v2/dummy/webroot/flower.jpg and after
Validate the posted microschema and report errors.
post /utilities/validateMicroschema
Validate the posted microschema and report errors.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
description | false | string | Description of the microschema |
elasticsearch | false | object | Additional elasticsearch index configuration. This can be used to setup custom analyzers and filters. |
fields | false | array | List of microschema fields |
name | true | string | Name of the microschema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
Example:
{
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true
}
HTTP status code 200
The validation report
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
elasticsearch | false | object | The generated default elasticsearch index configuration which includes the used analyzers and mappings. |
languageElasticsearch | false | object | The generated elasticsearch index configuration for each language. |
message | true | object | Detailed validation message. |
status | true | string | Status of the validation. |
Example:
{
"status" : "VALID",
"message" : {
"message" : "Schema validation was successful."
},
"elasticsearch" : {
"settings" : {
"analysis" : {
"analyzer" : {
"trigrams" : {
"tokenizer" : "my_ngram_tokenizer",
"filter" : [ "lowercase" ]
}
},
"tokenizer" : {
"my_ngram_tokenizer" : {
"type" : "nGram",
"min_gram" : "3",
"max_gram" : "3"
}
}
},
"somebogus" : "value"
},
"mappings" : {
"default" : {
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
},
"created" : {
"type" : "date",
"index" : "not_analyzed"
},
"edited" : {
"type" : "date",
"index" : "not_analyzed"
},
"editor" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"creator" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"_roleUuids" : {
"type" : "string",
"index" : "not_analyzed"
},
"project" : {
"type" : "object",
"properties" : {
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"tags" : {
"type" : "nested",
"properties" : {
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"tagFamilies" : {
"type" : "object",
"dynamic" : true
},
"language" : {
"type" : "string",
"index" : "not_analyzed"
},
"schema" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
},
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"version" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"displayField" : {
"type" : "object",
"properties" : {
"key" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"value" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}
}
},
"parentNode" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"fields" : {
"properties" : { }
}
},
"dynamic" : "strict",
"dynamic_templates" : [ {
"tagFamilyUuid" : {
"path_match" : "tagFamilies.*.uuid",
"match_mapping_type" : "*",
"mapping" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}, {
"tagFamilyTags" : {
"path_match" : "tagFamilies.*.tags",
"match_mapping_type" : "*",
"mapping" : {
"type" : "nested",
"properties" : {
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}
}
} ]
}
}
}
}
Validate the posted schema and report errors.
post /utilities/validateSchema
Validate the posted schema and report errors.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should create new versions. |
container | false | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
description | false | string | New description of the schema. |
displayField | false | string | Name of the display field. |
elasticsearch | false | object | Additional elasticsearch index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | 'Exclude from indexing' schema flag. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
version | false | string | Version of the schema. |
Example:
{
"description" : "New description",
"name" : "extended-content",
"fields" : [ ],
"microschema" : false
}
HTTP status code 200
The validation message
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
elasticsearch | false | object | The generated default elasticsearch index configuration which includes the used analyzers and mappings. |
languageElasticsearch | false | object | The generated elasticsearch index configuration for each language. |
message | true | object | Detailed validation message. |
status | true | string | Status of the validation. |
Example:
{
"status" : "VALID",
"message" : {
"message" : "Schema validation was successful."
},
"elasticsearch" : {
"settings" : {
"analysis" : {
"analyzer" : {
"trigrams" : {
"tokenizer" : "my_ngram_tokenizer",
"filter" : [ "lowercase" ]
}
},
"tokenizer" : {
"my_ngram_tokenizer" : {
"type" : "nGram",
"min_gram" : "3",
"max_gram" : "3"
}
}
},
"somebogus" : "value"
},
"mappings" : {
"default" : {
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
},
"created" : {
"type" : "date",
"index" : "not_analyzed"
},
"edited" : {
"type" : "date",
"index" : "not_analyzed"
},
"editor" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"creator" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"_roleUuids" : {
"type" : "string",
"index" : "not_analyzed"
},
"project" : {
"type" : "object",
"properties" : {
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"tags" : {
"type" : "nested",
"properties" : {
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"tagFamilies" : {
"type" : "object",
"dynamic" : true
},
"language" : {
"type" : "string",
"index" : "not_analyzed"
},
"schema" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
},
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"version" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"displayField" : {
"type" : "object",
"properties" : {
"key" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"value" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}
}
},
"parentNode" : {
"type" : "object",
"properties" : {
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"fields" : {
"properties" : { }
}
},
"dynamic" : "strict",
"dynamic_templates" : [ {
"tagFamilyUuid" : {
"path_match" : "tagFamilies.*.uuid",
"match_mapping_type" : "*",
"mapping" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}, {
"tagFamilyTags" : {
"path_match" : "tagFamilies.*.tags",
"match_mapping_type" : "*",
"mapping" : {
"type" : "nested",
"properties" : {
"name" : {
"type" : "string",
"index" : "analyzed",
"analyzer" : "trigrams",
"fields" : {
"raw" : {
"type" : "string",
"index" : "not_analyzed"
}
}
},
"uuid" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}
}
} ]
}
}
}
}
/auth
Endpoint which contains login and logout methods.
Login via basic or bearer authentication.
Login via this dedicated login endpoint.
post /auth/login
Login via this dedicated login endpoint.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
apikey | false | string | API key of the user to log in. |
newPassword | false | string | New password that will be set after successful login. |
password | false | string | Password of the user which should be logged in. |
username | false | string | Username of the user which should be logged in. |
Example:
{
"username" : "admin",
"password" : "finger"
}
HTTP status code 200
Generated login token.
Body
Type: text/plain
Example:
{"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyVXVpZCI6IlVVSURPRlVTRVIxIiwiZXhwIjoxNDY5MTE3MjQ3LCJpYXQiOjE0NjkxMTM2NDd9.i1u4RMs4K7zBkGhmcpp1P79Wpz2UQYJkZKJTVdFp_iU="}
Logout and delete the currently active session.
get /auth/logout
Logout and delete the currently active session.
HTTP status code 200
User was successfully logged out.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Load your own user which is currently logged in.
get /auth/me
Load your own user which is currently logged in.
HTTP status code 200
Currently logged in user.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
admin | false | boolean | Flag which indicates whether the user is an admin. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
emailAddress | false | string | Email address of the user |
enabled | true | boolean | Flag which indicates whether the user is enabled or disabled. Disabled users can no longer log into Gentics Mesh. Deleting a user user will not remove it. Instead the user will just be disabled. |
firstname | false | string | Firstname of the user. |
forcedPasswordChange | true | boolean | When true, the user needs to change their password on the next login. |
groups | true | array | List of group references to which the user belongs. |
lastname | false | string | Lastname of the user. |
nodeReference | false | object | Optional node reference of the user. Users can directly reference a single node. This can be used to store additional data that is user related. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rolesHash | true | string | Hashsum of user roles which can be used for user permission caching. |
username | true | string | Username of the user. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "589319933be24ec79319933be24ec7fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"lastname" : "Doe",
"firstname" : "Joe",
"username" : "jdoe",
"emailAddress" : "j.doe@nowhere.com",
"nodeReference" : {
"projectName" : "dummy",
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"schema" : {
"name" : "vehicle",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
}
},
"enabled" : true,
"groups" : [ {
"name" : "editors",
"uuid" : "e728c2fc5a0146a2a8c2fc5a0186a28d"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
/eventbus
This endpoint is a SockJS compliant websocket that creates a bridge to the mesh eventbus. It allows handling of various mesh specific events.
/
Provides endpoints that return information about the REST API.
Endpoint which returns version information
get //
Endpoint which returns version information
HTTP status code 200
JSON which contains version information
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
databaseRevision | false | string | Database structure revision hash. |
databaseVendor | false | string | Used database implementation vendor name. |
databaseVersion | false | string | Used database implementation version. |
meshNodeName | false | string | Node name of the Gentics Mesh instance. |
meshVersion | false | string | Gentics Mesh Version string. |
searchVendor | false | string | Used search implementation vendor name. |
searchVersion | false | string | Used search implementation version. |
vertxVersion | false | string | Used Vert.x version. |
Example:
{
"meshVersion" : "2.1.10",
"meshNodeName" : "Reminiscent Tirtouga",
"databaseVendor" : "orientdb",
"databaseVersion" : "2.2.16",
"searchVendor" : "elasticsearch",
"searchVersion" : "2.4.3",
"vertxVersion" : "4.5.7"
}
Endpoint which provides a RAML document for all registed endpoints.
Return the current project info.
get //{project}
Return the current project info.
URI Parameters
- project: required (string)
Name of the project.
Example:
demo
HTTP status code 200
Project information.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
languages | false | array | Project's languages. |
name | true | string | The name of the project. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
rootNode | true | object | The project root node. All futher nodes are children of this node. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "d3b1840b01464b54b1840b0146cb54f5",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "demo",
"rootNode" : {
"uuid" : "adaf48da8c124049af48da8c12a0493e"
},
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
/{project}/nodes
Provides endpoints which allow the manipulation of nodes.
Create a new node.
Read all nodes and return a paged list response.
post /{project}/nodes/
Create a new node.
URI Parameters
- project: required (string)
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
assignLanguage | false | boolean | Assign a requested language to the project, if none was so far. Default is 'true'. |
fields | true | object | Dynamic map with fields of the node content. |
grant | false | object | Permissions to be granted to roles on the created node. |
language | true | string | ISO 639-1 language tag of the node content. |
parentNode | true | object | Reference to the parent node in which the node will be created. The uuid of this object must be set. |
publish | false | boolean | Whether the publish the node after creation. |
schema | true | object | Reference to the schema of the node. |
tags | false | array | List of tags that should be used to tag the node. |
Example:
{
"parentNode" : {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f"
},
"schema" : {
"name" : "vehicle"
},
"language" : "en",
"fields" : {
"name" : "DeLorean DMC-12",
"description" : "The DeLorean DMC-12 is a sports car manufactured by John DeLorean's DeLorean Motor Company for the American market from 1981–83."
},
"publish" : false,
"assignLanguage" : true
}
HTTP status code 201
Created node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
get /{project}/nodes/
Read all nodes and return a paged list response.
URI Parameters
- project: required (string)
Query Parameters
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
- perPage: (number)
Number of elements per page.
Example:
42
- resolveLinks: (string)
The resolve links parameter can be set to either short, medium or full. Stored mesh links will automatically be resolved and replaced by the resolved webroot link. With the parameter set the path property as well as the languagesPath property (for available language variants) will be included in the response. Gentics Mesh links in any HTML-typed field will automatically be resolved and replaced by the resolved WebRoot path. No resolving occurs if no link has been specified.
Example:
medium
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- lang: (string)
ISO 639-1 language tag of the language which should be loaded. Fallback handling can be applied by specifying multiple languages in a comma-separated list. The first matching language will be returned. If omitted or the requested language is not available then the defaultLanguage as configured in mesh.yml will be returned.
Example:
en,de
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
Loaded list of nodes.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Load the node with the given uuid.
Update or create the node with the given uuid. Mesh will automatically check for version conflicts if a version was specified in the request and return a 409 error if a conflict has been detected. Additional conflict checks for WebRoot path conflicts will also be performed. The node is created if no node with the specified uuid could be found.
Delete the node with the given uuid.
get /{project}/nodes/{nodeUuid}
Load the node with the given uuid.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- role: (string)
The role query parameter take a UUID of a role and may be used to add permission information to the response via the rolePerm property which lists the permissions for the specified role on the element. This may be useful when you are logged in as admin but you want to retrieve the editor role permissions on a given node. Endpoint: /api/v2/:projectName/nodes?role=:roleUuid
Example:
24cf92691c7641158f92691c76c115ef
- resolveLinks: (string)
The resolve links parameter can be set to either short, medium or full. Stored mesh links will automatically be resolved and replaced by the resolved webroot link. With the parameter set the path property as well as the languagesPath property (for available language variants) will be included in the response. Gentics Mesh links in any HTML-typed field will automatically be resolved and replaced by the resolved WebRoot path. No resolving occurs if no link has been specified.
Example:
medium
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- lang: (string)
ISO 639-1 language tag of the language which should be loaded. Fallback handling can be applied by specifying multiple languages in a comma-separated list. The first matching language will be returned. If omitted or the requested language is not available then the defaultLanguage as configured in mesh.yml will be returned.
Example:
en,de
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 200
Loaded node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
post /{project}/nodes/{nodeUuid}
Update or create the node with the given uuid. Mesh will automatically check for version conflicts if a version was specified in the request and return a 409 error if a conflict has been detected. Additional conflict checks for WebRoot path conflicts will also be performed. The node is created if no node with the specified uuid could be found.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
assignLanguage | false | boolean | Assign a requested language to the project, if none was so far. |
fields | false | object | Dynamic map with fields of the node content. |
grant | false | object | Permissions to be granted to roles on the updated node. |
language | false | string | ISO 639-1 language tag of the node content. |
manipulation | false | object | Image manipulation changes request. |
publish | false | boolean | Whether the publish the node after updating. |
tags | false | array | List of tags that should be used to tag the node. |
version | false | string | Version number which can be provided in order to handle and detect concurrent changes to the node content. |
Example:
{
"language" : "en",
"fields" : {
"filename" : "index-renamed.en.html",
"relatedProduct-" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "86c0a2b6435d434280a2b6435da34247"
}, {
"uuid" : "4c83d010122c4a2783d010122c4a2782"
}, {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
} ],
"image" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"version" : "1.0",
"publish" : false,
"assignLanguage" : true
}
HTTP status code 200
Updated node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
HTTP status code 409
A conflict has been detected.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
delete /{project}/nodes/{nodeUuid}
Delete the node with the given uuid.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- recursive: (boolean)
Specifiy whether deletion should also be applied recursively
Example:
true
HTTP status code 204
Deletion was successful.
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Update the binaryfield with the given name.
Download the binary field with the given name. You can use image query parameters for crop and resize if the binary data represents an image.
post /{project}/nodes/{nodeUuid}/binary/{fieldName}
Update the binaryfield with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the binary field
Example:
image
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: multipart/form-data
Form Parameters- binary: required (file)
Single binary file part.
- language: required (string)
Language of the node content which contains the binary field which should be updated.
Example:
en
- version: required (string)
Version of the node which should be updated. This information is used to determine conflicting updates.
Example:
1.0
HTTP status code 200
The response contains the updated node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 404
The node or the field could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
get /{project}/nodes/{nodeUuid}/binary/{fieldName}
Download the binary field with the given name. You can use image query parameters for crop and resize if the binary data represents an image.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the binary field
Example:
image
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- fpz: (number)
Set the focal point zoom factor. The value must be greater than one.
Example:
1.5
- rect: (string)
Set image crop area.
Example:
20,20,128,128
- w: (number)
Set image target width. The height will automatically be calculated if the width was omitted.
Example:
1280
- h: (number)
Set image target height. The width will automatically be calculated if the height was omitted.
Example:
720
- resize: (string)
Set the resize mode. Possible modes: force : The force mode will resize the image to the specified dimensions. This can lead to a distorted image when the aspect ratio of the source image does not match the destination aspect ratio smart : The smart mode will resize the image proportionally so that the resulting destination format matches the source format in at least one dimension. No distortion of the image will occur. prop : The prop mode will resize the image proportionally so that the resulting destination format fits inside the provided dimensions. No distortion of the image will occur.
Example:
smart
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
- fpy: (number)
Set the focal point y factor between 0 and 1 where 0.5 is the middle of the image. You can use this parameter in combination with the crop=fp parameter in order to crop and resize the image in relation to the given point.
Example:
0.2
- crop: (string)
Set the crop mode. Possible modes: rect : The rect mode will work in combination with the rect parameter and crop the specified area. fp : The fp mode will utilize the specified or pre-selected focal point and crop the image according to the position of the focus point and the specified image size.
Example:
rect
- fpx: (number)
Set the focal point x factor between 0 and 1 where 0.5 is the middle of the image. You can use this parameter in combination with the crop=fp parameter in order to crop and resize the image in relation to the given point.
Example:
0.1
Set the check status for the binaryfield with the given name.
post /{project}/nodes/{nodeUuid}/binary/{fieldName}/checkCallback
Set the check status for the binaryfield with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the field for which the check status is to be updated.
Example:
stringField
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: multipart/form-data
Form Parameters- reason: (string)
The reason why the binary was denied.
Example:
Malware detected
- status: required (string)
The result of the binary check. One of ACCEPTED or DENIED.
Example:
DENIED
HTTP status code 204
HTTP status code 404
The node or the field could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Get the list of image manipulation variants of the binary, possessed by a field with the given name.
Delete unused image manipulation variants of the binary, referenced by a field with the given name.
Add new image variants to the binary, referenced by a field with the given name.
get /{project}/nodes/{nodeUuid}/binary/{fieldName}/variants
Get the list of image manipulation variants of the binary, possessed by a field with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the image field.
Example:
image
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- original: (boolean)
Specifies a need to retrieve original image along with its manipulation variants.
Example:
true
- filesize: (boolean)
Specifies a need to retrieve filesizes for the returned image manipulation variants.
Example:
true
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 200
A list of image variants have been returned.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
variants | false | array | List of image manipulation variants. |
Example:
{
"variants" : [ {
"width" : 500,
"height" : 100,
"origin" : true,
"auto" : false
}, {
"rect" : {
"startX" : 10,
"startY" : 10,
"width" : 20,
"height" : 20
},
"cropMode" : "RECT",
"origin" : false,
"auto" : false
}, {
"height" : 50,
"origin" : false,
"auto" : false
} ]
}
delete /{project}/nodes/{nodeUuid}/binary/{fieldName}/variants
Delete unused image manipulation variants of the binary, referenced by a field with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the image field.
Example:
image
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- original: (boolean)
Specifies a need to retrieve original image along with its manipulation variants.
Example:
true
- filesize: (boolean)
Specifies a need to retrieve filesizes for the returned image manipulation variants.
Example:
true
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 204
Image variants have been deleted.
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
post /{project}/nodes/{nodeUuid}/binary/{fieldName}/variants
Add new image variants to the binary, referenced by a field with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the image field.
Example:
image
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- original: (boolean)
Specifies a need to retrieve original image along with its manipulation variants.
Example:
true
- filesize: (boolean)
Specifies a need to retrieve filesizes for the returned image manipulation variants.
Example:
true
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
deleteOther | false | boolean | This flag states that all the existing variants, except the mentioned in `variants` field, should be dropped.If no variants are provided along with the flag, all the image manipulation variants are to be dropped. |
variants | false | array | This field contains a set of image manipulation variants to be manipulated upon. |
Example:
{
"variants" : [ {
"width" : "auto",
"height" : "100",
"resizeMode" : "SMART",
"cacheKey" : "resizeSMARTrwautorh100"
}, {
"resizeMode" : "SMART",
"focalPoint" : {
"x" : 0.3,
"y" : 0.3
},
"focalZoom" : 0.6,
"focalPointZoom" : 0.6,
"cacheKey" : "resizeSMARTfp0.3-0.3fpz0.6"
} ],
"deleteOther" : false
}
HTTP status code 200
An updated list of variants is returned
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
variants | false | array | List of image manipulation variants. |
Example:
{
"variants" : [ {
"width" : 500,
"height" : 100,
"origin" : true,
"auto" : false
}, {
"rect" : {
"startX" : 10,
"startY" : 10,
"width" : 20,
"height" : 20
},
"cropMode" : "RECT",
"origin" : false,
"auto" : false
}, {
"height" : 50,
"origin" : false,
"auto" : false
} ]
}
HTTP status code 404
The node or the field could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Transform the image with the given field name and overwrite the stored image with the transformation result.
post /{project}/nodes/{nodeUuid}/binaryTransform/{fieldName}
Transform the image with the given field name and overwrite the stored image with the transformation result.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the field
Example:
image
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
cropMode | false | string | Crop mode. To be used in conjunction with cropRect |
cropRect | false | object | Crop area. |
focalPoint | false | object | Optional new focal point for the transformed image. |
height | false | string | New height of the image. |
language | true | string | ISO 639-1 language tag of the node which provides the image which should be transformed. |
resizeMode | false | string | Resize mode. |
version | true | string | Version number which must be provided in order to handle and detect concurrent changes to the node content. |
width | false | string | New width of the image. |
Example:
{
"version" : "1.0",
"language" : "en",
"width" : "100",
"height" : "200",
"cropRect" : {
"startX" : 50,
"startY" : 20,
"width" : 170,
"height" : 150
},
"focalPoint" : {
"x" : 0.3,
"y" : 0.6
}
}
HTTP status code 200
Transformation was executed and updated node was returned.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 404
The node or the field could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Load all child nodes and return a paged list response.
get /{project}/nodes/{nodeUuid}/children
Load all child nodes and return a paged list response.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- perPage: (number)
Number of elements per page.
Example:
42
- resolveLinks: (string)
The resolve links parameter can be set to either short, medium or full. Stored mesh links will automatically be resolved and replaced by the resolved webroot link. With the parameter set the path property as well as the languagesPath property (for available language variants) will be included in the response. Gentics Mesh links in any HTML-typed field will automatically be resolved and replaced by the resolved WebRoot path. No resolving occurs if no link has been specified.
Example:
medium
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- lang: (string)
ISO 639-1 language tag of the language which should be loaded. Fallback handling can be applied by specifying multiple languages in a comma-separated list. The first matching language will be returned. If omitted or the requested language is not available then the defaultLanguage as configured in mesh.yml will be returned.
Example:
en,de
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List of loaded node children.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Delete the language specific content of the node.
delete /{project}/nodes/{nodeUuid}/languages/{language}
Delete the language specific content of the node.
URI Parameters
- project: required (string)
- language: required (string)
Language tag of the content which should be deleted.
Example:
en
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
HTTP status code 204
Language variation of the node has been deleted.
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Return the publish status for the given language of the node.
Publish the language of the node. This will automatically assign a new major version to the node and update the draft version to the published version.
Take the language of the node offline.
get /{project}/nodes/{nodeUuid}/languages/{language}/published
Return the publish status for the given language of the node.
URI Parameters
- project: required (string)
- language: required (string)
Name of the language tag
Example:
en
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
HTTP status code 200
Publish status of the specific language.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
publishDate | false | string | ISO8601 formatted publish date string. |
published | true | boolean | Flag which indicates whether the content is published. |
publisher | false | object | Reference to the publisher user of the node content. |
version | true | string | Version number. |
Example:
{
"published" : true,
"version" : "3.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-11-20T20:12:01.084Z"
}
HTTP status code 404
The node or the language could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
post /{project}/nodes/{nodeUuid}/languages/{language}/published
Publish the language of the node. This will automatically assign a new major version to the node and update the draft version to the published version.
URI Parameters
- project: required (string)
- language: required (string)
Name of the language tag
Example:
en
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
HTTP status code 200
Updated publish status.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
publishDate | false | string | ISO8601 formatted publish date string. |
published | true | boolean | Flag which indicates whether the content is published. |
publisher | false | object | Reference to the publisher user of the node content. |
version | true | string | Version number. |
Example:
{
"published" : true,
"version" : "3.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-11-20T20:12:01.084Z"
}
HTTP status code 404
The node or the language could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
delete /{project}/nodes/{nodeUuid}/languages/{language}/published
Take the language of the node offline.
URI Parameters
- project: required (string)
- language: required (string)
Name of the language tag
Example:
en
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
HTTP status code 204
Node language was taken offline.
HTTP status code 404
The node or the language could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Move the node into the target node.
post /{project}/nodes/{nodeUuid}/moveTo/{toUuid}
Move the node into the target node.
URI Parameters
- project: required (string)
- toUuid: required (string)
Uuid of target the node.
Example:
2e1c9ac190fe49d69c9ac190fee9d6fe
- nodeUuid: required (string)
Uuid of the node which should be moved.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 204
Node was moved.
HTTP status code 404
The source or target node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Returns a navigation object for the provided node.
get /{project}/nodes/{nodeUuid}/navigation
Returns a navigation object for the provided node.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- maxDepth: (number - default: 10)
Specifies the maximum depth for the requested navigation tree structure.
Example:
5
- includeAll: (boolean)
If set to true all nodes will be included in the response. By default only container nodes are included in a navigation response.
Example:
true
HTTP status code 200
Loaded navigation.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
children | false | array | List of further child elements of the node. |
node | false | object | Detailed node information. |
uuid | false | string | Uuid of the node within this navigation element. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Return the published status of the node.
Publish all language specific contents of the node with the given uuid.
Unpublish the given node.
get /{project}/nodes/{nodeUuid}/published
Return the published status of the node.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
HTTP status code 200
Publish status of the node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | false | object | Map of publish status entries per language |
Example:
{
"availableLanguages" : {
"de" : {
"published" : false,
"version" : "0.4"
},
"en" : {
"published" : true,
"version" : "3.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-11-20T20:12:01.084Z"
},
"fr" : {
"published" : false,
"version" : "5.2"
}
}
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
post /{project}/nodes/{nodeUuid}/published
Publish all language specific contents of the node with the given uuid.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- recursive: (boolean)
Specifiy whether the invoked action should be applied recursively.
Example:
true
HTTP status code 200
Publish status of the node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | false | object | Map of publish status entries per language |
Example:
{
"availableLanguages" : {
"de" : {
"published" : false,
"version" : "0.4"
},
"en" : {
"published" : true,
"version" : "3.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-11-20T20:12:01.084Z"
},
"fr" : {
"published" : false,
"version" : "5.2"
}
}
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
delete /{project}/nodes/{nodeUuid}/published
Unpublish the given node.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- recursive: (boolean)
Specifiy whether the invoked action should be applied recursively.
Example:
true
HTTP status code 204
Node was unpublished.
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Get the permissions on the node for all roles.
Grant permissions on the node to multiple roles.
Revoke permissions on the node from multiple roles.
get /{project}/nodes/{nodeUuid}/rolePermissions
Get the permissions on the node for all roles.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"publish" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"readPublished" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /{project}/nodes/{nodeUuid}/rolePermissions
Grant permissions on the node to multiple roles.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"publish" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"readPublished" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "df96ef7e849946e8922b04a04d5975b6"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"publish" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"readPublished" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /{project}/nodes/{nodeUuid}/rolePermissions
Revoke permissions on the node from multiple roles.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"publish" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"readPublished" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"publish" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"readPublished" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
Create the s3 binaryfield with the given name.
post /{project}/nodes/{nodeUuid}/s3binary/{fieldName}
Create the s3 binaryfield with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the field which should be created.
Example:
stringField
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: multipart/form-data
Form Parameters- binary: required (file)
Single binary file part.
- language: required (string)
Language of the node content which contains the binary field which should be updated.
Example:
en
- version: required (string)
Version of the node which should be updated. This information is used to determine conflicting updates.
Example:
1.0
HTTP status code 200
The response contains the updated node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 404
The node or the field could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Set the check status for the binaryfield with the given name.
post /{project}/nodes/{nodeUuid}/s3binary/{fieldName}/checkCallback
Set the check status for the binaryfield with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the field which should be created.
Example:
stringField
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: multipart/form-data
Form Parameters- reason: (string)
The reason why the binary was denied.
Example:
Malware detected
- status: required (string)
The result of the binary check. One of ACCEPTED or DENIED.
Example:
DENIED
HTTP status code 204
HTTP status code 404
The node or the field could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Parse metadata of s3 binaryfield with the given name.
post /{project}/nodes/{nodeUuid}/s3binary/{fieldName}/parseMetadata
Parse metadata of s3 binaryfield with the given name.
URI Parameters
- project: required (string)
- fieldName: required (string)
Name of the field which should be created.
Example:
stringField
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: multipart/form-data
Form Parameters- binary: required (file)
Single binary file part.
- language: required (string)
Language of the node content which contains the binary field which should be updated.
Example:
en
- version: required (string)
Version of the node which should be updated. This information is used to determine conflicting updates.
Example:
1.0
HTTP status code 200
The response contains the updated node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 404
The node or the field could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Return a list of all tags which tag the node.
Update the list of assigned tags
get /{project}/nodes/{nodeUuid}/tags
Return a list of all tags which tag the node.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 200
List of tags that were used to tag the node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "green",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Name for language tag en",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
post /{project}/nodes/{nodeUuid}/tags
Update the list of assigned tags
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
tags | true | array | List of tags which should be assigned to the node. Tags which are not included will be removed from the node. |
Example:
{
"tags" : [ {
"name" : "green",
"uuid" : "f36400b436d244c3a400b436d244c3f4",
"tagFamily" : "colors"
}, {
"name" : "yellow",
"uuid" : "f36400b436d244c3a400b436d244c3f4",
"tagFamily" : "colors"
} ]
}
HTTP status code 200
Updated tag list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "green",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Name for language tag en",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
HTTP status code 404
The node could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Assign the given tag to the node.
Remove the given tag from the node.
post /{project}/nodes/{nodeUuid}/tags/{tagUuid}
Assign the given tag to the node.
URI Parameters
- project: required (string)
- tagUuid: required (string)
Uuid of the tag
Example:
2e1c9ac190fe49d69c9ac190fee9d6fe
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
HTTP status code 200
Updated node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 404
The node or tag could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
delete /{project}/nodes/{nodeUuid}/tags/{tagUuid}
Remove the given tag from the node.
URI Parameters
- project: required (string)
- tagUuid: required (string)
Uuid of the tag
Example:
2e1c9ac190fe49d69c9ac190fee9d6fe
- nodeUuid: required (string)
Uuid of the node
Example:
adaf48da8c124049af48da8c12a0493e
HTTP status code 204
Removal was successful.
HTTP status code 404
The node or tag could not be found.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Returns a list of versions.
get /{project}/nodes/{nodeUuid}/versions
Returns a list of versions.
URI Parameters
- project: required (string)
- nodeUuid: required (string)
Uuid of the node.
Example:
adaf48da8c124049af48da8c12a0493e
Query Parameters
- lang: (string)
ISO 639-1 language tag of the language which should be loaded. Fallback handling can be applied by specifying multiple languages in a comma-separated list. The first matching language will be returned. If omitted or the requested language is not available then the defaultLanguage as configured in mesh.yml will be returned.
Example:
en,de
- resolveLinks: (string)
The resolve links parameter can be set to either short, medium or full. Stored mesh links will automatically be resolved and replaced by the resolved webroot link. With the parameter set the path property as well as the languagesPath property (for available language variants) will be included in the response. Gentics Mesh links in any HTML-typed field will automatically be resolved and replaced by the resolved WebRoot path. No resolving occurs if no link has been specified.
Example:
medium
HTTP status code 200
Loaded version list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
versions.additionalProperties.items.branchRoot | true | boolean | Is the version used as a root version in another branch? |
versions.additionalProperties.items.created | true | string | ISO8601 formatted created date string. |
versions.additionalProperties.items.creator | true | object | User reference of the creator of the element. |
versions.additionalProperties.items.draft | true | boolean | Is the content a draft version? |
versions.additionalProperties.items.published | true | boolean | Is the content published version? |
versions.additionalProperties.items.version | true | string | Version of the content. |
Example:
{
"versions" : {
"de" : [ {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"version" : "1.0"
}, {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"version" : "1.1"
}, {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"version" : "2.0"
} ],
"en" : [ {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"version" : "1.0"
}, {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"version" : "1.1"
}, {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-11-20T20:12:01.084Z",
"version" : "2.0"
} ]
}
}
/{project}/tagFamilies
Provides endpoints which allow the manipulation of tag families and tags.
Load multiple tag families and return a paged list response.
Create a new tag family.
get /{project}/tagFamilies/
Load multiple tag families and return a paged list response.
URI Parameters
- project: required (string)
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
Loaded tag families.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Colors",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
post /{project}/tagFamilies/
Create a new tag family.
URI Parameters
- project: required (string)
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | Name of the tag family which will be created. |
Example:
{
"name" : "Colors"
}
HTTP status code 201
Created tag family.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | false | string | Name of the tag family. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
Example:
{
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Colors",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
Read the tag family with the given uuid.
Update the tag family with the given uuid. The tag family will be created if it can't be found for the given uuid.
Delete the tag family.
get /{project}/tagFamilies/{tagFamilyUuid}
Read the tag family with the given uuid.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
HTTP status code 200
Loaded tag family.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | false | string | Name of the tag family. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
Example:
{
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Colors",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
post /{project}/tagFamilies/{tagFamilyUuid}
Update the tag family with the given uuid. The tag family will be created if it can't be found for the given uuid.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | New name of the tag family |
Example:
{
"name" : "Nicer colors"
}
HTTP status code 200
Updated tag family.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | false | string | Name of the tag family. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
Example:
{
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Nicer colors",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
Get the permissions on the tag family for all roles.
Grant permissions on the tag family to multiple roles.
Revoke permissions on the tag family from multiple roles.
get /{project}/tagFamilies/{tagFamilyUuid}/rolePermissions
Get the permissions on the tag family for all roles.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family
Example:
1898428398164d9a9842839816ed9a3d
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /{project}/tagFamilies/{tagFamilyUuid}/rolePermissions
Grant permissions on the tag family to multiple roles.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family
Example:
1898428398164d9a9842839816ed9a3d
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "6a5bf00a896e4986a5dfbdcac4fbff08"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /{project}/tagFamilies/{tagFamilyUuid}/rolePermissions
Revoke permissions on the tag family from multiple roles.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family
Example:
1898428398164d9a9842839816ed9a3d
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
Create a new tag within the tag family.
Load tags which were assigned to this tag family and return a paged list response.
post /{project}/tagFamilies/{tagFamilyUuid}/tags
Create a new tag within the tag family.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | Name of the tag which will be created. |
Example:
{
"name" : "red"
}
HTTP status code 200
Created tag
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the tag. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
tagFamily | true | object | Reference to the tag family to which the tag belongs. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "red",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
get /{project}/tagFamilies/{tagFamilyUuid}/tags
Load tags which were assigned to this tag family and return a paged list response.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List of tags.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "green",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Name for language tag en",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Read the specified tag from the tag family.
Update the specified tag. The tag is created if no tag with the specified uuid could be found.
Remove the tag from the tag family.
get /{project}/tagFamilies/{tagFamilyUuid}/tags/{tagUuid}
Read the specified tag from the tag family.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
- tagUuid: required (string)
Uuid of the tag.
Example:
6e6f1d9f055447d2af1d9f055417d289
Query Parameters
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
HTTP status code 200
Loaded tag.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the tag. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
tagFamily | true | object | Reference to the tag family to which the tag belongs. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "red",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
post /{project}/tagFamilies/{tagFamilyUuid}/tags/{tagUuid}
Update the specified tag. The tag is created if no tag with the specified uuid could be found.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
- tagUuid: required (string)
Uuid of the tag.
Example:
6e6f1d9f055447d2af1d9f055417d289
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
name | true | string | New name of the tag. |
Example:
{
"name" : "Red"
}
HTTP status code 200
Updated tag.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
name | true | string | Name of the tag. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
tagFamily | true | object | Reference to the tag family to which the tag belongs. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Red",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
delete /{project}/tagFamilies/{tagFamilyUuid}/tags/{tagUuid}
Remove the tag from the tag family.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
- tagUuid: required (string)
Uuid of the tag.
Example:
6e6f1d9f055447d2af1d9f055417d289
HTTP status code 204
Tag was removed from the tag family
Load all nodes that have been tagged with the tag and return a paged list response.
get /{project}/tagFamilies/{tagFamilyUuid}/tags/{tagUuid}/nodes
Load all nodes that have been tagged with the tag and return a paged list response.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
Uuid of the tag family.
Example:
1898428398164d9a9842839816ed9a3d
- tagUuid: required (string)
Uuid of the tag.
Example:
6e6f1d9f055447d2af1d9f055417d289
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List of nodes which were tagged using the provided tag.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Get the permissions on the tag for all roles.
Grant permissions on the tag to multiple roles.
Revoke permissions on the tag from multiple roles.
get /{project}/tagFamilies/{tagFamilyUuid}/tags/{tagUuid}/rolePermissions
Get the permissions on the tag for all roles.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
- tagUuid: required (string)
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /{project}/tagFamilies/{tagFamilyUuid}/tags/{tagUuid}/rolePermissions
Grant permissions on the tag to multiple roles.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
- tagUuid: required (string)
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "4138ed259e134f0e81b36cddc03087a0"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /{project}/tagFamilies/{tagFamilyUuid}/tags/{tagUuid}/rolePermissions
Revoke permissions on the tag from multiple roles.
URI Parameters
- project: required (string)
- tagFamilyUuid: required (string)
- tagUuid: required (string)
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
/{project}/navroot
Provides an endpoint which can be used to retrieve a navigation response
Return a navigation for the node which is located using the given path.
get /{project}/navroot/{path}
Return a navigation for the node which is located using the given path.
URI Parameters
- project: required (string)
- path: required (string)
Webroot path to the node language variation.
Example:
someFolder/somePage.html
Query Parameters
- maxDepth: (number - default: 10)
Specifies the maximum depth for the requested navigation tree structure.
Example:
5
- includeAll: (boolean)
If set to true all nodes will be included in the response. By default only container nodes are included in a navigation response.
Example:
true
HTTP status code 200
Loaded navigation.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
children | false | array | List of further child elements of the node. |
node | false | object | Detailed node information. |
uuid | false | string | Uuid of the node within this navigation element. |
Example:
{
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"node" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
},
"children" : [ {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"node" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
} ]
}
/{project}/webroot
Provides endpoints which allow loading nodes via a webroot path.
Load the node or the node's binary data which is located using the provided path.
Update or create a node for the given path.
get /{project}/webroot/{path}
Load the node or the node's binary data which is located using the provided path.
URI Parameters
- project: required (string)
- path: required (string)
Path to the node
Example:
/News/2015/Images/flower.jpg
Query Parameters
- fpz: (number)
Set the focal point zoom factor. The value must be greater than one.
Example:
1.5
- rect: (string)
Set image crop area.
Example:
20,20,128,128
- w: (number)
Set image target width. The height will automatically be calculated if the width was omitted.
Example:
1280
- h: (number)
Set image target height. The width will automatically be calculated if the height was omitted.
Example:
720
- resize: (string)
Set the resize mode. Possible modes: force : The force mode will resize the image to the specified dimensions. This can lead to a distorted image when the aspect ratio of the source image does not match the destination aspect ratio smart : The smart mode will resize the image proportionally so that the resulting destination format matches the source format in at least one dimension. No distortion of the image will occur. prop : The prop mode will resize the image proportionally so that the resulting destination format fits inside the provided dimensions. No distortion of the image will occur.
Example:
smart
- fpy: (number)
Set the focal point y factor between 0 and 1 where 0.5 is the middle of the image. You can use this parameter in combination with the crop=fp parameter in order to crop and resize the image in relation to the given point.
Example:
0.2
- crop: (string)
Set the crop mode. Possible modes: rect : The rect mode will work in combination with the rect parameter and crop the specified area. fp : The fp mode will utilize the specified or pre-selected focal point and crop the image according to the position of the focus point and the specified image size.
Example:
rect
- fpx: (number)
Set the focal point x factor between 0 and 1 where 0.5 is the middle of the image. You can use this parameter in combination with the crop=fp parameter in order to crop and resize the image in relation to the given point.
Example:
0.1
HTTP status code 200
JSON for a node or the binary data of the node for the given path.
Headers
- Webroot-Response-Type: (string)
Header value which identifies the type of the webroot response. The response can either be a node or binary response.
Example:
node
post /{project}/webroot/{path}
Update or create a node for the given path.
URI Parameters
- project: required (string)
- path: required (string)
Path to the node
Example:
/News/2015/Images/flower.jpg
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
assignLanguage | false | boolean | Assign a requested language to the project, if none was so far. |
fields | false | object | Dynamic map with fields of the node content. |
grant | false | object | Permissions to be granted to roles on the updated node. |
language | false | string | ISO 639-1 language tag of the node content. |
manipulation | false | object | Image manipulation changes request. |
publish | false | boolean | Whether the publish the node after updating. |
tags | false | array | List of tags that should be used to tag the node. |
version | false | string | Version number which can be provided in order to handle and detect concurrent changes to the node content. |
Example:
{
"language" : "en",
"fields" : {
"filename" : "index-renamed.en.html",
"relatedProduct-" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "86c0a2b6435d434280a2b6435da34247"
}, {
"uuid" : "4c83d010122c4a2783d010122c4a2782"
}, {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
} ],
"image" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"version" : "1.0",
"publish" : false,
"assignLanguage" : true
}
HTTP status code 200
Updated node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 201
Created node.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
availableLanguages | true | object | Map of languages for which content is available and their publish status. |
breadcrumb | true | array | List of nodes which construct the breadcrumb. Note that the start node will not be included in the list. |
childrenInfo | false | object | Object which contains information about child elements. |
container | true | boolean | Flag which indicates whether the node is a container and can contain nested elements. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
displayField | false | string | Display field name of the node. May not be retured if the node schema has no display field. |
displayName | false | string | Display field value of the node. May not be retured if the node schema has no display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
fields | true | object | Dynamic map with fields of the node language specific content. |
language | false | string | ISO 639-1 language tag of the node content. |
languagePaths | false | object | Map of webroot paths per language. This property will only be populated if the resolveLinks query parameter has been set accordingly. |
parentNode | false | object | Reference to the parent node. Note that the root node of the project has no parent node. |
path | false | string | Webroot path to the node content. Will only be provided if the resolveLinks query parameter has been set accordingly. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
project | true | object | Reference to the project of the node. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
schema | true | object | Reference to the schema of the node. |
tags | true | array | List of tags that were used to tag the node. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the node content. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
}
HTTP status code 409
A conflict has been detected.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
/{project}/webrootfield
Provides endpoint which allow viewing the requested field for the node loaded via a webroot path.
Download the field with the given name from the given path. You can use image query parameters for crop and resize if the binary data represents an image.
Update the field variants with the given name from the given path.
get /{project}/webrootfield/{fieldName}/{path}
Download the field with the given name from the given path. You can use image query parameters for crop and resize if the binary data represents an image.
URI Parameters
- project: required (string)
- path: required (string)
Path to the node
Example:
/News/2015/Images/flower.jpg
- fieldName: required (string)
Name of the field which should be processed.
Example:
binaryField
Query Parameters
- fpz: (number)
Set the focal point zoom factor. The value must be greater than one.
Example:
1.5
- rect: (string)
Set image crop area.
Example:
20,20,128,128
- w: (number)
Set image target width. The height will automatically be calculated if the width was omitted.
Example:
1280
- h: (number)
Set image target height. The width will automatically be calculated if the height was omitted.
Example:
720
- resize: (string)
Set the resize mode. Possible modes: force : The force mode will resize the image to the specified dimensions. This can lead to a distorted image when the aspect ratio of the source image does not match the destination aspect ratio smart : The smart mode will resize the image proportionally so that the resulting destination format matches the source format in at least one dimension. No distortion of the image will occur. prop : The prop mode will resize the image proportionally so that the resulting destination format fits inside the provided dimensions. No distortion of the image will occur.
Example:
smart
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
- fpy: (number)
Set the focal point y factor between 0 and 1 where 0.5 is the middle of the image. You can use this parameter in combination with the crop=fp parameter in order to crop and resize the image in relation to the given point.
Example:
0.2
- crop: (string)
Set the crop mode. Possible modes: rect : The rect mode will work in combination with the rect parameter and crop the specified area. fp : The fp mode will utilize the specified or pre-selected focal point and crop the image according to the position of the focus point and the specified image size.
Example:
rect
- fpx: (number)
Set the focal point x factor between 0 and 1 where 0.5 is the middle of the image. You can use this parameter in combination with the crop=fp parameter in order to crop and resize the image in relation to the given point.
Example:
0.1
HTTP status code 200
JSON for a node/micronode/list field value, or the binary data for the binary field, or the text data for any other field of the node for the given path.
Headers
- Webroot-Response-Type: (string)
Header value which identifies the type of the webrootfield response. The response can either be a JSON, text or binary response.
Example:
node
post /{project}/webrootfield/{fieldName}/{path}
Update the field variants with the given name from the given path.
URI Parameters
- project: required (string)
- path: required (string)
Path to the node
Example:
/News/2015/Images/flower.jpg
- fieldName: required (string)
Name of the field which should be processed.
Example:
binaryField
Query Parameters
- original: (boolean)
Specifies a need to retrieve original image along with its manipulation variants.
Example:
true
- filesize: (boolean)
Specifies a need to retrieve filesizes for the returned image manipulation variants.
Example:
true
- branch: (string)
Specifies the branch to be used for loading data. The latest project branch will be used if this parameter is omitted.
Example:
24cf92691c7641158f92691c76c115ef
- version: (string - default: draft)
Specifies the version to be loaded. Can either be published/draft or version number. e.g.: 0.1, 1.0, draft, published.
Example:
1.1
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
deleteOther | false | boolean | This flag states that all the existing variants, except the mentioned in `variants` field, should be dropped.If no variants are provided along with the flag, all the image manipulation variants are to be dropped. |
variants | false | array | This field contains a set of image manipulation variants to be manipulated upon. |
Example:
{
"variants" : [ {
"width" : "auto",
"height" : "100",
"resizeMode" : "SMART",
"cacheKey" : "resizeSMARTrwautorh100"
}, {
"resizeMode" : "SMART",
"focalPoint" : {
"x" : 0.3,
"y" : 0.3
},
"focalZoom" : 0.6,
"focalPointZoom" : 0.6,
"cacheKey" : "resizeSMARTfp0.3-0.3fpz0.6"
} ],
"deleteOther" : false
}
HTTP status code 200
JSON for a variants of the binary field of the node for the given path.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
variants | false | array | List of image manipulation variants. |
Example:
{
"variants" : [ {
"width" : 500,
"height" : 100,
"origin" : true,
"auto" : false
}, {
"rect" : {
"startX" : 10,
"startY" : 10,
"width" : 20,
"height" : 20
},
"cropMode" : "RECT",
"origin" : false,
"auto" : false
}, {
"height" : 50,
"origin" : false,
"auto" : false
} ]
}
/{project}/branches
Provides endpoints which allow the manipulation of branches.
Create a new branch and automatically invoke a node migration.
Load multiple branches and return a paged list response.
post /{project}/branches/
Create a new branch and automatically invoke a node migration.
URI Parameters
- project: required (string)
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
baseBranch | false | object | Optional reference to the base branch. If not set, the new branch will be based on the current 'latest' branch. |
hostname | false | string | The hostname of the branch which will be used to generate links across multiple projects. |
latest | false | boolean | Whether the new branch will be set as 'latest' branch. Defaults to 'true'. |
name | true | string | Name of the branch. |
pathPrefix | false | string | Optional path prefix for webroot path and rendered links. |
ssl | false | boolean | SSL flag of the branch which will be used to generate links across multiple projects. |
Example:
{
"name" : "Winter 2016",
"hostname" : "getmesh.io",
"ssl" : true,
"latest" : true
}
HTTP status code 201
Created branch.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
hostname | false | string | The hostname of the branch which will be used to generate links across multiple projects. |
latest | true | boolean | Flag which indicates whether this is the latest branch. Requests that do not specify a specific branch will be performed in the scope of the latest branch. |
migrated | true | boolean | Flag which indicates whether any active node migration for this branch is still running or whether all nodes have been migrated to this branch. |
name | true | string | Name of the branch. |
pathPrefix | true | string | Optional path prefix for webroot path and rendered links. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
ssl | false | boolean | SSL flag of the branch which will be used to generate links across multiple projects. |
tags | true | array | List of tags that were used to tag the branch. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Winter 2016",
"hostname" : "getmesh.io",
"ssl" : true,
"pathPrefix" : "my/prefix",
"migrated" : true,
"latest" : false,
"tags" : [ {
"name" : "dev",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "branchTags"
}, {
"name" : "prod",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "branchTags"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"rolePerms" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
get /{project}/branches/
Load multiple branches and return a paged list response.
URI Parameters
- project: required (string)
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
Loaded branches.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "summer2016",
"hostname" : "getmesh.io",
"ssl" : true,
"pathPrefix" : "my/prefix",
"migrated" : true,
"latest" : false,
"tags" : [ {
"name" : "dev",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "branchTags"
}, {
"name" : "prod",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "branchTags"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"rolePerms" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "autumn2016",
"hostname" : "getmesh.io",
"ssl" : true,
"pathPrefix" : "my/prefix",
"migrated" : true,
"latest" : true,
"tags" : [ {
"name" : "dev",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "branchTags"
}, {
"name" : "prod",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "branchTags"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"rolePerms" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Load the branch with the given uuid.
Update the branch with the given uuid. The branch is created if no branch with the specified uuid could be found.
get /{project}/branches/{branchUuid}
Load the branch with the given uuid.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Query Parameters
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
HTTP status code 200
Loaded branch.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
hostname | false | string | The hostname of the branch which will be used to generate links across multiple projects. |
latest | true | boolean | Flag which indicates whether this is the latest branch. Requests that do not specify a specific branch will be performed in the scope of the latest branch. |
migrated | true | boolean | Flag which indicates whether any active node migration for this branch is still running or whether all nodes have been migrated to this branch. |
name | true | string | Name of the branch. |
pathPrefix | true | string | Optional path prefix for webroot path and rendered links. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
ssl | false | boolean | SSL flag of the branch which will be used to generate links across multiple projects. |
tags | true | array | List of tags that were used to tag the branch. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Summer Collection Branch",
"hostname" : "getmesh.io",
"ssl" : true,
"pathPrefix" : "my/prefix",
"migrated" : true,
"latest" : true,
"tags" : [ {
"name" : "dev",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "branchTags"
}, {
"name" : "prod",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "branchTags"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"rolePerms" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
post /{project}/branches/{branchUuid}
Update the branch with the given uuid. The branch is created if no branch with the specified uuid could be found.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
hostname | false | string | The hostname of the branch which will be used to generate links across multiple projects. |
name | true | string | Name of the branch. |
pathPrefix | false | string | Optional path prefix for webroot path and rendered links. |
ssl | false | boolean | SSL flag of the branch which will be used to generate links across multiple projects. |
Example:
{
"name" : "Winter Collection Branch",
"hostname" : "getmesh.io",
"ssl" : true
}
HTTP status code 200
Updated branch
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
hostname | false | string | The hostname of the branch which will be used to generate links across multiple projects. |
latest | true | boolean | Flag which indicates whether this is the latest branch. Requests that do not specify a specific branch will be performed in the scope of the latest branch. |
migrated | true | boolean | Flag which indicates whether any active node migration for this branch is still running or whether all nodes have been migrated to this branch. |
name | true | string | Name of the branch. |
pathPrefix | true | string | Optional path prefix for webroot path and rendered links. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
ssl | false | boolean | SSL flag of the branch which will be used to generate links across multiple projects. |
tags | true | array | List of tags that were used to tag the branch. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Winter Collection Branch",
"hostname" : "getmesh.io",
"ssl" : true,
"pathPrefix" : "my/prefix",
"migrated" : true,
"latest" : false,
"tags" : [ {
"name" : "dev",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "branchTags"
}, {
"name" : "prod",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "branchTags"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"rolePerms" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
Set the branch with the given uuid as 'latest' branch of the project.
post /{project}/branches/{branchUuid}/latest
Set the branch with the given uuid as 'latest' branch of the project.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
HTTP status code 200
Latest branch
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
hostname | false | string | The hostname of the branch which will be used to generate links across multiple projects. |
latest | true | boolean | Flag which indicates whether this is the latest branch. Requests that do not specify a specific branch will be performed in the scope of the latest branch. |
migrated | true | boolean | Flag which indicates whether any active node migration for this branch is still running or whether all nodes have been migrated to this branch. |
name | true | string | Name of the branch. |
pathPrefix | true | string | Optional path prefix for webroot path and rendered links. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
ssl | false | boolean | SSL flag of the branch which will be used to generate links across multiple projects. |
tags | true | array | List of tags that were used to tag the branch. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Winter Collection Branch",
"hostname" : "getmesh.io",
"ssl" : true,
"pathPrefix" : "my/prefix",
"migrated" : true,
"latest" : true,
"tags" : [ {
"name" : "dev",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "branchTags"
}, {
"name" : "prod",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "branchTags"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"rolePerms" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
Load microschemas that are assigned to the branch and return a paged list response.
Assign a microschema version to the branch.
get /{project}/branches/{branchUuid}/microschemas
Load microschemas that are assigned to the branch and return a paged list response.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
List of microschemas.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
microschemas | false | array | List of microschema references. |
Example:
{
"microschemas" : [ {
"name" : "vcard",
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "2.0"
}, {
"name" : "geolocation",
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0"
} ]
}
post /{project}/branches/{branchUuid}/microschemas
Assign a microschema version to the branch.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
microschemas | false | array | List of microschema references. |
Example:
{
"microschemas" : [ {
"name" : "vcard",
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "2.0"
}, {
"name" : "geolocation",
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0"
} ]
}
HTTP status code 200
Updated microschema list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
microschemas | false | array | List of microschema references. |
Example:
{
"microschemas" : [ {
"name" : "vcard",
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "2.0"
}, {
"name" : "geolocation",
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0"
} ]
}
Invoked the micronode migration for not yet migrated micronodes of microschemas that are assigned to the branch.
post /{project}/branches/{branchUuid}/migrateMicroschemas
Invoked the micronode migration for not yet migrated micronodes of microschemas that are assigned to the branch.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
HTTP status code 200
schema_migration_invoked
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Invoked the node migration for not yet migrated nodes of schemas that are assigned to the branch.
post /{project}/branches/{branchUuid}/migrateSchemas
Invoked the node migration for not yet migrated nodes of schemas that are assigned to the branch.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
HTTP status code 200
schema_migration_invoked
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
internalMessage | true | string | Internal developer friendly message |
message | true | string | Enduser friendly translated message. Translation depends on the 'Accept-Language' header value |
properties | false | object | Map of i18n properties which were used to construct the provided message |
Example:
{
"message" : "I18n message"
}
Get the permissions on the branch for all roles.
Grant permissions on the branch to multiple roles.
Revoke permissions on the branch from multiple roles.
get /{project}/branches/{branchUuid}/rolePermissions
Get the permissions on the branch for all roles.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
HTTP status code 200
Loaded permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
post /{project}/branches/{branchUuid}/rolePermissions
Grant permissions on the branch to multiple roles.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
exclusive | false | boolean | Flag which indicates whether the permissions granted to only the given roles (will be revoked from all other roles). |
ignore | true | array | Roles which are ignored when the exclusive flag is set. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"exclusive" : true,
"ignore" : [ {
"name" : "admin",
"uuid" : "331ce45dbdda4b03a5d04413b65e3a17"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
delete /{project}/branches/{branchUuid}/rolePermissions
Revoke permissions on the branch from multiple roles.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
HTTP status code 200
Updated permissions.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
create | true | array | Roles to which the create permission is granted. |
delete | true | array | Roles to which the delete permission is granted. |
publish | false | array | Roles to which the publish permission is granted. |
read | true | array | Roles to which the read permission is granted. |
readPublished | false | array | Roles to which the read published permission is granted. |
update | true | array | Roles to which the update permission is granted. |
Example:
{
"create" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"read" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"update" : [ {
"name" : "translator",
"uuid" : "d84a6f054a3f4ed68a6f054a3f1ed635"
}, {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ],
"delete" : [ {
"name" : "editor",
"uuid" : "01ed2f8647421b2b85891e5204d53f1b"
} ]
}
Load schemas that are assigned to the branch and return a paged list response.
Assign a schema version to the branch.
get /{project}/branches/{branchUuid}/schemas
Load schemas that are assigned to the branch and return a paged list response.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
HTTP status code 200
Loaded schema list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
schemas | false | array | List of schema references. |
Example:
{
"schemas" : [ {
"name" : "content",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
}, {
"name" : "folder",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
}, {
"name" : "binary-data",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
} ]
}
post /{project}/branches/{branchUuid}/schemas
Assign a schema version to the branch.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
schemas | false | array | List of schema references. |
Example:
{
"schemas" : [ {
"name" : "content",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
}, {
"name" : "folder",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
}, {
"name" : "binary-data",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
} ]
}
HTTP status code 200
Updated schema list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
schemas | false | array | List of schema references. |
Example:
{
"schemas" : [ {
"name" : "content",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
}, {
"name" : "folder",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
}, {
"name" : "binary-data",
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"version" : "1.0"
} ]
}
Return a list of all tags which tag the branch.
Update the list of assigned tags
get /{project}/branches/{branchUuid}/tags
Return a list of all tags which tag the branch.
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch.
Example:
39f69bee0baa415eb69bee0baa115e82
HTTP status code 200
List of tags that were used to tag the branch.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "green",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Name for language tag en",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
post /{project}/branches/{branchUuid}/tags
Update the list of assigned tags
URI Parameters
- project: required (string)
- branchUuid: required (string)
Uuid of the branch.
Example:
39f69bee0baa415eb69bee0baa115e82
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
tags | true | array | List of tags which should be assigned to the node. Tags which are not included will be removed from the node. |
Example:
{
"tags" : [ {
"name" : "green",
"uuid" : "f36400b436d244c3a400b436d244c3f4",
"tagFamily" : "colors"
}, {
"name" : "yellow",
"uuid" : "f36400b436d244c3a400b436d244c3f4",
"tagFamily" : "colors"
} ]
}
HTTP status code 200
Updated tag list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "green",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Name for language tag en",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Assign the given tag to the branch.
Remove the given tag from the branch.
post /{project}/branches/{branchUuid}/tags/{tagUuid}
Assign the given tag to the branch.
URI Parameters
- project: required (string)
- tagUuid: required (string)
Uuid of the tag
Example:
6e6f1d9f055447d2af1d9f055417d289
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
HTTP status code 200
Updated branch.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
hostname | false | string | The hostname of the branch which will be used to generate links across multiple projects. |
latest | true | boolean | Flag which indicates whether this is the latest branch. Requests that do not specify a specific branch will be performed in the scope of the latest branch. |
migrated | true | boolean | Flag which indicates whether any active node migration for this branch is still running or whether all nodes have been migrated to this branch. |
name | true | string | Name of the branch. |
pathPrefix | true | string | Optional path prefix for webroot path and rendered links. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
ssl | false | boolean | SSL flag of the branch which will be used to generate links across multiple projects. |
tags | true | array | List of tags that were used to tag the branch. |
uuid | true | string | Uuid of the element |
Example:
{
"uuid" : "39f69bee0baa415eb69bee0baa115e82",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Summer Collection Branch",
"hostname" : "getmesh.io",
"ssl" : true,
"pathPrefix" : "my/prefix",
"migrated" : true,
"latest" : false,
"tags" : [ {
"name" : "dev",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "branchTags"
}, {
"name" : "prod",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "branchTags"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
},
"rolePerms" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
delete /{project}/branches/{branchUuid}/tags/{tagUuid}
Remove the given tag from the branch.
URI Parameters
- project: required (string)
- tagUuid: required (string)
Uuid of the tag
Example:
6e6f1d9f055447d2af1d9f055417d289
- branchUuid: required (string)
Uuid of the branch
Example:
39f69bee0baa415eb69bee0baa115e82
HTTP status code 204
Removal was successful.
/{project}/graphql
GraphQL endpoint
Endpoint which accepts GraphQL queries.
post /{project}/graphql/
Endpoint which accepts GraphQL queries.
URI Parameters
- project: required (string)
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
operationName | false | string | GraphQL operation name. |
query | true | string | The actual GraphQL query. |
variables | false | object | JSON object which contains the variables. |
Example:
{
"query" : "{ me { username } }"
}
HTTP status code 200
Basic GraphQL response.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
data | true | object | Nested JSON object which contains the query result data. |
errors | false | array | Array of errors which were encoutered when handling the query. |
Example:
{
"data" : {
"me" : {
"username" : "anonymous"
}
}
}
/{project}/search
Provides endpoints which allow project wide search.
Invoke a search query for nodes and return a paged list response.
post /{project}/search/nodes
Invoke a search query for nodes and return a paged list response.
URI Parameters
- project: required (string)
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- perPage: (number)
Number of elements per page.
Example:
42
- sortBy: (string)
Field name to sort the result by.
Example:
name
- etag: (boolean - default: true)
Parameter which can be used to disable the etag parameter generation and thus increase performance when etags are not needed.
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- fields: (string)
Limit the output to certain fields. This is useful in order to reduce the response JSON overhead.
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"edited" : "2018-11-20T20:12:01.084Z",
"availableLanguages" : {
"de" : {
"published" : true,
"version" : "1.0",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
},
"en" : {
"published" : false,
"version" : "1.1",
"publisher" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"publishDate" : "2018-10-12T14:15:06.024Z"
}
},
"languagePaths" : {
"de" : "/api/v2/yourProject/webroot/Bilder",
"en" : "/api/v2/yourProject/webroot/Images"
},
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247"
} ],
"childrenInfo" : {
"folder" : {
"schemaUuid" : "4c83d010122c4a2783d010122c4a2782",
"count" : 5
},
"blogpost" : {
"schemaUuid" : "86c0a2b6435d434280a2b6435da34247",
"count" : 1
}
},
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag de-DE",
"filename" : "dummy-content.de.html",
"teaser" : "Dummy teaser for de-DE",
"content" : "Content for language tag de-DE",
"relatedProduct" : {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c"
},
"price" : 100.1,
"enabled" : true,
"branch" : "2018-10-12T14:15:06.024Z",
"categories" : [ {
"uuid" : "cf26ed6198204bf0a6ed6198207bf046"
}, {
"uuid" : "dff59dcc9f8e4061b59dcc9f8e80615b"
}, {
"uuid" : "986fae0301fc4715afae0301fc27158f"
} ],
"names" : [ "Jack", "Joe", "Mary", "Tom" ],
"categoryIds" : [ 1, 42, 133, 7 ],
"binary" : {
"fileName" : "flower.jpg",
"width" : 800,
"height" : 600,
"sha512sum" : "ec582eb760034dd91d5fd33656c0b56f082b7365d32e2a139dd9c87ebc192bff3525f32ff4c4137463a31cad020ac19e6e356508db2b90e32d737b6d725e14c1",
"fileSize" : 95365,
"mimeType" : "image/jpeg",
"dominantColor" : "#22a7f0",
"focalPoint" : {
"x" : 0.1,
"y" : 0.2
},
"checkStatus" : "POSTPONED"
},
"location" : {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
},
"locations" : [ {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.208330230278,
"longitude" : 16.373063840833
}
}, {
"microschema" : {
"name" : "geolocation"
},
"fields" : {
"latitude" : 48.137222,
"longitude" : 11.575556
}
} ]
},
"path" : "/api/v2/yourProject/webroot/Images",
"breadcrumb" : [ {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "news",
"path" : "/news"
}, {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "2015",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"parentNode" : {
"uuid" : "688f7beae8d240bf8f7beae8d2a0bf2e",
"displayName" : "parentNodeDisplayName"
},
"tags" : [ {
"name" : "red",
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"tagFamily" : "colors"
}, {
"name" : "green",
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"tagFamily" : "colors"
}, {
"name" : "car",
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"tagFamily" : "vehicles"
}, {
"name" : "ship",
"uuid" : "86c0a2b6435d434280a2b6435da34247",
"tagFamily" : "vehicles"
} ],
"schema" : {
"name" : "content",
"uuid" : "e287e8a7497940ac87e8a7497940ac82",
"version" : "1.0"
},
"fields" : {
"name" : "Name for language tag en",
"filename" : "dummy-content.en.html",
"teaser" : "Dummy teaser for en",
"content" : "Content for language tag en"
},
"breadcrumb" : [ {
"uuid" : "ca6c7df3f45b48d4ac7df3f45ba8d42f",
"displayName" : "Automobiles",
"path" : "/automobiles"
}, {
"uuid" : "adaf48da8c124049af48da8c12a0493e",
"displayName" : "DeLorean DMC-12",
"path" : "/automobiles/delorean-dmc-12"
} ],
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for tagFamilies and return a paged list response.
post /{project}/search/tagFamilies
Invoke a search query for tagFamilies and return a paged list response.
URI Parameters
- project: required (string)
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"name" : "Colors",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Invoke a search query for tags and return a paged list response.
post /{project}/search/tags
Invoke a search query for tags and return a paged list response.
URI Parameters
- project: required (string)
Query Parameters
- sortBy: (string)
Field name to sort the result by.
Example:
name
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
- page: (number - default: 1)
Number of page to be loaded.
Example:
42
- perPage: (number)
Number of elements per page.
Example:
42
- order: (string - default: UNSORTED)
Field order (ASC/DESC/UNSORTED) to sort the result by.
Example:
ASCENDING
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
HTTP status code 200
Paged search result list.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "8931caed445d4d1cb1caed445d0d1c8c",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "green",
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2e1c9ac190fe49d69c9ac190fee9d6fe",
"creator" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"created" : "2018-10-12T14:15:06.024Z",
"editor" : {
"firstName" : "Joe",
"lastName" : "Doe",
"uuid" : "589319933be24ec79319933be24ec7fe"
},
"edited" : "2018-11-20T20:12:01.084Z",
"tagFamily" : {
"name" : "colors",
"uuid" : "1898428398164d9a9842839816ed9a3d"
},
"name" : "Name for language tag en",
"permissions" : {
"create" : true,
"read" : true,
"update" : false,
"delete" : false,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
/{project}/rawSearch
Provides endpoints which allow project wide search which return the unmodified Elasticsearch response.
Invoke a search query for nodes and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /{project}/rawSearch/nodes
Invoke a search query for nodes and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
URI Parameters
- project: required (string)
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for tagFamilies and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /{project}/rawSearch/tagFamilies
Invoke a search query for tagFamilies and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
URI Parameters
- project: required (string)
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
Invoke a search query for tags and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
post /{project}/rawSearch/tags
Invoke a search query for tags and return the unmodified Elasticsearch response. Note that the query will be executed using the multi search API of Elasticsearch.
URI Parameters
- project: required (string)
Query Parameters
- wait: (boolean)
Specify whether search should wait for the search to be idle before responding.
Example:
true
Body
Type: application/json
Example:
{"query":{"query_string":{"query":"some name"}}}
/{project}/schemas
Provides endpoints which can be used to assign schemas to projects.
Read multiple schemas and return a paged list response.
get /{project}/schemas/
Read multiple schemas and return a paged list response.
URI Parameters
- project: required (string)
HTTP status code 200
Loaded list of schemas.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Load the schema with the given uuid.
Assign the schema to the project. This will automatically assign the latest schema version to all branches of the project.
Remove the schema with the given uuid from the project. This will automatically remove all schema versions of the given schema from all branches of the project.
get /{project}/schemas/{schemaUuid}
Load the schema with the given uuid.
URI Parameters
- project: required (string)
- schemaUuid: required (string)
Uuid of the schema.
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
HTTP status code 200
Loaded schema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should be automatically purged on update. |
container | true | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the schema. |
displayField | true | string | Name of the display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | Flag which indicates whether nodes which use this schema should be excluded from the indexing. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the schema. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
post /{project}/schemas/{schemaUuid}
Assign the schema to the project. This will automatically assign the latest schema version to all branches of the project.
URI Parameters
- project: required (string)
- schemaUuid: required (string)
Uuid of the schema.
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
HTTP status code 200
Assigned schema.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
autoPurge | false | boolean | Auto purge flag of the schema. Controls whether contents of this schema should be automatically purged on update. |
container | true | boolean | Flag which indicates whether nodes which use this schema store additional child nodes. |
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the schema. |
displayField | true | string | Name of the display field. |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of schema fields |
name | true | string | Name of the schema. |
noIndex | false | boolean | Flag which indicates whether nodes which use this schema should be excluded from the indexing. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
segmentField | false | string | Name of the segment field. This field is used to construct the webroot path to the node. |
urlFields | false | array | Names of the fields which provide a compete url to the node. This property can be used to define custom urls for certain nodes. The webroot API will try to locate the node via it's segment field and via the specified url fields. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the schema. |
Example:
{
"uuid" : "c5ac82fa1a9c43b6ac82fa1a9ca3b61c",
"displayField" : "name",
"segmentField" : "name",
"container" : false,
"description" : "Example schema description",
"name" : "ExampleSchema",
"fields" : [ {
"name" : "name",
"label" : "Name",
"required" : false,
"noIndex" : false,
"type" : "string"
}, {
"name" : "number",
"label" : "Number",
"required" : false,
"noIndex" : false,
"type" : "number"
}, {
"name" : "html",
"label" : "Teaser",
"required" : false,
"noIndex" : false,
"type" : "html"
}, {
"name" : "list",
"label" : "List of nodes",
"required" : false,
"noIndex" : false,
"listType" : "node",
"type" : "list",
"allow" : [ "content", "video" ]
}, {
"name" : "node",
"required" : false,
"noIndex" : false,
"type" : "node",
"allow" : [ "content", "video", "image" ]
}, {
"name" : "location",
"label" : "Location",
"required" : false,
"noIndex" : false,
"type" : "micronode",
"allow" : [ "geolocation" ]
}, {
"name" : "locationlist",
"label" : "List of Locations",
"required" : false,
"noIndex" : false,
"listType" : "micronode",
"type" : "list",
"allow" : [ "geolocation" ]
} ],
"microschema" : false,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}
delete /{project}/schemas/{schemaUuid}
Remove the schema with the given uuid from the project. This will automatically remove all schema versions of the given schema from all branches of the project.
URI Parameters
- project: required (string)
- schemaUuid: required (string)
Uuid of the schema.
Example:
2aa83a2b3cba40a1a83a2b3cba90a1de
HTTP status code 204
Schema was successfully removed.
/{project}/microschemas
Contains endpoints which allow microschemas to be assigned to projects.
Read all microschemas which are assigned to the project.
get /{project}/microschemas/
Read all microschemas which are assigned to the project.
URI Parameters
- project: required (string)
HTTP status code 200
List of assigned microschemas.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
_metainfo | true | object | Paging information of the list result. |
data | true | array | Array which contains the found elements. |
Example:
{
"data" : [ {
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}, {
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
} ],
"_metainfo" : {
"currentPage" : 1,
"perPage" : 2,
"pageCount" : 10,
"totalCount" : 20
}
}
Add the microschema to the project.
Remove the microschema from the project.
post /{project}/microschemas/{microschemaUuid}
Add the microschema to the project.
URI Parameters
- project: required (string)
- microschemaUuid: required (string)
Uuid of the microschema.
Example:
2715307deafc4ecc95307deafccecc10
HTTP status code 200
Microschema was added to the project.
Body
Type: application/json
Schema:
Property | Mandatory | Type | Description |
---|---|---|---|
created | true | string | ISO8601 formatted created date string. |
creator | true | object | User reference of the creator of the element. |
description | false | string | Description of the microschema |
edited | true | string | ISO8601 formatted edited date string. |
editor | false | object | User reference of the editor of the element. |
elasticsearch | false | object | Additional search index configuration. This can be used to setup custom analyzers and filters. |
fields | true | array | List of microschema fields |
name | true | string | Name of the microschema |
noIndex | false | boolean | 'Exclude from indexing' flag. |
permissions.create | true | boolean | Flag which indicates whether the create permission is granted. |
permissions.delete | true | boolean | Flag which indicates whether the delete permission is granted. |
permissions.publish | false | boolean | Flag which indicates whether the publish permission is granted. |
permissions.read | true | boolean | Flag which indicates whether the read permission is granted. |
permissions.readPublished | false | boolean | Flag which indicates whether the read published permission is granted. |
permissions.update | true | boolean | Flag which indicates whether the update permission is granted. |
rolePerms | false | object | Permission information for provided role. This property will only be populated if a role query parameter has been specified. |
uuid | true | string | Uuid of the element |
version | true | string | Version of the microschema |
Example:
{
"uuid" : "2715307deafc4ecc95307deafccecc10",
"version" : "1.0",
"description" : "Microschema for Geolocations",
"name" : "geolocation",
"fields" : [ {
"name" : "longitude",
"label" : "Longitude",
"required" : true,
"noIndex" : false,
"type" : "number"
}, {
"name" : "latitude",
"label" : "Latitude",
"required" : true,
"noIndex" : false,
"type" : "number"
} ],
"microschema" : true,
"permissions" : {
"create" : true,
"read" : true,
"update" : true,
"delete" : true,
"publish" : false,
"readPublished" : false
}
}