doc.simulator.company Open in urlscan Pro
18.164.124.107  Public Scan

URL: https://doc.simulator.company/
Submission: On March 01 via api from US — Scanned from US

Form analysis 0 forms found in the DOM

Text Content

 * Authentication
 * workspaces
   * getGet all your workspaces
 * users
   * getGet workspace users
   * delRemove user
   * getSearch workspace users
   * getGet user info
 * invites
   * postInvite user to workspace
   * getGet all sent-out invites
   * postCancel invite
 * reactions
   * postCreate reaction
   * getGet all actor reactions
   * getGet reactions statistics
   * putUpdate reaction
   * delRemove reaction
 * upload
   * postUpload file
   * postUpload file base64
 * download
   * getDownload file
 * attachments
   * getGet all attachments
   * postAdd attachment to actor
   * delRemove attachment
 * forms
   * getGet list of forms
   * getGet list of system forms
   * postCreate form
   * putSet form status
   * getGet form by ID
   * putUpdate form
   * delRemove form
   * delClear cache for form item options
 * meta graph
   * getGet linked actors with links
   * getGet all actor links
   * postCheck if link exists
   * getGet linked actors
 * layers
   * getGet layer
   * postManage layer elements
   * putSave layer nodes positions on layer
   * postMove actors to another layer
   * delClear the layer
   * postCheck element existence
   * getSearch layer actors
   * getGet layer actors by form ID
   * getGet all graph layers with actor
 * actors
   * postCreate actor
   * getGet actor by ID
   * delRemove actor by ID
   * delRemove multiple actors and links
   * putUpdate actor by ID
   * getGet actor by ref
   * getGet actor by systemObjId
   * delRemove actor by ref
   * putUpdate actor by ref
   * putSet actor status
   * getSearch actors
   * getFilter by form
 * links
   * postCreate link between actors
   * postCreate multiple links
   * putUpdate link
   * delRemove link
 * link types
   * getGet link types list
   * postCreate link type
 * accounts
   * getGet list of accounts by actor ID
   * postCreate accounts by actor ID
   * getGet actor's accounts by currency ID and name ID
   * getGet children accounts by actor ID
   * delRemove accounts by actor ID
   * putBlock account by actor ID
   * getGet single account by actor ref
   * getGet list of accounts by actor ref
   * postCreate accounts by actor ref
   * postCreate account pair
   * getGet children accounts by actor ref
   * delRemove accounts by actor ref
   * getGet account by ID
   * getGet accounts by array of IDs
   * getGet account value info
   * postGet accounts by array of actors refs
   * putSet account amount
   * postSet account formula
   * getGet account formula info
 * transactions
   * getGet list of transactions by actor ID
   * getGet list of transactions by actor ref
   * getGet list of transactions by account id
   * getGet transaction by ref
   * getGet child transactions
   * postCreate transaction
   * postCreate transactions (atomic)
   * postAuthorize transaction (2-Step)
   * postComplete transaction (2-Step)
   * postCancel transaction (2-Step)
 * transfers
   * getGet transfer by id
   * postFilter transfers
   * postCreate transfer
 * account names
   * getGet account names
   * postCreate account name
 * currencies
   * getGet currencies
   * postCreate currency
 * access rules
   * getGet access info
   * postManage access rules

Documentation Powered by ReDoc





SIMULATOR.COMPANY REST API (1.0)

Download OpenAPI specification:Download

E-mail: support@simulator.company

Simulator.Company Public REST API.

Find out more about Swagger


AUTHENTICATION


OAUTH2

Control Events use the OAuth 2.0 protocol for authentication and authorization.
Control Events supports common OAuth 2.0 scenarios such as those for web server,
installed, and client-side applications.

If you want to make requests on behalf of other control.events users, you can
register an OAuth application and have them grant permissions to your app.

Security Scheme Type OAuth2 authorizationCode OAuth Flow
Authorization URL: https://account.corezoid.com/oauth2/authorize
Token URL: https://account.corezoid.com/oauth2/token
Scopes:
 * control.events:users.readonly -
   
   View workspace users information

 * control.events:workspaces.readonly -
   
   View all your workspaces

 * control.events:forms.readonly -
   
   View forms

 * control.events:forms.management -
   
   Create, update, and delete forms

 * control.events:actors.readonly -
   
   View actors info

 * control.events:actors.management -
   
   Create, update, and delete actors

 * control.events:attachments.readonly -
   
   View attachments

 * control.events:attachments.management -
   
   Create, update, and delete attachments


BEARERAUTH

You can generate an API access_token for your workspace on the Account (Account
-> API Keys).

To use an API access_token to authenticate an API request, just replace
access_token in the following API endpoints with the string key, and pass the
Authorization header:

Authorization: Bearer YOUR_ACCESS_TOKEN

Security Scheme Type HTTP HTTP Authorization Scheme bearer


WORKSPACES

Workspaces API


GET ALL YOUR WORKSPACES

Scopes [control.events:workspaces.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:workspaces.readonly)

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/workspaces
https://api.simulator.company/v/1.0/workspaces


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/workspaces


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "name": "string",
       * "avatar": "string",
       * "status": "open",
       * "role": "owner",
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   ]

}






USERS

Users API


GET WORKSPACE USERS

Scopes [control.events:users.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:users.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

QUERY PARAMETERS

limit
integer [ 0 .. 200 ]
Default: 20

The total number of rows to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/users/{accId}
https://api.simulator.company/v/1.0/users/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/users/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   ]

}






REMOVE USER

Scopes [control.events:users.management]

AUTHORIZATIONS:

OAuth2 (control.events:users.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



userId
required
string



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/users/{accId}
https://api.simulator.company/v/1.0/users/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "userId": 123

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






SEARCH WORKSPACE USERS

Scopes [control.events:users.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:users.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

query
required
string >= 3 characters

Search string

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/users/search/{accId}/{query}
https://api.simulator.company/v/1.0/users/search/{accId}/{query}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/users/search/%7BaccId%7D/%7Bquery%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   ]

}






GET USER INFO

Scopes [control.events:users.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:users.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

userId
required
string

User Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/users/{accId}/{userId}
https://api.simulator.company/v/1.0/users/{accId}/{userId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/users/%7BaccId%7D/%7BuserId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "nick": "string",
    * "lang": "string",
    * "type": "user",
    * "role": "owner",
    * "logins": [
       * {
          * "type": "string",
          * "login": "string"
         
         }
      
      ],
    * "createdAt": 0,
    * "updatedAt": 0
   
   }

}






INVITES

Invites API


INVITE USER TO WORKSPACE

Scopes [control.events:workspaces.management]

AUTHORIZATIONS:

OAuth2 (control.events:workspaces.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ()

login
required
string

email
string

role
string
Default: "user"
Enum: "guest" "user" "admin"

User role. Admin role can be invited by owner or admin only.

objects
Array of objects

Objects to share with the invited user




RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/invites/{accId}
https://api.simulator.company/v/1.0/invites/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "login": "email@example.org",
    * "email": "email@example.org",
    * "role": "guest",
    * "objects": [
       * {
          * "objId": "string",
          * "objType": "formTemplate",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ]
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 123,
       * "email": "email@example.org"
      
      }
   
   ]

}






GET ALL SENT-OUT INVITES

Scopes [control.events:workspaces.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:workspaces.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/invites/{accId}
https://api.simulator.company/v/1.0/invites/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/invites/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "accId": "string",
       * "email": "string",
       * "role": "guest",
       * "status": "sent",
       * "hash": "string",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "userId": 0,
       * "userName": "string"
      
      }
   
   ]

}






CANCEL INVITE

Scopes [control.events:workspaces.management]

This method allows canceling an invitation. Please, note that only a workspace
administrator or an invitation author can cancel an invitation.

AUTHORIZATIONS:

OAuth2 (control.events:workspaces.management)

PATH PARAMETERS

inviteId
required
string

Identifier of the invitation to cancel

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/invites/cancel/{inviteId}
https://api.simulator.company/v/1.0/invites/cancel/{inviteId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request POST \
  --url https://api.simulator.company/v/1.0/invites/cancel/%7BinviteId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "nick": "string",
    * "lang": "string",
    * "type": "user",
    * "role": "owner",
    * "logins": [
       * {
          * "type": "string",
          * "login": "string"
         
         }
      
      ],
    * "createdAt": 0,
    * "updatedAt": 0
   
   }

}






REACTIONS

Reactions API


CREATE REACTION

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

type
required
string
Enum: "view" "comment" "rating" "done" "sign" "reject" "freeze"

Reaction type

actorId
required
string

Actor ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



description
string

Comment text

appId
string

Script actor ID

appSettings
object

Script settings, e.g. autorun

data
object

Extra data for reaction

parentId
string

Parent reaction ID (reply to a comment)

metaInfo
object

Meta information


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/reactions/{type}/{actorId}
https://api.simulator.company/v/1.0/reactions/{type}/{actorId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "description": "Some comment text",
 * "appId": "string",
 * "appSettings": {
    * "autorun": true
   
   },
 * "data": {
    * "quote": "Some text quote",
    * "rating": 5
   
   },
 * "parentId": "string",
 * "metaInfo": {
    * "originalUser": {
       * "nick": "string",
       * "avatar": "string"
      
      }
   
   }

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "treeInfo": {
       * "name": "view",
       * "branchId": { },
       * "parentId": "string",
       * "rootActorId": "string",
       * "rootActorTitle": "string"
      
      },
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






GET ALL ACTOR REACTIONS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:reactions.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

QUERY PARAMETERS

orderValue
string
Default: "ASC"
Enum: "ASC" "DESC"

Sorting vector

limit
integer
Default: 20

The total number of reactions to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/reactions/list/{actorId}
https://api.simulator.company/v/1.0/reactions/list/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/reactions/list/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "treeInfo": {
          * "name": "view",
          * "branchId": { },
          * "parentId": "string",
          * "rootActorId": "string",
          * "rootActorTitle": "string"
         
         },
       * "id": "string",
       * "ref": "string",
       * "title": "string",
       * "description": "string",
       * "formId": 0,
       * "formTitle": "string",
       * "status": "verified",
       * "starred": false,
       * "readonly": false,
       * "color": "string",
       * "userId": 0,
       * "picture": "string",
       * "data": { },
       * "isSystem": true,
       * "systemObjId": 0,
       * "systemObjType": "user",
       * "systemObjStatus": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true,
          * "sign": false,
          * "execute": false
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "user": {
          * "id": 0,
          * "nick": "string",
          * "lang": "string",
          * "type": "user",
          * "role": "owner",
          * "logins": [
             * {
                * "type": "string",
                * "login": "string"
               
               }
            
            ],
          * "createdAt": 0,
          * "updatedAt": 0
         
         }
      
      }
   
   ]

}






GET REACTIONS STATISTICS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID to get reactions statistics

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/reactions/stats/{actorId}
https://api.simulator.company/v/1.0/reactions/stats/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/reactions/stats/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "view": 1,
    * "comment": 1,
    * "sign": 1
   
   }

}






UPDATE REACTION

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

rootActorId
required
string

Root actor ID (the actor to which the reaction belongs)

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



actorId
string

Reaction actor ID (which is being edited)

description
string

Comment text

appId
string

Script actor ID

appSettings
object

Script settings, e.g. autorun

data
object

Extra data for reaction


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/reactions/{rootActorId}
https://api.simulator.company/v/1.0/reactions/{rootActorId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "actorId": "string",
 * "description": "Some comment text",
 * "appId": "string",
 * "appSettings": { },
 * "data": {
    * "quote": "Some text quote",
    * "rating": 5
   
   }

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "treeInfo": {
       * "name": "view",
       * "branchId": { },
       * "parentId": "string",
       * "rootActorId": "string",
       * "rootActorTitle": "string"
      
      },
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






