openapi: 3.0.0 info: title: Corteza system API description: Corteza system REST API definition version: '2022.9' contact: email: info@cortezaproject.org license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html paths: /system/auth/impersonate: post: tags: - Authentication summary: Impersonate a user responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_0 userID: type: string description: ID of the impersonated user required: - userID application/x-www-form-urlencoded: schema: type: object properties: *ref_0 /system/auth/clients/: get: tags: - Authentication clients summary: List clients responses: '200': description: OK parameters: - in: query name: handle description: Client handle required: false schema: &ref_1 type: string - in: query name: deleted description: Exclude (0, default), include (1) or return only (2) deleted clients required: false schema: &ref_2 type: string - in: query name: labels description: Labels required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: &ref_8 type: boolean - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Authentication clients summary: Create client responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_3 handle: type: string description: Client handle meta: type: string description: Additional info validGrant: type: string description: Valid grants (authorization_code redirectURI: type: string description: Space delimited list of redirect URIs scope: type: string description: Space delimited list of scopes trusted: type: boolean description: Is client trusted (skip authorization) enabled: type: boolean description: Is client enabled validFrom: type: string format: date-time description: Date and time from when client becomes valid expiresAt: type: string format: date-time description: Date and time from client is no logner valid security: type: string description: Security settings labels: type: string description: Labels application/x-www-form-urlencoded: schema: type: object properties: *ref_3 /system/auth/clients/{clientID}: put: tags: - Authentication clients summary: Update user details responses: '200': description: OK parameters: - in: path name: clientID description: Client ID required: true schema: &ref_5 type: string requestBody: content: application/json: schema: type: object properties: &ref_4 handle: type: string description: Client handle meta: type: string description: Additional info validGrant: type: string description: Valid grants (authorization_code redirectURI: type: string description: Space delimited list of redirect URIs scope: type: string description: Space delimited list of scopes trusted: type: boolean description: Is client trusted (skip authorization) enabled: type: boolean description: Is client enabled validFrom: type: string format: date-time description: Date and time from when client becomes valid expiresAt: type: string format: date-time description: Date and time from client is no logner valid security: type: string description: Security settings labels: type: string description: Labels application/x-www-form-urlencoded: schema: type: object properties: *ref_4 get: tags: - Authentication clients summary: Read client details responses: '200': description: OK parameters: - in: path name: clientID description: Client ID required: true schema: *ref_5 delete: tags: - Authentication clients summary: Remove client responses: '200': description: OK parameters: - in: path name: clientID description: Client ID required: true schema: *ref_5 /system/auth/clients/{clientID}/undelete: post: tags: - Authentication clients summary: Undelete client responses: '200': description: OK parameters: - in: path name: clientID description: Client ID required: true schema: *ref_5 /system/auth/clients/{clientID}/secret: post: tags: - Authentication clients summary: Regenerate client's secret responses: '200': description: OK parameters: - in: path name: clientID description: Client ID required: true schema: *ref_5 get: tags: - Authentication clients summary: Exposes client's secret responses: '200': description: OK parameters: - in: path name: clientID description: Client ID required: true schema: *ref_5 /system/settings/: get: tags: - Settings summary: List settings responses: '200': description: OK parameters: - in: query name: prefix description: Key prefix required: false schema: *ref_1 patch: tags: - Settings summary: Update settings responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_6 values: type: array items: type: object properties: name: type: string value: type: string description: >- Array of new settings: `[{ name: ..., value: ... }]`. Omit value to remove setting required: - values application/x-www-form-urlencoded: schema: type: object properties: *ref_6 /system/settings/{key}: get: tags: - Settings summary: Get a value for a key responses: '200': description: OK parameters: - in: path name: key description: Setting key required: true schema: *ref_1 - in: query name: ownerID description: Owner ID required: false schema: *ref_5 post: tags: - Settings summary: Set value for specific setting responses: '200': description: OK parameters: - in: path name: key description: Key required: true schema: *ref_1 requestBody: content: application/json: schema: type: object properties: &ref_7 upload: type: string format: binary description: File to upload ownerID: type: string description: Owner ID application/x-www-form-urlencoded: schema: type: object properties: *ref_7 /system/settings/current: get: tags: - Settings summary: Current compose settings responses: '200': description: OK /system/roles/: get: tags: - Roles summary: List roles responses: '200': description: OK parameters: - in: query name: query description: Search query required: false schema: *ref_1 - in: query name: memberID description: Search roles for member required: false schema: *ref_5 - in: query name: deleted description: Exclude (0, default), include (1) or return only (2) deleted roles required: false schema: *ref_2 - in: query name: archived description: Exclude (0, default), include (1) or return only (2) archived roles required: false schema: *ref_2 - in: query name: labels description: Labels required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Roles summary: Update role details responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_9 name: type: string description: Name of role handle: type: string description: Handle for role members: type: array items: *ref_1 description: role member IDs meta: type: string description: Meta labels: type: string description: Labels required: - name - handle application/x-www-form-urlencoded: schema: type: object properties: *ref_9 /system/roles/{roleID}: put: tags: - Roles summary: Update role details responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_10 name: type: string description: Name of role handle: type: string description: Handle for role members: type: array items: *ref_1 description: role member IDs meta: type: string description: Meta labels: type: string description: Labels application/x-www-form-urlencoded: schema: type: object properties: *ref_10 get: tags: - Roles summary: Read role details and memberships responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 delete: tags: - Roles summary: Remove role responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 /system/roles/{roleID}/archive: post: tags: - Roles summary: Archive role responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 /system/roles/{roleID}/unarchive: post: tags: - Roles summary: Unarchive role responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 /system/roles/{roleID}/undelete: post: tags: - Roles summary: Undelete role responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 /system/roles/{roleID}/move: post: tags: - Roles summary: Move role to different organisation responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_11 organisationID: type: string description: Role ID required: - organisationID application/x-www-form-urlencoded: schema: type: object properties: *ref_11 /system/roles/{roleID}/merge: post: tags: - Roles summary: Merge one role into another responses: '200': description: OK parameters: - in: path name: roleID description: Source Role ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_12 destination: type: string description: Destination Role ID required: - destination application/x-www-form-urlencoded: schema: type: object properties: *ref_12 /system/roles/{roleID}/members: get: tags: - Roles summary: Returns all role members responses: '200': description: OK parameters: - in: path name: roleID description: Source Role ID required: true schema: *ref_5 /system/roles/{roleID}/member/{userID}: post: tags: - Roles summary: Add member to a role responses: '200': description: OK parameters: - in: path name: roleID description: Source Role ID required: true schema: *ref_5 - in: path name: userID description: User ID required: true schema: *ref_5 delete: tags: - Roles summary: Remove member from a role responses: '200': description: OK parameters: - in: path name: roleID description: Source Role ID required: true schema: *ref_5 - in: path name: userID description: User ID required: true schema: *ref_5 /system/roles/{roleID}/trigger: post: tags: - Roles summary: Fire system:role trigger responses: '200': description: OK parameters: - in: path name: roleID description: ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_13 script: type: string description: Script to execute args: type: string description: Arguments to pass to the script required: - script application/x-www-form-urlencoded: schema: type: object properties: *ref_13 /system/roles/{roleID}/rules/clone: post: tags: - Roles summary: Clone permission settings to a role responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 - in: query name: cloneToRoleID description: Clone set of rules to roleID required: true schema: type: array items: *ref_1 /system/users/: get: tags: - Users summary: Search users (Directory) responses: '200': description: OK parameters: - in: query name: userID description: Filter by user ID required: false schema: type: array items: *ref_1 - in: query name: roleID description: Filter by role membership required: false schema: type: array items: *ref_1 - in: query name: query description: Search query to match against users required: false schema: *ref_1 - in: query name: username description: Search username to match against users required: false schema: *ref_1 - in: query name: email description: Search email to match against users required: false schema: *ref_1 - in: query name: handle description: Search handle to match against users required: false schema: *ref_1 - in: query name: kind description: Kind (normal, bot) required: false schema: type: string - in: query name: incDeleted description: '[Deprecated] Include deleted users (requires ''access'' permission)' required: false schema: *ref_8 - in: query name: incSuspended description: '[Deprecated] Include suspended users' required: false schema: *ref_8 - in: query name: deleted description: Exclude (0, default), include (1) or return only (2) deleted users required: false schema: *ref_2 - in: query name: suspended description: Exclude (0, default), include (1) or return only (2) suspended users required: false schema: *ref_2 - in: query name: labels description: Labels required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Users summary: Create user responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_14 email: type: string description: Email name: type: string description: Name handle: type: string description: Handle kind: type: string description: Kind (normal, bot) labels: type: string description: Labels required: - email application/x-www-form-urlencoded: schema: type: object properties: *ref_14 /system/users/{userID}: put: tags: - Users summary: Update user details responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_15 email: type: string description: Email name: type: string description: Name handle: type: string description: Handle kind: type: string description: Kind (normal, bot) labels: type: string description: Labels required: - email - name application/x-www-form-urlencoded: schema: type: object properties: *ref_15 patch: tags: - Users summary: Patch user (experimental) responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 get: tags: - Users summary: Read user details responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 delete: tags: - Users summary: Remove user responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 /system/users/{userID}/suspend: post: tags: - Users summary: Suspend user responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 /system/users/{userID}/unsuspend: post: tags: - Users summary: Unsuspend user responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 /system/users/{userID}/undelete: post: tags: - Users summary: Undelete user responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 /system/users/{userID}/password: post: tags: - Users summary: Set's or changes user's password responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_16 password: type: string format: password description: New password or empty to unset application/x-www-form-urlencoded: schema: type: object properties: *ref_16 /system/users/{userID}/membership: get: tags: - Users summary: Add member to a role responses: '200': description: OK parameters: - in: path name: userID description: User ID required: true schema: *ref_5 /system/users/{userID}/membership/{roleID}: post: tags: - Users summary: Add role to a user responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 - in: path name: userID description: User ID required: true schema: *ref_5 delete: tags: - Users summary: Remove role from a user responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 - in: path name: userID description: User ID required: true schema: *ref_5 /system/users/{userID}/trigger: post: tags: - Users summary: Fire system:user trigger responses: '200': description: OK parameters: - in: path name: userID description: ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_17 script: type: string description: Script to execute args: type: string description: Arguments to pass to the script required: - script application/x-www-form-urlencoded: schema: type: object properties: *ref_17 /system/users/{userID}/sessions: delete: tags: - Users summary: Remove all auth sessions of user responses: '200': description: OK parameters: - in: path name: userID description: ID required: true schema: *ref_5 /system/users/{userID}/credentials: get: tags: - Users summary: List user's credentials responses: '200': description: OK parameters: - in: path name: userID description: ID required: true schema: *ref_5 /system/users/{userID}/credentials/{credentialsID}: delete: tags: - Users summary: List user's credentials responses: '200': description: OK parameters: - in: path name: userID description: ID required: true schema: *ref_5 - in: path name: credentialsID description: Credentials ID required: true schema: *ref_5 /system/users/export/{filename}.zip: get: tags: - Users summary: Export users responses: '200': description: OK parameters: - in: path name: filename description: Output filename required: true schema: *ref_1 - in: query name: inclRoleMembership description: Include role membership required: false schema: *ref_8 - in: query name: inclRoles description: Include roles required: false schema: *ref_8 /system/users/import: post: tags: - Users summary: Import users responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_18 upload: type: string format: binary description: File import required: - upload application/x-www-form-urlencoded: schema: type: object properties: *ref_18 /system/dal/drivers/: get: tags: - Data access layer drivers summary: Search drivers responses: '200': description: OK /system/dal/sensitivity-levels/: get: tags: - Data access layer sensitivity levels summary: Search sensitivity levels responses: '200': description: OK parameters: - in: query name: sensitivityLevelID description: Filter by sensitivity level ID required: false schema: type: array items: *ref_1 - in: query name: deleted description: >- Exclude (0, default), include (1) or return only (2) deleted sensitivity levels required: false schema: *ref_2 post: tags: - Data access layer sensitivity levels summary: Create sensitivity level responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_19 handle: type: string level: type: integer meta: type: string required: - handle - level - meta application/x-www-form-urlencoded: schema: type: object properties: *ref_19 /system/dal/sensitivity-levels/{sensitivityLevelID}: put: tags: - Data access layer sensitivity levels summary: Update sensitivity details responses: '200': description: OK parameters: - in: path name: sensitivityLevelID description: Connection ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_20 handle: type: string level: type: integer meta: type: string required: - handle - level - meta application/x-www-form-urlencoded: schema: type: object properties: *ref_20 get: tags: - Data access layer sensitivity levels summary: Read connection details responses: '200': description: OK parameters: - in: path name: sensitivityLevelID description: Connection ID required: true schema: *ref_5 delete: tags: - Data access layer sensitivity levels summary: Remove sensitivity level responses: '200': description: OK parameters: - in: path name: sensitivityLevelID description: Connection ID required: true schema: *ref_5 /system/dal/sensitivity-levels/{sensitivityLevelID}/undelete: post: tags: - Data access layer sensitivity levels summary: Undelete sensitivity level responses: '200': description: OK parameters: - in: path name: sensitivityLevelID description: Connection ID required: true schema: *ref_5 /system/dal/connections/: get: tags: - Data access layer connections summary: Search connections (Directory) responses: '200': description: OK parameters: - in: query name: connectionID description: Filter by connection ID required: false schema: type: array items: *ref_1 - in: query name: handle description: Search handle to match against connections required: false schema: *ref_1 - in: query name: type description: Search type to match against connections required: false schema: *ref_1 - in: query name: deleted description: >- Exclude (0, default), include (1) or return only (2) deleted connections required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 post: tags: - Data access layer connections summary: Create connection responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_21 handle: type: string type: type: string meta: type: string config: type: string required: - handle - type - meta - config application/x-www-form-urlencoded: schema: type: object properties: *ref_21 /system/dal/connections/{connectionID}: put: tags: - Data access layer connections summary: Update connection details responses: '200': description: OK parameters: - in: path name: connectionID description: Connection ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_22 handle: type: string type: type: string meta: type: string config: type: string required: - handle - type - meta - config application/x-www-form-urlencoded: schema: type: object properties: *ref_22 get: tags: - Data access layer connections summary: Read connection details responses: '200': description: OK parameters: - in: path name: connectionID description: Connection ID required: true schema: *ref_5 delete: tags: - Data access layer connections summary: Remove connection responses: '200': description: OK parameters: - in: path name: connectionID description: Connection ID required: true schema: *ref_5 /system/dal/connections/{connectionID}/undelete: post: tags: - Data access layer connections summary: Undelete connection responses: '200': description: OK parameters: - in: path name: connectionID description: Connection ID required: true schema: *ref_5 /system/application/: get: tags: - Applications summary: List applications responses: '200': description: OK parameters: - in: query name: name description: Application name required: false schema: *ref_1 - in: query name: query description: Filter applications required: false schema: *ref_1 - in: query name: deleted description: Exclude (0, default), include (1) or return only (2) deleted roles required: false schema: *ref_2 - in: query name: labels description: Labels required: false schema: *ref_1 - in: query name: flags description: Flags required: false schema: type: array items: *ref_1 - in: query name: incFlags description: Calculated (0, default), global (1) or return only (2) own flags required: false schema: *ref_2 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Applications summary: Create application responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_23 name: type: string description: Application name enabled: type: boolean description: Enabled weight: type: integer description: Weight for sorting unify: type: string format: json description: Unify properties config: type: string format: json description: Arbitrary JSON holding application configuration labels: type: string description: Labels required: - name application/x-www-form-urlencoded: schema: type: object properties: *ref_23 /system/application/{applicationID}: put: tags: - Applications summary: Update user details responses: '200': description: OK parameters: - in: path name: applicationID description: Application ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_24 name: type: string description: Email enabled: type: boolean description: Enabled weight: type: integer description: Weight for sorting unify: type: string format: json description: Unify properties config: type: string format: json description: Arbitrary JSON holding application configuration labels: type: string description: Labels required: - name application/x-www-form-urlencoded: schema: type: object properties: *ref_24 get: tags: - Applications summary: Read application details responses: '200': description: OK parameters: - in: path name: applicationID description: Application ID required: true schema: *ref_5 - in: query name: incFlags description: Calculated (0, default), global (1) or return only (2) own flags required: false schema: *ref_2 delete: tags: - Applications summary: Remove application responses: '200': description: OK parameters: - in: path name: applicationID description: Application ID required: true schema: *ref_5 /system/application/upload: post: tags: - Applications summary: Upload application assets responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_25 upload: type: string format: binary description: File to upload required: - upload application/x-www-form-urlencoded: schema: type: object properties: *ref_25 /system/application/{applicationID}/flag/{ownedBy}/{flag}: post: tags: - Applications summary: Flag application responses: '200': description: OK parameters: - in: path name: applicationID description: Application ID required: true schema: *ref_5 - in: path name: flag description: Flag required: true schema: *ref_1 - in: path name: ownedBy description: Owner; 0 = everyone required: true schema: *ref_5 delete: tags: - Applications summary: Unflag application responses: '200': description: OK parameters: - in: path name: applicationID description: Application ID required: true schema: *ref_5 - in: path name: flag description: Flag required: true schema: *ref_1 - in: path name: ownedBy description: Owner; 0 = everyone required: true schema: *ref_5 /system/application/{applicationID}/undelete: post: tags: - Applications summary: Undelete application responses: '200': description: OK parameters: - in: path name: applicationID description: Application ID required: true schema: *ref_5 /system/application/{applicationID}/trigger: post: tags: - Applications summary: Fire system:application trigger responses: '200': description: OK parameters: - in: path name: applicationID description: ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_26 script: type: string description: Script to execute args: type: string description: Arguments to pass to the script required: - script application/x-www-form-urlencoded: schema: type: object properties: *ref_26 /system/application/reorder: post: tags: - Applications summary: Reorder applications responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_27 applicationIDs: type: array items: *ref_1 description: Application order required: - applicationIDs application/x-www-form-urlencoded: schema: type: object properties: *ref_27 /system/permissions/: get: tags: - Permissions summary: Retrieve defined permissions responses: '200': description: OK /system/permissions/effective: get: tags: - Permissions summary: Effective rules for current user responses: '200': description: OK parameters: - in: query name: resource description: Show only rules for a specific resource required: false schema: *ref_1 /system/permissions/trace: get: tags: - Permissions summary: Evaluate rules for given user/role combo responses: '200': description: OK parameters: - in: query name: resource description: Show only rules for a specific resource required: false schema: type: array items: *ref_1 - in: query name: userID required: false schema: *ref_5 - in: query name: roleID required: false schema: type: array items: *ref_5 /system/permissions/{roleID}/rules: get: tags: - Permissions summary: Retrieve role permissions responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 - in: query name: resource description: Show only rules for a specific resource required: false schema: type: array items: *ref_1 delete: tags: - Permissions summary: Remove all defined role permissions responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 patch: tags: - Permissions summary: Update permission settings responses: '200': description: OK parameters: - in: path name: roleID description: Role ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_28 rules: type: string description: List of permission rules to set required: - rules application/x-www-form-urlencoded: schema: type: object properties: *ref_28 /system/reminder/: get: tags: - Reminders summary: List/read reminders responses: '200': description: OK parameters: - in: query name: reminderID description: Filter by reminder ID required: false schema: type: array items: *ref_1 - in: query name: resource description: Only reminders of a specific resource required: false schema: *ref_1 - in: query name: assignedTo description: Only reminders for a given user required: false schema: *ref_5 - in: query name: scheduledFrom description: Only reminders from this time (included) required: false schema: &ref_29 type: string format: date-time - in: query name: scheduledUntil description: Only reminders up to this time (included) required: false schema: *ref_29 - in: query name: scheduledOnly description: Only scheduled reminders required: false schema: *ref_8 - in: query name: excludeDismissed description: Filter out dismissed reminders required: false schema: *ref_8 - in: query name: includeDeleted description: Includes deleted reminders required: false schema: *ref_8 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Reminders summary: Add new reminder responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_30 resource: type: string description: Resource assignedTo: type: string description: Assigned To payload: type: string format: json description: Payload remindAt: type: string format: date-time description: Remind At required: - resource - assignedTo - payload application/x-www-form-urlencoded: schema: type: object properties: *ref_30 /system/reminder/{reminderID}: put: tags: - Reminders summary: Update reminder responses: '200': description: OK parameters: - in: path name: reminderID description: Reminder ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_31 resource: type: string description: Resource assignedTo: type: string description: Assigned To payload: type: string format: json description: Payload remindAt: type: string format: date-time description: Remind At required: - resource - assignedTo - payload application/x-www-form-urlencoded: schema: type: object properties: *ref_31 get: tags: - Reminders summary: Read reminder by ID responses: '200': description: OK parameters: - in: path name: reminderID description: Reminder ID required: true schema: *ref_5 delete: tags: - Reminders summary: Delete reminder responses: '200': description: OK parameters: - in: path name: reminderID description: Reminder ID required: true schema: *ref_5 /system/reminder/{reminderID}/dismiss: patch: tags: - Reminders summary: Dismiss reminder responses: '200': description: OK parameters: - in: path name: reminderID description: reminder ID required: true schema: *ref_5 /system/reminder/{reminderID}/snooze: patch: tags: - Reminders summary: Snooze reminder responses: '200': description: OK parameters: - in: path name: reminderID description: reminder ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_32 remindAt: type: string format: date-time description: New Remind At Time required: - remindAt application/x-www-form-urlencoded: schema: type: object properties: *ref_32 /system/attachment/{kind}/{attachmentID}: get: tags: - Attachments summary: Attachment details responses: '200': description: OK parameters: - in: path name: kind description: Kind required: true schema: *ref_1 - in: path name: attachmentID description: Attachment ID required: true schema: *ref_5 - in: query name: sign description: Signature required: false schema: *ref_1 - in: query name: userID description: User ID required: false schema: *ref_5 delete: tags: - Attachments summary: Delete attachment responses: '200': description: OK parameters: - in: path name: kind description: Kind required: true schema: *ref_1 - in: path name: attachmentID description: Attachment ID required: true schema: *ref_5 - in: query name: sign description: Signature required: false schema: *ref_1 - in: query name: userID description: User ID required: false schema: *ref_5 /system/attachment/{kind}/{attachmentID}/original/{name}: get: tags: - Attachments summary: Serves attached file responses: '200': description: OK parameters: - in: path name: kind description: Kind required: true schema: *ref_1 - in: path name: attachmentID description: Attachment ID required: true schema: *ref_5 - in: path name: name description: File name required: true schema: *ref_1 - in: query name: sign description: Signature required: false schema: *ref_1 - in: query name: userID description: User ID required: false schema: *ref_5 - in: query name: download description: Force file download required: false schema: *ref_8 /system/attachment/{kind}/{attachmentID}/preview.{ext}: get: tags: - Attachments summary: Serves preview of an attached file responses: '200': description: OK parameters: - in: path name: kind description: Kind required: true schema: *ref_1 - in: path name: attachmentID description: Attachment ID required: true schema: *ref_5 - in: path name: ext description: Preview extension/format required: true schema: *ref_1 - in: query name: sign description: Signature required: false schema: *ref_1 - in: query name: userID description: User ID required: false schema: *ref_5 /system/template/: get: tags: - Template summary: List templates responses: '200': description: OK parameters: - in: query name: query description: Query required: false schema: *ref_1 - in: query name: handle description: Handle required: false schema: *ref_1 - in: query name: type description: Type required: false schema: *ref_1 - in: query name: ownerID description: OwnerID required: false schema: *ref_5 - in: query name: partial description: Show partial templates required: false schema: *ref_8 - in: query name: deleted description: >- Exclude (0, default), include (1) or return only (2) deleted templates required: false schema: *ref_2 - in: query name: labels description: Labels required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Template summary: Create template responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_33 handle: type: string description: Handle language: type: string description: Language type: type: string description: Type partial: type: boolean description: Partial meta: type: string description: Meta template: type: string description: Template ownerID: type: string description: OwnerID labels: type: string description: Labels application/x-www-form-urlencoded: schema: type: object properties: *ref_33 /system/template/{templateID}: get: tags: - Template summary: Read template responses: '200': description: OK parameters: - in: path name: templateID description: ID required: true schema: *ref_5 put: tags: - Template summary: Update template responses: '200': description: OK parameters: - in: path name: templateID description: ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_34 handle: type: string description: Handle language: type: string description: Language type: type: string description: Type partial: type: boolean description: Partial meta: type: string description: Meta template: type: string description: Template ownerID: type: string description: OwnerID labels: type: string description: Labels application/x-www-form-urlencoded: schema: type: object properties: *ref_34 delete: tags: - Template summary: Delete template responses: '200': description: OK parameters: - in: path name: templateID description: ID required: true schema: *ref_5 /system/template/{templateID}/undelete: post: tags: - Template summary: Undelete template responses: '200': description: OK parameters: - in: path name: templateID description: Template ID required: true schema: *ref_5 /system/template/render/drivers: get: tags: - Template summary: Render drivers responses: '200': description: OK /system/template/{templateID}/render/{filename}.{ext}: post: tags: - Template summary: Render template responses: '200': description: OK parameters: - in: path name: templateID description: Render template to use required: true schema: *ref_5 - in: path name: filename description: Filename to use required: true schema: *ref_1 - in: path name: ext description: Export format required: true schema: *ref_1 requestBody: content: application/json: schema: type: object properties: &ref_35 variables: type: string format: json description: Variables defined by import file options: type: string format: json description: Rendering options required: - variables application/x-www-form-urlencoded: schema: type: object properties: *ref_35 /system/reports/: get: tags: - Reports summary: List reports responses: '200': description: OK parameters: - in: query name: handle description: Report handle required: false schema: *ref_1 - in: query name: deleted description: Exclude (0, default), include (1) or return only (2) deleted reports required: false schema: *ref_2 - in: query name: labels description: Labels required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Reports summary: Create report responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_36 handle: type: string description: Client handle meta: type: string description: Additional info scenarios: type: string description: Report scenarios sources: type: string description: Report source definitions blocks: type: string description: Report blocks definition labels: type: string description: Labels application/x-www-form-urlencoded: schema: type: object properties: *ref_36 /system/reports/{reportID}: put: tags: - Reports summary: Update report responses: '200': description: OK parameters: - in: path name: reportID description: Report ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_37 handle: type: string description: Client handle meta: type: string description: Additional info scenarios: type: string description: Report scenarios sources: type: string description: Report sources definition blocks: type: string description: Report blocks definition labels: type: string description: Labels application/x-www-form-urlencoded: schema: type: object properties: *ref_37 get: tags: - Reports summary: Read report details responses: '200': description: OK parameters: - in: path name: reportID description: Report ID required: true schema: *ref_5 delete: tags: - Reports summary: Remove report responses: '200': description: OK parameters: - in: path name: reportID description: Report ID required: true schema: *ref_5 /system/reports/{reportID}/undelete: post: tags: - Reports summary: Undelete report responses: '200': description: OK parameters: - in: path name: reportID description: Report ID required: true schema: *ref_5 /system/reports/describe: post: tags: - Reports summary: Describe report responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_38 sources: type: string description: Report steps definition steps: type: string description: Report steps definition describe: type: array items: *ref_1 description: The source descriptions to generate application/x-www-form-urlencoded: schema: type: object properties: *ref_38 /system/reports/{reportID}/run: post: tags: - Reports summary: Run report responses: '200': description: OK parameters: - in: path name: reportID description: Report ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_39 frames: type: string description: Report data frame definitions application/x-www-form-urlencoded: schema: type: object properties: *ref_39 /system/stats/: get: tags: - Statistics summary: List system statistics responses: '200': description: OK /system/automation/: get: tags: - System automation scripts summary: List all available automation scripts for system resources responses: '200': description: OK parameters: - in: query name: resourceTypePrefixes description: Filter by resource prefix required: false schema: type: array items: *ref_1 - in: query name: resourceTypes description: Filter by resource type required: false schema: type: array items: *ref_1 - in: query name: eventTypes description: Filter by event type required: false schema: type: array items: *ref_1 - in: query name: excludeInvalid description: Exclude scripts that cannot be used (errors) required: false schema: *ref_8 - in: query name: excludeClientScripts description: Do not include client scripts required: false schema: *ref_8 - in: query name: excludeServerScripts description: Do not include server scripts required: false schema: *ref_8 /system/automation/{bundle}-{type}.{ext}: get: tags: - System automation scripts summary: Serves client scripts bundle responses: '200': description: OK parameters: - in: path name: bundle description: Name of the bundle required: true schema: *ref_1 - in: path name: type description: Bundle type required: true schema: *ref_1 - in: path name: ext description: Bundle extension required: true schema: *ref_1 /system/automation/trigger: post: tags: - System automation scripts summary: Triggers execution of a specific script on a system service level responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_40 script: type: string description: Script to execute args: type: string description: Arguments to pass to the script required: - script application/x-www-form-urlencoded: schema: type: object properties: *ref_40 /system/actionlog/: get: tags: - Action log summary: Action log events responses: '200': description: OK parameters: - in: query name: from description: From required: false schema: *ref_29 - in: query name: to description: To required: false schema: *ref_29 - in: query name: beforeActionID description: Entries before specified action ID required: false schema: *ref_5 - in: query name: resource description: Resource required: false schema: *ref_1 - in: query name: action description: Action required: false schema: *ref_1 - in: query name: actorID description: Filter by one or more actors required: false schema: type: array items: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 /system/queues/: get: tags: - Messaging queues summary: Messaging queues responses: '200': description: OK parameters: - in: query name: query description: Search query required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 - in: query name: deleted description: Exclude (0 required: false schema: *ref_2 /system/queues: post: tags: - Messaging queues summary: Create messaging queue responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_41 queue: type: string description: Name of queue consumer: type: string description: Queue consumer meta: type: string description: Meta data for queue required: - queue - consumer application/x-www-form-urlencoded: schema: type: object properties: *ref_41 /system/queues/{queueID}: get: tags: - Messaging queues summary: Messaging queue details responses: '200': description: OK parameters: - in: path name: queueID description: Queue ID required: true schema: *ref_5 put: tags: - Messaging queues summary: Update queue details responses: '200': description: OK parameters: - in: path name: queueID description: Queue ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_42 queue: type: string description: Name of queue consumer: type: string description: Queue consumer meta: type: string description: Meta data for queue required: - queue - consumer application/x-www-form-urlencoded: schema: type: object properties: *ref_42 delete: tags: - Messaging queues summary: Messaging queue delete responses: '200': description: OK parameters: - in: path name: queueID description: Queue ID required: true schema: *ref_5 /system/queues/{queueID}/undelete: post: tags: - Messaging queues summary: Messaging queue undelete responses: '200': description: OK parameters: - in: path name: queueID description: Queue ID required: true schema: *ref_5 /system/apigw/route/: get: tags: - Integration gateway routes summary: List routes responses: '200': description: OK parameters: - in: query name: routeID description: Filter by route ID required: false schema: type: array items: *ref_5 - in: query name: query description: Filter routes required: false schema: *ref_1 - in: query name: deleted description: Exclude (0, default), include (1) or return only (2) deleted routes required: false schema: *ref_5 - in: query name: disabled description: Exclude (0, default), include (1) or return only (2) disabled routes required: false schema: *ref_5 - in: query name: labels description: Labels required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: incTotal description: Include total counter required: false schema: *ref_8 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 /system/apigw/route: post: tags: - Integration gateway routes summary: Create route responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_43 endpoint: type: string description: Route endpoint method: type: string description: Route method enabled: type: boolean description: Is route enabled group: type: string description: Route group meta: type: string description: Route meta required: - endpoint application/x-www-form-urlencoded: schema: type: object properties: *ref_43 /system/apigw/route/{routeID}: put: tags: - Integration gateway routes summary: Update route details responses: '200': description: OK parameters: - in: path name: routeID description: Route ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_44 endpoint: type: string description: Route endpoint method: type: string description: Route method enabled: type: boolean description: Is route enabled group: type: string description: Route group meta: type: string description: Route meta required: - endpoint application/x-www-form-urlencoded: schema: type: object properties: *ref_44 get: tags: - Integration gateway routes summary: Read route details responses: '200': description: OK parameters: - in: path name: routeID description: Route ID required: true schema: *ref_5 delete: tags: - Integration gateway routes summary: Remove route responses: '200': description: OK parameters: - in: path name: routeID description: Route ID required: true schema: *ref_5 /system/apigw/route/{routeID}/undelete: post: tags: - Integration gateway routes summary: Undelete route responses: '200': description: OK parameters: - in: path name: routeID description: Route ID required: true schema: *ref_5 /system/apigw/filter/: get: tags: - Integration gateway filters summary: List filters responses: '200': description: OK parameters: - in: query name: routeID description: Filter by route ID required: true schema: *ref_5 - in: query name: deleted description: Exclude (0, default), include (1) or return only (2) deleted filters required: false schema: *ref_5 - in: query name: disabled description: >- Exclude (0, default), include (1) or return only (2) disabled filters required: false schema: *ref_5 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 /system/apigw/filter: put: tags: - Integration gateway filters summary: Create filter responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_45 routeID: type: string description: Route weight: type: string description: Filter priority kind: type: string description: Filter kind ref: type: string description: Filter ref enabled: type: boolean description: Is Filter enabled params: type: string description: Filter parameters required: - routeID application/x-www-form-urlencoded: schema: type: object properties: *ref_45 /system/apigw/filter/{filterID}: post: tags: - Integration gateway filters summary: Update filter details responses: '200': description: OK parameters: - in: path name: filterID description: Filter ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_46 routeID: type: string description: Route weight: type: string description: Filter priority kind: type: string description: Filter kind ref: type: string description: Filter ref enabled: type: boolean description: Is Filter enabled params: type: string description: Filter parameters required: - routeID application/x-www-form-urlencoded: schema: type: object properties: *ref_46 get: tags: - Integration gateway filters summary: Read filter details responses: '200': description: OK parameters: - in: path name: filterID description: Filter ID required: true schema: *ref_5 delete: tags: - Integration gateway filters summary: Remove filter responses: '200': description: OK parameters: - in: path name: filterID description: Filter ID required: true schema: *ref_5 /system/apigw/filter/{filterID}/undelete: post: tags: - Integration gateway filters summary: Undelete filter responses: '200': description: OK parameters: - in: path name: filterID description: Filter ID required: true schema: *ref_5 /system/apigw/filter/def: get: tags: - Integration gateway filters summary: Filter definitions responses: '200': description: OK parameters: - in: query name: kind description: Filter filters by kind required: false schema: *ref_1 /system/apigw/filter/proxy_auth/def: get: tags: - Integration gateway filters summary: Proxy auth definitions responses: '200': description: OK /system/apigw/profiler/: get: tags: - Integration gateway profiler summary: List aggregated list of routes responses: '200': description: OK parameters: - in: query name: path description: Filter by request path required: false schema: *ref_1 - in: query name: before description: Entries before specified route required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 /system/apigw/profiler/route/{routeID}: get: tags: - Integration gateway profiler summary: List hits per route responses: '200': description: OK parameters: - in: path name: routeID description: Route ID required: true schema: *ref_1 - in: query name: path description: Filter by request path required: false schema: *ref_1 - in: query name: before description: Entries before specified hit ID required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 /system/apigw/profiler/hit/{hitID}: get: tags: - Integration gateway profiler summary: Hit details responses: '200': description: OK parameters: - in: path name: hitID description: Hit ID required: true schema: *ref_1 /system/locale/resource: get: tags: - Locale summary: List resources translations responses: '200': description: OK parameters: - in: query name: lang description: Language required: false schema: *ref_1 - in: query name: resource description: Resource required: false schema: *ref_1 - in: query name: resourceType description: Resource type required: false schema: *ref_1 - in: query name: ownerID description: OwnerID required: false schema: *ref_5 - in: query name: deleted description: >- Exclude (0, default), include (1) or return only (2) deleted resource translations required: false schema: *ref_5 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Locale summary: Create resource translation responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_47 lang: type: string description: Lang resource: type: string description: Resource key: type: string description: Key place: type: integer description: place message: type: string description: Message ownerID: type: string description: OwnerID required: - lang - resource - key - message application/x-www-form-urlencoded: schema: type: object properties: *ref_47 /system/locale/resource/{translationID}: put: tags: - Locale summary: Update resource translation responses: '200': description: OK parameters: - in: path name: translationID description: ID required: true schema: *ref_5 requestBody: content: application/json: schema: type: object properties: &ref_48 lang: type: string description: Lang resource: type: string description: Resource key: type: string description: Key place: type: integer description: place message: type: string description: Message ownerID: type: string description: OwnerID application/x-www-form-urlencoded: schema: type: object properties: *ref_48 get: tags: - Locale summary: Read resource translation details responses: '200': description: OK parameters: - in: path name: translationID description: ID required: true schema: *ref_5 delete: tags: - Locale summary: Remove resource translation responses: '200': description: OK parameters: - in: path name: translationID description: ID required: true schema: *ref_5 /system/locale/resource/{translationID}/undelete: post: tags: - Locale summary: Undelete resource translation responses: '200': description: OK parameters: - in: path name: translationID description: ID required: true schema: *ref_5 /system/locale/: get: tags: - Locale summary: List all available languages responses: '200': description: OK /system/locale/{lang}/{application}: get: tags: - Locale summary: List all available translation in a language for a specific webapp responses: '200': description: OK parameters: - in: path name: lang description: Language required: true schema: *ref_1 - in: path name: application description: Application name required: true schema: *ref_1 /system/data-privacy/requests/: get: tags: - Data Privacy Request summary: List data privacy requests responses: '200': description: OK parameters: - in: query name: requestedBy description: Filter by user ID required: false schema: type: array items: *ref_1 - in: query name: query description: Filter requests required: false schema: *ref_1 - in: query name: kind description: 'Filter by kind: correct, delete, export' required: false schema: type: array items: *ref_1 - in: query name: status description: 'Filter by status: pending, cancel, approve, reject' required: false schema: type: array items: *ref_1 - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 post: tags: - Data Privacy Request summary: Create data privacy request responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_49 kind: type: string description: Request Kind payload: type: string description: Request required: - kind application/x-www-form-urlencoded: schema: type: object properties: *ref_49 /system/data-privacy/requests/{requestID}/status/{status}: patch: tags: - Data Privacy Request summary: Update data privacy request status responses: '200': description: OK parameters: - in: path name: requestID description: ID required: true schema: *ref_5 - in: path name: status description: Request Status required: true schema: *ref_1 /system/data-privacy/requests/{requestID}: get: tags: - Data Privacy Request summary: Get details about specific request responses: '200': description: OK parameters: - in: path name: requestID description: Request ID required: true schema: *ref_5 /system/data-privacy/requests/{requestID}/comments/: get: tags: - Data Privacy Request Comment summary: List data privacy request comments responses: '200': description: OK parameters: - in: query name: limit description: Limit required: false schema: *ref_2 - in: query name: pageCursor description: Page cursor required: false schema: *ref_1 - in: query name: sort description: Sort items required: false schema: *ref_1 - in: path name: requestID description: Request ID required: true schema: *ref_5 post: tags: - Data Privacy Request Comment summary: Create data privacy request comment responses: '200': description: OK requestBody: content: application/json: schema: type: object properties: &ref_50 comment: type: string description: Comment description required: - comment application/x-www-form-urlencoded: schema: type: object properties: *ref_50 parameters: - in: path name: requestID description: Request ID required: true schema: *ref_5 /system/data-privacy/connection/: get: tags: - Data Privacy summary: List connections for data privacy responses: '200': description: OK parameters: - in: query name: connectionID description: Filter by connection ID required: false schema: type: array items: *ref_1 - in: query name: handle description: Search handle to match against connections required: false schema: *ref_1 - in: query name: type description: Search type to match against connections required: false schema: *ref_1 - in: query name: deleted description: >- Exclude (0, default), include (1) or return only (2) deleted connections required: false schema: *ref_1