2461 lines
71 KiB
YAML
2461 lines
71 KiB
YAML
---
|
|
|
|
# This is direct conversion from old api/*/spec.json files
|
|
# using https://www.json2yaml.com/
|
|
#
|
|
# Next step: swagger.
|
|
|
|
endpoints:
|
|
- title: Authentication
|
|
path: "/auth"
|
|
entrypoint: auth
|
|
authentication: []
|
|
apis:
|
|
- name: impersonate
|
|
method: POST
|
|
title: Impersonate a user
|
|
path: "/impersonate"
|
|
parameters:
|
|
post:
|
|
- name: userID
|
|
type: uint64
|
|
required: true
|
|
title: ID of the impersonated user
|
|
- title: Authentication clients
|
|
path: "/auth/clients"
|
|
entrypoint: authClient
|
|
authentication: []
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/pkg/label
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List clients
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: handle
|
|
required: false
|
|
title: Client handle
|
|
type: string
|
|
- name: deleted
|
|
required: false
|
|
title: Exclude (0, default), include (1) or return only (2) deleted clients
|
|
type: uint
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- type: uint
|
|
name: limit
|
|
title: Limit
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
- type: string
|
|
name: pageCursor
|
|
title: Page cursor
|
|
- type: string
|
|
name: sort
|
|
title: Sort items
|
|
- name: create
|
|
method: POST
|
|
title: Create client
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- { name: handle, type: string, title: Client handle }
|
|
- { name: meta, type: '*types.AuthClientMeta', title: Additional info, parser: "types.ParseAuthClientMeta" }
|
|
- { name: validGrant, type: string, title: Valid grants (authorization_code, client_credentials) }
|
|
- { name: redirectURI, type: string, title: Space delimited list of redirect URIs }
|
|
- { name: scope, type: string, title: Space delimited list of scopes }
|
|
- { name: trusted, type: bool, title: Is client trusted (skip authorization) }
|
|
- { name: enabled, type: bool, title: Is client enabled }
|
|
- { name: validFrom, type: '*time.Time', title: Date and time from when client becomes valid }
|
|
- { name: expiresAt, type: '*time.Time', title: Date and time from client is no logner valid }
|
|
- { name: security, type: '*types.AuthClientSecurity', title: Security settings, allowed, denied, forced roles, parser: "types.ParseAuthClientSecurity" }
|
|
- { name: labels, type: 'map[string]string', title: Labels, parser: label.ParseStrings }
|
|
- name: update
|
|
method: PUT
|
|
title: Update user details
|
|
path: "/{clientID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: clientID
|
|
required: true
|
|
title: Client ID
|
|
post:
|
|
- { name: handle, type: string, title: Client handle }
|
|
- { name: meta, type: '*types.AuthClientMeta', title: Additional info , parser: "types.ParseAuthClientMeta"}
|
|
- { name: validGrant, type: string, title: Valid grants (authorization_code, client_credentials) }
|
|
- { name: redirectURI, type: string, title: Space delimited list of redirect URIs }
|
|
- { name: scope, type: string, title: Space delimited list of scopes }
|
|
- { name: trusted, type: bool, title: Is client trusted (skip authorization) }
|
|
- { name: enabled, type: bool, title: Is client enabled }
|
|
- { name: validFrom, type: '*time.Time', title: Date and time from when client becomes valid }
|
|
- { name: expiresAt, type: '*time.Time', title: Date and time from client is no logner valid }
|
|
- { name: security, type: '*types.AuthClientSecurity', title: Security settings, allowed, denied, forced roles, parser: "types.ParseAuthClientSecurity" }
|
|
- { name: labels, type: 'map[string]string', title: Labels, parser: label.ParseStrings }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: read
|
|
method: GET
|
|
title: Read client details
|
|
path: "/{clientID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: clientID
|
|
required: true
|
|
title: Client ID
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove client
|
|
path: "/{clientID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: clientID
|
|
required: true
|
|
title: Client ID
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete client
|
|
path: "/{clientID}/undelete"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: clientID
|
|
required: true
|
|
title: Client ID
|
|
- name: regenerateSecret
|
|
method: POST
|
|
title: Regenerate client's secret
|
|
path: "/{clientID}/secret"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: clientID
|
|
required: true
|
|
title: Client ID
|
|
- name: exposeSecret
|
|
method: GET
|
|
title: Exposes client's secret
|
|
path: "/{clientID}/secret"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: clientID
|
|
required: true
|
|
title: Client ID
|
|
|
|
- title: Expressions
|
|
path: "/expressions"
|
|
entrypoint: expression
|
|
endpoint: expressions
|
|
authentication: []
|
|
apis:
|
|
- name: evaluate
|
|
method: POST
|
|
title: Evaluate expressions
|
|
path: "/evaluate"
|
|
parameters:
|
|
post:
|
|
- name: variables
|
|
type: map[string]interface{}
|
|
parser: parseMapStringInterface
|
|
title: variables
|
|
- name: expressions
|
|
type: map[string]string
|
|
parser: parseMapStringString
|
|
title: expressions
|
|
|
|
- title: Settings
|
|
path: "/settings"
|
|
entrypoint: settings
|
|
authentication: []
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List settings
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: prefix
|
|
type: string
|
|
title: Key prefix
|
|
- name: update
|
|
method: PATCH
|
|
title: Update settings
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- name: values
|
|
type: types.SettingValueSet
|
|
title: 'Array of new settings: `[{ name: ..., value: ... }]`. Omit value to
|
|
remove setting'
|
|
required: true
|
|
- name: get
|
|
method: GET
|
|
title: Get a value for a key
|
|
path: "/{key}"
|
|
parameters:
|
|
path:
|
|
- name: key
|
|
type: string
|
|
title: Setting key
|
|
required: true
|
|
get:
|
|
- name: ownerID
|
|
type: uint64
|
|
title: Owner ID
|
|
- name: set
|
|
path: "/{key}"
|
|
method: POST
|
|
title: Set value for specific setting
|
|
parameters:
|
|
path:
|
|
- name: key
|
|
type: string
|
|
title: Key
|
|
required: true
|
|
post:
|
|
- name: upload
|
|
type: "*multipart.FileHeader"
|
|
title: File to upload
|
|
- name: ownerID
|
|
type: uint64
|
|
title: Owner ID
|
|
- name: current
|
|
method: GET
|
|
title: Current compose settings
|
|
path: "/current"
|
|
- title: Roles
|
|
description: An organisation may have many roles. Roles may have many channels available.
|
|
Access to channels may be shared between roles.
|
|
path: "/roles"
|
|
entrypoint: role
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/pkg/label
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List roles
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- { type: "string", name: "query", title: "Search query" }
|
|
- { type: "uint64", name: "memberID", title: "Search roles for member"}
|
|
- { type: "[]string", name: "roleID", title: "Search roles by ID" }
|
|
- { type: "uint", name: "deleted", title: "Exclude (0, default), include (1) or return only (2) deleted roles" }
|
|
- { type: "uint", name: "archived", title: "Exclude (0, default), include (1) or return only (2) archived roles" }
|
|
- { type: "map[string]string", name: "labels", title: "Labels", parser: "label.ParseStrings" }
|
|
- { type: "uint", name: "limit", title: "Limit" }
|
|
- { name: "incTotal", type: "bool", title: "Include total counter" }
|
|
- { type: "string", name: "pageCursor", title: "Page cursor" }
|
|
- { type: "string", name: "sort", title: "Sort items" }
|
|
- name: create
|
|
method: POST
|
|
title: Update role details
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- { type: "string", name: "name", required: true, title: "Name of role" }
|
|
- { type: "string", name: "handle", title: "Handle for role" }
|
|
- { type: "[]string", name: "members", title: "role member IDs" }
|
|
- { type: "*types.RoleMeta", name: "meta", title: "Meta", parser: "types.ParseRoleMeta" }
|
|
- { type: "map[string]string", name: "labels", title: "Labels", parser: "label.ParseStrings" }
|
|
- name: update
|
|
method: PUT
|
|
title: Update role details
|
|
path: "/{roleID}"
|
|
parameters:
|
|
path:
|
|
- { type: "uint64", name: "roleID", required: true, title: Role ID }
|
|
post:
|
|
- { type: "string", name: "name", required: false, title: "Name of role" }
|
|
- { type: "string", name: "handle", required: false, title: "Handle for role" }
|
|
- { type: "[]string", name: "members", required: false, title: "role member IDs" }
|
|
- { type: "*types.RoleMeta", name: "meta", title: "Meta", parser: "types.ParseRoleMeta" }
|
|
- { type: "map[string]string", name: "labels", title: "Labels", parser: "label.ParseStrings" }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: read
|
|
method: GET
|
|
title: Read role details and memberships
|
|
path: "/{roleID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove role
|
|
path: "/{roleID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
- name: archive
|
|
method: POST
|
|
title: Archive role
|
|
path: "/{roleID}/archive"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
- name: unarchive
|
|
method: POST
|
|
title: Unarchive role
|
|
path: "/{roleID}/unarchive"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete role
|
|
path: "/{roleID}/undelete"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
- name: move
|
|
method: POST
|
|
title: Move role to different organisation
|
|
path: "/{roleID}/move"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
post:
|
|
- type: uint64
|
|
name: organisationID
|
|
required: true
|
|
title: Role ID
|
|
- name: merge
|
|
method: POST
|
|
title: Merge one role into another
|
|
path: "/{roleID}/merge"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Source Role ID
|
|
post:
|
|
- type: uint64
|
|
name: destination
|
|
required: true
|
|
title: Destination Role ID
|
|
- name: memberList
|
|
method: GET
|
|
title: Returns all role members
|
|
path: "/{roleID}/members"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Source Role ID
|
|
- name: memberAdd
|
|
method: POST
|
|
title: Add member to a role
|
|
path: "/{roleID}/member/{userID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Source Role ID
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: memberRemove
|
|
method: DELETE
|
|
title: Remove member from a role
|
|
path: "/{roleID}/member/{userID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Source Role ID
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: triggerScript
|
|
method: POST
|
|
title: Fire system:role trigger
|
|
path: "/{roleID}/trigger"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: ID
|
|
post:
|
|
- name: script
|
|
type: string
|
|
title: Script to execute
|
|
required: true
|
|
- name: args
|
|
type: map[string]interface{}
|
|
parser: parseMapStringInterface
|
|
title: Arguments to pass to the script
|
|
- name: cloneRules
|
|
path: "/{roleID}/rules/clone"
|
|
method: POST
|
|
title: Clone permission settings to a role
|
|
parameters:
|
|
path:
|
|
- name: roleID
|
|
type: uint64
|
|
required: true
|
|
title: Role ID
|
|
get:
|
|
- name: cloneToRoleID
|
|
type: "[]string"
|
|
required: true
|
|
title: Clone set of rules to roleID
|
|
- title: Users
|
|
path: "/users"
|
|
entrypoint: user
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/pkg/label
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: Search users (Directory)
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: userID
|
|
type: "[]string"
|
|
required: false
|
|
title: Filter by user ID
|
|
- name: roleID
|
|
type: "[]string"
|
|
required: false
|
|
title: Filter by role membership
|
|
- type: string
|
|
name: query
|
|
required: false
|
|
title: Search query to match against users
|
|
- type: string
|
|
name: username
|
|
required: false
|
|
title: Search username to match against users
|
|
- type: string
|
|
name: email
|
|
required: false
|
|
title: Search email to match against users
|
|
- type: string
|
|
name: handle
|
|
required: false
|
|
title: Search handle to match against users
|
|
- name: kind
|
|
type: types.UserKind
|
|
required: false
|
|
title: Kind (normal, bot)
|
|
- type: bool
|
|
name: incDeleted
|
|
required: false
|
|
title: "[Deprecated] Include deleted users (requires 'access' permission)"
|
|
- type: bool
|
|
name: incSuspended
|
|
required: false
|
|
title: "[Deprecated] Include suspended users"
|
|
- name: deleted
|
|
required: false
|
|
title: Exclude (0, default), include (1) or return only (2) deleted users
|
|
type: uint
|
|
- name: suspended
|
|
required: false
|
|
title: Exclude (0, default), include (1) or return only (2) suspended users
|
|
type: uint
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- type: uint
|
|
name: limit
|
|
title: Limit
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
- type: string
|
|
name: pageCursor
|
|
title: Page cursor
|
|
- type: string
|
|
name: sort
|
|
title: Sort items
|
|
- name: create
|
|
method: POST
|
|
title: Create user
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- name: email
|
|
type: string
|
|
required: true
|
|
title: Email
|
|
- name: name
|
|
type: string
|
|
required: false
|
|
title: Name
|
|
- name: handle
|
|
type: string
|
|
required: false
|
|
title: Handle
|
|
- name: kind
|
|
type: types.UserKind
|
|
required: false
|
|
title: Kind (normal, bot)
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- name: meta
|
|
type: "*types.UserMeta"
|
|
title: Additional user info
|
|
parser: types.ParseUserMeta
|
|
- name: update
|
|
method: PUT
|
|
title: Update user details
|
|
path: "/{userID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
post:
|
|
- name: email
|
|
type: string
|
|
required: true
|
|
title: Email
|
|
- name: name
|
|
type: string
|
|
title: Name
|
|
- name: handle
|
|
type: string
|
|
required: false
|
|
title: Handle
|
|
- name: kind
|
|
type: types.UserKind
|
|
required: false
|
|
title: Kind (normal, bot)
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- name: meta
|
|
type: "*types.UserMeta"
|
|
title: Additional user info
|
|
parser: types.ParseUserMeta
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: partialUpdate
|
|
method: PATCH
|
|
title: Patch user (experimental)
|
|
path: "/{userID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: read
|
|
method: GET
|
|
title: Read user details
|
|
path: "/{userID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove user
|
|
path: "/{userID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: suspend
|
|
method: POST
|
|
title: Suspend user
|
|
path: "/{userID}/suspend"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: unsuspend
|
|
method: POST
|
|
title: Unsuspend user
|
|
path: "/{userID}/unsuspend"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete user
|
|
path: "/{userID}/undelete"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: setPassword
|
|
method: POST
|
|
title: Set's or changes user's password
|
|
path: "/{userID}/password"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
post:
|
|
- name: password
|
|
type: string
|
|
sensitive: true
|
|
title: New password or empty to unset
|
|
|
|
- name: membershipList
|
|
method: GET
|
|
title: Add member to a role
|
|
path: "/{userID}/membership"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: membershipAdd
|
|
method: POST
|
|
title: Add role to a user
|
|
path: "/{userID}/membership/{roleID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: membershipRemove
|
|
method: DELETE
|
|
title: Remove role from a user
|
|
path: "/{userID}/membership/{roleID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: roleID
|
|
required: true
|
|
title: Role ID
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
- name: triggerScript
|
|
method: POST
|
|
title: Fire system:user trigger
|
|
path: "/{userID}/trigger"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: ID
|
|
post:
|
|
- name: script
|
|
type: string
|
|
title: Script to execute
|
|
required: true
|
|
- name: args
|
|
type: map[string]interface{}
|
|
parser: parseMapStringInterface
|
|
title: Arguments to pass to the script
|
|
- name: sessionsRemove
|
|
method: DELETE
|
|
title: Remove all auth sessions of user
|
|
path: "/{userID}/sessions"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: ID
|
|
|
|
- name: listCredentials
|
|
method: GET
|
|
title: List user's credentials
|
|
path: "/{userID}/credentials"
|
|
parameters:
|
|
path:
|
|
- { type: uint64, name: userID, required: true, title: ID }
|
|
|
|
- name: deleteCredentials
|
|
method: DELETE
|
|
title: List user's credentials
|
|
path: "/{userID}/credentials/{credentialsID}"
|
|
parameters:
|
|
path:
|
|
- { type: uint64, name: userID, required: true, title: ID }
|
|
- { type: uint64, name: credentialsID, required: true, title: Credentials ID }
|
|
|
|
- name: profileAvatar
|
|
method: POST
|
|
title: User's profile avatar
|
|
path: "/{userID}/avatar"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
post:
|
|
- name: upload
|
|
type: "*multipart.FileHeader"
|
|
title: Avatar to upload
|
|
required: false
|
|
- name: width
|
|
type: uint
|
|
title: Avatar width dimension
|
|
required: false
|
|
- name: height
|
|
type: uint
|
|
title: Avatar height dimension
|
|
required: false
|
|
- name: profileAvatarInitial
|
|
method: POST
|
|
title: User profile avatar initial
|
|
path: "/{userID}/avatar-initial"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
post:
|
|
- name: avatarColor
|
|
type: string
|
|
title: Avatar text color
|
|
required: false
|
|
- name: avatarBgColor
|
|
type: string
|
|
title: Avatar initial background color
|
|
required: false
|
|
- name: deleteAvatar
|
|
method: DELETE
|
|
title: delete user's profile avatar
|
|
path: "/{userID}/avatar"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: userID
|
|
required: true
|
|
title: User ID
|
|
|
|
- name: export
|
|
method: GET
|
|
title: Export users
|
|
path: "/export/{filename}.zip"
|
|
parameters:
|
|
path:
|
|
- name: filename
|
|
type: string
|
|
required: true
|
|
title: Output filename
|
|
get:
|
|
- name: inclRoleMembership
|
|
type: bool
|
|
required: false
|
|
title: Include role membership
|
|
- name: inclRoles
|
|
type: bool
|
|
required: false
|
|
title: Include roles
|
|
- name: import
|
|
method: POST
|
|
title: Import users
|
|
path: "/import"
|
|
parameters:
|
|
post:
|
|
- name: upload
|
|
type: "*multipart.FileHeader"
|
|
required: true
|
|
title: File import
|
|
|
|
- title: Data access layer drivers
|
|
path: "/dal/drivers"
|
|
entrypoint: dalDriver
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: Search drivers
|
|
path: "/"
|
|
|
|
- title: Data access layer sensitivity levels
|
|
path: "/dal/sensitivity-levels"
|
|
entrypoint: dalSensitivityLevel
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: Search sensitivity levels
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: sensitivityLevelID
|
|
type: "[]string"
|
|
title: Filter by sensitivity level ID
|
|
- name: deleted
|
|
title: Exclude (0, default), include (1) or return only (2) deleted sensitivity levels
|
|
type: uint
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
|
|
- name: create
|
|
method: POST
|
|
title: Create sensitivity level
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- { name: "handle", type: "string", required: false }
|
|
- { name: "level", type: "int", required: true }
|
|
- { name: "meta", type: "types.DalSensitivityLevelMeta", required: true, parser: "types.ParseDalSensitivityLevelMeta" }
|
|
- name: update
|
|
method: PUT
|
|
title: Update sensitivity details
|
|
path: "/{sensitivityLevelID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: sensitivityLevelID
|
|
required: true
|
|
title: Connection ID
|
|
post:
|
|
- { name: "handle", type: "string", required: false }
|
|
- { name: "level", type: "int", required: true }
|
|
- { name: "meta", type: "types.DalSensitivityLevelMeta", required: true, parser: "types.ParseDalSensitivityLevelMeta" }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
|
|
- name: read
|
|
method: GET
|
|
title: Read connection details
|
|
path: "/{sensitivityLevelID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: sensitivityLevelID
|
|
required: true
|
|
title: Connection ID
|
|
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove sensitivity level
|
|
path: "/{sensitivityLevelID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: sensitivityLevelID
|
|
required: true
|
|
title: Connection ID
|
|
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete sensitivity level
|
|
path: "/{sensitivityLevelID}/undelete"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: sensitivityLevelID
|
|
required: true
|
|
title: Connection ID
|
|
|
|
- title: Data access layer schema alterations
|
|
path: "/dal/schema/alterations"
|
|
entrypoint: dalSchemaAlteration
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
imports:
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: Search schema alterations
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: alterationID
|
|
type: "[]string"
|
|
title: Filter by alteration ID
|
|
- name: batchID
|
|
type: "[]string"
|
|
title: Filter by batch ID
|
|
- name: resource
|
|
type: "[]string"
|
|
title: Search by resource
|
|
- name: resourceType
|
|
type: string
|
|
title: Search by resource type
|
|
- type: string
|
|
name: kind
|
|
title: Search by kind
|
|
- name: deleted
|
|
title: Exclude (0, default), include (1) or return only (2) deleted alterations
|
|
type: uint
|
|
- name: completed
|
|
title: Exclude (0, default), include (1) or return only (2) completed alterations
|
|
type: uint
|
|
- name: dismissed
|
|
title: Exclude (0, default), include (1) or return only (2) dismissed alterations
|
|
type: uint
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
|
|
# We'll drop these two because they don't make sense to be here
|
|
# - name: create
|
|
# method: POST
|
|
|
|
# - name: update
|
|
# method: PUT
|
|
|
|
- name: read
|
|
method: GET
|
|
title: Read alteration details
|
|
path: "/{alterationID}"
|
|
parameters:
|
|
path: [ { type: uint64, name: alterationID, required: true, title: "Alteration ID" } ]
|
|
|
|
- name: apply
|
|
method: POST
|
|
title: Apply alterations
|
|
path: "/apply"
|
|
parameters:
|
|
get: [ { type: "[]uint64", name: alterationID, required: true, title: "Alteration ID" } ]
|
|
- name: dismiss
|
|
method: POST
|
|
title: Dismiss alterations
|
|
path: "/dismiss"
|
|
parameters:
|
|
get: [ { type: "[]uint64", name: alterationID, required: true, title: "Alteration ID" } ]
|
|
|
|
- title: Data access layer connections
|
|
path: "/dal/connections"
|
|
entrypoint: dalConnection
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: Search connections (Directory)
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: connectionID
|
|
type: "[]string"
|
|
title: Filter by connection ID
|
|
- type: string
|
|
name: handle
|
|
title: Search handle to match against connections
|
|
- type: string
|
|
name: type
|
|
title: Search type to match against connections
|
|
- name: deleted
|
|
title: Exclude (0, default), include (1) or return only (2) deleted connections
|
|
type: uint
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
- name: create
|
|
method: POST
|
|
title: Create connection
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- { name: handle, type: "string", }
|
|
- { name: type, type: "string", required: true }
|
|
- { name: meta, type: "types.ConnectionMeta", required: true, parser: "types.ParseConnectionMeta" }
|
|
- { name: config, type: "types.ConnectionConfig", required: true, parser: "types.ParseConnectionConfig" }
|
|
|
|
- name: update
|
|
method: PUT
|
|
title: Update connection details
|
|
path: "/{connectionID}"
|
|
parameters:
|
|
path: [ { type: uint64, name: connectionID, required: true, title: "Connection ID" } ]
|
|
post:
|
|
- { name: handle, type: "string", }
|
|
- { name: type, type: "string", required: true }
|
|
- { name: meta, type: "types.ConnectionMeta", required: true, parser: "types.ParseConnectionMeta" }
|
|
- { name: config, type: "types.ConnectionConfig", required: true, parser: "types.ParseConnectionConfig" }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
|
|
- name: read
|
|
method: GET
|
|
title: Read connection details
|
|
path: "/{connectionID}"
|
|
parameters:
|
|
path: [ { type: uint64, name: connectionID, required: true, title: "Connection ID" } ]
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove connection
|
|
path: "/{connectionID}"
|
|
parameters:
|
|
path: [ { type: uint64, name: connectionID, required: true, title: "Connection ID" } ]
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete connection
|
|
path: "/{connectionID}/undelete"
|
|
parameters:
|
|
path: [ { type: uint64, name: connectionID, required: true, title: "Connection ID" } ]
|
|
|
|
- title: Applications
|
|
path: "/application"
|
|
entrypoint: application
|
|
authentication: []
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/pkg/label
|
|
- sqlxTypes github.com/jmoiron/sqlx/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List applications
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: name
|
|
required: false
|
|
title: Application name
|
|
type: string
|
|
- name: query
|
|
required: false
|
|
title: Filter applications
|
|
type: string
|
|
- name: deleted
|
|
required: false
|
|
title: Exclude (0, default), include (1) or return only (2) deleted roles
|
|
type: uint
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- name: flags
|
|
type: "[]string"
|
|
title: Flags
|
|
- name: incFlags
|
|
required: false
|
|
title: Calculated (0, default), global (1) or return only (2) own flags
|
|
type: uint
|
|
- type: uint
|
|
name: limit
|
|
title: Limit
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
- type: string
|
|
name: pageCursor
|
|
title: Page cursor
|
|
- type: string
|
|
name: sort
|
|
title: Sort items
|
|
- name: create
|
|
method: POST
|
|
title: Create application
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- name: name
|
|
type: string
|
|
required: true
|
|
title: Application name
|
|
- name: enabled
|
|
type: bool
|
|
required: false
|
|
title: Enabled
|
|
- name: weight
|
|
type: int
|
|
required: false
|
|
title: Weight for sorting
|
|
- name: unify
|
|
type: sqlxTypes.JSONText
|
|
required: false
|
|
title: Unify properties
|
|
- name: config
|
|
type: sqlxTypes.JSONText
|
|
required: false
|
|
title: Arbitrary JSON holding application configuration
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- name: update
|
|
method: PUT
|
|
title: Update user details
|
|
path: "/{applicationID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: applicationID
|
|
required: true
|
|
title: Application ID
|
|
post:
|
|
- name: name
|
|
type: string
|
|
required: true
|
|
title: Email
|
|
- name: enabled
|
|
type: bool
|
|
required: false
|
|
title: Enabled
|
|
- name: weight
|
|
type: int
|
|
required: false
|
|
title: Weight for sorting
|
|
- name: unify
|
|
type: sqlxTypes.JSONText
|
|
required: false
|
|
title: Unify properties
|
|
- name: config
|
|
type: sqlxTypes.JSONText
|
|
required: false
|
|
title: Arbitrary JSON holding application configuration
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
|
|
- name: upload
|
|
path: "/upload"
|
|
method: POST
|
|
title: Upload application assets
|
|
parameters:
|
|
post:
|
|
- name: upload
|
|
type: "*multipart.FileHeader"
|
|
required: true
|
|
title: File to upload
|
|
|
|
- name: flagCreate
|
|
method: POST
|
|
title: Flag application
|
|
path: "/{applicationID}/flag/{ownedBy}/{flag}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: applicationID
|
|
required: true
|
|
title: Application ID
|
|
- type: string
|
|
name: flag
|
|
required: true
|
|
title: Flag
|
|
- type: uint64
|
|
name: ownedBy
|
|
required: false
|
|
title: Owner; 0 = everyone
|
|
|
|
- name: flagDelete
|
|
method: DELETE
|
|
title: Unflag application
|
|
path: "/{applicationID}/flag/{ownedBy}/{flag}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: applicationID
|
|
required: true
|
|
title: Application ID
|
|
- type: string
|
|
name: flag
|
|
required: true
|
|
title: Flag
|
|
- type: uint64
|
|
name: ownedBy
|
|
required: false
|
|
title: Owner; 0 = everyone
|
|
|
|
- name: read
|
|
method: GET
|
|
title: Read application details
|
|
path: "/{applicationID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: applicationID
|
|
required: true
|
|
title: Application ID
|
|
get:
|
|
- name: incFlags
|
|
required: false
|
|
title: Calculated (0, default), global (1) or return only (2) own flags
|
|
type: uint
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove application
|
|
path: "/{applicationID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: applicationID
|
|
required: true
|
|
title: Application ID
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete application
|
|
path: "/{applicationID}/undelete"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: applicationID
|
|
required: true
|
|
title: Application ID
|
|
- name: triggerScript
|
|
method: POST
|
|
title: Fire system:application trigger
|
|
path: "/{applicationID}/trigger"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: applicationID
|
|
required: true
|
|
title: ID
|
|
post:
|
|
- name: script
|
|
type: string
|
|
title: Script to execute
|
|
required: true
|
|
- name: args
|
|
type: map[string]interface{}
|
|
parser: parseMapStringInterface
|
|
title: Arguments to pass to the script
|
|
- name: reorder
|
|
method: POST
|
|
title: Reorder applications
|
|
path: "/reorder"
|
|
parameters:
|
|
post:
|
|
- name: applicationIDs
|
|
type: "[]string"
|
|
required: true
|
|
title: Application order
|
|
|
|
- title: Permissions
|
|
parameters: {}
|
|
entrypoint: permissions
|
|
path: "/permissions"
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/pkg/rbac
|
|
apis:
|
|
- name: list
|
|
path: "/"
|
|
method: GET
|
|
title: Retrieve defined permissions
|
|
parameters: {}
|
|
- name: effective
|
|
path: "/effective"
|
|
method: GET
|
|
title: Effective rules for current user
|
|
parameters:
|
|
get:
|
|
- name: resource
|
|
type: string
|
|
required: false
|
|
title: Show only rules for a specific resource
|
|
- name: trace
|
|
path: "/trace"
|
|
method: GET
|
|
title: Evaluate rules for given user/role combo
|
|
parameters:
|
|
get:
|
|
- name: resource
|
|
type: "[]string"
|
|
required: false
|
|
title: Show only rules for a specific resource
|
|
- name: userID
|
|
type: uint64
|
|
required: false
|
|
- name: roleID
|
|
type: "[]uint64"
|
|
required: false
|
|
- name: read
|
|
path: "/{roleID}/rules"
|
|
method: GET
|
|
title: Retrieve role permissions
|
|
parameters:
|
|
path:
|
|
- name: roleID
|
|
type: uint64
|
|
required: true
|
|
title: Role ID
|
|
get:
|
|
- name: resource
|
|
type: "[]string"
|
|
required: false
|
|
title: Show only rules for a specific resource
|
|
- name: delete
|
|
path: "/{roleID}/rules"
|
|
method: DELETE
|
|
title: Remove all defined role permissions
|
|
parameters:
|
|
path:
|
|
- name: roleID
|
|
type: uint64
|
|
required: true
|
|
title: Role ID
|
|
- name: update
|
|
path: "/{roleID}/rules"
|
|
method: PATCH
|
|
title: Update permission settings
|
|
parameters:
|
|
path:
|
|
- name: roleID
|
|
type: uint64
|
|
required: true
|
|
title: Role ID
|
|
post:
|
|
- name: rules
|
|
type: rbac.RuleSet
|
|
required: true
|
|
title: List of permission rules to set
|
|
- title: Reminders
|
|
entrypoint: reminder
|
|
path: "/reminder"
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
imports:
|
|
- sqlxTypes github.com/jmoiron/sqlx/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List/read reminders
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: reminderID
|
|
type: "[]string"
|
|
required: false
|
|
title: Filter by reminder ID
|
|
- name: resource
|
|
required: false
|
|
title: Only reminders of a specific resource
|
|
type: string
|
|
- name: assignedTo
|
|
required: false
|
|
title: Only reminders for a given user
|
|
type: uint64
|
|
- name: scheduledFrom
|
|
required: false
|
|
title: Only reminders from this time (included)
|
|
type: "*time.Time"
|
|
- name: scheduledUntil
|
|
required: false
|
|
title: Only reminders up to this time (included)
|
|
type: "*time.Time"
|
|
- name: scheduledOnly
|
|
required: false
|
|
title: Only scheduled reminders
|
|
type: bool
|
|
- name: excludeDismissed
|
|
required: false
|
|
title: Filter out dismissed reminders
|
|
type: bool
|
|
- name: includeDeleted
|
|
required: false
|
|
title: Includes deleted reminders
|
|
type: bool
|
|
- type: uint
|
|
name: limit
|
|
title: Limit
|
|
- type: string
|
|
name: pageCursor
|
|
title: Page cursor
|
|
- type: string
|
|
name: sort
|
|
title: Sort items
|
|
- name: create
|
|
method: POST
|
|
title: Add new reminder
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- name: resource
|
|
title: Resource
|
|
type: string
|
|
required: true
|
|
- name: assignedTo
|
|
title: Assigned To
|
|
type: uint64
|
|
required: true
|
|
- name: payload
|
|
title: Payload
|
|
type: sqlxTypes.JSONText
|
|
required: true
|
|
- name: remindAt
|
|
title: Remind At
|
|
type: "*time.Time"
|
|
required: false
|
|
- name: update
|
|
method: PUT
|
|
title: Update reminder
|
|
path: "/{reminderID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reminderID
|
|
required: true
|
|
title: Reminder ID
|
|
post:
|
|
- name: resource
|
|
title: Resource
|
|
type: string
|
|
required: true
|
|
- name: assignedTo
|
|
title: Assigned To
|
|
type: uint64
|
|
required: true
|
|
- name: payload
|
|
title: Payload
|
|
type: sqlxTypes.JSONText
|
|
required: true
|
|
- name: remindAt
|
|
title: Remind At
|
|
type: "*time.Time"
|
|
required: false
|
|
- name: read
|
|
method: GET
|
|
title: Read reminder by ID
|
|
path: "/{reminderID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reminderID
|
|
required: true
|
|
title: Reminder ID
|
|
- name: delete
|
|
method: DELETE
|
|
title: Delete reminder
|
|
path: "/{reminderID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reminderID
|
|
required: true
|
|
title: Reminder ID
|
|
- name: dismiss
|
|
method: PATCH
|
|
title: Dismiss reminder
|
|
path: "/{reminderID}/dismiss"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reminderID
|
|
required: true
|
|
title: reminder ID
|
|
- name: undismiss
|
|
method: PATCH
|
|
title: Undismiss reminder
|
|
path: "/{reminderID}/undismiss"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reminderID
|
|
required: true
|
|
title: reminder ID
|
|
- name: snooze
|
|
method: PATCH
|
|
title: Snooze reminder
|
|
path: "/{reminderID}/snooze"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reminderID
|
|
required: true
|
|
title: reminder ID
|
|
post:
|
|
- type: "*time.Time"
|
|
name: remindAt
|
|
required: true
|
|
title: New Remind At Time
|
|
- title: Attachments
|
|
path: "/attachment/{kind}"
|
|
entrypoint: attachment
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
parameters:
|
|
path:
|
|
- name: kind
|
|
type: string
|
|
required: true
|
|
title: Kind
|
|
get:
|
|
- type: string
|
|
name: sign
|
|
required: false
|
|
title: Signature
|
|
- type: uint64
|
|
name: userID
|
|
required: false
|
|
title: User ID
|
|
apis:
|
|
- name: read
|
|
path: "/{attachmentID}"
|
|
method: GET
|
|
title: Attachment details
|
|
parameters:
|
|
path:
|
|
- name: attachmentID
|
|
type: uint64
|
|
required: true
|
|
title: Attachment ID
|
|
- name: delete
|
|
path: "/{attachmentID}"
|
|
method: DELETE
|
|
title: Delete attachment
|
|
parameters:
|
|
path:
|
|
- name: attachmentID
|
|
type: uint64
|
|
required: true
|
|
title: Attachment ID
|
|
- name: original
|
|
path: "/{attachmentID}/original/{name}"
|
|
method: GET
|
|
title: Serves attached file
|
|
parameters:
|
|
path:
|
|
- name: attachmentID
|
|
type: uint64
|
|
required: true
|
|
title: Attachment ID
|
|
- name: name
|
|
type: string
|
|
required: true
|
|
title: File name
|
|
get:
|
|
- type: bool
|
|
name: download
|
|
required: false
|
|
title: Force file download
|
|
- name: preview
|
|
path: "/{attachmentID}/preview.{ext}"
|
|
method: GET
|
|
title: Serves preview of an attached file
|
|
parameters:
|
|
path:
|
|
- name: attachmentID
|
|
type: uint64
|
|
required: true
|
|
title: Attachment ID
|
|
- name: ext
|
|
type: string
|
|
required: true
|
|
title: Preview extension/format
|
|
- title: Template
|
|
path: "/template"
|
|
entrypoint: template
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- github.com/cortezaproject/corteza/server/pkg/label
|
|
- time
|
|
authentication:
|
|
- Client ID
|
|
- SessionID
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List templates
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: query
|
|
type: string
|
|
title: Query
|
|
- name: handle
|
|
type: string
|
|
title: Handle
|
|
- name: type
|
|
type: string
|
|
title: Type
|
|
- name: ownerID
|
|
type: uint64
|
|
title: OwnerID
|
|
- name: partial
|
|
required: false
|
|
title: Show partial templates
|
|
type: bool
|
|
- name: deleted
|
|
required: false
|
|
title: Exclude (0, default), include (1) or return only (2) deleted templates
|
|
type: uint
|
|
- name: labels
|
|
type: map[string]string
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- name: limit
|
|
type: uint
|
|
title: Limit
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
- name: pageCursor
|
|
type: string
|
|
title: Page cursor
|
|
- name: sort
|
|
type: string
|
|
title: Sort items
|
|
- name: create
|
|
method: POST
|
|
title: Create template
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- name: handle
|
|
type: string
|
|
title: Handle
|
|
- name: language
|
|
type: string
|
|
title: Language
|
|
- name: type
|
|
type: string
|
|
title: Type
|
|
- name: partial
|
|
type: bool
|
|
title: Partial
|
|
- name: meta
|
|
type: "types.TemplateMeta"
|
|
parser: "types.ParseTemplateMeta"
|
|
title: Meta
|
|
- name: template
|
|
type: string
|
|
title: Template
|
|
- name: ownerID
|
|
type: uint64
|
|
title: OwnerID
|
|
- name: labels
|
|
type: map[string]string
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- name: read
|
|
method: GET
|
|
title: Read template
|
|
path: "/{templateID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: templateID
|
|
required: true
|
|
title: ID
|
|
- name: update
|
|
method: PUT
|
|
title: Update template
|
|
path: "/{templateID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: templateID
|
|
required: true
|
|
title: ID
|
|
post:
|
|
- name: handle
|
|
type: string
|
|
title: Handle
|
|
- name: language
|
|
type: string
|
|
title: Language
|
|
- name: type
|
|
type: string
|
|
title: Type
|
|
- name: partial
|
|
type: bool
|
|
title: Partial
|
|
- name: meta
|
|
type: "types.TemplateMeta"
|
|
parser: "types.ParseTemplateMeta"
|
|
title: Meta
|
|
- name: template
|
|
type: string
|
|
title: Template
|
|
- name: ownerID
|
|
type: uint64
|
|
title: OwnerID
|
|
- name: labels
|
|
type: map[string]string
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: delete
|
|
method: DELETE
|
|
title: Delete template
|
|
path: "/{templateID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: templateID
|
|
required: true
|
|
title: ID
|
|
- name: undelete
|
|
path: "/{templateID}/undelete"
|
|
method: POST
|
|
title: Undelete template
|
|
parameters:
|
|
path:
|
|
- name: templateID
|
|
type: uint64
|
|
required: true
|
|
title: Template ID
|
|
- name: renderDrivers
|
|
method: GET
|
|
title: Render drivers
|
|
path: "/render/drivers"
|
|
- name: render
|
|
method: POST
|
|
title: Render template
|
|
path: "/{templateID}/render/{filename}.{ext}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: templateID
|
|
required: true
|
|
title: Render template to use
|
|
- type: string
|
|
name: filename
|
|
required: true
|
|
title: Filename to use
|
|
- type: string
|
|
name: ext
|
|
required: true
|
|
title: Export format
|
|
post:
|
|
- name: variables
|
|
type: json.RawMessage
|
|
required: true
|
|
title: Variables defined by import file
|
|
- name: options
|
|
type: json.RawMessage
|
|
required: false
|
|
title: Rendering options
|
|
|
|
- title: Reports
|
|
path: "/reports"
|
|
entrypoint: report
|
|
authentication: []
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/pkg/label
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- github.com/cortezaproject/corteza/server/system/reporting
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List reports
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: handle
|
|
required: false
|
|
title: Report handle
|
|
type: string
|
|
- name: query
|
|
required: false
|
|
title: Report query
|
|
type: string
|
|
- name: deleted
|
|
required: false
|
|
title: Exclude (0, default), include (1) or return only (2) deleted reports
|
|
type: uint
|
|
- type: map[string]string
|
|
name: labels
|
|
title: Labels
|
|
parser: label.ParseStrings
|
|
- type: uint
|
|
name: limit
|
|
title: Limit
|
|
- type: bool
|
|
name: incTotal
|
|
title: Include total counter
|
|
- type: string
|
|
name: pageCursor
|
|
title: Page cursor
|
|
- type: string
|
|
name: sort
|
|
title: Sort items
|
|
- name: create
|
|
method: POST
|
|
title: Create report
|
|
path: "/"
|
|
parameters:
|
|
post:
|
|
- { name: handle, type: string, title: Client handle }
|
|
- { name: meta, type: '*types.ReportMeta', title: Additional info, parser: types.ParseReportMeta }
|
|
- { name: scenarios, type: "types.ReportScenarioSet", title: Report scenarios }
|
|
- { name: sources, type: "types.ReportDataSourceSet", title: Report source definitions }
|
|
- { name: blocks, type: "types.ReportBlockSet", title: Report blocks definition }
|
|
- { name: labels, type: 'map[string]string', title: Labels, parser: label.ParseStrings }
|
|
- name: update
|
|
method: PUT
|
|
title: Update report
|
|
path: "/{reportID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reportID
|
|
required: true
|
|
title: Report ID
|
|
post:
|
|
- { name: handle, type: string, title: Client handle }
|
|
- { name: meta, type: '*types.ReportMeta', title: Additional info, parser: types.ParseReportMeta }
|
|
- { name: scenarios, type: "types.ReportScenarioSet", title: Report scenarios }
|
|
- { name: sources, type: "types.ReportDataSourceSet", title: Report sources definition }
|
|
- { name: blocks, type: "types.ReportBlockSet", title: Report blocks definition }
|
|
- { name: labels, type: 'map[string]string', title: Labels, parser: label.ParseStrings }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: read
|
|
method: GET
|
|
title: Read report details
|
|
path: "/{reportID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reportID
|
|
required: true
|
|
title: Report ID
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove report
|
|
path: "/{reportID}"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reportID
|
|
required: true
|
|
title: Report ID
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete report
|
|
path: "/{reportID}/undelete"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reportID
|
|
required: true
|
|
title: Report ID
|
|
- name: describe
|
|
method: POST
|
|
title: Describe report
|
|
path: "/describe"
|
|
parameters:
|
|
post:
|
|
- { name: sources, type: "types.ReportDataSourceSet", title: Report steps definition }
|
|
- { name: steps, type: "types.ReportStepSet", title: Report steps definition }
|
|
- { name: describe, type: "[]string", title: The source descriptions to generate }
|
|
|
|
- name: run
|
|
method: POST
|
|
title: Run report
|
|
path: "/{reportID}/run"
|
|
parameters:
|
|
path:
|
|
- type: uint64
|
|
name: reportID
|
|
required: true
|
|
title: Report ID
|
|
post:
|
|
- { name: frames, type: "reporting.FrameDefinitionSet", title: Report data frame definitions }
|
|
- title: Statistics
|
|
entrypoint: stats
|
|
path: "/stats"
|
|
authentication:
|
|
- Client ID
|
|
- Session ID
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List system statistics
|
|
path: "/"
|
|
parameters: {}
|
|
- title: System automation scripts
|
|
path: "/automation"
|
|
entrypoint: automation
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List all available automation scripts for system resources
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: resourceTypePrefixes
|
|
type: "[]string"
|
|
title: Filter by resource prefix
|
|
- name: resourceTypes
|
|
type: "[]string"
|
|
title: Filter by resource type
|
|
- name: eventTypes
|
|
type: "[]string"
|
|
title: Filter by event type
|
|
- name: excludeInvalid
|
|
type: bool
|
|
title: Exclude scripts that cannot be used (errors)
|
|
- name: excludeClientScripts
|
|
type: bool
|
|
title: Do not include client scripts
|
|
- name: excludeServerScripts
|
|
type: bool
|
|
title: Do not include server scripts
|
|
- name: bundle
|
|
method: GET
|
|
title: Serves client scripts bundle
|
|
path: "/{bundle}-{type}.{ext}"
|
|
parameters:
|
|
path:
|
|
- name: bundle
|
|
type: string
|
|
title: Name of the bundle
|
|
- name: type
|
|
type: string
|
|
title: Bundle type
|
|
- name: ext
|
|
type: string
|
|
title: Bundle extension
|
|
- name: triggerScript
|
|
method: POST
|
|
title: Triggers execution of a specific script on a system service level
|
|
path: "/trigger"
|
|
parameters:
|
|
post:
|
|
- name: script
|
|
type: string
|
|
title: Script to execute
|
|
required: true
|
|
- name: args
|
|
type: map[string]interface{}
|
|
parser: parseMapStringInterface
|
|
title: Arguments to pass to the script
|
|
- title: Action log
|
|
entrypoint: actionlog
|
|
path: "/actionlog"
|
|
imports:
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: Action log events
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- name: from
|
|
type: "*time.Time"
|
|
required: false
|
|
title: From
|
|
- name: to
|
|
type: "*time.Time"
|
|
required: false
|
|
title: To
|
|
- name: beforeActionID
|
|
type: uint64
|
|
required: false
|
|
title: Entries before specified action ID
|
|
- name: resource
|
|
required: false
|
|
title: Resource
|
|
type: string
|
|
- name: action
|
|
required: false
|
|
title: Action
|
|
type: string
|
|
- name: actorID
|
|
required: false
|
|
title: Filter by one or more actors
|
|
type: "[]string"
|
|
- type: uint
|
|
name: limit
|
|
title: Limit
|
|
|
|
- title: Messaging queues
|
|
entrypoint: queues
|
|
path: "/queues"
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: Messaging queues
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- { type: string, name: query, title: Search query }
|
|
- { type: uint, name: limit, title: Limit }
|
|
- { type: bool, name: incTotal, title: Include total counter }
|
|
- { type: string, name: pageCursor, title: Page cursor }
|
|
- { type: string, name: sort, title: Sort items }
|
|
- { type: uint, name: deleted, title: Exclude (0, default), include (1) or return only (2) deleted queues }
|
|
- name: create
|
|
method: POST
|
|
title: Create messaging queue
|
|
path: ""
|
|
parameters:
|
|
post:
|
|
- { type: string, name: queue, required: true, title: Name of queue }
|
|
- { type: string, name: consumer, required: true, title: Queue consumer }
|
|
- { type: "types.QueueMeta", name: meta, required: false, title: Meta data for queue, parser: "types.ParseQueueMeta" }
|
|
- name: read
|
|
method: GET
|
|
title: Messaging queue details
|
|
path: "/{queueID}"
|
|
parameters:
|
|
path:
|
|
- { type: uint64, name: queueID, required: true, title: Queue ID }
|
|
- name: update
|
|
method: PUT
|
|
title: Update queue details
|
|
path: "/{queueID}"
|
|
parameters:
|
|
path:
|
|
- { type: uint64, name: queueID, required: true, title: Queue ID }
|
|
post:
|
|
- { type: string, name: queue, required: true, title: Name of queue }
|
|
- { type: string, name: consumer, required: true, title: Queue consumer }
|
|
- { type: "types.QueueMeta", name: meta, required: false, title: Meta data for queue, parser: "types.ParseQueueMeta" }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: delete
|
|
method: DELETE
|
|
title: Messaging queue delete
|
|
path: "/{queueID}"
|
|
parameters:
|
|
path:
|
|
- { type: uint64, name: queueID, required: true, title: Queue ID }
|
|
- name: undelete
|
|
method: POST
|
|
title: Messaging queue undelete
|
|
path: "/{queueID}/undelete"
|
|
parameters:
|
|
path:
|
|
- { type: uint64, name: queueID, required: true, title: Queue ID }
|
|
|
|
- title: Integration gateway routes
|
|
path: "/apigw/route"
|
|
entrypoint: apigwRoute
|
|
authentication: []
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- github.com/cortezaproject/corteza/server/pkg/label
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List routes
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- { name: routeID, type: "[]uint64", title: "Filter by route ID" }
|
|
- { name: query, type: "string", title: "Filter routes" }
|
|
- { name: deleted, type: "uint64", title: "Exclude (0, default), include (1) or return only (2) deleted routes" }
|
|
- { name: disabled, type: "uint64", title: "Exclude (0, default), include (1) or return only (2) disabled routes" }
|
|
- { name: labels, type: "map[string]string", title: "Labels", parser: "label.ParseStrings" }
|
|
- { name: limit, type: "uint", title: "Limit" }
|
|
- { name: incTotal, type: "bool", title: "Include total counter" }
|
|
- { name: pageCursor, type: "string", title: "Page cursor" }
|
|
- { name: sort, type: "string", title: "Sort items" }
|
|
- name: create
|
|
method: POST
|
|
title: Create route
|
|
path: ""
|
|
parameters:
|
|
post:
|
|
- { name: endpoint, type: string, required: true, title: "Route endpoint" }
|
|
- { name: method, type: string, title: "Route method" }
|
|
- { name: enabled, type: bool, title: "Is route enabled" }
|
|
- { name: group, type: uint64, title: "Route group" }
|
|
- { name: meta, type: "types.ApigwRouteMeta", title: "Route meta", parser: "types.ParseApigwRouteMeta" }
|
|
- name: update
|
|
method: PUT
|
|
title: Update route details
|
|
path: "/{routeID}"
|
|
parameters:
|
|
path: [ { name: routeID, type: uint64, required: true, title: "Route ID" } ]
|
|
post:
|
|
- { name: endpoint, type: string, required: true, title: "Route endpoint" }
|
|
- { name: method, type: string, title: "Route method" }
|
|
- { name: enabled, type: bool, title: "Is route enabled" }
|
|
- { name: group, type: uint64, title: "Route group" }
|
|
- { name: meta, type: "types.ApigwRouteMeta", title: "Route meta", parser: "types.ParseApigwRouteMeta" }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: read
|
|
method: GET
|
|
title: Read route details
|
|
path: "/{routeID}"
|
|
parameters: { path: [ { name: routeID, type: uint64, required: true, title: "Route ID" } ] }
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove route
|
|
path: "/{routeID}"
|
|
parameters: { path: [ { name: routeID, type: uint64, required: true, title: "Route ID" } ] }
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete route
|
|
path: "/{routeID}/undelete"
|
|
parameters: { path: [ { name: routeID, type: uint64, required: true, title: "Route ID" } ] }
|
|
|
|
- title: Integration gateway filters
|
|
path: "/apigw/filter"
|
|
entrypoint: apigwFilter
|
|
authentication: []
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
- time
|
|
apis:
|
|
- name: list
|
|
method: GET
|
|
title: List filters
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- { name: routeID, type: "uint64", title: "Filter by route ID", required: true }
|
|
- { name: deleted, type: "uint64", title: "Exclude (0, default), include (1) or return only (2) deleted filters" }
|
|
- { name: disabled, type: "uint64", title: "Exclude (0, default), include (1) or return only (2) disabled filters" }
|
|
- { name: limit, type: "uint", title: "Limit" }
|
|
- { name: pageCursor, type: "string", title: "Page cursor" }
|
|
- { name: sort, type: "string", title: "Sort items" }
|
|
- name: create
|
|
method: PUT
|
|
title: Create filter
|
|
path: ""
|
|
parameters:
|
|
post:
|
|
- { name: routeID, type: uint64, title: "Route", required: true }
|
|
- { name: weight, type: uint64, title: "Filter priority" }
|
|
- { name: kind, type: string, title: "Filter kind" }
|
|
- { name: ref, type: string, title: "Filter ref" }
|
|
- { name: enabled, type: bool, title: "Is Filter enabled" }
|
|
- { name: params, type: "types.ApigwFilterParams", title: "Filter parameters", parser: "types.ParseApigwfFilterParams" }
|
|
- name: update
|
|
method: POST
|
|
title: Update filter details
|
|
path: "/{filterID}"
|
|
parameters:
|
|
path: [ { name: filterID, type: uint64, required: true, title: "Filter ID" } ]
|
|
post:
|
|
- { name: routeID, type: uint64, title: "Route", required: true }
|
|
- { name: weight, type: uint64, title: "Filter priority" }
|
|
- { name: kind, type: string, title: "Filter kind" }
|
|
- { name: ref, type: string, title: "Filter ref" }
|
|
- { name: enabled, type: bool, title: "Is Filter enabled" }
|
|
- { name: params, type: "types.ApigwFilterParams", title: "Filter parameters", parser: "types.ParseApigwfFilterParams" }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
- name: read
|
|
method: GET
|
|
title: Read filter details
|
|
path: "/{filterID}"
|
|
parameters: { path: [ { name: filterID, type: uint64, required: true, title: "Filter ID" } ] }
|
|
- name: delete
|
|
method: DELETE
|
|
title: Remove filter
|
|
path: "/{filterID}"
|
|
parameters: { path: [ { name: filterID, type: uint64, required: true, title: "Filter ID" } ] }
|
|
- name: undelete
|
|
method: POST
|
|
title: Undelete filter
|
|
path: "/{filterID}/undelete"
|
|
parameters: { path: [ { name: filterID, type: uint64, required: true, title: "Filter ID" } ] }
|
|
- name: defFilter
|
|
method: GET
|
|
title: Filter definitions
|
|
path: "/def"
|
|
parameters:
|
|
get:
|
|
- { name: kind, type: "string", title: "Filter filters by kind" }
|
|
- name: defProxyAuth
|
|
method: GET
|
|
title: Proxy auth definitions
|
|
path: "/proxy_auth/def"
|
|
|
|
- title: Integration gateway profiler
|
|
path: "/apigw/profiler"
|
|
entrypoint: apigwProfiler
|
|
authentication: []
|
|
apis:
|
|
- name: aggregation
|
|
method: GET
|
|
title: List aggregated list of routes
|
|
path: "/"
|
|
parameters:
|
|
get:
|
|
- { name: path, type: "string", title: "Filter by request path" }
|
|
- { name: before, type: "string", title: "Entries before specified route" }
|
|
- { name: sort, type: "string", title: "Sort items" }
|
|
- { name: limit, type: "uint", title: "Limit" }
|
|
- name: route
|
|
method: GET
|
|
title: List hits per route
|
|
path: "/route/{routeID}"
|
|
parameters:
|
|
path:
|
|
- { name: routeID, type: "string", title: "Route ID", required: true }
|
|
get:
|
|
- { name: path, type: "string", title: "Filter by request path" }
|
|
- { name: before, type: "string", title: "Entries before specified hit ID" }
|
|
- { name: sort, type: "string", title: "Sort items" }
|
|
- { name: limit, type: "uint", title: "Limit" }
|
|
- name: hit
|
|
method: GET
|
|
title: Hit details
|
|
path: "/hit/{hitID}"
|
|
parameters: { path: [ { name: hitID, type: string, required: true, title: "Hit ID" } ] }
|
|
- name: purge all
|
|
method: POST
|
|
title: Purge all profiler hits
|
|
path: "/purge"
|
|
- name: purge
|
|
method: POST
|
|
title: Purge route profiler hits
|
|
path: "/purge/{routeID}"
|
|
parameters: { path: [ { name: routeID, type: "uint64", title: "Route ID", required: true } ] }
|
|
|
|
- title: Locale
|
|
entrypoint: locale
|
|
path: "/locale"
|
|
imports:
|
|
- time
|
|
apis:
|
|
- name: list resource
|
|
method: GET
|
|
title: List resources translations
|
|
path: "/resource"
|
|
parameters:
|
|
get:
|
|
- { name: lang, type: string, title: Language }
|
|
- { name: resource, type: string, title: Resource }
|
|
- { name: resourceType, type: string, title: Resource type }
|
|
- { name: ownerID, type: uint64, title: OwnerID }
|
|
- { name: deleted, type: "uint64", title: "Exclude (0, default), include (1) or return only (2) deleted resource translations" }
|
|
- { name: limit, type: "uint", title: "Limit" }
|
|
- { name: pageCursor, type: "string", title: "Page cursor" }
|
|
- { name: sort, type: "string", title: "Sort items" }
|
|
|
|
- name: create resource
|
|
method: POST
|
|
title: Create resource translation
|
|
path: "/resource"
|
|
parameters:
|
|
post:
|
|
- { name: lang, type: string, required: true, title: Lang }
|
|
- { name: resource, type: string, required: true, title: Resource }
|
|
- { name: key, type: string, required: true, title: Key }
|
|
- { name: place, type: int, required: false, title: place }
|
|
- { name: message, type: string, required: true, title: Message }
|
|
- { name: ownerID, type: uint64, title: OwnerID }
|
|
|
|
- name: update resource
|
|
method: PUT
|
|
title: Update resource translation
|
|
path: "/resource/{translationID}"
|
|
parameters:
|
|
path: [ { name: translationID, type: uint64, required: true, title: "ID" } ]
|
|
post:
|
|
- { name: lang, type: string, title: Lang }
|
|
- { name: resource, type: string, title: Resource }
|
|
- { name: key, type: string, title: Key }
|
|
- { name: place, type: int, title: place }
|
|
- { name: message, type: string, title: Message }
|
|
- { name: ownerID, type: uint64, title: OwnerID }
|
|
- { type: "*time.Time", name: updatedAt, required: false, title: Last update (or creation) date }
|
|
|
|
- name: read resource
|
|
method: GET
|
|
title: Read resource translation details
|
|
path: "/resource/{translationID}"
|
|
parameters: { path: [ { name: translationID, type: uint64, required: true, title: "ID" } ] }
|
|
- name: delete resource
|
|
method: DELETE
|
|
title: Remove resource translation
|
|
path: "/resource/{translationID}"
|
|
parameters: { path: [ { name: translationID, type: uint64, required: true, title: "ID" } ] }
|
|
- name: undelete resource
|
|
method: POST
|
|
title: Undelete resource translation
|
|
path: "/resource/{translationID}/undelete"
|
|
parameters: { path: [ { name: translationID, type: uint64, required: true, title: "ID" } ] }
|
|
|
|
- name: list
|
|
method: GET
|
|
title: List all available languages
|
|
path: "/"
|
|
- name: get
|
|
method: GET
|
|
title: List all available translation in a language for a specific webapp
|
|
path: "/{lang}/{application}"
|
|
parameters:
|
|
path:
|
|
- { type: string, name: lang, required: true, title: Language }
|
|
- { type: string, name: application, required: true, title: Application name }
|
|
|
|
- title: Data Privacy
|
|
entrypoint: dataPrivacy
|
|
imports:
|
|
- github.com/cortezaproject/corteza/server/pkg/filter
|
|
- github.com/cortezaproject/corteza/server/system/types
|
|
path: "/data-privacy"
|
|
apis:
|
|
- name: connection list
|
|
method: GET
|
|
title: List connections for data privacy
|
|
path: "/connection/"
|
|
parameters:
|
|
get:
|
|
- name: connectionID
|
|
type: "[]string"
|
|
required: false
|
|
title: Filter by connection ID
|
|
- type: string
|
|
name: handle
|
|
required: false
|
|
title: Search handle to match against connections
|
|
- type: string
|
|
name: type
|
|
required: false
|
|
title: Search type to match against connections
|
|
- name: deleted
|
|
required: false
|
|
title: Exclude (0, default), include (1) or return only (2) deleted connections
|
|
type: filter.State
|
|
|
|
- name: request list
|
|
method: GET
|
|
title: List data privacy requests
|
|
path: "/requests/"
|
|
parameters:
|
|
get:
|
|
- { name: requestedBy, type: "[]string", title: "Filter by user ID" }
|
|
- { name: query, type: "string", title: "Filter requests" }
|
|
- { name: kind, type: "[]string", title: "Filter by kind: correct, delete, export" }
|
|
- { name: status, type: "[]string", title: "Filter by status: pending, cancel, approve, reject" }
|
|
- { name: limit, type: "uint", title: "Limit" }
|
|
- { name: pageCursor, type: "string", title: "Page cursor" }
|
|
- { name: sort, type: "string", title: "Sort items" }
|
|
- name: request create
|
|
method: POST
|
|
title: Create data privacy request
|
|
path: "/requests/"
|
|
parameters:
|
|
post:
|
|
- { name: kind, type: "string", title: "Request Kind", required: true }
|
|
- { name: payload, type: "types.DataPrivacyRequestPayloadSet", title: Request, required: false, parser: types.ParseDataPrivacyRequestPayload }
|
|
- name: request read
|
|
method: GET
|
|
title: Get details about specific request
|
|
path: "/requests/{requestID}"
|
|
parameters:
|
|
path:
|
|
- { name: requestID, type: "uint64", title: "Request ID", required: true }
|
|
- name: request update status
|
|
method: PATCH
|
|
title: Update data privacy request status
|
|
path: "/requests/{requestID}/status/{status}"
|
|
parameters:
|
|
path:
|
|
- { name: requestID, type: "uint64", title: "ID", required: true }
|
|
- { name: status, type: "string", title: "Request Status", required: true }
|
|
|
|
- name: request comment list
|
|
method: GET
|
|
title: List data privacy request comments
|
|
path: "/requests/{requestID}/comments/"
|
|
parameters:
|
|
path:
|
|
- { name: requestID, type: "uint64", title: "Request ID", required: true }
|
|
get:
|
|
- { name: limit, type: "uint", title: "Limit" }
|
|
- { name: pageCursor, type: "string", title: "Page cursor" }
|
|
- { name: sort, type: "string", title: "Sort items" }
|
|
- name: request comment create
|
|
method: POST
|
|
title: Create data privacy request comment
|
|
path: "/requests/{requestID}/comments/"
|
|
parameters:
|
|
path:
|
|
- { name: requestID, type: "uint64", title: "Request ID", required: true }
|
|
post:
|
|
- { name: comment, type: "string", title: "Comment description", required: true }
|
|
|
|
- title: SMTP Configuration Checker
|
|
entrypoint: smtpConfigurationChecker
|
|
path: "/smtp"
|
|
apis:
|
|
- name: check
|
|
method: POST
|
|
title: Check SMTP server configuration settings
|
|
path: "/configuration-checker/"
|
|
parameters:
|
|
post:
|
|
- { name: host, type: string, title: SMTP server host name, required: true }
|
|
- { name: port, type: uint, title: SMTP server port, }
|
|
- { name: recipients, type: "[]string", title: List of recipients email addresses that should recieve test email }
|
|
- { name: username, type: string, title: SMTP server authentication username }
|
|
- { name: password, type: string, title: SMTP server authentication password }
|
|
- { name: tlsInsecure, type: bool, title: TLS mode }
|
|
- { name: tlsServerName, type: string, title: TLS server name }
|