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
Submission: On March 01 via api from US — Scanned from US
Form analysis
0 forms found in the DOMText 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 } } ] }