REMOVE REACTION

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

actorId
required
string

ID of the actor to which the reaction is linked

REQUEST BODY SCHEMA: APPLICATION/JSON



actorId
required
string

Reaction actor ID


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/reactions/{actorId}
https://api.simulator.company/v/1.0/reactions/{actorId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "actorId": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "treeInfo": {
       * "name": "view",
       * "branchId": { },
       * "parentId": "string",
       * "rootActorId": "string",
       * "rootActorTitle": "string"
      
      },
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






UPLOAD

Upload API


UPLOAD FILE

Scopes [control.events:attachments.management]

AUTHORIZATIONS:

OAuth2 (control.events:attachments.management)

PATH PARAMETERS

accId
required
string

Workspace ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: MULTIPART/FORM-DATA

File binary

file
string <binary>



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/upload/{accId}
https://api.simulator.company/v/1.0/upload/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request POST \
  --url https://api.simulator.company/v/1.0/upload/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "fileName": "string",
    * "type": "string",
    * "userId": 0,
    * "size": 0,
    * "title": "string"
   
   }

}






UPLOAD FILE BASE64

Scopes [control.events:attachments.management]

AUTHORIZATIONS:

OAuth2 (control.events:attachments.management)

PATH PARAMETERS

accId
required
string

Workspace ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON

File binary

file
string <base64>

File in base64 format

originalName
string

File name


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/upload/base64/{accId}
https://api.simulator.company/v/1.0/upload/base64/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "file": "string",
 * "originalName": "fileName.png"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "fileName": "string",
    * "type": "string",
    * "userId": 0,
    * "size": 0,
    * "title": "string"
   
   }

}






DOWNLOAD

Download API


DOWNLOAD FILE

PATH PARAMETERS

fileName
required
string


QUERY PARAMETERS

origin
boolean
Default: false

Specify true to download file with initial filename and extension.

preview
boolean
Default: false

Specify true to show file preview only (without download).

get/download/{fileName}
https://api.simulator.company/v/1.0/download/{fileName}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/download/%7BfileName%7D


ATTACHMENTS

Attachments API


GET ALL ATTACHMENTS

Scopes [control.events:attachments.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:attachments.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

QUERY PARAMETERS

orderBy
string
Enum: "created_at" "title"

Attachments sorting mode

orderValue
string
Enum: "ASC" "DESC"

Sorting vector

limit
integer

The total number of attachments to retrieve (used with offset)

offset
integer

The number of rows to skip when fetching list

starred
boolean

Get favorite attachments

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/attachments/{accId}
https://api.simulator.company/v/1.0/attachments/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/attachments/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "accId": "string",
       * "externalId": 0,
       * "fileName": "string",
       * "type": "string",
       * "userId": 0,
       * "actorId": "string",
       * "actorTitle": "string",
       * "size": 0,
       * "title": "string",
       * "starred": true,
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   ]

}






ADD ATTACHMENT TO ACTOR

Scopes [control.events:attachments.management]

AUTHORIZATIONS:

OAuth2 (control.events:attachments.management)

PATH PARAMETERS

accId
required
string

Workspace ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ()

attachId
required
integer

ID of uploaded file

actorId
required
string

Actor ID




RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/attachments/{accId}
https://api.simulator.company/v/1.0/attachments/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "attachId": 0,
    * "actorId": "string"
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "attachId": 0,
       * "actorId": "string"
      
      }
   
   ]

}






REMOVE ATTACHMENT

Scopes [control.events:attachments.management]

AUTHORIZATIONS:

OAuth2 (control.events:attachments.management)

PATH PARAMETERS

accId
required
string

Workspace ID

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ()

attachId
required
integer

ID of uploaded file

actorId
required
string

Actor ID




RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/attachments/{accId}
https://api.simulator.company/v/1.0/attachments/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "attachId": 0,
    * "actorId": "string"
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "attachId": 0,
       * "actorId": "string"
      
      }
   
   ]

}






FORMS

Forms API


GET LIST OF FORMS

Scopes [control.events:forms.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:forms.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

QUERY PARAMETERS

limit
integer
Default: 20

The total number of rows to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

noDefault
boolean

Exclude default form

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/forms/templates/{accId}
https://api.simulator.company/v/1.0/forms/templates/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/forms/templates/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "accId": "string",
       * "title": "string",
       * "color": "string",
       * "ownerId": 0,
       * "ownerName": "string",
       * "ownerType": "string",
       * "isSent": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ]
      
      }
   
   ]

}






GET LIST OF SYSTEM FORMS

This API is used to get system forms:

 * Graphs
 * Layers
 * Streams
 * Events
 * Widgets
 * Scripts
 * Locations
 * Tags
 * Reactions

Scopes [control.events:forms.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:forms.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

QUERY PARAMETERS

formTypes
string
Enum: "connector" "system"
Example: formTypes=system


HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/forms/templates/system/{accId}?formTypes=system
https://api.simulator.company/v/1.0/forms/templates/system/{accId}?formTypes=system


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url 'https://api.simulator.company/v/1.0/forms/templates/system/%7BaccId%7D?formTypes=system'


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 1,
       * "accId": "string",
       * "title": "Events",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 2,
       * "accId": "string",
       * "title": "Reactions",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 3,
       * "accId": "string",
       * "title": "Tags",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 4,
       * "accId": "string",
       * "title": "Locations",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 5,
       * "accId": "string",
       * "title": "Graphs",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 6,
       * "accId": "string",
       * "title": "Layers",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 7,
       * "accId": "string",
       * "title": "Streams",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 8,
       * "accId": "string",
       * "title": "Widgets",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      },
    * {
       * "id": 8,
       * "accId": "string",
       * "title": "Scripts",
       * "description": "string",
       * "color": "string",
       * "form": {
          * "title": "string",
          * "description": "string",
          * "color": "string",
          * "sections": [
             * { }
            
            ],
          * "settings": { },
          * "tags": [
             * { }
            
            ]
         
         },
       * "ownerId": 0,
       * "isSent": true,
       * "isTemplate": true,
       * "isDefault": true,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "isSystem": true
      
      }
   
   ]

}






CREATE FORM

Scopes [control.events:forms.management]

AUTHORIZATIONS:

OAuth2 (control.events:forms.management)

PATH PARAMETERS

accId
required
string

Workspace ID

isTemplate
required
boolean

Specify true if the form is a template; otherwise, false

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



title
string

description
string

color
string

sections
Array of objects

settings
object

tags
Array of objects



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/forms/{accId}/{isTemplate}
https://api.simulator.company/v/1.0/forms/{accId}/{isTemplate}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "title": "string",
 * "description": "string",
 * "color": "string",
 * "sections": [
    * { }
   
   ],
 * "settings": { },
 * "tags": [
    * { }
   
   ]

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "title": "string",
    * "description": "string",
    * "color": "string",
    * "form": {
       * "title": "string",
       * "description": "string",
       * "color": "string",
       * "sections": [
          * { }
         
         ],
       * "settings": { },
       * "tags": [
          * { }
         
         ]
      
      },
    * "ownerId": 0,
    * "isSent": true,
    * "isTemplate": true,
    * "isDefault": true,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ]
   
   }

}






SET FORM STATUS

Scopes [control.events:forms.management]

AUTHORIZATIONS:

OAuth2 (control.events:forms.management)

PATH PARAMETERS

formId
required
integer

Form ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



status
string
Enum: "verified" "rejected" "pending" null



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/forms/status/{formId}
https://api.simulator.company/v/1.0/forms/status/{formId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "status": "verified"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "title": "string",
    * "description": "string",
    * "color": "string",
    * "form": {
       * "title": "string",
       * "description": "string",
       * "color": "string",
       * "sections": [
          * { }
         
         ],
       * "settings": { },
       * "tags": [
          * { }
         
         ]
      
      },
    * "ownerId": 0,
    * "isSent": true,
    * "isTemplate": true,
    * "isDefault": true,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ]
   
   }

}






GET FORM BY ID

Scopes [control.events:forms.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:forms.readonly)

PATH PARAMETERS

formId
required
integer

Form ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/forms/{formId}
https://api.simulator.company/v/1.0/forms/{formId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/forms/%7BformId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "title": "string",
    * "description": "string",
    * "color": "string",
    * "form": {
       * "title": "string",
       * "description": "string",
       * "color": "string",
       * "sections": [
          * { }
         
         ],
       * "settings": { },
       * "tags": [
          * { }
         
         ]
      
      },
    * "ownerId": 0,
    * "isSent": true,
    * "isTemplate": true,
    * "isDefault": true,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ]
   
   }

}






UPDATE FORM

Scopes [control.events:forms.management]

AUTHORIZATIONS:

OAuth2 (control.events:forms.management)

PATH PARAMETERS

formId
required
integer

Form ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



title
string

description
string

color
string

sections
Array of objects

settings
object

tags
Array of objects



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/forms/{formId}
https://api.simulator.company/v/1.0/forms/{formId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "title": "string",
 * "description": "string",
 * "color": "string",
 * "sections": [
    * { }
   
   ],
 * "settings": { },
 * "tags": [
    * { }
   
   ]

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "title": "string",
    * "description": "string",
    * "color": "string",
    * "form": {
       * "title": "string",
       * "description": "string",
       * "color": "string",
       * "sections": [
          * { }
         
         ],
       * "settings": { },
       * "tags": [
          * { }
         
         ]
      
      },
    * "ownerId": 0,
    * "isSent": true,
    * "isTemplate": true,
    * "isDefault": true,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ]
   
   }

}






REMOVE FORM

Scopes [control.events:forms.management]

AUTHORIZATIONS:

OAuth2 (control.events:forms.management)

PATH PARAMETERS

formId
required
integer

Form ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/forms/{formId}
https://api.simulator.company/v/1.0/forms/{formId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/forms/%7BformId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






CLEAR CACHE FOR FORM ITEM OPTIONS

Helps to clear cache for form item options, where source type is 'api'.

Scopes [control.events:forms.management]

AUTHORIZATIONS:

OAuth2 (control.events:forms.management)

PATH PARAMETERS

formId
required
integer

Form ID

itemId
required
string

Form item ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/forms/item_cache/{formId}/{itemId}
https://api.simulator.company/v/1.0/forms/item_cache/{formId}/{itemId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/forms/item_cache/%7BformId%7D/%7BitemId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






META GRAPH

Meta graph API


GET LINKED ACTORS WITH LINKS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

QUERY PARAMETERS

edgeTypeId
any

Link type ID from the list of available link types.
To get only hierarchical links use a link type with the name hierarchy, to get
only links for calculating balances - a link type with the name calculatedTree.

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/graph/linked_actors/{actorId}
https://api.simulator.company/v/1.0/graph/linked_actors/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/graph/linked_actors/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "nodes": [
       * {
          * "id": "string",
          * "ref": "string",
          * "title": "string",
          * "description": "string",
          * "formId": 0,
          * "formTitle": "string",
          * "status": "verified",
          * "starred": false,
          * "readonly": false,
          * "color": "string",
          * "userId": 0,
          * "picture": "string",
          * "data": { },
          * "isSystem": true,
          * "systemObjId": 0,
          * "systemObjType": "user",
          * "systemObjStatus": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true,
             * "sign": false,
             * "execute": false
            
            },
          * "access": [
             * {
                * "accId": "string",
                * "userId": 0,
                * "userType": "string",
                * "name": "string",
                * "privs": {
                   * "view": true,
                   * "modify": true,
                   * "remove": true
                  
                  }
               
               }
            
            ],
          * "user": {
             * "id": 0,
             * "nick": "string",
             * "lang": "string",
             * "type": "user",
             * "role": "owner",
             * "logins": [
                * {
                   * "type": "string",
                   * "login": "string"
                  
                  }
               
               ],
             * "createdAt": 0,
             * "updatedAt": 0
            
            }
         
         }
      
      ],
    * "edges": [
       * {
          * "id": "string",
          * "name": "string",
          * "source": "string",
          * "target": "string",
          * "edgeTypeId": 1,
          * "edgeType": "hierarchy",
          * "userId": 0,
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ]
   
   }

}






