writeGroup #
Write a group model.
This action acts like a create or replace
Query Syntax #
HTTP #
URL: http://kuzzle:7512/_/device-manager/models/groups
Method: POST
Other protocols #
{
"controller": "device-manager/models",
"action": "writeGroup",
"body": {
"engineGroup": "<engine group>",
"model": "<group model>",
// Optional
"metadataMappings": {
// Metadata mappings
},
"defaultValues": {
// Default values for metadata
},
"metadataDetails": {
/*
Metadata details including tanslations, group and editor hint.
[name: string]: {
group?: string;
locales: {
[locale: string]: {
friendlyName: string;
description: string;
};
};
editorHint?: BaseEditorHint | OptionsSelectorDefinition | DatetimeEditorHint;
};
*/
},
"metadataGroups": {
/*
Metadata groups list and details.
{
[groupName: string]: {
locales: {
[locale: string]: {
groupFriendlyName: string;
description: string;
};
};
};
};
*/
},
"tooltipModels": {
/*
Tooltip models for a group model.
[key: string]: {
tooltipLabel: string;
content: [
{
category: "metadata";
label?: {
locales: {
[locale: string]: {
friendlyName: string;
description: string;
};
};
};
metadataPath: string;
suffix?: string;
},
{
category: "measure";
label?: {
locales: {
[locale: string]: {
friendlyName: string;
description: string;
};
};
};
measureSlot: string;
measureValuePath: string;
suffix?: string;
},
{
category: "static";
label?: {
locales: {
[locale: string]: {
friendlyName: string;
description: string;
};
};
};
type: "link" | "image" | "text" | "title" | "separator";
value: string;
}
];
};
*/
},
}
}
Body properties #
engineGroup
: Name of the engine groupmodel
: Group model namemetadataMappings
: Mappings of the metadata in Elasticsearch formatdefaultValues
: Default values for the metadatametadataDetails
: Translations, metadata group, and editor hint (See MetadataDetails )metadataGroups
: Groups list with translations for group nametooltipModels
: Tooltip model list, containing each labels and tooltip content to display
Response #
{
"status": 200,
"error": null,
"controller": "device-manager/models",
"action": "writeGroup",
"requestId": "<unique request identifier>",
"result": {
"_id": "<modelId>",
"_source": {
// Group model content
},
}
}
Errors #
error | code | cause |
---|---|---|
MappingsConflictsError | 409 | Writing a group with conflicting metadata mappings |