Modules
Returns every object of a module as one definition that the PUT route applies, in this or another workspace. Custom roles are referenced by name as @role:.
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Module name
crmPattern: ^[a-z0-9_]+$Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Definition retrieved
Unauthorized
Module not found
Internal server error
GET /api/v1/workspace/{workspaceId}/modules/{moduleName}/definition HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": {
"capabilities": [
"connections"
],
"checksum": "text",
"formatVersion": 1,
"objects": [
{
"id": "text",
"kind": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"requiredConnections": [
"text"
],
"roles": [
{
"alias": "text",
"name": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Applies a module definition onto an existing module. An empty module gets every object created, flows included. Otherwise an object is matched by its id, or by the object an earlier apply created it from, so a rename in the source updates the copy. The rest are matched by table id, table and field id, table and name (views, reports), name (scripts), and parent, type and name (components); matched objects are updated, the rest created. Nothing is deleted, and flows and the data-model diagram are skipped. Custom roles resolve by name in this workspace; none are created. Applying the same definition twice changes nothing the second time.
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Module name
crmPattern: ^[a-z0-9_]+$Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Definition applied
Bad request (e.g., malformed definition)
Unauthorized
The API key lacks a grant a written key needs
Module not found
Definition refused (unknown role, ambiguous match, field type change)
Internal server error
PUT /api/v1/workspace/{workspaceId}/modules/{moduleName}/definition HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 333
{
"capabilities": [
"text"
],
"checksum": "text",
"documentation": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"formatVersion": 1,
"gettingStartedComponentId": "text",
"objects": [
{
"id": "text",
"kind": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"requiredConnections": [
"text"
],
"roles": [
{
"alias": "text",
"name": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
]
}{
"data": {
"created": 1,
"skipped": {
"ANY_ADDITIONAL_PROPERTY": 1
},
"updated": 1
}
}Retrieves all modules available in a workspace
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Maximum number of modules to return
Number of modules to skip (starts with 0)
Modules retrieved successfully
Unauthorized
Workspace not found
Internal server error
GET /api/v1/workspace/{workspaceId}/modules HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": [
{
"afterOpen": "text",
"components": [
{
"afterHide": "text",
"aggregation": "avg",
"annualRecurring": true,
"arrangement": "grid",
"background": "text",
"beforeShow": "text",
"border": {
"color": "text",
"style": "dashed",
"width": "text"
},
"calendarType": "text",
"cardBorder": "text",
"cardFont": "text",
"cardPadding": 1,
"cardRadius": 1,
"chartConfig": {
"chartType": "bar",
"dataSets": [
{
"aggregation": "average",
"color": "text",
"fieldName": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
],
"donut": true,
"labelPosition": "bottom",
"legend": {
"show": true
},
"limit": 1,
"orientation": "horizontal",
"showDataTable": true,
"showLabels": true,
"showPoints": true,
"showTitle": true,
"smooth": true,
"stacked": true,
"style": "default",
"tooltips": {
"show": true
},
"xAxis": {
"fieldName": null,
"groupBy": "daily",
"show": true
},
"yAxis": {
"show": true
}
},
"color": "text",
"colorFieldName": "text",
"constraints": "text",
"content": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"customStyle": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"dataPoint": "conditional",
"defaultValue": true,
"disabled": true,
"display": {
"color": "text",
"format": "compact",
"icon": "text",
"trend": {
"customPeriodEnd": "text",
"customPeriodStart": "text",
"format": "absolute",
"isShown": true,
"period": "custom",
"positiveDirection": "down"
}
},
"displayAs": "text",
"expression": "text",
"fieldIdDataPoint": "conditional",
"fieldIdValue": "text",
"fieldName": "text",
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"flex": "text",
"ganttConfig": {
"baselineEndFieldName": null,
"baselineStartFieldName": null,
"dependencyDirection": "predecessor",
"dependencyFieldName": null,
"disableDragAndDrop": true,
"endFieldName": null,
"hideTitleColumn": true,
"hideWeekends": true,
"milestoneFieldName": null,
"progressFieldName": null,
"showCriticalPath": true,
"showWeekends": true,
"startFieldName": null,
"timeScale": "day",
"titleColumnFieldName": null,
"titleColumnWidth": 1
},
"gap": "text",
"globalFilterBinding": [
"text"
],
"gridPreset": "text",
"groupByFieldName": "text",
"height": 1,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconLeft": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconRight": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"imagePosition": {
"position": "text",
"size": "text"
},
"isCompact": true,
"isHidden": true,
"isMarkdownEnabled": true,
"isSpreadsheetMode": true,
"labelPosition": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"mapTypeId": "text",
"margin": "text",
"name": "text",
"onChange": "text",
"onClick": "text",
"order": 1,
"overflow": "text",
"padding": "text",
"parentId": "text",
"placeholder": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"quickStyle": "body-md",
"radius": "text",
"remember": "localStorage",
"shadow": "text",
"shadowDom": true,
"showAs": "text",
"showBulkActions": true,
"showCalendarType": true,
"showCreateButton": true,
"showCreateRow": true,
"showDataAs": "text",
"showEmptyLane": true,
"showLinkExistingRecord": true,
"showMetadata": true,
"showOutlines": true,
"showSearchField": true,
"showTimeScaleSelector": true,
"showTitle": true,
"size": "text",
"tableName": "text",
"textAlign": "text-center",
"titleFieldName": "text",
"tooltip": "text",
"type": "text",
"value": "text",
"valueSpec": {
"type": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"valueType": "text",
"variant": "text",
"view": {
"columns": [
{
"agg": "text",
"conditionalStyling": [
{
"background": "text",
"cell": "text",
"color": "text",
"icon": "text",
"operand": "text",
"value": "text"
}
],
"field": "text",
"hidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"order": 1,
"role": "text",
"width": 1
}
],
"conditionalFormatting": [
{
"backgroundColor": "text",
"bold": true,
"comparator": "contains",
"expression": "text",
"fieldName": "text",
"highlightColor": "text",
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"italic": true,
"order": 1,
"strikethrough": true,
"target": "cell",
"textColor": "text",
"value": null
}
],
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"groupBy": [
{
"direction": "asc",
"fieldName": "text"
}
],
"sort": {
"direction": "asc",
"fieldName": "text"
}
},
"visible": true,
"visibleRoles": [
"text"
],
"widgetName": "text",
"widgetProps": {
"ANY_ADDITIONAL_PROPERTY": true
},
"width": 1
}
],
"hideNavigation": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"openRoles": [
"text"
],
"tables": [
{
"canCreate": "text",
"canDelete": "text",
"canRead": "text",
"canWrite": "text",
"createRoles": [
"text"
],
"deleteRoles": [
"text"
],
"fields": [
{
"binding": "text",
"canRead": "text",
"canWrite": "text",
"defaultValue": {
"$nx": "text"
},
"expression": "text",
"index": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onUpdate": "text",
"optionColor": "text",
"optionIcon": "text",
"optionName": "text",
"options": [
{
"color": "text",
"icon": "text",
"id": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"order": 1,
"textColor": "text"
}
],
"readRoles": [
"text"
],
"refTableName": "text",
"required": true,
"search": true,
"syncedFrom": "text",
"type": "any",
"unique": true,
"variant": "text",
"writeRoles": [
"text"
]
}
],
"hasFiles": true,
"hasGlobalSearch": true,
"hasHistory": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isEmailLinkingEnabled": true,
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onCreate": "text",
"onDelete": "text",
"onUpdate": "text",
"readRoles": [
"text"
],
"writeRoles": [
"text"
]
}
]
}
],
"page_info": {
"has_more": true,
"limit": 1,
"offset": 1
}
}Creates a new module in a workspace
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Create Module request body
Script expression run in the browser each time the app is opened. Needs schema:write plus records:write
Module name
^[a-z0-9_]+$Hide module from navigation
Hide module
Module created successfully
Bad request (e.g., module already exists)
Unauthorized
Workspace not found
Internal server error
POST /api/v1/workspace/{workspaceId}/modules HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 119
{
"icon": {
"color": "#bada55",
"filling": 0,
"icon": "favorite"
},
"labels": {
"": "The events module"
},
"name": "the_events_module"
}{
"data": {
"afterOpen": "text",
"components": [
{
"afterHide": "text",
"aggregation": "avg",
"annualRecurring": true,
"arrangement": "grid",
"background": "text",
"beforeShow": "text",
"border": {
"color": "text",
"style": "dashed",
"width": "text"
},
"calendarType": "text",
"cardBorder": "text",
"cardFont": "text",
"cardPadding": 1,
"cardRadius": 1,
"chartConfig": {
"chartType": "bar",
"dataSets": [
{
"aggregation": "average",
"color": "text",
"fieldName": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
],
"donut": true,
"labelPosition": "bottom",
"legend": {
"show": true
},
"limit": 1,
"orientation": "horizontal",
"showDataTable": true,
"showLabels": true,
"showPoints": true,
"showTitle": true,
"smooth": true,
"stacked": true,
"style": "default",
"tooltips": {
"show": true
},
"xAxis": {
"fieldName": null,
"groupBy": "daily",
"show": true
},
"yAxis": {
"show": true
}
},
"color": "text",
"colorFieldName": "text",
"constraints": "text",
"content": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"customStyle": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"dataPoint": "conditional",
"defaultValue": true,
"disabled": true,
"display": {
"color": "text",
"format": "compact",
"icon": "text",
"trend": {
"customPeriodEnd": "text",
"customPeriodStart": "text",
"format": "absolute",
"isShown": true,
"period": "custom",
"positiveDirection": "down"
}
},
"displayAs": "text",
"expression": "text",
"fieldIdDataPoint": "conditional",
"fieldIdValue": "text",
"fieldName": "text",
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"flex": "text",
"ganttConfig": {
"baselineEndFieldName": null,
"baselineStartFieldName": null,
"dependencyDirection": "predecessor",
"dependencyFieldName": null,
"disableDragAndDrop": true,
"endFieldName": null,
"hideTitleColumn": true,
"hideWeekends": true,
"milestoneFieldName": null,
"progressFieldName": null,
"showCriticalPath": true,
"showWeekends": true,
"startFieldName": null,
"timeScale": "day",
"titleColumnFieldName": null,
"titleColumnWidth": 1
},
"gap": "text",
"globalFilterBinding": [
"text"
],
"gridPreset": "text",
"groupByFieldName": "text",
"height": 1,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconLeft": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconRight": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"imagePosition": {
"position": "text",
"size": "text"
},
"isCompact": true,
"isHidden": true,
"isMarkdownEnabled": true,
"isSpreadsheetMode": true,
"labelPosition": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"mapTypeId": "text",
"margin": "text",
"name": "text",
"onChange": "text",
"onClick": "text",
"order": 1,
"overflow": "text",
"padding": "text",
"parentId": "text",
"placeholder": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"quickStyle": "body-md",
"radius": "text",
"remember": "localStorage",
"shadow": "text",
"shadowDom": true,
"showAs": "text",
"showBulkActions": true,
"showCalendarType": true,
"showCreateButton": true,
"showCreateRow": true,
"showDataAs": "text",
"showEmptyLane": true,
"showLinkExistingRecord": true,
"showMetadata": true,
"showOutlines": true,
"showSearchField": true,
"showTimeScaleSelector": true,
"showTitle": true,
"size": "text",
"tableName": "text",
"textAlign": "text-center",
"titleFieldName": "text",
"tooltip": "text",
"type": "text",
"value": "text",
"valueSpec": {
"type": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"valueType": "text",
"variant": "text",
"view": {
"columns": [
{
"agg": "text",
"conditionalStyling": [
{
"background": "text",
"cell": "text",
"color": "text",
"icon": "text",
"operand": "text",
"value": "text"
}
],
"field": "text",
"hidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"order": 1,
"role": "text",
"width": 1
}
],
"conditionalFormatting": [
{
"backgroundColor": "text",
"bold": true,
"comparator": "contains",
"expression": "text",
"fieldName": "text",
"highlightColor": "text",
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"italic": true,
"order": 1,
"strikethrough": true,
"target": "cell",
"textColor": "text",
"value": null
}
],
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"groupBy": [
{
"direction": "asc",
"fieldName": "text"
}
],
"sort": {
"direction": "asc",
"fieldName": "text"
}
},
"visible": true,
"visibleRoles": [
"text"
],
"widgetName": "text",
"widgetProps": {
"ANY_ADDITIONAL_PROPERTY": true
},
"width": 1
}
],
"hideNavigation": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"openRoles": [
"text"
],
"tables": [
{
"canCreate": "text",
"canDelete": "text",
"canRead": "text",
"canWrite": "text",
"createRoles": [
"text"
],
"deleteRoles": [
"text"
],
"fields": [
{
"binding": "text",
"canRead": "text",
"canWrite": "text",
"defaultValue": {
"$nx": "text"
},
"expression": "text",
"index": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onUpdate": "text",
"optionColor": "text",
"optionIcon": "text",
"optionName": "text",
"options": [
{
"color": "text",
"icon": "text",
"id": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"order": 1,
"textColor": "text"
}
],
"readRoles": [
"text"
],
"refTableName": "text",
"required": true,
"search": true,
"syncedFrom": "text",
"type": "any",
"unique": true,
"variant": "text",
"writeRoles": [
"text"
]
}
],
"hasFiles": true,
"hasGlobalSearch": true,
"hasHistory": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isEmailLinkingEnabled": true,
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onCreate": "text",
"onDelete": "text",
"onUpdate": "text",
"readRoles": [
"text"
],
"writeRoles": [
"text"
]
}
]
}
}Retrieves detailed information about a specific module, including its tables
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Module name
crmPattern: ^[a-z0-9_]+$Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Module details retrieved successfully
Unauthorized
Module not found
Internal server error
GET /api/v1/workspace/{workspaceId}/modules/{moduleName} HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": {
"afterOpen": "text",
"components": [
{
"afterHide": "text",
"aggregation": "avg",
"annualRecurring": true,
"arrangement": "grid",
"background": "text",
"beforeShow": "text",
"border": {
"color": "text",
"style": "dashed",
"width": "text"
},
"calendarType": "text",
"cardBorder": "text",
"cardFont": "text",
"cardPadding": 1,
"cardRadius": 1,
"chartConfig": {
"chartType": "bar",
"dataSets": [
{
"aggregation": "average",
"color": "text",
"fieldName": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
],
"donut": true,
"labelPosition": "bottom",
"legend": {
"show": true
},
"limit": 1,
"orientation": "horizontal",
"showDataTable": true,
"showLabels": true,
"showPoints": true,
"showTitle": true,
"smooth": true,
"stacked": true,
"style": "default",
"tooltips": {
"show": true
},
"xAxis": {
"fieldName": null,
"groupBy": "daily",
"show": true
},
"yAxis": {
"show": true
}
},
"color": "text",
"colorFieldName": "text",
"constraints": "text",
"content": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"customStyle": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"dataPoint": "conditional",
"defaultValue": true,
"disabled": true,
"display": {
"color": "text",
"format": "compact",
"icon": "text",
"trend": {
"customPeriodEnd": "text",
"customPeriodStart": "text",
"format": "absolute",
"isShown": true,
"period": "custom",
"positiveDirection": "down"
}
},
"displayAs": "text",
"expression": "text",
"fieldIdDataPoint": "conditional",
"fieldIdValue": "text",
"fieldName": "text",
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"flex": "text",
"ganttConfig": {
"baselineEndFieldName": null,
"baselineStartFieldName": null,
"dependencyDirection": "predecessor",
"dependencyFieldName": null,
"disableDragAndDrop": true,
"endFieldName": null,
"hideTitleColumn": true,
"hideWeekends": true,
"milestoneFieldName": null,
"progressFieldName": null,
"showCriticalPath": true,
"showWeekends": true,
"startFieldName": null,
"timeScale": "day",
"titleColumnFieldName": null,
"titleColumnWidth": 1
},
"gap": "text",
"globalFilterBinding": [
"text"
],
"gridPreset": "text",
"groupByFieldName": "text",
"height": 1,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconLeft": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconRight": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"imagePosition": {
"position": "text",
"size": "text"
},
"isCompact": true,
"isHidden": true,
"isMarkdownEnabled": true,
"isSpreadsheetMode": true,
"labelPosition": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"mapTypeId": "text",
"margin": "text",
"name": "text",
"onChange": "text",
"onClick": "text",
"order": 1,
"overflow": "text",
"padding": "text",
"parentId": "text",
"placeholder": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"quickStyle": "body-md",
"radius": "text",
"remember": "localStorage",
"shadow": "text",
"shadowDom": true,
"showAs": "text",
"showBulkActions": true,
"showCalendarType": true,
"showCreateButton": true,
"showCreateRow": true,
"showDataAs": "text",
"showEmptyLane": true,
"showLinkExistingRecord": true,
"showMetadata": true,
"showOutlines": true,
"showSearchField": true,
"showTimeScaleSelector": true,
"showTitle": true,
"size": "text",
"tableName": "text",
"textAlign": "text-center",
"titleFieldName": "text",
"tooltip": "text",
"type": "text",
"value": "text",
"valueSpec": {
"type": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"valueType": "text",
"variant": "text",
"view": {
"columns": [
{
"agg": "text",
"conditionalStyling": [
{
"background": "text",
"cell": "text",
"color": "text",
"icon": "text",
"operand": "text",
"value": "text"
}
],
"field": "text",
"hidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"order": 1,
"role": "text",
"width": 1
}
],
"conditionalFormatting": [
{
"backgroundColor": "text",
"bold": true,
"comparator": "contains",
"expression": "text",
"fieldName": "text",
"highlightColor": "text",
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"italic": true,
"order": 1,
"strikethrough": true,
"target": "cell",
"textColor": "text",
"value": null
}
],
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"groupBy": [
{
"direction": "asc",
"fieldName": "text"
}
],
"sort": {
"direction": "asc",
"fieldName": "text"
}
},
"visible": true,
"visibleRoles": [
"text"
],
"widgetName": "text",
"widgetProps": {
"ANY_ADDITIONAL_PROPERTY": true
},
"width": 1
}
],
"hideNavigation": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"openRoles": [
"text"
],
"tables": [
{
"canCreate": "text",
"canDelete": "text",
"canRead": "text",
"canWrite": "text",
"createRoles": [
"text"
],
"deleteRoles": [
"text"
],
"fields": [
{
"binding": "text",
"canRead": "text",
"canWrite": "text",
"defaultValue": {
"$nx": "text"
},
"expression": "text",
"index": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onUpdate": "text",
"optionColor": "text",
"optionIcon": "text",
"optionName": "text",
"options": [
{
"color": "text",
"icon": "text",
"id": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"order": 1,
"textColor": "text"
}
],
"readRoles": [
"text"
],
"refTableName": "text",
"required": true,
"search": true,
"syncedFrom": "text",
"type": "any",
"unique": true,
"variant": "text",
"writeRoles": [
"text"
]
}
],
"hasFiles": true,
"hasGlobalSearch": true,
"hasHistory": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isEmailLinkingEnabled": true,
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onCreate": "text",
"onDelete": "text",
"onUpdate": "text",
"readRoles": [
"text"
],
"writeRoles": [
"text"
]
}
]
}
}Deletes a module in a workspace
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Module name
crmPattern: ^[a-z0-9_]+$Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Module deleted successfully
Unauthorized
Module not found
Internal server error
DELETE /api/v1/workspace/{workspaceId}/modules/{moduleName} HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": {
"id": "text"
}
}Updates an existing module in a workspace
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Module name
crmPattern: ^[a-z0-9_]+$Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Update Module request body
Script expression run in the browser each time the app is opened. Needs schema:write plus records:write; null removes the script and is accepted
Module name
^[a-z0-9_]+$Hide module from navigation
Hide module
Module updated successfully
Bad request (e.g., module already exists)
Unauthorized
Module not found
Internal server error
PATCH /api/v1/workspace/{workspaceId}/modules/{moduleName} HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 152
{
"hideNavigation": false,
"icon": {
"icon": "database"
},
"isHidden": false,
"labels": {
"": "A new app"
},
"name": "a_new_application",
"openRoles": [
"editor",
"admin"
]
}{
"data": {
"afterOpen": "text",
"components": [
{
"afterHide": "text",
"aggregation": "avg",
"annualRecurring": true,
"arrangement": "grid",
"background": "text",
"beforeShow": "text",
"border": {
"color": "text",
"style": "dashed",
"width": "text"
},
"calendarType": "text",
"cardBorder": "text",
"cardFont": "text",
"cardPadding": 1,
"cardRadius": 1,
"chartConfig": {
"chartType": "bar",
"dataSets": [
{
"aggregation": "average",
"color": "text",
"fieldName": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
],
"donut": true,
"labelPosition": "bottom",
"legend": {
"show": true
},
"limit": 1,
"orientation": "horizontal",
"showDataTable": true,
"showLabels": true,
"showPoints": true,
"showTitle": true,
"smooth": true,
"stacked": true,
"style": "default",
"tooltips": {
"show": true
},
"xAxis": {
"fieldName": null,
"groupBy": "daily",
"show": true
},
"yAxis": {
"show": true
}
},
"color": "text",
"colorFieldName": "text",
"constraints": "text",
"content": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"customStyle": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"dataPoint": "conditional",
"defaultValue": true,
"disabled": true,
"display": {
"color": "text",
"format": "compact",
"icon": "text",
"trend": {
"customPeriodEnd": "text",
"customPeriodStart": "text",
"format": "absolute",
"isShown": true,
"period": "custom",
"positiveDirection": "down"
}
},
"displayAs": "text",
"expression": "text",
"fieldIdDataPoint": "conditional",
"fieldIdValue": "text",
"fieldName": "text",
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"flex": "text",
"ganttConfig": {
"baselineEndFieldName": null,
"baselineStartFieldName": null,
"dependencyDirection": "predecessor",
"dependencyFieldName": null,
"disableDragAndDrop": true,
"endFieldName": null,
"hideTitleColumn": true,
"hideWeekends": true,
"milestoneFieldName": null,
"progressFieldName": null,
"showCriticalPath": true,
"showWeekends": true,
"startFieldName": null,
"timeScale": "day",
"titleColumnFieldName": null,
"titleColumnWidth": 1
},
"gap": "text",
"globalFilterBinding": [
"text"
],
"gridPreset": "text",
"groupByFieldName": "text",
"height": 1,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconLeft": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconRight": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"imagePosition": {
"position": "text",
"size": "text"
},
"isCompact": true,
"isHidden": true,
"isMarkdownEnabled": true,
"isSpreadsheetMode": true,
"labelPosition": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"mapTypeId": "text",
"margin": "text",
"name": "text",
"onChange": "text",
"onClick": "text",
"order": 1,
"overflow": "text",
"padding": "text",
"parentId": "text",
"placeholder": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"quickStyle": "body-md",
"radius": "text",
"remember": "localStorage",
"shadow": "text",
"shadowDom": true,
"showAs": "text",
"showBulkActions": true,
"showCalendarType": true,
"showCreateButton": true,
"showCreateRow": true,
"showDataAs": "text",
"showEmptyLane": true,
"showLinkExistingRecord": true,
"showMetadata": true,
"showOutlines": true,
"showSearchField": true,
"showTimeScaleSelector": true,
"showTitle": true,
"size": "text",
"tableName": "text",
"textAlign": "text-center",
"titleFieldName": "text",
"tooltip": "text",
"type": "text",
"value": "text",
"valueSpec": {
"type": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"valueType": "text",
"variant": "text",
"view": {
"columns": [
{
"agg": "text",
"conditionalStyling": [
{
"background": "text",
"cell": "text",
"color": "text",
"icon": "text",
"operand": "text",
"value": "text"
}
],
"field": "text",
"hidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"order": 1,
"role": "text",
"width": 1
}
],
"conditionalFormatting": [
{
"backgroundColor": "text",
"bold": true,
"comparator": "contains",
"expression": "text",
"fieldName": "text",
"highlightColor": "text",
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"italic": true,
"order": 1,
"strikethrough": true,
"target": "cell",
"textColor": "text",
"value": null
}
],
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"groupBy": [
{
"direction": "asc",
"fieldName": "text"
}
],
"sort": {
"direction": "asc",
"fieldName": "text"
}
},
"visible": true,
"visibleRoles": [
"text"
],
"widgetName": "text",
"widgetProps": {
"ANY_ADDITIONAL_PROPERTY": true
},
"width": 1
}
],
"hideNavigation": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"openRoles": [
"text"
],
"tables": [
{
"canCreate": "text",
"canDelete": "text",
"canRead": "text",
"canWrite": "text",
"createRoles": [
"text"
],
"deleteRoles": [
"text"
],
"fields": [
{
"binding": "text",
"canRead": "text",
"canWrite": "text",
"defaultValue": {
"$nx": "text"
},
"expression": "text",
"index": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onUpdate": "text",
"optionColor": "text",
"optionIcon": "text",
"optionName": "text",
"options": [
{
"color": "text",
"icon": "text",
"id": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"order": 1,
"textColor": "text"
}
],
"readRoles": [
"text"
],
"refTableName": "text",
"required": true,
"search": true,
"syncedFrom": "text",
"type": "any",
"unique": true,
"variant": "text",
"writeRoles": [
"text"
]
}
],
"hasFiles": true,
"hasGlobalSearch": true,
"hasHistory": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isEmailLinkingEnabled": true,
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onCreate": "text",
"onDelete": "text",
"onUpdate": "text",
"readRoles": [
"text"
],
"writeRoles": [
"text"
]
}
]
}
}Updates labels across a module, its tables, their fields, and choice/multi option labels in a single transaction. Labels are replaced wholesale per object, same as the single-field PATCH — send every locale you want kept, not just the one changing. Every option id in an options entry must already exist on that field; an unknown id rejects the whole request. Writes against a synced field are rejected.
Enter your Workspace API key.
API keys can be generated and managed within the Workspace Integration settings in the Ninox app.
Module name
crmPattern: ^[a-z0-9_]+$Workspace ID
5rdco4s18swuPattern: ^[a-z0-9]+$Labels updated successfully
Bad request (e.g., unknown option id, table/field not found)
Unauthorized
Write rejected: field is synced from an external source (read-only)
Module not found
Internal server error
PATCH /api/v1/workspace/{workspaceId}/modules/{moduleName}/labels HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 163
{
"labels": {
"": "Sales",
"de": "Vertrieb"
},
"tables": {
"contacts": {
"fields": {
"status": {
"labels": {
"": "Status",
"de": "Status"
}
}
},
"labels": {
"": "Contacts",
"de": "Kontakte"
}
}
}
}{
"data": {
"fields": [
{
"binding": "text",
"canRead": "text",
"canWrite": "text",
"defaultValue": {
"$nx": "text"
},
"expression": "text",
"index": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onUpdate": "text",
"optionColor": "text",
"optionIcon": "text",
"optionName": "text",
"options": [
{
"color": "text",
"icon": "text",
"id": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"order": 1,
"textColor": "text"
}
],
"readRoles": [
"text"
],
"refTableName": "text",
"required": true,
"search": true,
"syncedFrom": "text",
"type": "any",
"unique": true,
"variant": "text",
"writeRoles": [
"text"
]
}
],
"module": {
"afterOpen": "text",
"components": [
{
"afterHide": "text",
"aggregation": "avg",
"annualRecurring": true,
"arrangement": "grid",
"background": "text",
"beforeShow": "text",
"border": {
"color": "text",
"style": "dashed",
"width": "text"
},
"calendarType": "text",
"cardBorder": "text",
"cardFont": "text",
"cardPadding": 1,
"cardRadius": 1,
"chartConfig": {
"chartType": "bar",
"dataSets": [
{
"aggregation": "average",
"color": "text",
"fieldName": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
],
"donut": true,
"labelPosition": "bottom",
"legend": {
"show": true
},
"limit": 1,
"orientation": "horizontal",
"showDataTable": true,
"showLabels": true,
"showPoints": true,
"showTitle": true,
"smooth": true,
"stacked": true,
"style": "default",
"tooltips": {
"show": true
},
"xAxis": {
"fieldName": null,
"groupBy": "daily",
"show": true
},
"yAxis": {
"show": true
}
},
"color": "text",
"colorFieldName": "text",
"constraints": "text",
"content": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"customStyle": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"dataPoint": "conditional",
"defaultValue": true,
"disabled": true,
"display": {
"color": "text",
"format": "compact",
"icon": "text",
"trend": {
"customPeriodEnd": "text",
"customPeriodStart": "text",
"format": "absolute",
"isShown": true,
"period": "custom",
"positiveDirection": "down"
}
},
"displayAs": "text",
"expression": "text",
"fieldIdDataPoint": "conditional",
"fieldIdValue": "text",
"fieldName": "text",
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"flex": "text",
"ganttConfig": {
"baselineEndFieldName": null,
"baselineStartFieldName": null,
"dependencyDirection": "predecessor",
"dependencyFieldName": null,
"disableDragAndDrop": true,
"endFieldName": null,
"hideTitleColumn": true,
"hideWeekends": true,
"milestoneFieldName": null,
"progressFieldName": null,
"showCriticalPath": true,
"showWeekends": true,
"startFieldName": null,
"timeScale": "day",
"titleColumnFieldName": null,
"titleColumnWidth": 1
},
"gap": "text",
"globalFilterBinding": [
"text"
],
"gridPreset": "text",
"groupByFieldName": "text",
"height": 1,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconLeft": {
"color": "text",
"filling": 0,
"icon": "text"
},
"iconRight": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"imagePosition": {
"position": "text",
"size": "text"
},
"isCompact": true,
"isHidden": true,
"isMarkdownEnabled": true,
"isSpreadsheetMode": true,
"labelPosition": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"mapTypeId": "text",
"margin": "text",
"name": "text",
"onChange": "text",
"onClick": "text",
"order": 1,
"overflow": "text",
"padding": "text",
"parentId": "text",
"placeholder": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"quickStyle": "body-md",
"radius": "text",
"remember": "localStorage",
"shadow": "text",
"shadowDom": true,
"showAs": "text",
"showBulkActions": true,
"showCalendarType": true,
"showCreateButton": true,
"showCreateRow": true,
"showDataAs": "text",
"showEmptyLane": true,
"showLinkExistingRecord": true,
"showMetadata": true,
"showOutlines": true,
"showSearchField": true,
"showTimeScaleSelector": true,
"showTitle": true,
"size": "text",
"tableName": "text",
"textAlign": "text-center",
"titleFieldName": "text",
"tooltip": "text",
"type": "text",
"value": "text",
"valueSpec": {
"type": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"valueType": "text",
"variant": "text",
"view": {
"columns": [
{
"agg": "text",
"conditionalStyling": [
{
"background": "text",
"cell": "text",
"color": "text",
"icon": "text",
"operand": "text",
"value": "text"
}
],
"field": "text",
"hidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"order": 1,
"role": "text",
"width": 1
}
],
"conditionalFormatting": [
{
"backgroundColor": "text",
"bold": true,
"comparator": "contains",
"expression": "text",
"fieldName": "text",
"highlightColor": "text",
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"id": "text",
"italic": true,
"order": 1,
"strikethrough": true,
"target": "cell",
"textColor": "text",
"value": null
}
],
"filter": [
{
"field": "text",
"id": "text",
"operator": "text",
"value": "text"
}
],
"groupBy": [
{
"direction": "asc",
"fieldName": "text"
}
],
"sort": {
"direction": "asc",
"fieldName": "text"
}
},
"visible": true,
"visibleRoles": [
"text"
],
"widgetName": "text",
"widgetProps": {
"ANY_ADDITIONAL_PROPERTY": true
},
"width": 1
}
],
"hideNavigation": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"openRoles": [
"text"
],
"tables": [
{
"canCreate": "text",
"canDelete": "text",
"canRead": "text",
"canWrite": "text",
"createRoles": [
"text"
],
"deleteRoles": [
"text"
],
"fields": [
{
"binding": "text",
"canRead": "text",
"canWrite": "text",
"defaultValue": {
"$nx": "text"
},
"expression": "text",
"index": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onUpdate": "text",
"optionColor": "text",
"optionIcon": "text",
"optionName": "text",
"options": [
{
"color": "text",
"icon": "text",
"id": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"order": 1,
"textColor": "text"
}
],
"readRoles": [
"text"
],
"refTableName": "text",
"required": true,
"search": true,
"syncedFrom": "text",
"type": "any",
"unique": true,
"variant": "text",
"writeRoles": [
"text"
]
}
],
"hasFiles": true,
"hasGlobalSearch": true,
"hasHistory": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isEmailLinkingEnabled": true,
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onCreate": "text",
"onDelete": "text",
"onUpdate": "text",
"readRoles": [
"text"
],
"writeRoles": [
"text"
]
}
]
},
"tables": [
{
"canCreate": "text",
"canDelete": "text",
"canRead": "text",
"canWrite": "text",
"createRoles": [
"text"
],
"deleteRoles": [
"text"
],
"fields": [
{
"binding": "text",
"canRead": "text",
"canWrite": "text",
"defaultValue": {
"$nx": "text"
},
"expression": "text",
"index": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onUpdate": "text",
"optionColor": "text",
"optionIcon": "text",
"optionName": "text",
"options": [
{
"color": "text",
"icon": "text",
"id": "text",
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"order": 1,
"textColor": "text"
}
],
"readRoles": [
"text"
],
"refTableName": "text",
"required": true,
"search": true,
"syncedFrom": "text",
"type": "any",
"unique": true,
"variant": "text",
"writeRoles": [
"text"
]
}
],
"hasFiles": true,
"hasGlobalSearch": true,
"hasHistory": true,
"icon": {
"color": "text",
"filling": 0,
"icon": "text"
},
"isEmailLinkingEnabled": true,
"isHidden": true,
"labels": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"name": "text",
"onCreate": "text",
"onDelete": "text",
"onUpdate": "text",
"readRoles": [
"text"
],
"writeRoles": [
"text"
]
}
]
}
}Last updated
Was this helpful?