GET ALL ACTOR LINKS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

QUERY PARAMETERS

edgeTypeId
integer

Link type ID from the list of available link types.
To get only hierarchical links use a link type with the name hierarchy, to get
only links for calculating balances - a link type with the name calculatedTree.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/graph/actor_links/{actorId}
https://api.simulator.company/v/1.0/graph/actor_links/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/graph/actor_links/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "name": "string",
       * "source": "string",
       * "target": "string",
       * "edgeTypeId": 1,
       * "edgeType": "hierarchy",
       * "userId": 0,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         }
      
      }
   
   ]

}






CHECK IF LINK EXISTS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



source
required
string

Source actor ID

target
required
string

Target actor ID

edgeTypeId
required
integer

Link type ID from the list of link types


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/actors/exist_link
https://api.simulator.company/v/1.0/actors/exist_link


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "source": "string",
 * "target": "string",
 * "edgeTypeId": 0

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "name": "string",
       * "source": "string",
       * "target": "string",
       * "edgeTypeId": 1,
       * "edgeType": "hierarchy",
       * "userId": 0,
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         }
      
      }
   
   ]

}






GET LINKED ACTORS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

type
required
string
Enum: "children" "parents" "linked"

Type of relation to the actor, linked means both child and parent actors

actorId
required
string

Actor ID

QUERY PARAMETERS

edgeTypeId
required
integer

Link type ID from the list of available link types.
To get only hierarchical links use a link type with the name hierarchy, to get
only links for calculating balances - a link type with the name calculatedTree.

formId
integer

Form ID to filter linked actors

exceptFormId
integer

Form ID to exclude actors from the result

orderBy
string
Default: "createdAt"
Enum: "createdAt" "formTitle"

Actors sorting mode

orderValue
string
Default: "DESC"
Enum: "ASC" "DESC"

Sorting vector

limit
integer
Default: 20

The total number of actors to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

withForm
boolean

Specify true to add form info to response data

lastReaction
boolean

Specify true to add last actor reaction to response data

reactionsStats
boolean

Specify true to add users' reactions statistics to response data

starred
boolean

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/graph/{type}/{actorId}
https://api.simulator.company/v/1.0/graph/{type}/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/graph/%7Btype%7D/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "total": 1,
    * "list": [
       * {
          * "id": "string",
          * "ref": "string",
          * "title": "string",
          * "description": "string",
          * "formId": 0,
          * "formTitle": "string",
          * "status": "verified",
          * "starred": false,
          * "readonly": false,
          * "color": "string",
          * "userId": 0,
          * "picture": "string",
          * "data": { },
          * "isSystem": true,
          * "systemObjId": 0,
          * "systemObjType": "user",
          * "systemObjStatus": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true,
             * "sign": false,
             * "execute": false
            
            },
          * "access": [
             * {
                * "accId": "string",
                * "userId": 0,
                * "userType": "string",
                * "name": "string",
                * "privs": {
                   * "view": true,
                   * "modify": true,
                   * "remove": true
                  
                  }
               
               }
            
            ],
          * "user": {
             * "id": 0,
             * "nick": "string",
             * "lang": "string",
             * "type": "user",
             * "role": "owner",
             * "logins": [
                * {
                   * "type": "string",
                   * "login": "string"
                  
                  }
               
               ],
             * "createdAt": 0,
             * "updatedAt": 0
            
            }
         
         }
      
      ]
   
   }

}






LAYERS

Layers API


GET LAYER

Scopes [control.events:actors.readonly]

A layer is an actor created with system form Layers. This API retrieves all
layer actor data together with it's nodes and links.

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

layerId
required
string

Layer ID

QUERY PARAMETERS

noDuplicate
boolean
Default: true

Specify false to add all nodes copies on layer

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/graph_layers/{layerId}
https://api.simulator.company/v/1.0/graph_layers/{layerId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/graph_layers/%7BlayerId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      },
    * "nodes": [
       * {
          * "id": "string",
          * "laId": 0,
          * "title": "string",
          * "formId": 0,
          * "formTitle": "string",
          * "status": "verified",
          * "starred": false,
          * "layerStarred": false,
          * "readonly": false,
          * "color": "string",
          * "userId": 0,
          * "picture": "string",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true,
             * "sign": false,
             * "execute": false
            
            },
          * "access": [
             * {
                * "accId": "string",
                * "userId": 0,
                * "userType": "string",
                * "name": "string",
                * "privs": {
                   * "view": true,
                   * "modify": true,
                   * "remove": true
                  
                  }
               
               }
            
            ],
          * "user": {
             * "id": 0,
             * "name": "string"
            
            }
         
         }
      
      ],
    * "edges": [
       * {
          * "id": "string",
          * "name": "string",
          * "source": "string",
          * "target": "string",
          * "edgeTypeId": 1,
          * "edgeType": "hierarchy",
          * "userId": 0,
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            },
          * "laId": 0,
          * "laIdSource": 0,
          * "laIdTarget": 0
         
         }
      
      ]
   
   }

}






MANAGE LAYER ELEMENTS

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

layerId
required
string

Layer Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON

List of actions

Array (non-empty)

action
string
Enum: "create" "delete"

data
object





RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/graph_layers/actors/{layerId}
https://api.simulator.company/v/1.0/graph_layers/actors/{layerId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "action": "create",
    * "data": {
       * "id": "string",
       * "type": "node",
       * "laId": 0,
       * "laIdSource": 0,
       * "laIdTarget": 0,
       * "position": {
          * "x": 0,
          * "y": 0
         
         },
       * "areaPicture": {
          * "height": 0,
          * "width": 0,
          * "img": "string"
         
         }
      
      }
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "name": "string",
    * "nodes": [
       * {
          * "id": "string",
          * "ref": "string",
          * "title": "string",
          * "description": "string",
          * "formId": 0,
          * "formTitle": "string",
          * "status": "verified",
          * "starred": false,
          * "readonly": false,
          * "color": "string",
          * "userId": 0,
          * "picture": "string",
          * "data": { },
          * "isSystem": true,
          * "systemObjId": 0,
          * "systemObjType": "user",
          * "systemObjStatus": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true,
             * "sign": false,
             * "execute": false
            
            },
          * "access": [
             * {
                * "accId": "string",
                * "userId": 0,
                * "userType": "string",
                * "name": "string",
                * "privs": {
                   * "view": true,
                   * "modify": true,
                   * "remove": true
                  
                  }
               
               }
            
            ],
          * "user": {
             * "id": 0,
             * "nick": "string",
             * "lang": "string",
             * "type": "user",
             * "role": "owner",
             * "logins": [
                * {
                   * "type": "string",
                   * "login": "string"
                  
                  }
               
               ],
             * "createdAt": 0,
             * "updatedAt": 0
            
            }
         
         }
      
      ],
    * "edges": [
       * {
          * "id": "string",
          * "name": "string",
          * "source": "string",
          * "target": "string",
          * "edgeTypeId": 1,
          * "edgeType": "hierarchy",
          * "userId": 0,
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "pinned": true,
    * "ownerId": 0,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      }
   
   }

}






SAVE LAYER NODES POSITIONS ON LAYER

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

layerId
required
string

Layer ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ()

id
required
string

Unique element ID on layer

position
required
object

New element position (x, y)




RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/graph_layers/actors/{layerId}
https://api.simulator.company/v/1.0/graph_layers/actors/{layerId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "id": 1234,
    * "position": {
       * "x": 100,
       * "y": 350
      
      }
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "name": "string",
    * "nodes": [
       * {
          * "id": "string",
          * "ref": "string",
          * "title": "string",
          * "description": "string",
          * "formId": 0,
          * "formTitle": "string",
          * "status": "verified",
          * "starred": false,
          * "readonly": false,
          * "color": "string",
          * "userId": 0,
          * "picture": "string",
          * "data": { },
          * "isSystem": true,
          * "systemObjId": 0,
          * "systemObjType": "user",
          * "systemObjStatus": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true,
             * "sign": false,
             * "execute": false
            
            },
          * "access": [
             * {
                * "accId": "string",
                * "userId": 0,
                * "userType": "string",
                * "name": "string",
                * "privs": {
                   * "view": true,
                   * "modify": true,
                   * "remove": true
                  
                  }
               
               }
            
            ],
          * "user": {
             * "id": 0,
             * "nick": "string",
             * "lang": "string",
             * "type": "user",
             * "role": "owner",
             * "logins": [
                * {
                   * "type": "string",
                   * "login": "string"
                  
                  }
               
               ],
             * "createdAt": 0,
             * "updatedAt": 0
            
            }
         
         }
      
      ],
    * "edges": [
       * {
          * "id": "string",
          * "name": "string",
          * "source": "string",
          * "target": "string",
          * "edgeTypeId": 1,
          * "edgeType": "hierarchy",
          * "userId": 0,
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "pinned": true,
    * "ownerId": 0,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      }
   
   }

}






MOVE ACTORS TO ANOTHER LAYER

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

sourceLayerId
required
string

Source layer ID

targetLayerId
required
string

Target layer ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ([ 1 .. 10 ] items)

actorId
required
string

laId
integer

Unique element ID on source layer

position
object

Actor position on target layer




RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/graph_layers/move/{sourceLayerId}/{targetLayerId}
https://api.simulator.company/v/1.0/graph_layers/move/{sourceLayerId}/{targetLayerId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "actorId": "string",
    * "laId": 0,
    * "position": {
       * "x": 0,
       * "y": 0
      
      }
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "name": "string",
    * "nodes": [
       * {
          * "id": "string",
          * "ref": "string",
          * "title": "string",
          * "description": "string",
          * "formId": 0,
          * "formTitle": "string",
          * "status": "verified",
          * "starred": false,
          * "readonly": false,
          * "color": "string",
          * "userId": 0,
          * "picture": "string",
          * "data": { },
          * "isSystem": true,
          * "systemObjId": 0,
          * "systemObjType": "user",
          * "systemObjStatus": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true,
             * "sign": false,
             * "execute": false
            
            },
          * "access": [
             * {
                * "accId": "string",
                * "userId": 0,
                * "userType": "string",
                * "name": "string",
                * "privs": {
                   * "view": true,
                   * "modify": true,
                   * "remove": true
                  
                  }
               
               }
            
            ],
          * "user": {
             * "id": 0,
             * "nick": "string",
             * "lang": "string",
             * "type": "user",
             * "role": "owner",
             * "logins": [
                * {
                   * "type": "string",
                   * "login": "string"
                  
                  }
               
               ],
             * "createdAt": 0,
             * "updatedAt": 0
            
            }
         
         }
      
      ],
    * "edges": [
       * {
          * "id": "string",
          * "name": "string",
          * "source": "string",
          * "target": "string",
          * "edgeTypeId": 1,
          * "edgeType": "hierarchy",
          * "userId": 0,
          * "createdAt": 0,
          * "updatedAt": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "pinned": true,
    * "ownerId": 0,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      }
   
   }

}






CLEAR THE LAYER

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

