Ninox Workspace API
The Workspace API from Ninox — 1 operation(s) for workspace.
The Workspace API from Ninox — 1 operation(s) for workspace.
openapi: 3.0.0
info:
title: Ninox Public Fields Workspace API
description: 'The Ninox Public API provides programmatic access to workspace resources, enabling seamless integration for managing modules, tables, fields and records.
### Authentication
All requests require a Workspace API Key passed in the HTTP header as follows:
**<code>Authorization: Bearer {apiKey}</code>**
API keys can be generated and managed within the **Workspace Integration** settings in the Ninox app.'
version: 1.0.0
contact: {}
servers: []
tags:
- name: Workspace
paths:
/api/v1/workspace/{workspaceId}:
get:
operationId: WorkspacesV1Controller_getWorkspace
summary: Get workspace details
description: Retrieves comprehensive details about a workspace, including all its modules
parameters:
- name: workspaceId
required: true
in: path
description: Workspace ID
schema:
minLength: 12
maxLength: 12
pattern: ^[a-z0-9]+$
example: 5rdco4s18swu
type: string
responses:
'200':
description: Workspace details retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/WorkspaceResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Workspace not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearer: []
tags:
- Workspace
components:
schemas:
WorkspaceResponse:
type: object
properties:
data:
type: object
properties:
modules:
type: array
items:
type: object
properties:
hideNavigation:
description: Hide module from navigation
type: boolean
icon:
description: Module icon
type: object
properties:
color:
description: Icon color (hex string)
type: string
filling:
description: Icon filling
anyOf:
- type: number
enum:
- 0
- type: number
enum:
- 1
icon:
type: string
description: Icon name
required:
- icon
isHidden:
description: Hide module
type: boolean
labels:
description: Module labels (localized)
type: object
additionalProperties:
type: string
name:
type: string
openRoles:
description: Module open roles
type: array
items:
type: string
tables:
type: array
items:
type: object
properties:
createRoles:
description: Roles allowed to create records
type: array
items:
type: string
deleteRoles:
description: Roles allowed to delete records
type: array
items:
type: string
fields:
type: array
items:
type: object
properties:
expression:
description: Expression (for function type)
type: string
expressionErrors:
description: Expression validation errors (for function type)
type: array
items:
type: object
properties:
column:
type: number
description: Column number where the error occurred
line:
type: number
description: Line number where the error occurred
message:
type: string
description: Error message
required:
- column
- line
- message
index:
description: Field is indexed
type: boolean
labels:
description: Field labels (localized)
type: object
additionalProperties:
type: string
name:
type: string
description: Field name
optionColor:
description: Color expression for dchoice/dmulti fields
type: string
optionIcon:
description: Icon expression for dchoice/dmulti fields
type: string
optionName:
description: Display name expression for dchoice/dmulti fields
type: string
options:
description: Options array for choice/multi fields, or selection expression for dchoice/dmulti fields
anyOf:
- type: array
items:
type: object
properties:
color:
description: Option color (hex string)
type: string
icon:
description: Option icon name
type: string
id:
type: string
description: Stable option id
labels:
description: Localized option labels
type: object
additionalProperties:
type: string
name:
type: string
description: Option name
order:
type: number
description: Option display order
textColor:
description: Option text color (hex string)
type: string
required:
- id
- name
- order
- type: string
readRoles:
description: Roles allowed to read the field
type: array
items:
type: string
refTableId:
description: Reference table id
type: string
required:
description: Field is required
type: boolean
search:
description: Field is searchable
type: boolean
type:
type: string
enum:
- any
- appointment
- boolean
- choice
- color
- date
- dchoice
- dmulti
- file
- function
- html
- icon
- lambda
- multi
- number
- react
- reference
- reverse
- rowId
- string
- styled
- time
- timeinterval
- timestamp
- unknown
- user
- void
description: Field type
unique:
description: Field is unique
type: boolean
variant:
description: Field variant (for string type)
type: string
writeRoles:
description: Roles allowed to write to the field
type: array
items:
type: string
required:
- name
- type
hasFiles:
description: Enable files for the table
type: boolean
hasGlobalSearch:
description: Enable global search for the table
type: boolean
hasHistory:
description: Enable history for the table
type: boolean
icon:
description: Table icon
type: object
properties:
color:
description: Icon color (hex string)
type: string
filling:
description: Icon filling
anyOf:
- type: number
enum:
- 0
- type: number
enum:
- 1
icon:
type: string
description: Icon name
required:
- icon
isEmailLinkingEnabled:
description: Enable email linking for the table
type: boolean
isHidden:
description: Hide the table
type: boolean
labels:
description: Table labels (localized)
type: object
additionalProperties:
type: string
name:
type: string
readRoles:
description: Roles allowed to read records
type: array
items:
type: string
writeRoles:
description: Roles allowed to update records
type: array
items:
type: string
required:
- name
required:
- name
name:
type: string
description: Workspace details
required:
- data
ErrorResponse:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Error message
required:
- error
securitySchemes:
bearer:
scheme: bearer
bearerFormat: API Key
description: "Enter your Workspace API key. \n\n API keys can be generated and managed within the **Workspace Integration** settings in the Ninox app."
in: header
name: Authorization
type: http