api/doc/WebservicePremium.yaml
openapi: 3.0.0
info:
title: 'YetiForce API for Webservice App. Type: WebservicePremium'
description: "Skip the `/webservice` fragment for connections via ApiProxy. There are two ways to connect to API, with or without rewrite, below are examples of both:\n * rewrite\n * - __CRM_URL__/webservice/WebservicePremium/Users/Login\n * - __CRM_URL__/webservice/WebservicePremium/Accounts/RecordRelatedList/117/Contacts\n * without rewrite\n * - __CRM_URL__/webservice.php?_container=WebservicePremium&module=Users&action=Login\n * - __CRM_URL__/webservice.php?_container=WebservicePremium&module=Accounts&action=RecordRelatedList&record=117¶m=Contacts"
termsOfService: 'https://yetiforce.com/'
contact:
name: 'Devs API Team'
url: 'https://yetiforce.com/'
email: devs@yetiforce.com
license:
name: 'YetiForce Public License'
url: 'https://yetiforce.com/en/yetiforce/license'
version: '0.2'
servers:
-
url: 'https://gitdeveloper.yetiforce.com'
description: 'Demo server of the development version'
-
url: 'https://gitstable.yetiforce.com'
description: 'Demo server of the latest stable version'
paths:
/webservice/WebservicePremium/Files:
put:
tags:
- BaseAction
summary: 'Download files'
description: 'Download files from the system'
operationId: f9a4bd07f552c0fa03d878ace80537bc
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Action parameters to download the file'
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/BaseAction_Put_Files_Request'
application/json:
schema:
$ref: '#/components/schemas/BaseAction_Put_Files_Request'
application/xml:
schema:
$ref: '#/components/schemas/BaseAction_Put_Files_Request'
responses:
'200':
description: 'File content, mediaType is dynamic depending on the type of file being downloaded'
content:
application/octet-stream:
schema:
type: string
format: binary
'403':
description: 'No permissions'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: 'File not found'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'406':
description: 'Not Acceptable'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Install:
put:
tags:
- BaseAction
summary: 'Test method for the portal'
description: 'Install the system'
operationId: 8e66373ace76072166e78987b6208292
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Base action install request body'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/BaseAction_Put_Install_Request'
application/xml:
schema:
$ref: '#/components/schemas/BaseAction_Put_Install_Request'
responses:
'200':
description: 'Base action details'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseAction_Put_Install_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseAction_Put_Install_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
/webservice/WebservicePremium/Menu:
get:
tags:
- BaseAction
summary: 'Gets the menu for the portal'
description: 'Get menu'
operationId: c67a6d8f29e0670190a68b254559b1a1
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Menu details'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseAction_Get_Menu_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseAction_Get_Menu_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Modules:
get:
tags:
- BaseAction
summary: 'The allowed actions of the module list'
description: 'Get the permitted module list action, along with their translated action'
operationId: a5a05f9aadec4feaa2795101755d354a
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'List of permitted modules'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseAction_Get_Modules_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseAction_Get_Modules_Response'
'401':
description: '`No sent token` OR `Invalid token`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: 'No permissions for module'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/CustomView':
get:
tags:
- BaseModule
summary: 'List of custom view'
description: 'Gets a list of custom view'
operationId: e8ec0b08aab828bcdcc2304d262d0bbe
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
responses:
'200':
description: 'List of custom view'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_CustomView_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_CustomView_Response'
'401':
description: '`No sent token`, `Invalid token`, `Token has expired`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: '`No permissions for module`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: '`Invalid method`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/CustomView/{cvId}':
get:
tags:
- BaseModule
summary: 'Data of custom view'
description: 'Gets data of custom view'
operationId: df9f1be73a8ec73b5713a361636c6964
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: cvId
in: path
description: 'Custom view ID'
required: true
schema:
type: integer
example: 12
responses:
'200':
description: 'Data of custom view'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_CustomViewById_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_CustomViewById_Response'
'401':
description: '`No sent token`, `Invalid token`, `Token has expired`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: '`No permissions to view record` OR `No permissions for module or data provided in the request`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: '`Invalid method`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Dashboard':
get:
tags:
- BaseModule
summary: 'Gets widgets'' data from the dashboard'
description: 'Supported widget types: Mini List , Chart Filter'
operationId: 0b315ef990cf1b27fc54ade5d4ad5a58
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Privileges details'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_Dashboard_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_Dashboard_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Fields':
get:
tags:
- BaseModule
summary: 'Get data about fields, blocks and inventory'
description: 'Returns information about fields, blocks and inventory based on the selected module'
operationId: eb9c7457dfb37fa48018ca455db1f77f
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
-
name: x-response-params
in: header
description: 'The header contains information about additional data to be returned in the response [Json array]'
required: false
content:
application/json:
schema:
type: array
items:
type: string
enum: [inventory, blocks, privileges, dbStructure, queryOperators]
responses:
'200':
description: 'Fields, blocks and inventory details'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_Fields_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_Fields_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Hierarchy':
get:
tags:
- BaseModule
summary: 'Gets records hierarchy'
description: 'Hierarchy of records'
operationId: df234264b83e83a11c13df2abb2e1d69
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Accounts
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Records hierarchy details'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_Hierarchy_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_Hierarchy_Response'
'405':
description: '`No hierarchy` OR `Not available for this type of user`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Pdf/{recordId}':
get:
tags:
- BaseModule
summary: 'Generates and downloads a PDF file from a template'
description: 'Get PDF file by template'
operationId: e31fa16784ea1ec42b7c6fe99558562d
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Accounts
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: templates
in: query
description: 'Pdf templates ids'
required: true
content:
application/json:
schema:
description: 'Pdf templates ids'
type: integer
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Generate PDF'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_Pdf_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_Pdf_Response'
'403':
description: 'No permissions to view record'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: 'No record id'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'No permissions for action ExportPdf in {moduleName} module'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/PdfTemplates/{recordId}':
get:
tags:
- BaseModule
summary: 'Gets a list of PDF templates'
description: 'PDF templates'
operationId: e065acf7c270e973b1ca0989128f3b37
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Accounts
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Gets a list of PDF templates'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_PdfTemplates_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_PdfTemplates_Response'
'403':
description: 'No permissions to view record'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: 'No record id'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'No permissions for action ExportPdf in {moduleName} module'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Privileges':
get:
tags:
- BaseModule
summary: 'Get privileges for module'
description: 'Gets the list of actions that the user has access to in the module'
operationId: 5a3932cceddc355c243452937f501022
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Privileges details'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_Privileges_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_Privileges_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Record/{recordId}':
get:
tags:
- BaseModule
summary: 'Data for the record'
description: 'Gets the details of a record'
operationId: getRecord
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-parent-id
in: header
description: 'Parent record id'
required: false
schema:
type: integer
example: 5
-
name: x-fields-params
in: header
description: 'JSON array - list of fields to be returned in the specified way'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/Fields-Settings'
-
name: x-header-fields
in: header
description: 'Get header fields'
required: false
schema:
type: integer
responses:
'200':
description: 'Gets data for the record'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_Record_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_Record_Response'
'403':
description: '`No permissions to remove record` OR `No permissions to view record` OR `No permissions to edit record`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: '`No record id` OR `Record doesn''t exist`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
put:
tags:
- BaseModule
summary: 'Edit record'
description: 'Retrieves data for editing a record'
operationId: 02498bd80adba4c07c7033df77ff2308
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Contents of the request contains an associative array with the data record.'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Record_Edit_Details'
application/xml:
schema:
$ref: '#/components/schemas/Record_Edit_Details'
responses:
'200':
description: 'Contents of the response contains only id'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Put_Record_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Put_Record_Response'
links:
GetRecordById:
$ref: '#/components/links/GetRecordById'
'406':
description: 'No input data'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
delete:
tags:
- BaseModule
summary: 'Delete record'
description: 'Changes the state of a record, moving it to the trash'
operationId: a2784819ad189376a91a3dcc3080fb11
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'List of records moved to the trash'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Delete_Record_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Delete_Record_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Record':
post:
tags:
- BaseModule
summary: 'Create record'
description: 'Create new record'
operationId: 10503c8d531e680a764151718cb0ca34
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Contents of the request contains an associative array with the data record.'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Record_Edit_Details'
application/xml:
schema:
$ref: '#/components/schemas/Record_Edit_Details'
responses:
'200':
description: 'Contents of the response contains only id'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Post_Record_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Post_Record_Response'
links:
GetRecordById:
$ref: '#/components/links/GetRecordById'
'406':
description: 'No input data'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/RecordHistory/{recordId}':
get:
tags:
- BaseModule
summary: 'Record history'
description: 'Gets the history of the record'
operationId: 367efb3b90aa1df25940ee9174d803f4
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: x-row-limit
in: header
description: 'Get rows limit, default: 100'
required: false
schema:
type: integer
example: 50
-
name: x-page
in: header
description: 'Page number, default: 1'
required: false
schema:
type: integer
example: 1
-
name: x-start-with
in: header
description: 'Show history from given ID'
required: false
schema:
type: integer
example: 5972
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Recent activities detail'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_RecordHistory_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_RecordHistory_Response'
'403':
description: '`No permissions to view record` OR `MadTracker is turned off`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: 'Record doesn''t exist'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/RecordRelatedList/{recordId}/{relatedModuleName}':
get:
tags:
- BaseModule
summary: 'Related list of records'
description: 'Gets a list of related records'
operationId: 9d2160bb06183ac991aa561e03fef1b1
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: relatedModuleName
in: path
description: 'Related module name'
required: true
schema:
type: string
example: Contacts
-
name: relationId
in: query
description: 'Relation id'
required: false
style: form
schema:
type: integer
-
name: cvId
in: query
description: 'Custom view id'
required: false
style: form
schema:
type: integer
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-row-limit
in: header
description: 'Get rows limit, default: 100'
required: false
schema:
type: integer
example: 1000
-
name: x-row-offset
in: header
description: 'Offset, default: 0'
required: false
schema:
type: integer
example: 0
-
name: x-fields
in: header
description: 'JSON array in the list of fields to be returned in response'
required: false
content:
application/json:
schema:
type: array
items:
type: string
example:
- field_name_1
- field_name_2
-
name: x-condition
in: header
description: 'Conditions [Json format]'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/Conditions-Mix-For-Query-Generator'
-
name: x-only-column
in: header
description: 'Return only column names'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-order-by
in: header
description: 'Set the sorted results by columns [Json format]'
required: false
content:
application/json:
schema:
title: 'Sort conditions'
description: 'Multiple or one condition for a query generator'
type: object
additionalProperties:
description: 'Sort Direction'
type: string
enum: [ASC, DESC]
example:
field_name_1: ASC
field_name_2: DESC
responses:
'200':
description: 'List of entries'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_RecordRelatedList_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_RecordRelatedList_Response'
'400':
description: 'Relationship does not exist'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: 'No permissions to view record'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: 'Record doesn''t exist'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'No relation module name'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/RecordsList':
get:
tags:
- BaseModule
summary: 'List of records'
description: 'Gets a list of records'
operationId: 47e552beb2c809e889ed36e3088e8a0b
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-row-limit
in: header
description: 'Get rows limit, default: 100'
required: false
schema:
type: integer
example: 50
-
name: x-row-offset
in: header
description: 'Offset, default: 0'
required: false
schema:
type: integer
example: 0
-
name: x-fields
in: header
description: 'JSON array in the list of fields to be returned in response'
required: false
content:
application/json:
schema:
type: array
items:
type: string
example:
- field_name_1
- field_name_2
-
name: x-condition
in: header
description: 'Conditions [Json format]'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/Conditions-Mix-For-Query-Generator'
-
name: x-only-column
in: header
description: 'Return only column names'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-parent-id
in: header
description: 'Parent record id'
required: false
schema:
type: integer
example: 5
-
name: x-cv-id
in: header
description: 'Custom view ID'
required: false
schema:
type: integer
example: 5
-
name: x-order-by
in: header
description: 'Set the sorted results by columns [Json format]'
required: false
content:
application/json:
schema:
title: 'Sort conditions'
description: 'Multiple or one condition for a query generator'
type: object
additionalProperties:
title: 'Sort Direction'
type: string
enum: [ASC, DESC]
example:
field_name_1: ASC
field_name_2: DESC
responses:
'200':
description: 'List of entries'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_RecordsList_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_RecordsList_Response'
'400':
description: 'Incorrect json syntax: x-fields'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'401':
description: 'No sent token, Invalid token, Token has expired'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: '`No permissions for module` OR `No permissions for custom view: x-cv-id`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/RelatedModules':
get:
tags:
- BaseModule
summary: 'Related list of modules'
description: 'Gets a list of related modules'
operationId: caf4eaa56e19d0ca70c1bbd39705bcb4
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
responses:
'200':
description: 'List of related modules'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_RelatedModules_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_RelatedModules_Response'
'401':
description: '`No sent token` OR `Invalid token`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: 'No permissions for module'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'Method Not Allowed'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/SaveInventory':
post:
tags:
- BaseModule
summary: 'A store functionality - creates a record in an advanced module (orders)'
description: 'Creating inventory records for the functionality of the store'
operationId: 0f1fbd0b91993088b4e1513d598ca30a
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Accounts
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Contents of the response contains only id nd module name'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseAction_SaveInventory_ResponseBody'
application/xml:
schema:
$ref: '#/components/schemas/BaseAction_SaveInventory_ResponseBody'
'403':
description: 'No permissions to create record'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/SourceBasedData':
put:
tags:
- BaseModule
summary: 'Gets the record data from sources'
description: 'Get the record by sources'
operationId: 17acbd766f129384116b0a985e9e0331
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Contents of the request contains an associative array with the data record.'
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Put_SourceBasedData_Request'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Put_SourceBasedData_Request'
responses:
'200':
description: 'Source-based data response'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Put_SourceBasedData_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Put_SourceBasedData_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/{moduleName}/Widgets':
get:
tags:
- BaseModule
summary: 'Gets a list of widgets'
description: 'List of widgets'
operationId: 0b45057e3efb771e9be607863585cb61
parameters:
-
name: moduleName
in: path
description: 'Module name'
required: true
schema:
type: string
example: Contacts
responses:
'200':
description: 'List of widgets'
content:
application/json:
schema:
$ref: '#/components/schemas/BaseModule_Get_Widgets_Response'
application/xml:
schema:
$ref: '#/components/schemas/BaseModule_Get_Widgets_Response'
'401':
description: '`No sent token`, `Invalid token`, `Token has expired`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: '`No permissions for module`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: '`Invalid method`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/Products/Record/{recordId}':
get:
tags:
- Products
summary: 'Gets the details of a product'
description: 'Data for the product'
operationId: 3e9df34f1053ff5878b3d9d98373ab29
parameters:
-
name: recordId
in: path
description: 'Record id'
required: true
schema:
type: integer
example: 116
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-parent-id
in: header
description: 'Parent record id'
required: false
schema:
type: integer
example: 5
-
name: x-unit-price
in: header
description: 'Get additional unit price'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-unit-gross
in: header
description: 'Get additional unit gross'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-product-bundles
in: header
description: 'Get additional product bundles'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
responses:
'200':
description: 'Gets data for the record'
content:
application/json:
schema:
$ref: '#/components/schemas/Products_Get_Record_Response'
application/xml:
schema:
$ref: '#/components/schemas/Products_Get_Record_Response'
'403':
description: '`No permissions to remove record` OR `No permissions to view record` OR `No permissions to edit record`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: '`No record id` OR `Record doesn''t exist`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Products/RecordsTree:
get:
tags:
- Products
summary: 'A store functionality - gets a list of products for orders'
description: 'Tree list of records'
operationId: ed539236c8df1e2ee5562c8f40c147f0
parameters:
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-row-limit
in: header
description: 'Get rows limit, default: 1000'
required: false
schema:
type: integer
example: 1000
-
name: x-row-offset
in: header
description: 'Offset, default: 0'
required: false
schema:
type: integer
example: 0
-
name: x-order-by
in: header
description: 'Set the sorted results by columns [Json format]'
required: false
content:
application/json:
schema:
title: 'Sort conditions'
description: 'Multiple or one condition for a query generator'
type: object
additionalProperties:
title: 'Sort Direction'
type: string
enum: [ASC, DESC]
example:
field_name_1: ASC
field_name_2: DESC
-
name: x-fields
in: header
description: 'JSON array in the list of fields to be returned in response'
required: false
content:
application/json:
schema:
type: array
items:
type: string
example:
- field_name_1
- field_name_2
-
name: x-condition
in: header
description: 'Conditions [Json format]'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/Conditions-Mix-For-Query-Generator'
-
name: x-parent-id
in: header
description: 'Parent record id'
required: false
schema:
type: integer
example: 5
responses:
'200':
description: 'List of entries'
content:
application/json:
schema:
$ref: '#/components/schemas/Products_Get_RecordsList_Response'
application/xml:
schema:
$ref: '#/components/schemas/Products_Get_RecordsList_Response'
'400':
description: 'Incorrect json syntax: x-fields'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'401':
description: 'No sent token, Invalid token, Token has expired'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: 'No permissions for module'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Users/AccessActivityHistory:
get:
tags:
- Users
summary: 'History of access activity data'
description: 'Get user history of access activity'
operationId: 2daede1899037231d09a0e509d11f04a
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
-
name: x-row-limit
in: header
description: 'Get rows limit, default: 50'
required: false
schema:
type: integer
example: 1000
-
name: x-row-offset
in: header
description: 'Offset, default: 0'
required: false
schema:
type: integer
example: 0
-
name: x-condition
in: header
description: 'Conditions [Json format]'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/Conditions-For-Native-Query'
responses:
'200':
description: 'User history of access activity'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Get_AccessActivityHistory_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Get_AccessActivityHistory_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Users/ChangePassword:
put:
tags:
- Users
summary: 'User password change'
description: 'User password change'
operationId: b78bf2e250ea398b65ddb5d5786cdc09
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Input data'
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Users_Put_ChangePassword_Request'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Users_Put_ChangePassword_Request'
application/json:
schema:
$ref: '#/components/schemas/Users_Put_ChangePassword_Request'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Put_ChangePassword_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Put_ChangePassword_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Users/Login:
post:
tags:
- Users
summary: 'Logs user'
description: 'Logs user into the system'
operationId: 07552cbaf12d5659d2905d46c06f30f5
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Input data format'
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Users_Post_Login_Request'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Users_Post_Login_Request'
application/json:
schema:
$ref: '#/components/schemas/Users_Post_Login_Request'
responses:
'200':
description: 'User details'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Post_Login_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Post_Login_Response'
'401':
description: '`Invalid data access` OR `Invalid user password` OR `No crmid` OR `2FA verification error`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'412':
description: 'No 2FA TOTP code'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
/webservice/WebservicePremium/Users/Logout:
put:
tags:
- Users
summary: 'Logout user'
description: 'Logout user out the system'
operationId: 051eb2a6ce4e51305fa5b5bf52b213fb
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'User details'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Put_Logout_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Put_Logout_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Users/Preferences:
put:
tags:
- Users
summary: 'Changes user’s preferences'
description: 'Changes user’s preferences'
operationId: 0918e84256e4caea7b399e3cd4b62847
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Input data'
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Users_Put_Preferences_Request'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Users_Put_Preferences_Request'
application/json:
schema:
$ref: '#/components/schemas/Users_Put_Preferences_Request'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Put_Preferences_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Put_Preferences_Response'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
'/webservice/WebservicePremium/Users/Record/{userId}':
get:
tags:
- Users
summary: 'Data for the user'
description: 'Gets details about the user'
operationId: 5b5711b4b100e1883ae300d820e4656c
parameters:
-
name: userId
in: path
description: 'User id'
required: true
schema:
type: integer
example: 116
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
responses:
'200':
description: 'Gets data for the user'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Get_Record_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Get_Record_Response'
'403':
description: 'Access denied, access for administrators only'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'404':
description: 'User doesn''t exist'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Users/RecordsList:
get:
tags:
- Users
summary: 'List of users'
description: 'Gets a list of all users'
operationId: 35fa3a7037f20ee13093ca2a82022ca8
parameters:
-
name: x-raw-data
in: header
description: 'Gets raw data'
required: false
schema:
type: integer
enum:
- 0
- 1
example: 1
-
name: x-row-limit
in: header
description: 'Get rows limit, default: 1000'
required: false
schema:
type: integer
example: 1000
-
name: x-row-offset
in: header
description: 'Offset, default: 0'
required: false
schema:
type: integer
example: 0
-
name: x-order-by
in: header
description: 'Set the sorted results by columns [Json format]'
required: false
content:
application/json:
schema:
title: 'Sort conditions'
description: 'Multiple or one condition for a query generator'
type: object
additionalProperties:
title: 'Sort Direction'
type: string
enum: [ASC, DESC]
example:
field_name_1: ASC
field_name_2: DESC
-
name: x-fields
in: header
description: 'JSON array in the list of fields to be returned in response'
required: false
content:
application/json:
schema:
type: array
items:
type: string
example:
- field_name_1
- field_name_2
-
name: x-condition
in: header
description: 'Conditions [Json format]'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/Conditions-Mix-For-Query-Generator'
-
name: x-parent-id
in: header
description: 'Parent record id'
required: false
schema:
type: integer
example: 5
responses:
'200':
description: 'List of entries'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Get_RecordsList_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Get_RecordsList_Response'
'400':
description: 'Incorrect json syntax: x-fields'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'401':
description: 'No sent token, Invalid token, Token has expired'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'403':
description: 'No permissions for module'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
/webservice/WebservicePremium/Users/ResetPassword:
put:
tags:
- Users
summary: 'User password reset - Password change'
description: 'User password reset - Password change'
operationId: 1fd28464e80a73db5dc2898678cc9d4a
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Input data'
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Users_Put_ResetPassword_Request'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Users_Put_ResetPassword_Request'
application/json:
schema:
$ref: '#/components/schemas/Users_Put_ResetPassword_Request'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Put_ResetPassword_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Put_ResetPassword_Response'
'404':
description: 'User with this email address does not exist'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'405':
description: ERR_TOKEN_DOES_NOT_EXIST
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
post:
tags:
- Users
summary: 'User password reset - Generating and sending a one-time token'
description: 'User password reset - Generating and sending a one-time token'
operationId: 33be6e4f125ff88f02a1c0e291c1ae35
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
requestBody:
description: 'Input data'
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Users_Post_ResetPassword_Request'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Users_Post_ResetPassword_Request'
application/json:
schema:
$ref: '#/components/schemas/Users_Post_ResetPassword_Request'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Post_ResetPassword_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Post_ResetPassword_Response'
'404':
description: 'User with this email address does not exist'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
/webservice/WebservicePremium/Users/TwoFactorAuth:
get:
tags:
- Users
summary: '2FA details'
description: 'Get two factor authentication details'
operationId: 92d5512bd64bf777e22d47e04577d81f
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Authentication secret details'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Get_TwoFactorAuth_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Get_TwoFactorAuth_Response'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'500':
description: 'Two-factor authentication has not been enabled'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
post:
tags:
- Users
summary: 'Activate 2FA'
description: 'Activate two factor authentication'
operationId: 779bc7965096250a7820b9e257d73c67
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Access details'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_post_TwoFactorAuth_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_post_TwoFactorAuth_Response'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'500':
description: '`Two-factor authentication has not been enabled` OR `A secret 2FA key has already been generated.`'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
delete:
tags:
- Users
summary: 'Disable 2FA'
description: 'Disable two factor authentication'
operationId: e8e76075068721addd6768153152c9ea
parameters:
-
name: X-ENCRYPTED
in: header
required: true
schema:
$ref: '#/components/schemas/Header-Encrypted'
responses:
'200':
description: 'Disable two factor authentication response'
content:
application/json:
schema:
$ref: '#/components/schemas/Users_Delete_TwoFactorAuth_Response'
application/xml:
schema:
$ref: '#/components/schemas/Users_Delete_TwoFactorAuth_Response'
'405':
description: 'Invalid method'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
'500':
description: 'Two-factor authentication has not been enabled'
content:
application/json:
schema:
$ref: '#/components/schemas/Exception'
application/xml:
schema:
$ref: '#/components/schemas/Exception'
security:
-
basicAuth: []
ApiKeyAuth: []
token: []
components:
schemas:
BaseAction_Put_Files_Request:
title: 'Base action - Files request schema'
description: 'Action parameters to download the file'
required:
- module
- actionName
- record
properties:
module:
description: 'Module name'
type: string
example: Contacts
actionName:
description: 'Action name'
type: string
enum:
- MultiImage
- DownloadFile
example: MultiImage
record:
description: 'Record ID'
type: integer
example: 123
field:
description: 'Field name. Required for MultiImage action'
type: string
example: imagename
key:
description: 'Unique key for attachment. Required for MultiImage action'
type: string
example: 14f01c4ea4da107c4145f0519ea1b9027fb24aa7MS2AqcUFuC
type: object
BaseAction_Put_Install_Request:
title: 'Base action - Install response'
description: 'The representation of a base action install'
type: object
BaseAction_Put_Install_Response:
title: 'Base action - Install response'
description: 'The representation of a base action install'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Content of responses from a given method'
type: object
type: object
BaseAction_Get_Menu_Response:
title: 'Base action - Menu'
description: 'Base action menu response body'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Menu items selected in the system, consists of parents and children'
properties:
items:
title: 'Parent parameters'
type: object
additionalProperties:
description: 'Tree item'
properties:
id: { type: integer, example: 171 }
tabid: { type: integer, example: 3 }
mod: { type: string, example: Accounts }
name: { type: string, example: Accounts }
type: { type: string, example: Module }
sequence: { type: integer, example: 1 }
newwindow: { type: integer, example: 0 }
dataurl: { type: string, example: 'index.php?module=Module&view=List&mid=172' }
icon: { type: string, example: dminIcon-shared-owner }
parent: { type: integer, example: 0 }
hotkey: { type: string, example: ctrl+k }
filters: { type: string, example: '4,130' }
childs: { title: 'Children parameters', type: object }
label: { type: string, example: 'My home page' }
type: object
type: object
type: object
BaseAction_Get_Modules_Response:
title: 'Base action - List of permitted modules'
description: 'List of available modules'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'List of permitted modules'
type: object
additionalProperties:
description: 'Module name'
type: string
example: Accounts
type: object
BaseModule_Get_CustomView_Response:
title: 'Base module - Response action - data of custom view list'
description: 'Module action - Data of custom view list - response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'List of custom view'
type: object
additionalProperties:
$ref: '#/components/schemas/BaseModule_CustomViewById_Result'
type: object
BaseModule_Get_CustomViewById_Response:
title: 'Base module - Response action - data of custom view by specific ID'
description: 'Module action - custom view for specific ID - response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
$ref: '#/components/schemas/BaseModule_CustomViewById_Result'
type: object
BaseModule_CustomViewById_Result:
title: 'Data of custom view by specific ID'
description: 'Module action - custom view for specific ID - response data'
required:
- cvid
- viewname
- entitytype
- sequence
- description
- color
- isFeatured
- isDefault
properties:
cvid:
description: 'Custom view ID'
type: integer
example: 12
viewname:
description: 'Custom view name'
type: string
example: 'Test 1'
entitytype:
description: 'Module name'
type: string
example: Accounts
sequence:
description: Sequence
type: integer
example: 1
description:
description: 'Custom view description'
type: string
example: Description
color:
description: 'Color for custom view'
type: string
example: '#c28306'
isFeatured:
description: 'Custom view is in favorites'
type: boolean
example: false
isDefault:
description: 'Custom view is default'
type: boolean
example: false
type: object
BaseModule_Get_Dashboard_Response:
title: 'Base module - Dashboard response schema'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Tabs and widgets data'
properties:
types:
title: 'Tabs list'
type: object
additionalProperties:
description: 'Tab menu item'
properties:
name: { type: string, example: Dashboard }
id: { type: integer, example: 1 }
system: { type: integer, example: 1 }
type: object
widgets:
title: 'Tabs list'
type: object
additionalProperties:
description: 'Tree item'
properties:
type: { type: string, example: ChartFilter }
data: { title: 'Widget data', type: object }
type: object
type: object
type: object
BaseModule_Get_Fields_Response:
title: 'Base module - Response action fields'
description: 'Fields, blocks and inventory details'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Fields parameters'
required:
- fields
- blocks
properties:
fields:
title: 'List of all available fields in the module'
required:
- name
- label
- type
- mandatory
- defaultvalue
- presence
- quickcreate
- masseditable
- header_field
- maxlengthtext
- maximumlength
- maxwidthcolumn
- tabindex
- fieldtype
- id
- uitype
- sequence
- fieldparams
- blockId
- helpInfo
type: object
additionalProperties:
properties:
name: { description: 'Field name', type: string, example: subject }
label: { description: 'Field label translated into the user''s language', type: string, example: Subject }
type: { description: 'Field type', type: string, example: string }
mandatory: { description: 'Check if field is mandatory', type: boolean, example: true }
defaultvalue: { description: 'Default field value', type: string, example: '' }
presence: { description: 'Check if field is active', type: boolean, example: true }
quickcreate: { description: 'Check if field is active', type: boolean, example: true }
masseditable: { description: 'Check if field is quick create enabled', type: boolean, example: true }
header_field: { title: 'Field configuration available in the header', properties: { type: { description: Type, type: string, example: value }, class: { description: 'Gui class', type: string, example: badge-info } }, type: object }
maxlengthtext: { description: 'Max length text', type: integer, example: 0 }
maximumlength: { description: 'Maximum field range', type: string, example: '-2147483648,2147483647' }
maxwidthcolumn: { description: 'Max width column', type: integer, example: 0 }
tabindex: { description: 'Field tab index', type: integer, example: 0 }
fieldtype: { description: 'Field short data type', type: string, example: V }
picklistvalues: { title: 'Picklist values, available only for type of field: picklist, multipicklist, multiowner, multiReferenceValue, inventoryLimit, languages, currencyList, fileLocationType, taxes, multiListFields, mailScannerFields, country, modules, sharedOwner, categoryMultipicklist, tree', type: object }
date-format: { title: 'Date format, available only for type of field: date, datetime', type: string }
time-format: { title: 'Time format, available only for type of field: time', type: string }
currency_symbol: { title: 'Currency symbol, available only for type of field: currency', type: string }
decimal_separator: { title: 'Currency decimal separator, available only for type of field: currency', type: string }
group_separator: { title: 'Currency group separator, available only for type of field: currency', type: string }
restrictedDomains: { title: 'Email restricted domains, available only for type of field: email', properties: { yeti.com: { description: 'List of domains reserved by email', example: yeti.com } }, type: object }
limit: { title: 'Limit the amount of images, available only for type of field: multiImage, image', type: integer }
formats: { title: 'File Format, available only for type of field: multiImage, image', properties: { jpg: { description: 'List of file data formats', example: jpg } }, type: object }
id: { description: 'Field ID', type: integer, example: 24862 }
uitype: { description: 'Field UiType', type: integer, example: 1 }
isViewable: { description: 'Check if the field is viewable, depends on header `x-response-params`', type: boolean, example: true }
isReadOnly: { description: 'Check if the field is read only (based on profiles), depends on header `x-response-params`', type: boolean, example: false }
isCreatable: { description: 'Check if the field is creatable, depends on header `x-response-params`', type: boolean, example: true }
isEditable: { description: 'Check if the field is editable, depends on header `x-response-params`', type: boolean, example: true }
isEditableReadOnly: { description: 'Check if the field is editable or read only (based on the field type), depends on header `x-response-params`', type: boolean, example: false }
isEditableHidden: { description: 'Check if the field is hidden in the edit (based on the field type), depends on header `x-response-params`', type: boolean, example: false }
sequence: { description: 'Sequence field', type: integer, example: 24862 }
fieldparams: { description: 'Field params', type: object }
blockId: { description: 'Field block id', type: integer, example: 280 }
helpInfo: { description: 'Additional field description', type: string, example: 'Edit,Detail' }
dbStructure: { title: 'Info about field structure in database, depends on header `x-response-params`', properties: { name: { description: 'Name of this column (without quotes).', type: string, example: parent_id }, allowNull: { description: 'Whether this column can be null.', type: boolean, example: true }, type: { description: 'Abstract type of this column.', type: string, example: integer }, phpType: { description: 'The PHP type of this column.', type: string, example: integer }, dbType: { description: 'The DB type of this column.', type: string, example: int(10) }, defaultValue: { description: 'Default value of this column', type: string, example: '10' }, enumValues: { description: 'Enumerable values.', type: string, example: '' }, size: { description: 'Display size of the column.', type: integer, example: 10 }, precision: { description: 'Precision of the column data, if it is numeric.', type: integer, example: 10 }, scale: { description: 'Scale of the column data, if it is numeric.', type: integer, example: 0 }, isPrimaryKey: { description: 'Whether this column is a primary key', type: boolean, example: false }, autoIncrement: { description: 'Whether this column is auto-incremental', type: boolean, example: false }, unsigned: { description: 'Whether this column is unsigned.', type: boolean, example: false }, comment: { description: 'Comment of this column.', type: string, example: '' } }, type: object }
queryOperators: { description: 'Field query operators, depends on header `x-response-params`', type: object }
isEmptyPicklistOptionAllowed: { description: 'Defines empty picklist element availability', type: boolean, example: false }
referenceList: { title: 'List of related modules, available only for reference field', type: object, additionalProperties: { description: 'Tree item', type: string, example: Accounts } }
treeValues: { title: 'Tree items, available only for tree field', type: object, additionalProperties: { title: 'Tree item', properties: { id: { description: 'Number tree without prefix', type: integer, example: 1 }, tree: { description: 'Tree id', type: string, example: T10 }, parent: { description: 'Parent tree id', type: string, example: T1 }, text: { description: 'Tree value', type: string, example: 'Tree value' } }, type: object } }
defaultEditValue: { title: 'Default field value in editable format', properties: { value: { description: 'Value in editable format', type: string, example: 'Some value' }, raw: { description: 'Raw value', type: string, example: T10 } }, type: object }
type: object
blocks:
title: 'List of all available blocks in the module, depends on header `x-response-params`'
type: object
additionalProperties:
title: 'Block details'
required:
- id
- tabid
- label
- sequence
- showtitle
- visible
- increateview
- ineditview
- indetailview
- display_status
- iscustom
- icon
- name
properties:
id: { description: 'Block id', type: integer, example: 195 }
tabid: { description: 'Module id', type: integer, example: 9 }
label: { description: 'Block label', type: string, example: 'Account details' }
sequence: { description: 'Block sequence', type: integer, example: 1 }
showtitle: { description: 'Specifies whether the title should be visible', type: integer, example: 0 }
visible: { description: 'Determines the visibility', type: integer, example: 0 }
increateview: { description: 'Determines the visibility in creat view', type: integer, example: 0 }
ineditview: { description: 'Determines the visibility in edit view', type: integer, example: 0 }
indetailview: { description: 'Determines the visibility in detail view', type: integer, example: 0 }
display_status: { description: 'Determines whether the block should be expanded', type: integer, example: 2 }
iscustom: { description: 'Determines if the block has been added by the user', type: integer, example: 0 }
icon: { description: 'Block icon class', type: string, example: 'far fa-calendar-alt' }
name: { description: 'Block name translated into the user''s language', type: string, example: 'Informacje podstawowe o firmie' }
type: object
inventory:
title: 'Inventory field group, available depending on the type of module, depends on header `x-response-params`'
properties:
'1':
title: 'Inventory field list'
type: object
additionalProperties: { title: 'Inventory field details', required: [label, type, columnname, isSummary, isVisibleInDetail], properties: { label: { description: 'Field label translated into the user''s language', type: string, example: 'Unit price' }, type: { description: 'Field type', type: string, example: UnitPrice }, columnname: { description: 'Field column name in db', type: string, example: price }, isSummary: { description: 'Is the field contains summary', type: boolean, example: false }, isVisibleInDetail: { description: 'Check if field is visible in detail view', type: boolean, example: true } }, type: object }
type: object
type: object
type: object
BaseModule_Get_Hierarchy_Response:
title: 'Base module - Hierarchy response schema'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: Records
type: object
additionalProperties:
description: 'Record details'
properties:
id:
type: integer
example: 117
parent:
type: integer
example: 0
name:
type: string
example: 'YetiForce S.A.'
type: object
type: object
BaseModule_Get_Pdf_Response:
title: 'Base module - Generate PDF response schema'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: Pdf
type: object
additionalProperties:
title: 'Pdf detail'
properties:
name:
type: string
example: order.pdf
data:
type: string
format: binary
type: object
type: object
BaseModule_Get_PdfTemplates_Response:
title: 'Base module - Get PDF templates list response schema'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Pdf templates'
type: object
additionalProperties:
title: 'Pdf template detail'
properties:
id:
title: 'Record Id'
type: integer
example: 38
name:
type: string
example: order
second_name:
type: string
example: order
default:
type: integer
example: 1
type: object
type: object
BaseModule_Get_Privileges_Response:
title: 'Base module - Privileges response schema'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'List of module privileges'
type: object
example:
Import: true
Export: true
additionalProperties:
title: Action
type: boolean
type: object
Fields-Settings:
title: 'Custom field settings'
description: 'A list of custom parameters that can affect the return value of a given field.'
type: object
example:
password:
showHiddenData: true
BaseModule_Get_Record_Response:
title: 'Base module - Response body for Record'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Record data'
required:
- name
- id
- fields
- data
properties:
name:
description: 'Record name'
type: string
example: 'Driving school'
id:
description: 'Record Id'
type: integer
example: 152
fields:
title: 'System field names and field labels'
type: object
example:
field_name_1: 'Field label 1'
field_name_2: 'Field label 2'
assigned_user_id: 'Assigned user'
createdtime: 'Created time'
additionalProperties:
description: 'Field label'
type: string
data:
$ref: '#/components/schemas/Record_Display_Details'
privileges:
title: 'Parameters determining checking of editing rights and moving to the trash'
required:
- isEditable
- moveToTrash
properties:
isEditable:
description: 'Check if record is editable'
type: boolean
example: true
moveToTrash:
description: 'Permission to delete'
type: boolean
example: false
type: object
inventory:
description: 'Value inventory data'
type: object
summaryInventory:
description: 'Value summary inventory data'
type: object
rawData:
$ref: '#/components/schemas/Record_Raw_Details'
rawInventory:
description: 'Inventory data'
type: object
headerFields:
title: 'Get header fields details.'
properties:
progress:
title: 'Progress header fields'
type: object
additionalProperties: { title: 'Header field details', required: [type, label, values], properties: { type: { description: 'Header field type', type: string, example: value }, label: { description: 'Translated field label', type: string, example: 'Assigned To' }, class: { description: 'Class name', type: string, example: badge-info }, values: { title: 'Class name', type: object, additionalProperties: { title: 'Header field details', required: [label, isActive, isLocked, isEditable], properties: { label: { description: 'Value to display', type: string, example: 'Awaiting verification' }, isActive: { description: 'Is active', type: boolean, example: false }, isLocked: { description: 'Is locked', type: boolean, example: false }, isEditable: { description: 'Is editable', type: boolean, example: false }, description: { description: Description, type: string, example: '' }, color: { description: Color, type: string, example: ffa800 } }, type: object } } }, type: object }
value:
title: 'Value header fields'
type: object
additionalProperties: { title: 'Header field details', required: [type, label, value], properties: { type: { description: 'Header field type', type: string, example: value }, label: { description: 'Translated field label', type: string, example: 'Assigned To' }, class: { description: 'Class name', type: string, example: badge-info }, value: { description: 'Data in API format', oneOf: [{ type: object }, { type: string }, { type: number }, { type: integer }] } }, type: object }
highlights:
title: 'Highlights header fields'
type: object
additionalProperties: { title: 'Header field details', required: [type, label, value], properties: { type: { description: 'Header field type', type: string, example: value }, label: { description: 'Translated field label', type: string, example: 'Assigned To' }, class: { description: 'Class name', type: string, example: badge-info }, value: { description: 'Data in API format', oneOf: [{ type: object }, { type: string }, { type: number }, { type: integer }] } }, type: object }
type: object
type: object
type: object
BaseModule_Delete_Record_Response:
title: 'Base module - Transfer to the trash'
description: 'List of records moved to the trash'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Status of successful transfer of the record to the recycle bin'
type: boolean
type: object
BaseModule_Put_Record_Response:
title: 'Base module - Response body for Record'
description: 'Contents of the response contains only id'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Record data'
description: 'Created record id and name.'
required:
- id
- name
properties:
id:
description: 'Id of the newly created record'
type: integer
example: 22
name:
description: 'Id of the newly created record'
type: string
example: 'YetiForce Name'
skippedData:
description: 'List of parameters passed in the request that were skipped in the write process'
type: object
type: object
type: object
Record_Edit_Details:
title: 'General - Record edit details'
description: 'Record data in user format for edit view'
type: object
example:
field_name_1: Tom
field_name_2: Kowalski
assigned_user_id: 1
createdtime: '2014-09-24 20:51:12'
Record_Raw_Details:
title: 'General - Record raw details'
description: 'Record data in the system format as stored in a database'
type: object
example:
id: 11
field_name_1: Tom
field_name_2: Kowalski
assigned_user_id: 1
createdtime: '2014-09-24 20:51:12'
Record_Display_Details:
title: 'General - Record display details'
description: 'Record data in user format for preview'
type: object
example:
id: 11
field_name_1: Tom
field_name_2: Kowalski
assigned_user_id: 'YetiForce Administrator'
createdtime: '2014-09-24 20:51'
BaseModule_Post_Record_Response:
title: 'Base module - Created records'
description: 'Contents of the response contains only id'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Record data'
description: 'Created record id and name.'
required:
- id
- name
properties:
id:
description: 'Id of the newly created record'
type: integer
example: 22
name:
description: 'Id of the newly created record'
type: string
example: 'YetiForce Name'
skippedData:
description: 'List of parameters passed in the request that were skipped in the write process'
type: object
type: object
type: object
BaseModule_Get_RecordHistory_Response:
title: 'Base module - Response action history record'
description: 'Action module for recent activities in CRM'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Returns recent activities that took place in CRM'
required:
- records
- isMorePages
properties:
records:
title: 'Entires of recent record activities'
type: object
additionalProperties:
title: 'Key indicating the number of changes made to a given record'
required:
- time
- owner
- status
properties:
time: { description: 'Showing the exact date on which the change took place', type: string, example: '2019-10-07 08:32:38' }
owner: { description: 'Username of the user who made the change', type: string, example: 'System Admin' }
status: { description: 'Name of the action that was carried out', type: string, example: changed }
rawTime: { description: 'Showing the exact date on which the change took place', type: string, example: '2019-10-07 08:32:38' }
rawOwner: { description: 'User ID of the user who made the change', type: integer, example: 1 }
rawStatus: { description: 'The name of the untranslated label', type: string, example: LBL_UPDATED }
data: { title: 'Additional information', oneOf: [{ title: 'Record data create', type: object, additionalProperties: { required: [label, value, raw], properties: { label: { description: 'Translated field label', type: string, example: Name }, value: { description: 'Value, the data type depends on the field type', type: string, example: 'Jan Kowalski' }, raw: { description: 'Value in database format, only available in `x-raw-data`', type: string, example: 'Jan Kowalski' } }, type: object } }, { title: 'Record data change', description: 'Edit, conversation', type: object, additionalProperties: { required: [label, from, to], properties: { label: { description: 'Translated field label', type: string, example: Name }, from: { description: 'Value before change, the data type depends on the field type', type: string, example: 'Jan Kowalski' }, to: { description: 'Value after change, the data type depends on the field type', type: string, example: 'Jan Nowak' }, rawFrom: { description: 'Value before change, value in database format, only available in `x-raw-data`', type: string, example: 'Jan Kowalski' }, rawTo: { description: 'Value after change, value in database format, only available in `x-raw-data`', type: string, example: 'Jan Nowak' } }, type: object } }, { title: 'Operations on related records', description: 'Adding relations, removing relations, transferring records', required: [targetModule, targetModuleLabel, targetLabel], properties: { targetModule: { description: 'The name of the target related module', type: string, example: Contacts }, targetModuleLabel: { description: 'Translated module name', type: string, example: Kontakt }, targetLabel: { description: 'The label name of the target related module', type: string, example: 'Jan Kowalski' }, targetId: { description: 'Id of the target related module', type: integer, example: 394 } }, type: object }] }
type: object
isMorePages:
type: boolean
example: true
type: object
type: object
BaseModule_Get_RecordRelatedList_Response:
title: 'Base module - Response action related record list'
description: 'Module action related record list response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'List of related records'
required:
- headers
- records
- permissions
- numberOfRecords
- isMorePages
properties:
headers:
title: 'Fields names'
type: object
example:
field_name_1: 'Field label 1'
field_name_2: 'Field label 2'
assigned_user_id: 'Assigned user'
createdtime: 'Created time'
additionalProperties:
description: 'Field name'
type: string
records:
title: 'Records display details'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Display_Details'
permissions:
title: 'Records action permissions'
type: object
additionalProperties:
title: 'Record action permissions'
required:
- isEditable
- moveToTrash
properties:
isEditable: { description: 'Check if record is editable', type: boolean, example: true }
moveToTrash: { description: 'Permission to delete', type: boolean, example: true }
type: object
rawData:
title: 'Records raw details, dependent on the header `x-raw-data`'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Raw_Details'
numberOfRecords:
description: 'Number of records on the page'
type: integer
example: 20
isMorePages:
description: 'There are more pages'
type: boolean
example: true
numberOfAllRecords:
description: 'Number of all records, dependent on the header `x-row-count`'
type: integer
example: 54
type: object
type: object
BaseModule_Get_RecordsList_Response:
title: 'Base module - Response action record list'
description: 'Module action record list response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'List of records'
required:
- headers
- records
- permissions
- numberOfRecords
- isMorePages
properties:
headers:
title: 'Fields names'
type: object
example:
field_name_1: 'Field label 1'
field_name_2: 'Field label 2'
assigned_user_id: 'Assigned user'
createdtime: 'Created time'
additionalProperties:
description: 'Field name'
type: string
records:
title: 'Records display details'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Display_Details'
permissions:
title: 'Records action permissions'
type: object
additionalProperties:
title: 'Record action permissions'
required:
- isEditable
- moveToTrash
properties:
isEditable: { type: boolean, example: true }
moveToTrash: { type: boolean, example: true }
type: object
rawData:
title: 'Records raw details, dependent on the header `x-raw-data`'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Raw_Details'
numberOfRecords:
description: 'Number of records on the page'
type: integer
example: 20
isMorePages:
description: 'There are more pages'
type: boolean
example: true
numberOfAllRecords:
description: 'Number of all records, dependent on the header `x-row-count`'
type: integer
example: 54
type: object
type: object
BaseModule_Get_RelatedModules_Response:
title: 'Base module - Response action related modules list'
description: 'Module action related modules list response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'List of related records'
required:
- base
- related
properties:
base:
title: 'Base list'
type: object
additionalProperties:
required:
- type
- label
- icon
properties:
type: { description: Type, type: string, example: Summary }
label: { description: 'Translated label', type: string, example: Summary }
icon: { description: 'Icon class', type: string, example: 'fas fa-desktop' }
type: object
related:
title: 'Base list'
type: object
additionalProperties:
required:
- label
- relationId
- relatedModuleName
- icon
- actions
- viewType
- customView
properties:
label: { description: 'Translated label', type: string, example: Documents }
relationId: { description: 'Relation ID', type: integer, example: 3 }
relatedModuleName: { description: 'Related module name', type: string, example: Documents }
icon: { description: 'Icon class', type: string, example: yfm-Documents }
actions: { description: Actions, type: array, items: { type: string }, example: [add, select] }
viewType: { description: 'View types', type: array, items: { type: string }, example: [RelatedTab, DetailBottom] }
customView: { description: 'Custom view', type: array, items: { type: string }, example: [relation, all] }
type: object
type: object
type: object
BaseAction_SaveInventory_ResponseBody:
title: 'Base module - Create inventory record response schema'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Create result'
type: object
oneOf:
-
$ref: '#/components/schemas/BaseAction_SaveInventory_ResponseBodySuccess'
-
$ref: '#/components/schemas/BaseAction_SaveInventory_ResponseBodyError'
type: object
BaseAction_SaveInventory_ResponseBodySuccess:
title: 'Base module - Create inventory record response success schema'
properties:
id:
description: 'Record Id'
type: integer
example: 38
moduleName:
type: string
example: SSingleOrders
type: object
BaseAction_SaveInventory_ResponseBodyError:
title: 'Base module - Create inventory record response error schema'
properties:
errors:
description: 'Error details'
type: object
type: object
BaseModule_Put_SourceBasedData_Request:
title: 'Base module - Source-based data request'
type: object
oneOf:
-
title: 'Create a record from a related module'
required:
- sourceModule
- sourceRecord
properties:
sourceModule:
description: 'Source module'
type: string
example: Accounts
sourceRecord:
description: 'Source record ID'
type: integer
example: 221
type: object
-
title: 'Create a record from a reference field'
required:
- sourceRecordData
properties:
sourceRecordData:
$ref: '#/components/schemas/Record_Edit_Details'
type: object
BaseModule_Put_SourceBasedData_Response:
title: 'Base module - Source-based data response'
description: 'Data to auto-complete in compose view'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Returns record data'
required:
- data
- rawData
properties:
data:
$ref: '#/components/schemas/Record_Display_Details'
rawData:
$ref: '#/components/schemas/Record_Raw_Details'
type: object
type: object
BaseModule_Get_Widgets_Response:
title: 'Base module - Response action - data of widgets'
description: 'Module action - Data of widgets - response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'List of widgets'
type: object
additionalProperties:
$ref: '#/components/schemas/BaseModule_Widget_Result'
type: object
BaseModule_Widget_Result:
title: 'Widget data by specific ID'
description: 'Module action - Widget for specific ID - response data'
required:
- id
- type
- label
- wcol
- sequence
- name
- data
properties:
id:
description: 'Widget ID'
type: integer
example: 12
type:
description: 'Widget type'
type: string
example: RelatedModule
label:
description: 'Widget label'
type: string
example: Contacts
wcol:
description: 'Widget position'
type: integer
enum:
- 1
- 2
- 3
example: 1
sequence:
description: Sequence
type: integer
example: 1
name:
description: 'The translated name of the widget'
type: string
example: Contacts
data:
description: 'Widget specific data'
type: object
example:
relation_id: 1
relatedmodule: 4
relatedfields:
- firstname
- lastname
- phone
- email
viewtype: List
customView: []
limit: 5
action: 1
actionSelect: '0'
no_result_text: '0'
switchHeader: '-'
filter: '-'
checkbox: '-'
orderby: []
relatedModuleName: Contacts
type: object
Products_Get_Record_Response:
title: 'Base module - Response body for Record'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Record data'
required:
- name
- id
- fields
- data
properties:
name:
description: 'Record name'
type: string
example: 'Driving school'
id:
description: 'Record Id'
type: integer
example: 152
fields:
title: 'System field names and field labels'
type: object
example:
field_name_1: 'Field label 1'
field_name_2: 'Field label 2'
assigned_user_id: 'Assigned user'
createdtime: 'Created time'
additionalProperties:
description: 'Field label'
type: string
data:
$ref: '#/components/schemas/Record_Display_Details'
privileges:
title: 'Parameters determining checking of editing rights and moving to the trash'
required:
- isEditable
- moveToTrash
properties:
isEditable:
description: 'Check if record is editable'
type: boolean
example: true
moveToTrash:
description: 'Permission to delete'
type: boolean
example: false
type: object
rawData:
$ref: '#/components/schemas/Record_Raw_Details'
productBundles:
description: 'Product bundles'
type: object
additionalProperties:
description: Product
properties:
data: { $ref: '#/components/schemas/Record_Raw_Details' }
rawData: { $ref: '#/components/schemas/Record_Raw_Details' }
type: object
ext:
description: 'Product bundles'
properties:
unit_price:
description: 'Unit price'
type: integer
example: 44
unit_gross:
description: 'Unit gross'
type: integer
example: 55
qtyinstock:
description: 'Qty In Stock'
type: integer
example: 66
type: object
type: object
type: object
Products_Get_RecordsList_Response:
title: 'Products - Response action record list'
description: 'Module action record list response body'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'List of records'
properties:
headers:
description: 'Column names'
type: object
additionalProperties: { }
records:
description: 'Records display details'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Display_Details'
rawData:
description: 'Records raw details'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Raw_Details'
count:
type: integer
example: 54
isMorePages:
type: boolean
example: true
type: object
type: object
Users_Get_AccessActivityHistory_Response:
title: 'Users module - History of access activity data'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'User data'
type: object
additionalProperties:
title: 'Condition details'
properties:
time:
description: 'Date time in user format'
type: string
example: '2021-06-01 11:57'
status:
description: 'Operation name'
type: string
example: 'Signed in'
agent:
description: 'User agent'
type: string
example: PostmanRuntime/7.28.0
ip:
description: 'IP address'
type: string
example: 127.0.0.1
type: object
type: object
Users_Put_ChangePassword_Request:
title: 'Users module - Users password change request body'
required:
- currentPassword
- newPassword
properties:
currentPassword:
title: 'Current password'
type: string
newPassword:
title: 'New password'
type: string
type: object
Users_Put_ChangePassword_Response:
title: 'Users module - Users password change response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Password change status'
type: boolean
example: false
type: object
Header-Encrypted:
title: 'Header - Encrypted'
description: 'Is the content request is encrypted'
type: integer
default: 0
enum:
- 0
- 1
Conditions-Mix-For-Query-Generator:
title: 'General - Mix conditions for query generator'
description: 'Multiple or one condition for a query generator'
type: object
oneOf:
-
$ref: '#/components/schemas/Condition-For-Query-Generator'
-
$ref: '#/components/schemas/Conditions-For-Query-Generator'
Condition-For-Query-Generator:
title: 'General - Condition for query generator'
description: 'One condition for query generator'
required:
- fieldName
- value
- operator
properties:
fieldName:
description: 'Field name'
type: string
example: lastname
value:
description: 'Search value'
type: string
example: Kowalski
operator:
description: 'Field operator'
type: string
example: e
group:
description: 'Condition group if true is AND'
type: boolean
example: true
type: object
Conditions-For-Query-Generator:
title: 'General - Conditions for query generator'
description: 'Multiple conditions for query generator'
type: object
additionalProperties:
description: 'Condition details'
type: object
Conditions-For-Native-Query:
title: 'General - Conditions for native query'
description: 'Conditions for native query, based on YII 2'
type: object
externalDocs:
description: 'Database communication engine'
url: 'https://yetiforce.com/en/knowledge-base/documentation/developer-documentation/item/new-db-communication-engine'
example:
column_name1: 'searched value 1'
column_name2: 'searched value 2'
Users_Post_Login_Request:
title: 'Users module - Users login request body'
description: 'JSON or form-data'
required:
- userName
- password
properties:
userName:
description: 'Webservice user name'
type: string
password:
description: 'Webservice user password'
type: string
code:
description: '2FA TOTP code (optional property), Pass code length = 6, Code period = 30'
type: string
params:
description: 'Additional parameters sent by the user, extending the current settings, e.g. language'
properties:
version:
description: 'Portal version'
type: string
example: '1.1'
language:
description: 'Portal language'
type: string
example: pl-PL
ip:
description: 'Portal user IP'
type: string
example: 127.0.0.1
fromUrl:
description: 'Portal URL'
type: string
example: 'https://gitdevportal.yetiforce.com/'
deviceId:
description: 'Portal user device ID'
type: string
example: d520c7a8-421b-4563-b955-f5abc56b97ec
type: object
type: object
Users_Post_Login_Response:
title: 'Users module - Users login response body'
description: 'Users login response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Content of responses from a given method'
required:
- token
- name
- lastLoginTime
- lastLogoutTime
- language
- type
- login_method
- preferences
properties:
token:
type: string
maxLength: 40
minLength: 40
name:
type: string
lastLoginTime:
type: string
example: '2019-10-07 08:32:38'
lastLogoutTime:
type: string
example: ''
language:
type: string
example: pl-PL
type:
type: integer
login_method:
type: string
enum:
- PLL_PASSWORD
- PLL_PASSWORD_2FA
example: PLL_PASSWORD_2FA
logged:
type: boolean
preferences:
required:
- hour_format
- start_hour
- end_hour
- date_format
- time_zone
- raw_time_zone
- currency_id
- currency_grouping_pattern
- currency_decimal_separator
- currency_grouping_separator
- currency_symbol_placement
- no_of_currency_decimals
- currency_name
- currency_code
- currency_symbol
- conv_rate
properties:
hour_format:
type: string
example: '24'
start_hour:
type: string
example: '08:00'
end_hour:
type: string
example: '16:00'
date_format:
type: string
example: yyyy-mm-dd
time_zone:
description: 'User time zone, all data you will be in this time zone'
type: string
example: Europe/Warsaw
raw_time_zone:
description: 'System main time zone (data in database format)'
type: string
example: UTC
currency_id:
type: integer
example: 1
currency_grouping_pattern:
type: string
example: '123,456,789'
currency_decimal_separator:
type: string
example: .
currency_grouping_separator:
type: string
example: ' '
currency_symbol_placement:
type: string
example: 1.0$
no_of_currency_decimals:
type: integer
example: 2
currency_name:
type: string
example: 'Poland, Zlotych'
currency_code:
type: string
example: PLN
currency_symbol:
type: string
example: zł
conv_rate:
type: number
format: float
example: 1
activity_view:
type: string
example: 'This Month'
date_format_js:
type: string
example: Y-m-d
dayoftheweek:
type: string
example: Monday
truncate_trailing_zeros:
type: integer
example: 0
type: object
authy_methods:
type: string
enum:
- ''
- PLL_AUTHY_TOTP
example: PLL_AUTHY_TOTP
2faObligatory:
type: boolean
example: true
userPreferences:
description: 'User preferences'
type: object
example:
menuPin: 1
companyId:
type: integer
parentName:
type: string
example: 'YetiForce Company'
companyDetails:
title: 'Company details, optional parameter depending on the user type'
required:
- check_stock_levels
- sum_open_orders
properties:
check_stock_levels:
type: boolean
sum_open_orders:
type: number
format: double
creditlimit:
type: integer
type: object
type: object
type: object
Exception:
title: 'General - Error exception'
required:
- status
- error
properties:
status:
title: '0 - error'
type: integer
enum:
- 0
example: 0
error:
description: 'Error details'
required:
- message
- code
properties:
message:
description: 'To show more details turn on: config\Debug.php apiShowExceptionMessages = true'
type: string
example: 'Invalid method'
code:
type: integer
example: 405
file:
description: 'default disabled to enable set: config\Debug.php apiShowExceptionBacktrace = true'
type: string
example: api\webservice\WebservicePremium\BaseAction\Files.php
line:
description: 'default disabled to enable set: config\Debug.php apiShowExceptionBacktrace = true'
type: integer
example: 101
previous:
description: 'Previous exception'
type: object
backtrace:
description: 'default disabled to enable set: config\Debug.php apiShowExceptionBacktrace = true'
type: string
example: '#0 api\webservice\WebservicePremium\BaseAction\Files.php (101) ....'
type: object
type: object
Users_Put_Logout_Response:
title: 'Users module - Users logout response body'
description: 'JSON data'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Content of responses from a given method'
type: boolean
type: object
Users_Put_Preferences_Request:
title: 'Users module - Content of the request to change the user''s settings'
type: object
example:
menuPin: 1
Users_Put_Preferences_Response:
title: 'Users module - Response content of changing user settings'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Password change status'
type: boolean
example: false
type: object
Users_Get_Record_Response:
title: 'Users module - Response body for user'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'User data'
properties:
name:
description: 'User label'
type: string
example: 'System Admin'
id:
description: 'User Id'
type: integer
example: 1
fields:
title: 'System field names and field labels'
type: object
example:
field_name_1: 'Field label 1'
field_name_2: 'Field label 2'
additionalProperties:
description: 'Field label'
type: string
data:
description: 'User data'
type: object
privileges:
description: 'Parameters determining checking of editing rights and moving to the trash'
properties:
isEditable:
description: 'Check if user is editable'
type: boolean
example: true
moveToTrash:
description: 'Permission to delete'
type: boolean
example: false
type: object
rawData:
description: 'Raw user data'
type: object
type: object
type: object
Users_Get_RecordsList_Response:
title: 'Users module - Response action users list'
description: 'Module action record list response body'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'List of records'
properties:
headers:
description: 'Column names'
type: object
additionalProperties: { }
records:
description: 'Records display details'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Display_Details'
rawData:
description: 'Records raw details'
type: object
additionalProperties:
$ref: '#/components/schemas/Record_Raw_Details'
count:
type: integer
example: 54
isMorePages:
type: boolean
example: true
type: object
type: object
Users_Post_ResetPassword_Request:
title: 'Users module - Users password reset request body'
required:
- userName
- deviceId
properties:
userName:
description: 'User name / email'
type: string
deviceId:
description: 'Portal user device ID'
type: string
example: d520c7a8-421b-4563-b955-f5abc56b97ec
type: object
Users_Post_ResetPassword_Response:
title: 'Users module - Users password reset response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Content of responses from a given method'
properties:
expirationDate:
type: string
example: '2019-10-07 08:32:38'
mailerStatus:
type: boolean
example: true
type: object
type: object
Users_Put_ResetPassword_Request:
title: 'Users module - Users password reset request body'
required:
- token
- password
- deviceId
properties:
token:
description: 'A one-time password reset token'
type: string
password:
description: 'New password'
type: string
deviceId:
description: 'Portal user device ID'
type: string
example: d520c7a8-421b-4563-b955-f5abc56b97ec
type: object
Users_Put_ResetPassword_Response:
title: 'Users module - Users password reset response body'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Password reset status'
type: boolean
example: false
type: object
Users_Get_TwoFactorAuth_Response:
title: 'Users module - Authentication secret details'
required:
- status
- result
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
title: 'Content of responses from a given method'
required:
- authMethods
- secretKey
properties:
authMethods:
type: string
example: TOTP
secretKey:
type: string
example: LJUJWCOEGUKP6WS2
type: object
type: object
Users_post_TwoFactorAuth_Response:
title: 'Users module - Activate two factor authentication'
description: 'Activate two factor authentication response body'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success , 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Content of responses from a given method'
type: string
type: object
Users_Delete_TwoFactorAuth_Response:
title: 'Users module - Disable two factor authentication'
description: 'Disable two factor authentication response'
properties:
status:
description: 'A numeric value of 0 or 1 that indicates whether the communication is valid. 1 - success, 0 - error'
type: integer
enum:
- 0
- 1
result:
description: 'Status of successful'
type: boolean
type: object
securitySchemes:
basicAuth:
type: http
description: 'Basic Authentication header'
scheme: basic
ApiKeyAuth:
type: apiKey
description: 'Webservice api key header'
name: X-API-KEY
in: header
token:
type: apiKey
description: 'Webservice api token by user header'
name: X-TOKEN
in: header
links:
GetRecordById:
operationId: getRecord
parameters:
recordId: '$response.body#/result/id'
description: 'The `id` value returned in the response can be used as the `recordId` parameter in `GET /webservice/{moduleName}/Record/{recordId}`.'
tags:
-
name: BaseModule
description: 'Access to record methods'
-
name: BaseAction
description: 'Access to user methods'
-
name: Products
description: 'Products methods'
-
name: Users
description: 'Access to user methods'