layerId
required
string

Layer Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/graph_layers/clean/{layerId}
https://api.simulator.company/v/1.0/graph_layers/clean/{layerId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/graph_layers/clean/%7BlayerId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






CHECK ELEMENT EXISTENCE

Scopes [control.events:actors.readonly]

This method searches an element on the layer and returns a list of their
layer-unique IDs.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

layerId
required
string

Layer Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



id
string

Element ID

type
string
Enum: "node" "edge"



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/graph_layers/exist/{layerId}
https://api.simulator.company/v/1.0/graph_layers/exist/{layerId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "type": "node"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "id": "string",
    * "laId": 0
   
   }

]






SEARCH LAYER ACTORS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

layerId
required
string

Layer ID

query
required
string >= 2 characters

Search string

QUERY PARAMETERS

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

withForm
boolean

Specify true to add form info to response data

lastReaction
boolean

Specify true to add last actor reaction to response data

reactionsCount
boolean

Specify true to add actor reactions count to response data

reactionsStats
boolean

Specify true to add users' reactions statistics to response data

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/layer_actors_filters/search/{layerId}/{query}
https://api.simulator.company/v/1.0/layer_actors_filters/search/{layerId}/{query}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/layer_actors_filters/search/%7BlayerId%7D/%7Bquery%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "title": "string",
       * "description": "string",
       * "formId": 0,
       * "formTitle": "string",
       * "status": "verified",
       * "starred": false,
       * "readonly": false,
       * "color": "string",
       * "userId": 0,
       * "picture": "string",
       * "data": { },
       * "isSystem": true,
       * "systemObjId": 0,
       * "systemObjType": "user",
       * "systemObjStatus": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true,
          * "sign": false,
          * "execute": false
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "user": {
          * "id": 0,
          * "nick": "string",
          * "lang": "string",
          * "type": "user",
          * "role": "owner",
          * "logins": [
             * {
                * "type": "string",
                * "login": "string"
               
               }
            
            ],
          * "createdAt": 0,
          * "updatedAt": 0
         
         }
      
      }
   
   ]

}






GET LAYER ACTORS BY FORM ID

Scopes [control.events:actors.readonly]

This method returns all layer actors filtered by form ID.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

layerId
required
string

Layer ID

formId
required
integer

Form ID

QUERY PARAMETERS

from
required
integer

Unixtime from which to receive items. If not specified, unixtime will be set to
start of the month.

to
required
integer

Unixtime to which to receive items. If not specified, unixtime will be set to
the end of the month.

limit
integer [ 0 .. 200 ]
Default: 50

The total number of actors to retrieve (used with offset)

offset
integer <= 10000
Default: 0

The number of rows to skip when fetching list

orderBy
string
Default: "created_at"
Enum: "updated_at" "created_at"

Actors sorting mode

orderValue
string
Default: "DESC"
Enum: "ASC" "DESC"

Sorting vector

withForm
boolean

Specify true to add form info to response data

lastReaction
boolean

Specify true to add last actor reaction to response data

reactionsCount
boolean

Specify true to add actor reactions count to response data

reactionsStats
boolean

Specify true to add users' reactions statistics to response data

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/layer_actors_filters/{layerId}/{formId}
https://api.simulator.company/v/1.0/layer_actors_filters/{layerId}/{formId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/layer_actors_filters/%7BlayerId%7D/%7BformId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "title": "string",
       * "description": "string",
       * "formId": 0,
       * "formTitle": "string",
       * "status": "verified",
       * "starred": false,
       * "readonly": false,
       * "color": "string",
       * "userId": 0,
       * "picture": "string",
       * "data": { },
       * "isSystem": true,
       * "systemObjId": 0,
       * "systemObjType": "user",
       * "systemObjStatus": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true,
          * "sign": false,
          * "execute": false
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "user": {
          * "id": 0,
          * "nick": "string",
          * "lang": "string",
          * "type": "user",
          * "role": "owner",
          * "logins": [
             * {
                * "type": "string",
                * "login": "string"
               
               }
            
            ],
          * "createdAt": 0,
          * "updatedAt": 0
         
         }
      
      }
   
   ]

}






GET ALL GRAPH LAYERS WITH ACTOR

Scopes [control.events:actors.readonly]

This method retrieves all layers where the actor is added.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

actorId
required
string

Actor Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/layers_links/actor_global/{actorId}
https://api.simulator.company/v/1.0/layers_links/actor_global/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/layers_links/actor_global/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "graphFolderId": "string",
    * "graphName": "string",
    * "layerId": "string",
    * "layerName": "string"
   
   }

]






ACTORS

Actors API


CREATE ACTOR

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

formId
required
integer

Form ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



ref
string [ 1 .. 255 ] characters

A string value for making actors API requests by ref (must be unique within a
form)

title
string

description
string

picture
string

data
object

Form fields values

appId
string Nullable

Script actor ID

appSettings
object Nullable

Script settings, e.g. autorun

cardActorId
string

Actor ID to display its data card

viewData
object

Data for company card


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/actors/actor/{formId}
https://api.simulator.company/v/1.0/actors/actor/{formId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "ref": "string",
 * "title": "string",
 * "description": "string",
 * "picture": "string",
 * "data": { },
 * "appId": "string",
 * "appSettings": {
    * "autorun": true,
    * "expired": 2147483647,
    * "users": [
       * 999999
      
      ]
   
   },
 * "cardActorId": "string",
 * "viewData": {
    * "actors": {
       * "widgetActor": {
          * "actorId": "1da30185-ddsa-4b46-332a-535c409031f6"
         
         }
      
      },
    * "accounts": [
       * {
          * "currencyId": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "nameId": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "currencyName": "USD",
          * "accountName": "Cash",
          * "displayCurrency": true
         
         }
      
      ],
    * "actorFields": [
       * {
          * "icon": "string",
          * "value": "string",
          * "itemId": "string"
         
         }
      
      ],
    * "formsField": [
       * {
          * "id": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "class": "edit",
          * "title": "Field title",
          * "value": null,
          * "formId": 2665560,
          * "itemId": "itemId",
          * "formColor": null,
          * "formTitle": "CompanyCard"
         
         }
      
      ]
   
   }

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






GET ACTOR BY ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

QUERY PARAMETERS

attachments
boolean

Flag to add attachments list to response

reactionsStats
boolean

Flag to add actor reactions statistics by users to response

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/actors/{actorId}
https://api.simulator.company/v/1.0/actors/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/actors/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "title": "string",
 * "description": "string",
 * "formId": 0,
 * "formTitle": "string",
 * "status": "verified",
 * "starred": false,
 * "readonly": false,
 * "color": "string",
 * "userId": 0,
 * "picture": "string",
 * "data": { },
 * "isSystem": true,
 * "systemObjId": 0,
 * "systemObjType": "user",
 * "systemObjStatus": "active",
 * "createdAt": 0,
 * "updatedAt": 0,
 * "privs": {
    * "view": true,
    * "modify": true,
    * "remove": true,
    * "sign": false,
    * "execute": false
   
   },
 * "access": [
    * {
       * "accId": "string",
       * "userId": 0,
       * "userType": "string",
       * "name": "string",
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         }
      
      }
   
   ],
 * "user": {
    * "id": 0,
    * "nick": "string",
    * "lang": "string",
    * "type": "user",
    * "role": "owner",
    * "logins": [
       * {
          * "type": "string",
          * "login": "string"
         
         }
      
      ],
    * "createdAt": 0,
    * "updatedAt": 0
   
   },
 * "reactionsStats": {
    * "<userId>": {
       * "view": 1,
       * "comment": 1,
       * "sign": 1
      
      }
   
   },
 * "attachments": [
    * {
       * "id": 0,
       * "accId": "string",
       * "externalId": 0,
       * "fileName": "string",
       * "type": "string",
       * "userId": 0,
       * "actorId": "string",
       * "actorTitle": "string",
       * "size": 0,
       * "title": "string",
       * "starred": true,
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   ]

}






REMOVE ACTOR BY ID

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

actorId
required
string

Actor ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/actors/{actorId}
https://api.simulator.company/v/1.0/actors/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/actors/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






REMOVE MULTIPLE ACTORS AND LINKS

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ([ 1 .. 20 ] items)

id
required
string

Actor or link ID

type
required
string
Enum: "node" "edge"





RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/actors
https://api.simulator.company/v/1.0/actors


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "id": "string",
    * "type": "node"
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






UPDATE ACTOR BY ID

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

formId
required
integer

Form ID

actorId
required
string

Actor ID

QUERY PARAMETERS

replaceEmpty
boolean

Specify false to update only those actor fields that are explicitly passed in
the request body. Otherwise, non-passed fields will be cleared.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



ref
string [ 1 .. 255 ] characters

A string value for making actors API requests by ref (must be unique within a
form)

title
string

description
string

picture
string

data
object

Form fields values

appId
string Nullable

Script actor ID

appSettings
object Nullable

Script settings, e.g. autorun

cardActorId
string

Actor ID to display its data card

viewData
object

Data for company card


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/actors/actor/{formId}/{actorId}
https://api.simulator.company/v/1.0/actors/actor/{formId}/{actorId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "ref": "string",
 * "title": "string",
 * "description": "string",
 * "picture": "string",
 * "data": { },
 * "appId": "string",
 * "appSettings": {
    * "autorun": true,
    * "expired": 2147483647,
    * "users": [
       * 999999
      
      ]
   
   },
 * "cardActorId": "string",
 * "viewData": {
    * "actors": {
       * "widgetActor": {
          * "actorId": "1da30185-ddsa-4b46-332a-535c409031f6"
         
         }
      
      },
    * "accounts": [
       * {
          * "currencyId": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "nameId": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "currencyName": "USD",
          * "accountName": "Cash",
          * "displayCurrency": true
         
         }
      
      ],
    * "actorFields": [
       * {
          * "icon": "string",
          * "value": "string",
          * "itemId": "string"
         
         }
      
      ],
    * "formsField": [
       * {
          * "id": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "class": "edit",
          * "title": "Field title",
          * "value": null,
          * "formId": 2665560,
          * "itemId": "itemId",
          * "formColor": null,
          * "formTitle": "CompanyCard"
         
         }
      
      ]
   
   }

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






GET ACTOR BY REF

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

QUERY PARAMETERS

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/actors/ref/{formId}/{ref}
https://api.simulator.company/v/1.0/actors/ref/{formId}/{ref}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/actors/ref/%7BformId%7D/%7Bref%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






GET ACTOR BY SYSTEMOBJID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accId
required
string

Workspace ID

objType
required
string
Value: "user"

Object type

objId
required
int

User ID to get system actor

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/actors/system/{accId}/{objType}/{objId}
https://api.simulator.company/v/1.0/actors/system/{accId}/{objType}/{objId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/actors/system/%7BaccId%7D/%7BobjType%7D/%7BobjId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "title": "string",
 * "description": "string",
 * "formId": 0,
 * "formTitle": "string",
 * "status": "verified",
 * "starred": false,
 * "readonly": false,
 * "color": "string",
 * "userId": 0,
 * "picture": "string",
 * "data": { },
 * "isSystem": true,
 * "systemObjId": 0,
 * "systemObjType": "user",
 * "systemObjStatus": "active",
 * "createdAt": 0,
 * "updatedAt": 0,
 * "privs": {
    * "view": true,
    * "modify": true,
    * "remove": true,
    * "sign": false,
    * "execute": false
   
   },
 * "access": [
    * {
       * "accId": "string",
       * "userId": 0,
       * "userType": "string",
       * "name": "string",
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         }
      
      }
   
   ],
 * "user": {
    * "id": 0,
    * "nick": "string",
    * "lang": "string",
    * "type": "user",
    * "role": "owner",
    * "logins": [
       * {
          * "type": "string",
          * "login": "string"
         
         }
      
      ],
    * "createdAt": 0,
    * "updatedAt": 0
   
   }

}






REMOVE ACTOR BY REF

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/actors/system/{accId}/{objType}/{objId}
https://api.simulator.company/v/1.0/actors/system/{accId}/{objType}/{objId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/actors/system/%7BaccId%7D/%7BobjType%7D/%7BobjId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






UPDATE ACTOR BY REF

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



ref
string [ 1 .. 255 ] characters

A string value for making actors API requests by ref (must be unique within a
form)

title
string

description
string

picture
string

data
object

Form fields values

appId
string Nullable

Script actor ID

appSettings
object Nullable

Script settings, e.g. autorun

cardActorId
string

Actor ID to display its data card

viewData
object

Data for company card


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/actors/actor/ref/{formId}/{ref}
https://api.simulator.company/v/1.0/actors/actor/ref/{formId}/{ref}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "ref": "string",
 * "title": "string",
 * "description": "string",
 * "picture": "string",
 * "data": { },
 * "appId": "string",
 * "appSettings": {
    * "autorun": true,
    * "expired": 2147483647,
    * "users": [
       * 999999
      
      ]
   
   },
 * "cardActorId": "string",
 * "viewData": {
    * "actors": {
       * "widgetActor": {
          * "actorId": "1da30185-ddsa-4b46-332a-535c409031f6"
         
         }
      
      },
    * "accounts": [
       * {
          * "currencyId": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "nameId": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "currencyName": "USD",
          * "accountName": "Cash",
          * "displayCurrency": true
         
         }
      
      ],
    * "actorFields": [
       * {
          * "icon": "string",
          * "value": "string",
          * "itemId": "string"
         
         }
      
      ],
    * "formsField": [
       * {
          * "id": "1da30185-ddsa-4b46-332a-535c409031f6",
          * "class": "edit",
          * "title": "Field title",
          * "value": null,
          * "formId": 2665560,
          * "itemId": "itemId",
          * "formColor": null,
          * "formTitle": "CompanyCard"
         
         }
      
      ]
   
   }

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






SET ACTOR STATUS

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

actorId
required
string

Actor ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



status
string
Enum: "verified" "rejected" "pending" null



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/actors/status/{actorId}
https://api.simulator.company/v/1.0/actors/status/{actorId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "status": "verified"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "ref": "string",
    * "title": "string",
    * "description": "string",
    * "formId": 0,
    * "formTitle": "string",
    * "status": "verified",
    * "starred": false,
    * "readonly": false,
    * "color": "string",
    * "userId": 0,
    * "picture": "string",
    * "data": { },
    * "isSystem": true,
    * "systemObjId": 0,
    * "systemObjType": "user",
    * "systemObjStatus": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true,
       * "sign": false,
       * "execute": false
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "userType": "string",
          * "name": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      ],
    * "user": {
       * "id": 0,
       * "nick": "string",
       * "lang": "string",
       * "type": "user",
       * "role": "owner",
       * "logins": [
          * {
             * "type": "string",
             * "login": "string"
            
            }
         
         ],
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   }

}






SEARCH ACTORS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

query
required
string >= 2 characters

Search string

QUERY PARAMETERS

limit
integer
Default: 20

The total number of actors to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

isSystem
boolean

Specify true to filter only system actors, false - only custom actors. Don't
pass this parameter to get both types of actors.

formId
integer

Form ID

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/actors_filters/search/{accId}/{query}
https://api.simulator.company/v/1.0/actors_filters/search/{accId}/{query}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/actors_filters/search/%7BaccId%7D/%7Bquery%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "title": "string",
       * "description": "string",
       * "formId": 0,
       * "formTitle": "string",
       * "status": "verified",
       * "starred": false,
       * "readonly": false,
       * "color": "string",
       * "userId": 0,
       * "picture": "string",
       * "data": { },
       * "isSystem": true,
       * "systemObjId": 0,
       * "systemObjType": "user",
       * "systemObjStatus": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true,
          * "sign": false,
          * "execute": false
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "user": {
          * "id": 0,
          * "nick": "string",
          * "lang": "string",
          * "type": "user",
          * "role": "owner",
          * "logins": [
             * {
                * "type": "string",
                * "login": "string"
               
               }
            
            ],
          * "createdAt": 0,
          * "updatedAt": 0
         
         }
      
      }
   
   ]

}






FILTER BY FORM

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

formId
required
integer

Form ID

QUERY PARAMETERS

from
required
integer

Unixtime from which to receive items. If not specified, unixtime will be set to
start of the month.

to
required
integer

Unixtime to which to receive items. If not specified, unixtime will be set to
the end of the month.

limit
integer
Default: 50

The total number of actors to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

scroll
boolean

Specify true to retrieve large sets of results. The response will contain a
scroll ID in the response body. You can then use the scroll ID to retrieve the
next batch of results for the request.

scrollId
string

Scroll ID from the previous response to retrieve the next batch of results.
Scroll ID expires in 1 minute.

orderBy
string
Default: "created_at"
Enum: "created_at" "updated_at"

Actors sorting mode

orderByKey
string

It`s the key by which the sorting will be performed

accountNameId
string

Filter by account name

currencyId
string

Filter by currency

incomeType
string
Enum: "debit" "credit"

Use with accountNameId and currencyId, if it is null, filter will be applied to
total balance

orderValue
string
Default: "DESC"
Enum: "ASC" "DESC"

Sorting vector

isSystem
boolean

Specify true to filter only system actors, false - only custom actors. Don't
pass this parameter to get both types of actors.

systemObjType
string
Enum: "user" "tag" "location"

Type of system object

systemObjStatus
string
Enum: "active" "removed"

Status

q
string
Example: q=industry%3DRetail%26country%3DUSA&search=string,
q=conditions.data.state=active&limit=2&offset=2,
q=conditions.data.statusCond.ref=statusone

URL-encoded query string consists of data values (template fields). Also use
"search" to find actor by title. Multiple key-value pairs are separated by '&'.
To search by nested fields, use a dot, see the second example. To search by
actor`s ref see third example. For fields of type calendar, you can use the
symbols '>', '<', '>=', '<='. Example: dateOfBirth>{'startDate':71182800}

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/actors_filters/{formId}
https://api.simulator.company/v/1.0/actors_filters/{formId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/actors_filters/%7BformId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "title": "string",
       * "description": "string",
       * "formId": 0,
       * "formTitle": "string",
       * "status": "verified",
       * "starred": false,
       * "readonly": false,
       * "color": "string",
       * "userId": 0,
       * "picture": "string",
       * "data": { },
       * "isSystem": true,
       * "systemObjId": 0,
       * "systemObjType": "user",
       * "systemObjStatus": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true,
          * "sign": false,
          * "execute": false
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "user": {
          * "id": 0,
          * "nick": "string",
          * "lang": "string",
          * "type": "user",
          * "role": "owner",
          * "logins": [
             * {
                * "type": "string",
                * "login": "string"
               
               }
            
            ],
          * "createdAt": 0,
          * "updatedAt": 0
         
         }
      
      }
   
   ]

}






LINKS

Actors links API


CREATE LINK BETWEEN ACTORS

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accId
required
string

Workspace ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



source
string

Source actor ID

target
string

Target actor ID

edgeTypeId
integer

Link type ID from the list of available link types.
To create hierarchical links between actors use a link type with the name
hierarchy.
When building an actors tree for calculating balances, use a link type with name
calculatedTree.

name
string

Link name


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/actors/link/{accId}
https://api.simulator.company/v/1.0/actors/link/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "source": "string",
 * "target": "string",
 * "edgeTypeId": 0,
 * "name": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "name": "string",
    * "source": "string",
    * "target": "string",
    * "edgeTypeId": 1,
    * "edgeType": "hierarchy",
    * "userId": 0,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      }
   
   }

}






CREATE MULTIPLE LINKS

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ()

source
string

Source actor ID

target
string

Target actor ID

edgeTypeId
integer

Link type ID from the list of available link types.
To create hierarchical links between actors use a link type with the name
hierarchy.
When building an actors tree for calculating balances, use a link type with name
calculatedTree.

name
string

Link name




RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/actors/mass_links/{accId}
https://api.simulator.company/v/1.0/actors/mass_links/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "source": "string",
    * "target": "string",
    * "edgeTypeId": 0,
    * "name": "string"
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "name": "string",
    * "source": "string",
    * "target": "string",
    * "edgeTypeId": 1,
    * "edgeType": "hierarchy",
    * "userId": 0,
    * "createdAt": 0,
    * "updatedAt": 0,
    * "privs": {
       * "view": true,
       * "modify": true,
       * "remove": true
      
      }
   
   }

}






UPDATE LINK

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

edgeId
required
string

Link ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



name
string

Link name


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/actors/link/{edgeId}
https://api.simulator.company/v/1.0/actors/link/{edgeId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "name": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






REMOVE LINK

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

edgeId
required
string

Link ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/actors/link/{edgeId}
https://api.simulator.company/v/1.0/actors/link/{edgeId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/actors/link/%7BedgeId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






LINK TYPES

Link types API


GET LINK TYPES LIST

Scopes [control.events:actors.readonly]

Link type is an attribute of every link between actors. E.g., on the Economics
layer - a link type with the name calculatedTree is used, on other layers - a
hierarchical link (with the name hierarchy).

There is a set of specific link types used for links between actors in the
accounts tree. For every existing actor's account (unique pair of name and
currency), there is a dedicated link type.
Such link type name is a concatenation of two ID fields: <nameId>_<currencyId>
(Learn more about account names, currencies)

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/edge_types/{accId}
https://api.simulator.company/v/1.0/edge_types/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/edge_types/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "accId": "string",
       * "name": "string",
       * "userId": 0,
       * "createdAt": 0,
       * "isTree": true
      
      }
   
   ]

}






CREATE LINK TYPE

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



name
string

Link type name


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/edge_types/{accId}
https://api.simulator.company/v/1.0/edge_types/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "name": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "name": "string",
    * "userId": 0,
    * "createdAt": 0,
    * "isTree": true
   
   }

}






ACCOUNTS

Actors accounts API


GET LIST OF ACCOUNTS BY ACTOR ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

QUERY PARAMETERS

accountType
string
Enum: "fact" "plan"

Type of account

incomeType
required
string
Enum: "debit" "credit"

from
integer
Example: from=1662471080000

Start timestamp point for result, in milliseconds

to
integer
Example: to=1662816684000

End timestamp point for result, in milliseconds

amountFrom
integer
Example: amountFrom=0

Minimum amount to filter accounts for

amountTo
integer
Example: amountTo=9999

Maximum amount to filter accounts for

tag
string
Example: tag=f5ec6878-f4d1-4d80-89a3-0f0e56f562f0

Tags (system form) actor ID to filter actor accounts

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/{actorId}
https://api.simulator.company/v/1.0/accounts/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      }
   
   ]

}






CREATE ACCOUNTS BY ACTOR ID

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

actorId
required
string

Actor ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



accountType
string
Default: "fact"
Enum: "fact" "plan"

currencyId
required
integer

Currency ID from the list of available currencies

nameId
required
string

Name ID from the list of available account names

treeCalculation
boolean
Default: true

Flag to calculate account balance in accounts tree

search
boolean
Default: true

Flag if account transactions are searchable

minLimit
integer

Minimum allowed account balance after transaction

maxLimit
integer

Maximum allowed account balance after transaction


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/accounts/{actorId}
https://api.simulator.company/v/1.0/accounts/{actorId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "accountType": "fact",
 * "currencyId": 0,
 * "nameId": "string",
 * "treeCalculation": true,
 * "search": true,
 * "minLimit": 0,
 * "maxLimit": 0

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      }
   
   ]

}






GET ACTOR'S ACCOUNTS BY CURRENCY ID AND NAME ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

currencyId
required
integer

Currency ID from the list of available currencies

nameId
required
string

Name ID from the list of available account names

QUERY PARAMETERS

accountType
string
Enum: "fact" "plan"

Type of account

incomeType
required
string
Enum: "debit" "credit"

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/{actorId}/{currencyId}/{nameId}
https://api.simulator.company/v/1.0/accounts/{actorId}/{currencyId}/{nameId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/%7BactorId%7D/%7BcurrencyId%7D/%7BnameId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      }
   
   ]

}






GET CHILDREN ACCOUNTS BY ACTOR ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Parent actor ID

QUERY PARAMETERS

accountType
string
Enum: "fact" "plan"

Type of account

from
integer
Example: from=1662471080000

Start timestamp point for result, in milliseconds

to
integer
Example: to=1662816684000

End timestamp point for result, in milliseconds

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/children/{actorId}
https://api.simulator.company/v/1.0/accounts/children/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/children/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      }
   
   ]

}






REMOVE ACCOUNTS BY ACTOR ID

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

actorId
required
string

Actor ID

currencyId
required
integer

Currency ID from the list of available currencies

nameId
required
string

Name ID from the list of available account names

accountType
required
string
Enum: "fact" "plan"

Type of account

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/accounts/{actorId}/{currencyId}/{nameId}/{accountType}
https://api.simulator.company/v/1.0/accounts/{actorId}/{currencyId}/{nameId}/{accountType}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/accounts/%7BactorId%7D/%7BcurrencyId%7D/%7BnameId%7D/%7BaccountType%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






BLOCK ACCOUNT BY ACTOR ID

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



nameId
required
string

Name ID from the list of available account names

currencyId
required
integer

Currency ID from the list of available currencies

type
required
string
Enum: "fact" "plan"

Account type

status
required
string
Enum: "active" "blocked"



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/accounts/block/{actorId}
https://api.simulator.company/v/1.0/accounts/block/{actorId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "nameId": "string",
 * "currencyId": 0,
 * "type": "fact",
 * "status": "active"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * "string",
    * "string"
   
   ]

}






GET SINGLE ACCOUNT BY ACTOR REF

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

QUERY PARAMETERS

nameId
required
string

Name ID from the list of available account names

currencyId
required
integer

Currency ID from the list of available currencies

accountType
string
Enum: "fact" "plan"

Type of account

incomeType
required
string
Enum: "debit" "credit"

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/single/ref/{formId}/{ref}
https://api.simulator.company/v/1.0/accounts/single/ref/{formId}/{ref}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/single/ref/%7BformId%7D/%7Bref%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "actorId": "string",
    * "userId": 0,
    * "incomeType": "debit",
    * "amount": 0,
    * "availableAmount": 0,
    * "formula": "string",
    * "systemType": "manual",
    * "status": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "accountType": "fact",
    * "currencyId": 0,
    * "nameId": "string",
    * "treeCalculation": true,
    * "search": true,
    * "minLimit": 0,
    * "maxLimit": 0
   
   }

}






GET LIST OF ACCOUNTS BY ACTOR REF

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

QUERY PARAMETERS

accountType
string
Enum: "fact" "plan"

Type of account

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/ref/{formId}/{ref}
https://api.simulator.company/v/1.0/accounts/ref/{formId}/{ref}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/ref/%7BformId%7D/%7Bref%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      }
   
   ]

}






CREATE ACCOUNTS BY ACTOR REF

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



accountType
string
Enum: "fact" "plan"

Account type

nameId
string

Name ID from the list of available account names

currencyId
integer

Currency ID from the list of available currencies


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/accounts/ref/{formId}/{ref}
https://api.simulator.company/v/1.0/accounts/ref/{formId}/{ref}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "accountType": "fact",
 * "nameId": "string",
 * "currencyId": 0

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      }
   
   ]

}






CREATE ACCOUNT PAIR

Gives opportunity to create account pair with name and currency.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



accountName
string

Name of the account to create

currencyName
string

Name of the currency to create


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/accounts/pair/{accId}
https://api.simulator.company/v/1.0/accounts/pair/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "accountName": "string",
 * "currencyName": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "accountName": {
       * "id": "string",
       * "name": "string",
       * "abbreviation": "string",
       * "isSystem": true,
       * "accId": "string",
       * "userId": 0,
       * "createdAt": 0,
       * "updatedAt": 0
      
      },
    * "currency": {
       * "id": 0,
       * "name": "string",
       * "accId": "string",
       * "symbol": "string",
       * "type": "string",
       * "isSystem": true,
       * "userId": 0,
       * "createdAt": 0,
       * "precision": 0
      
      },
    * "access": [
       * {
          * "accId": "string",
          * "userId": 0,
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            },
          * "saId": 0,
          * "userType": "string",
          * "name": "string"
         
         }
      
      ]
   
   }

}






GET CHILDREN ACCOUNTS BY ACTOR REF

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

QUERY PARAMETERS

accountType
string
Enum: "fact" "plan"

Type of account

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/children/ref/{formId}/{ref}
https://api.simulator.company/v/1.0/accounts/children/ref/{formId}/{ref}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/children/ref/%7BformId%7D/%7Bref%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      }
   
   ]

}






REMOVE ACCOUNTS BY ACTOR REF

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

formId
required
integer

Form ID

ref
required
string

Actor ref

currencyId
required
integer

Currency ID from the list of available currencies

nameId
required
string

Name ID from the list of available account names

accountType
required
string
Enum: "fact" "plan"

Type of account

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

delete/accounts/ref/{formId}/{ref}/{currencyId}/{nameId}/{accountType}
https://api.simulator.company/v/1.0/accounts/ref/{formId}/{ref}/{currencyId}/{nameId}/{accountType}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request DELETE \
  --url https://api.simulator.company/v/1.0/accounts/ref/%7BformId%7D/%7Bref%7D/%7BcurrencyId%7D/%7BnameId%7D/%7BaccountType%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "ok"

}






GET ACCOUNT BY ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accountId
required
string

Account ID

QUERY PARAMETERS

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/single/{accountId}
https://api.simulator.company/v/1.0/accounts/single/{accountId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/single/%7BaccountId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "actorId": "string",
    * "userId": 0,
    * "incomeType": "debit",
    * "amount": 0,
    * "availableAmount": 0,
    * "formula": "string",
    * "systemType": "manual",
    * "status": "active",
    * "createdAt": 0,
    * "updatedAt": 0,
    * "accountType": "fact",
    * "currencyId": 0,
    * "nameId": "string",
    * "treeCalculation": true,
    * "search": true,
    * "minLimit": 0,
    * "maxLimit": 0
   
   }

}






GET ACCOUNTS BY ARRAY OF IDS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

QUERY PARAMETERS

from
integer
Example: from=1662471080000

Start timestamp point for result, in milliseconds

to
integer
Example: to=1662816684000

End timestamp point for result, in milliseconds

accountType
string
Enum: "fact" "plan"

Type of account

incomeType
required
string
Enum: "debit" "credit"

tag
string
Example: tag=f5ec6878-f4d1-4d80-89a3-0f0e56f562f0

Tags (system form) actor ID to filter actor accounts

amountFrom
integer
Example: amountFrom=0

Minimum amount to filter accounts for

amountTo
integer
Example: amountTo=9999

Maximum amount to filter accounts for

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



actors
Array of strings

array of actor IDs. [Max 20 actors]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/bulk
https://api.simulator.company/v/1.0/accounts/bulk


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "actors": [
    * "string"
   
   ]

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "actorId": "string",
    * "accounts": [
       * {
          * "id": "string",
          * "actorId": "string",
          * "userId": 0,
          * "incomeType": "debit",
          * "amount": 0,
          * "availableAmount": 0,
          * "formula": "string",
          * "systemType": "manual",
          * "status": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "accountType": "fact",
          * "currencyId": 0,
          * "nameId": "string",
          * "treeCalculation": true,
          * "search": true,
          * "minLimit": 0,
          * "maxLimit": 0
         
         }
      
      ]
   
   }

]






GET ACCOUNT VALUE INFO

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accountId
required
string

Account ID

QUERY PARAMETERS

filter
string
Example: filter=id,title,status,data.item_16357762770841362

Comma-separated list of fields we want to receive for every actor in response
data. To add actor's form fields (data), specify every demanded field as
data.item_16357762770841362. Don't pass this parameter to get full actors' info.

limit
integer
Default: 20

The total number of actors to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/value/{accountId}
https://api.simulator.company/v/1.0/accounts/value/{accountId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/value/%7BaccountId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "title": "string",
       * "description": "string",
       * "formId": 0,
       * "formTitle": "string",
       * "status": "verified",
       * "starred": false,
       * "readonly": false,
       * "color": "string",
       * "userId": 0,
       * "picture": "string",
       * "data": { },
       * "isSystem": true,
       * "systemObjId": 0,
       * "systemObjType": "user",
       * "systemObjStatus": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true,
          * "sign": false,
          * "execute": false
         
         },
       * "access": [
          * {
             * "accId": "string",
             * "userId": 0,
             * "userType": "string",
             * "name": "string",
             * "privs": {
                * "view": true,
                * "modify": true,
                * "remove": true
               
               }
            
            }
         
         ],
       * "user": {
          * "id": 0,
          * "nick": "string",
          * "lang": "string",
          * "type": "user",
          * "role": "owner",
          * "logins": [
             * {
                * "type": "string",
                * "login": "string"
               
               }
            
            ],
          * "createdAt": 0,
          * "updatedAt": 0
         
         }
      
      }
   
   ]

}






GET ACCOUNTS BY ARRAY OF ACTORS REFS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

currencyId
required
integer

Currency ID from the list of available currencies

nameId
required
string

Name ID from the list of available account names

QUERY PARAMETERS

accountType
string
Enum: "fact" "plan"

Type of account

incomeType
string
Enum: "debit" "credit"

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every account in response
data. Don't pass this parameter to get full accounts' info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



actorsRefs
Array of objects

array of actor Refs and formIds. [Max 200 actors]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/accounts/bulk/actors_refs/{nameId}/{currencyId}
https://api.simulator.company/v/1.0/accounts/bulk/actors_refs/{nameId}/{currencyId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "actorsRefs": [
    * {
       * "ref": "string",
       * "formId": 0
      
      }
   
   ]

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "actorId": "string",
    * "ref": "string",
    * "accounts": [
       * {
          * "id": "string",
          * "actorId": "string",
          * "userId": 0,
          * "incomeType": "debit",
          * "amount": 0,
          * "availableAmount": 0,
          * "formula": "string",
          * "systemType": "manual",
          * "status": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "accountType": "fact",
          * "currencyId": 0,
          * "nameId": "string",
          * "treeCalculation": true,
          * "search": true,
          * "minLimit": 0,
          * "maxLimit": 0
         
         }
      
      ]
   
   }

]






SET ACCOUNT AMOUNT

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accountId
required
string

Account ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



amount
required
integer

Amount to set to account


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

put/accounts/amount/{accountId}
https://api.simulator.company/v/1.0/accounts/amount/{accountId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "amount": 2000

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "accountId": "string",
 * "parentId": "string",
 * "userId": 0,
 * "type": "authorized",
 * "isDone": true,
 * "amount": 1000,
 * "commission": 0,
 * "comment": "string",
 * "originalDate": 0,
 * "actorId": "string",
 * "accountAmount": 2000,
 * "accountHoldAmount": 0,
 * "accountMinLimit": 0,
 * "accountMaxLimit": 0

}






SET ACCOUNT FORMULA

'Scopes [control.events:actors.management]'

Supported functions syntax
sum(a, b, c, ...) - returns the sum of all the arguments passed
mean(a, b, c, ...) - returns a numeric value that is the arithmetic mean
(average) of its arguments
Use account ID as an argument to calculate it's amount with formula.

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accountId
required
string

Account ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



formula
string Nullable

Formula for calculating account amount


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/accounts/formula/{accountId}
https://api.simulator.company/v/1.0/accounts/formula/{accountId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "formula": "sum({accountId_1},{accountId_2})/100"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "amount": 0,
    * "error": true
   
   }

}






GET ACCOUNT FORMULA INFO

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accountId
required
string

Account ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/accounts/formula_info/{accountId}
https://api.simulator.company/v/1.0/accounts/formula_info/{accountId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/accounts/formula_info/%7BaccountId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "{accountId}1": {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0,
       * "accountName": "string",
       * "actor": {
          * "id": "string",
          * "title": "string",
          * "formColor": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      },
    * "{accountId}2": {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0,
       * "accountName": "string",
       * "actor": {
          * "id": "string",
          * "title": "string",
          * "formColor": "string",
          * "privs": {
             * "view": true,
             * "modify": true,
             * "remove": true
            
            }
         
         }
      
      }
   
   }

}






TRANSACTIONS

Transactions API


GET LIST OF TRANSACTIONS BY ACTOR ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

actorId
required
string

Actor ID

QUERY PARAMETERS

currencyId
required
integer

Currency ID from the list of available currencies

nameId
required
string

Name ID from the list of available account names

accountType
string
Enum: "fact" "plan"

Type of account

incomeType
required
string
Enum: "debit" "credit"

onlyRoot
boolean
Default: true

Specify false to get child transactions

from
required
integer

Unixtime from which to receive items. If not specified, unixtime will be set to
start of the month.

to
required
integer

Unixtime to which to receive items. If not specified, unixtime will be set to
the end of the month.

limit
integer
Default: 50

The total number of rows to retrieve (used with offset)

offset
integer
Default: 0

The number of transactions to skip when fetching transaction history

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every transaction in
response data. Don't pass this parameter to get full transaction`s info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/transactions/{actorId}
https://api.simulator.company/v/1.0/transactions/{actorId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/transactions/%7BactorId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "accountId": "string",
       * "parentId": "string",
       * "userId": 0,
       * "type": "authorized",
       * "isDone": true,
       * "amount": 0,
       * "commission": 0,
       * "comment": "string",
       * "originalDate": 0,
       * "incomeType": "debit",
       * "actorId": "string",
       * "title": "string",
       * "children": 0
      
      }
   
   ]

}






GET LIST OF TRANSACTIONS BY ACTOR REF

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

formId
required
integer

Form ID

actorRef
required
string

Actor ref

QUERY PARAMETERS

currencyId
required
integer

Currency ID from the list of available currencies

nameId
required
string

Name ID from the list of available account names

accountType
string
Enum: "fact" "plan"

Type of account

incomeType
required
string
Enum: "debit" "credit"

onlyRoot
boolean
Default: true

Specify false to get child transactions

from
required
integer

Unixtime from which to receive items. If not specified, unixtime will be set to
start of the month.

to
required
integer

Unixtime to which to receive items. If not specified, unixtime will be set to
the end of the month.

limit
integer
Default: 50

The total number of rows to retrieve (used with offset)

offset
integer
Default: 0

The number of transactions to skip when fetching transaction history

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every transaction in
response data. Don't pass this parameter to get full transaction`s info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/transactions/actor_ref/{formId}/{actorRef}
https://api.simulator.company/v/1.0/transactions/actor_ref/{formId}/{actorRef}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/transactions/actor_ref/%7BformId%7D/%7BactorRef%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "accountId": "string",
       * "parentId": "string",
       * "userId": 0,
       * "type": "authorized",
       * "isDone": true,
       * "amount": 0,
       * "commission": 0,
       * "comment": "string",
       * "originalDate": 0,
       * "incomeType": "debit",
       * "actorId": "string",
       * "title": "string",
       * "children": 0
      
      }
   
   ]

}






GET LIST OF TRANSACTIONS BY ACCOUNT ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accountId
required
string

Account ID

QUERY PARAMETERS

from
required
integer

Unixtime from which to receive items. If not specified, unixtime will be set to
start of the month.

to
required
integer

Unixtime to which to receive items. If not specified, unixtime will be set to
the end of the month.

limit
integer
Default: 50

The total number of rows to retrieve (used with offset)

offset
integer
Default: 0

The number of transactions to skip when fetching transaction history

filter
string
Example: filter=id,amount,incomeType ...

Comma-separated list of fields we want to receive for every transaction in
response data. Don't pass this parameter to get full transaction`s info.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/transactions/list/{accountId}
https://api.simulator.company/v/1.0/transactions/list/{accountId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/transactions/list/%7BaccountId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "accountId": "string",
       * "parentId": "string",
       * "userId": 0,
       * "type": "authorized",
       * "isDone": true,
       * "amount": 0,
       * "commission": 0,
       * "comment": "string",
       * "originalDate": 0,
       * "incomeType": "debit",
       * "actorId": "string",
       * "title": "string",
       * "children": 0
      
      }
   
   ]

}






GET TRANSACTION BY REF

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accountId
required
string

Account ID

ref
required
string <= 255 characters

Transaction ref

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/transactions/ref/{accountId}/{ref}
https://api.simulator.company/v/1.0/transactions/ref/{accountId}/{ref}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/transactions/ref/%7BaccountId%7D/%7Bref%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "accountId": "string",
 * "parentId": "string",
 * "userId": 0,
 * "type": "authorized",
 * "isDone": true,
 * "amount": 0,
 * "commission": 0,
 * "comment": "string",
 * "originalDate": 0

}






GET CHILD TRANSACTIONS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

transactionId
required
string

Transaction ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/transactions/children/{transactionId}
https://api.simulator.company/v/1.0/transactions/children/{transactionId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/transactions/children/%7BtransactionId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "ref": "string",
       * "accountId": "string",
       * "parentId": "string",
       * "userId": 0,
       * "type": "authorized",
       * "isDone": true,
       * "amount": 0,
       * "commission": 0,
       * "comment": "string",
       * "originalDate": 0
      
      }
   
   ]

}






CREATE TRANSACTION

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accountId
required
string

Actor's account ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



amount
required
integer

Transactions amount

comment
string

A comment for the transaction

ref
string <= 255 characters

A string value for making transactions API requests by ref (must be unique
within an account)

originalDate
integer <unixtime>

The original date of the transaction

addValues
Array of strings

Array of actor Ids that will be added to the balance

delValues
Array of strings

Array of actor Ids that will be deleted from the balance


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/transactions/{accountId}
https://api.simulator.company/v/1.0/transactions/{accountId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "amount": 0,
 * "comment": "string",
 * "ref": "string",
 * "originalDate": 0,
 * "addValues": [
    * "string"
   
   ],
 * "delValues": [
    * "string"
   
   ]

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "accountId": "string",
 * "parentId": "string",
 * "userId": 0,
 * "type": "authorized",
 * "isDone": true,
 * "amount": 0,
 * "commission": 0,
 * "comment": "string",
 * "originalDate": 0

}






CREATE TRANSACTIONS (ATOMIC)

Scopes [control.events:actors.management]

This API method ensures that every transaction is either explicitly committed or
rolled back.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON

List of transactions

Array ()

accountId
required
string

Actor's account ID

amount
required
integer

Transactions amount

comment
string

A comment for the transaction

ref
string <= 255 characters

A string value for making transactions API requests by ref (must be unique
within an account)

originalDate
integer <unixtime>

The original date of the transaction

addValues
Array of strings

Array of actor Ids that will be added to the balance

delValues
Array of strings

Array of actor Ids that will be deleted from the balance




RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/transactions/atom/{accId}
https://api.simulator.company/v/1.0/transactions/atom/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "accountId": "string",
    * "amount": 0,
    * "comment": "string",
    * "ref": "string",
    * "originalDate": 0,
    * "addValues": [
       * "string"
      
      ],
    * "delValues": [
       * "string"
      
      ]
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": "1"

}






AUTHORIZE TRANSACTION (2-STEP)

Scopes [control.events:actors.management]

This API supports two-step transactions, so you can first authorize, then wait
to complete or cancel it later. Authorizing a transaction places a hold on the
account for the specified amount.

Waiting for completion or cancellation can be limited with the expiration
parameter for an authorized transaction. When the authorized transaction
expires, the reversed transaction will be created automatically.

Save transaction ID, you will need it for a second step.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accountId
required
string

Actor's account ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



amount
required
number

Transaction amount

expiration
integer

UNIX timestamp when the authorized transaction expires

comment
string

A comment for the transaction

createdAt
integer

UNIX timestamp of the transaction (by default - current timestamp)

data
object

Some extra data of transaction

ref
string <= 255 characters

A string value for making transactions API requests by ref (must be unique
within an account)


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/transactions/{accountId}/authorized
https://api.simulator.company/v/1.0/transactions/{accountId}/authorized


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "amount": 0,
 * "expiration": 0,
 * "comment": "string",
 * "createdAt": 0,
 * "data": { },
 * "ref": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "accountId": "string",
 * "parentId": "string",
 * "userId": 0,
 * "type": "authorized",
 * "isDone": true,
 * "amount": 0,
 * "commission": 0,
 * "comment": "string",
 * "originalDate": 0

}






COMPLETE TRANSACTION (2-STEP)

Scopes [control.events:actors.management]

You can complete transaction that was previously authorized (use its ID). This
is the second half of the two-step transaction flow.

You cannot complete an authorized transaction that has been already canceled or
expired.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accountId
required
string

Actor's account ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



parentId
required
number

The ID of authorized transaction to complete

amount
required
number

Final amount to complete transaction

comment
string

A comment for the transaction

createdAt
integer

UNIX timestamp of the transaction (by default - current timestamp)

data
object

Some extra data of transaction

ref
string <= 255 characters

A string value for making transactions API requests by ref (must be unique
within an account)


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/transactions/{accountId}/completed
https://api.simulator.company/v/1.0/transactions/{accountId}/completed


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "parentId": 0,
 * "amount": 0,
 * "comment": "string",
 * "createdAt": 0,
 * "data": { },
 * "ref": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "accountId": "string",
 * "parentId": "string",
 * "userId": 0,
 * "type": "completed",
 * "isDone": true,
 * "amount": 0,
 * "commission": 0,
 * "comment": "string",
 * "originalDate": 0

}






CANCEL TRANSACTION (2-STEP)

Scopes [control.events:actors.management]

You can cancel transaction that was previously authorized (use its ID).

You cannot cancel an authorized transaction that has been already completed or
expired.

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accountId
required
string

Actor's account ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



parentId
required
number

The ID of authorized transaction to cancel

comment
string

A comment for the transaction

createdAt
integer

UNIX timestamp of the transaction (by default - current timestamp)

data
object

Some extra data of transaction

ref
string <= 255 characters

A string value for making transactions API requests by ref (must be unique
within an account)


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/transactions/{accountId}/canceled
https://api.simulator.company/v/1.0/transactions/{accountId}/canceled


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "parentId": 0,
 * "comment": "string",
 * "createdAt": 0,
 * "data": { },
 * "ref": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "accountId": "string",
 * "parentId": "string",
 * "userId": 0,
 * "type": "canceled",
 * "isDone": true,
 * "amount": 0,
 * "commission": 0,
 * "comment": "string",
 * "originalDate": 0

}






TRANSFERS

Transfers API


GET TRANSFER BY ID

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

transferId
required
string

Transfer ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/transfer/{transferId}
https://api.simulator.company/v/1.0/transfer/{transferId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/transfer/%7BtransferId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "id": "string",
 * "ref": "string",
 * "accId": "string",
 * "type": "string",
 * "userId": 0,
 * "comment": "string",
 * "declineReason": "string",
 * "createdAt": 0,
 * "transactions": [
    * {
       * "id": "string",
       * "ref": "string",
       * "accountId": "string",
       * "parentId": "string",
       * "userId": 0,
       * "type": "authorized",
       * "isDone": true,
       * "amount": 0,
       * "commission": 0,
       * "comment": "string",
       * "originalDate": 0
      
      }
   
   ],
 * "details": {
    * "from": {
       * "id": "string",
       * "actorId": "string",
       * "userId": 0,
       * "incomeType": "debit",
       * "amount": 0,
       * "availableAmount": 0,
       * "formula": "string",
       * "systemType": "manual",
       * "status": "active",
       * "createdAt": 0,
       * "updatedAt": 0,
       * "accountType": "fact",
       * "currencyId": 0,
       * "nameId": "string",
       * "treeCalculation": true,
       * "search": true,
       * "minLimit": 0,
       * "maxLimit": 0
      
      },
    * "to": [
       * {
          * "id": "string",
          * "actorId": "string",
          * "userId": 0,
          * "incomeType": "debit",
          * "amount": 0,
          * "availableAmount": 0,
          * "formula": "string",
          * "systemType": "manual",
          * "status": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "accountType": "fact",
          * "currencyId": 0,
          * "nameId": "string",
          * "treeCalculation": true,
          * "search": true,
          * "minLimit": 0,
          * "maxLimit": 0
         
         }
      
      ]
   
   }

}






FILTER TRANSFERS

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accId
required
string

Workspace ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



name
string

Link type name

from
object

Unixtime from which to receive items. If not specified, unixtime will be set to
start of the month.

to
object

Unixtime to which to receive items. If not specified, unixtime will be set to
the end of the month.

limit
number >= 1

The total number of transfers names to retrieve (used with offset)

offset
number >= 0

The number of rows to skip when fetching list

accountType
string

Account type

accounts
Array of objects



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/transfer/filter/{accId}
https://api.simulator.company/v/1.0/transfer/filter/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "name": "string",
 * "from": { },
 * "to": { },
 * "limit": 1,
 * "offset": 0,
 * "accountType": "string",
 * "accounts": [
    * {
       * "currencyId": "string",
       * "nameId": "string"
      
      }
   
   ]

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "id": "string",
    * "ref": "string",
    * "accId": "string",
    * "type": "string",
    * "userId": 0,
    * "comment": "string",
    * "declineReason": "string",
    * "createdAt": 0,
    * "transactions": [
       * {
          * "id": "string",
          * "ref": "string",
          * "accountId": "string",
          * "parentId": "string",
          * "userId": 0,
          * "type": "authorized",
          * "isDone": true,
          * "amount": 0,
          * "commission": 0,
          * "comment": "string",
          * "originalDate": 0
         
         }
      
      ],
    * "details": {
       * "from": {
          * "id": "string",
          * "actorId": "string",
          * "userId": 0,
          * "incomeType": "debit",
          * "amount": 0,
          * "availableAmount": 0,
          * "formula": "string",
          * "systemType": "manual",
          * "status": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "accountType": "fact",
          * "currencyId": 0,
          * "nameId": "string",
          * "treeCalculation": true,
          * "search": true,
          * "minLimit": 0,
          * "maxLimit": 0
         
         },
       * "to": [
          * {
             * "id": "string",
             * "actorId": "string",
             * "userId": 0,
             * "incomeType": "debit",
             * "amount": 0,
             * "availableAmount": 0,
             * "formula": "string",
             * "systemType": "manual",
             * "status": "active",
             * "createdAt": 0,
             * "updatedAt": 0,
             * "accountType": "fact",
             * "currencyId": 0,
             * "nameId": "string",
             * "treeCalculation": true,
             * "search": true,
             * "minLimit": 0,
             * "maxLimit": 0
            
            }
         
         ]
      
      }
   
   }

]






CREATE TRANSFER

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accId
required
string

Workspace ID

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



from
object

From

to
Array of objects

To

type
string
Default: "default"
Enum: "default" "finance"

For the finance type "from" should be a debit and all accounts "to" should be
credit. Additionally, the amount should be positive for all accounts.

comment
string

Comment


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/transfer/{accId}
https://api.simulator.company/v/1.0/transfer/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "from": {
    * "accountId": "string",
    * "amount": 0
   
   },
 * "to": [
    * {
       * "accountId": "string",
       * "amount": 0
      
      }
   
   ],
 * "type": "default",
 * "comment": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "id": "string",
    * "ref": "string",
    * "accId": "string",
    * "type": "string",
    * "userId": 0,
    * "comment": "string",
    * "declineReason": "string",
    * "createdAt": 0,
    * "transactions": [
       * {
          * "id": "string",
          * "ref": "string",
          * "accountId": "string",
          * "parentId": "string",
          * "userId": 0,
          * "type": "authorized",
          * "isDone": true,
          * "amount": 0,
          * "commission": 0,
          * "comment": "string",
          * "originalDate": 0
         
         }
      
      ],
    * "details": {
       * "from": {
          * "id": "string",
          * "actorId": "string",
          * "userId": 0,
          * "incomeType": "debit",
          * "amount": 0,
          * "availableAmount": 0,
          * "formula": "string",
          * "systemType": "manual",
          * "status": "active",
          * "createdAt": 0,
          * "updatedAt": 0,
          * "accountType": "fact",
          * "currencyId": 0,
          * "nameId": "string",
          * "treeCalculation": true,
          * "search": true,
          * "minLimit": 0,
          * "maxLimit": 0
         
         },
       * "to": [
          * {
             * "id": "string",
             * "actorId": "string",
             * "userId": 0,
             * "incomeType": "debit",
             * "amount": 0,
             * "availableAmount": 0,
             * "formula": "string",
             * "systemType": "manual",
             * "status": "active",
             * "createdAt": 0,
             * "updatedAt": 0,
             * "accountType": "fact",
             * "currencyId": 0,
             * "nameId": "string",
             * "treeCalculation": true,
             * "search": true,
             * "minLimit": 0,
             * "maxLimit": 0
            
            }
         
         ]
      
      }
   
   }

]






ACCOUNT NAMES

Accounts names API


GET ACCOUNT NAMES

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

QUERY PARAMETERS

withStats
boolean
Default: false

We strongly recommend including withStats=false in your requests, otherwise the
performance of the method will be significantly reduced

limit
integer
Default: 20

The total number of account names to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/account_names/{accId}
https://api.simulator.company/v/1.0/account_names/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/account_names/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": "string",
       * "name": "string",
       * "abbreviation": "string",
       * "accId": "string",
       * "userId": 0,
       * "createdAt": 0,
       * "updatedAt": 0
      
      }
   
   ]

}






CREATE ACCOUNT NAME

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



name
string

abbreviation
string <= 255 characters



RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/account_names/{accId}
https://api.simulator.company/v/1.0/account_names/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "name": "string",
 * "abbreviation": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": "string",
    * "name": "string",
    * "abbreviation": "string",
    * "accId": "string",
    * "userId": 0,
    * "createdAt": 0,
    * "updatedAt": 0
   
   }

}






CURRENCIES

Accounts currencies API


GET CURRENCIES

Scopes [control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:actors.readonly)

PATH PARAMETERS

accId
required
string

Workspace Id

QUERY PARAMETERS

withStats
boolean
Default: false

We strongly recommend including withStats=false in your requests, otherwise the
performance of the method will be significantly reduced

limit
integer
Default: 20

The total number of currencies to retrieve (used with offset)

offset
integer
Default: 0

The number of rows to skip when fetching list

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/currencies/{accId}
https://api.simulator.company/v/1.0/currencies/{accId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/currencies/%7BaccId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "id": 0,
       * "accId": "string",
       * "name": "string",
       * "userId": 0,
       * "createdAt": 0
      
      }
   
   ]

}






CREATE CURRENCY

Scopes [control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.management)

PATH PARAMETERS

accId
required
string

Workspace Id

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON



name
string

Currency name


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/currencies/{accId}
https://api.simulator.company/v/1.0/currencies/{accId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
{
 * "name": "string"

}



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": {
    * "id": 0,
    * "accId": "string",
    * "name": "string",
    * "userId": 0,
    * "createdAt": 0
   
   }

}






ACCESS RULES

Access rules API


GET ACCESS INFO

The scope depends on what object do you want to manage access to.

Object type Scope formTemplate [control.events:forms.readonly] actor
[control.events:actors.readonly]

AUTHORIZATIONS:

OAuth2 (control.events:forms.readonlycontrol.events:actors.readonly)

PATH PARAMETERS

objType
required
string
Enum: "formTemplate" "actor" "templateActors" "account"

Object type

objId
required
string

Object ID to get access info. For account use compound ID nameId_currencyId.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]


RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

get/access_rules/{objType}/{objId}
https://api.simulator.company/v/1.0/access_rules/{objType}/{objId}


REQUEST SAMPLES

 * shell_curl

Copy

curl --request GET \
  --url https://api.simulator.company/v/1.0/access_rules/%7BobjType%7D/%7BobjId%7D


RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "accId": "string",
       * "userId": 0,
       * "userType": "string",
       * "name": "string",
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         }
      
      }
   
   ]

}






MANAGE ACCESS RULES

The scope depends on what object do you want to manage access to.

Object type Scope formTemplate [control.events:forms.management] actor
[control.events:actors.management]

AUTHORIZATIONS:

OAuth2 (control.events:actors.managementcontrol.events:actors.management)

PATH PARAMETERS

objType
required
string
Enum: "formTemplate" "actor" "templateActors" "account"

Object type

objId
required
string

Object ID to share. For account use compound ID nameId_currencyId.

QUERY PARAMETERS

filterIncorrect
boolean
Default: false

If you pass true, the request will be successfully executed even if the user id
in the user array contains a user id that is not in the workspace.

HEADER PARAMETERS

Authorization
required
string

Authorization header. Bearer [AccessToken]

REQUEST BODY SCHEMA: APPLICATION/JSON


Array ()

action
string
Enum: "create" "update" "delete"

data
object





RESPONSES

200

Successful operation

400

Invalid input

401

Unauthorized

403

Access denied

500

Internal error

post/access_rules/{objType}/{objId}
https://api.simulator.company/v/1.0/access_rules/{objType}/{objId}


REQUEST SAMPLES

 * Payload
 * shell_curl

Content type
application/json
Copy
Expand all Collapse all
[
 * {
    * "action": "create",
    * "data": {
       * "userId": 0,
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         }
      
      }
   
   }

]



RESPONSE SAMPLES

 * 200
 * 400
 * 401
 * 403
 * 500

Content type
application/json
Copy
Expand all Collapse all
{
 * "data": [
    * {
       * "accId": "string",
       * "userId": 0,
       * "userType": "string",
       * "name": "string",
       * "privs": {
          * "view": true,
          * "modify": true,
          * "remove": true
         
         }
      
      }
   
   ]

}