REST API
Required Permission: API Documentation and testing (Read more about Permissions)
Every operation that can be done in the frontend can be done with our REST API, meaning that you can automatize pretty much everything from user provisioning, exporting of audit logs for analysis in your DWH, transporting application settings between Graphlytic instances, starting Jobs, reading their status and much more. It's possible to run API calls which can lead to changes in graph data, running jobs, or managing users. Every call is going through the authorization layer but please assign permission to this API tester with great caution.
API testing with Swagger UI
Graphlytic comes with an integrated Swagger UI that contains all API services with description and request/response examples. It also allows to live test the queries. These tests are all performed in the Graphlytic instance so you can directly change data in Graphlytic internal DB (users, user groups, permissions, ...) and also in the Neo4j graph. So be carefull with the testing.
The API tester (Swagger UI) can be accessed under "API" in the Main menu (top right).
List of API services
Here is a list of all API services available in Graphlytic. Requests and response structures can be found in the Swagger UI (see above).
Method |
Resource |
Description |
POST |
/cfg/indexer/node/configure |
Updates configuration of the fulltext index. |
POST |
/cfg/indexer/node/status |
Returns status and configuration of the fulltext index. |
GET |
/cfg/indexer/node/automatic |
Returns automatically computed configuration for the fulltext index. |
GET |
/cfg/indexer/node/default |
Returns the default configuration for the fulltext index. |
POST |
/cfg/indexer/node/drop |
Drops the fulltext index. |
POST |
/cfg/indexer/node/create |
Creates the fulltext index and starts reindexing. |
GET |
/jobs |
Returns all jobs. |
POST |
/jobs |
Created a new job. |
PUT |
/jobs/{name}/started |
Starts the execution of a job. |
PUT |
/jobs/{name} |
Updates a job. |
DELETE |
/jobs/{name} |
Deletes a job. |
GET |
/jobs/{name} |
Returns job identified by name. |
GET |
/jobs/list |
FTL |
GET |
/jobs/{name}/history |
Returns the execution history of a job. |
GET |
/visualization |
FTL |
POST |
/visualization/export/image |
Accepts an BASE64 encoded image which is then returned to the frontend as a file to download. |
GET |
/users |
Returns all users. |
POST |
/users |
Creates user with permission and group relations. |
PUT |
/users/{id} |
Updates user's permissions and group relations. |
DELETE |
/users/{id} |
Mark user as deleted. |
GET |
/users/list |
FTL |
DELETE |
/users/{id}/enabled |
Disables user. |
PUT |
/users/{id}/enabled |
Enables the user (changes the ENABLED flag to true). |
GET |
/users/{id}/entitySecurity |
Returns effective entitySecurity for user. |
GET |
/users/{id}/propertySecurity |
Returns effective propertySecurity for user. |
GET |
/users/info |
Returns basic information (id, username) for all users. |
GET |
/users/dataSecurity |
Returns dataSecurity configuration for all users. |
GET |
/users/deleted |
Returns deleted users. |
GET |
/users/user/related |
Returns all users related to session user. Related means in the same user group as the session user. |
PUT |
/users/{id}/groups |
Assigns user to usergroups. |
PUT |
/users/{id}/reset-password |
Triggers user password change through the email workflow. |
DELETE |
/users/{id}/deleted |
Undeletes the user (changes the DELETED flag to false). |
PUT |
/users/{id}/deleted |
Deletes the user (changes the DELETED flag to true). |
PUT |
/users/{id}/password |
Updates user's password. |
GET |
/users/user/groups |
|
POST |
/passwordReset/request |
Requests change for the username using emailing link to the user. |
POST |
/passwordReset/perform |
Changes password based on the sent link. |
GET |
/passwordReset/{hash} |
FTL |
GET |
/passwordReset/isHashValid/{hash} |
Checks whether the hash is valid. |
GET |
/data/possiblePropertyKeys |
Returns a list of all property names existing in the graph DB. |
POST |
/data/relationships |
Creates a new relationship. |
DELETE |
/data/nodes/relationships |
Deletes a relationship. The list of all deleted elements is returned in the response. |
GET |
/data/relationships/possibleTypes |
Returns a list of all relationship types existing in the graph db and also a list of relationship types defined in the Data Types setting. |
POST |
/data/relationships/export/csv |
CSV export of relationships found by ID. |
PUT |
/data/nodes/find |
Finds nodes using the filtering options and updates specified data. |
POST |
/data/nodes/find |
Finds and returns nodes using the fulltext index and filtering options. |
GET |
/data/stats/frequency/nodes/{labels}/{property} |
Returns a statistics summary of values in a particular property. Only values from nodes are counted. |
GET |
/data/stats/frequency/nodes/{property} |
Returns a statistics summary of values in a particular property. Only values from nodes are counted. |
POST |
/data/nodes/find/export/csv |
CSV export of nodes found using a condition. |
GET |
/data/stats/frequency/relationships/{types}/{property} |
Vrati statistiky frekvencie vyskytu hodnot pre vztahy pre pozadovanu property. Berie sa do uvahy DATA_TYPES. Vyhladavaju sa vsetky typy ktore su povolene v DATA_TYPES. |
GET |
/data/stats/frequency/relationships/{property} |
Vrati statistiky frekvencie vyskytu hodnot pre vztahy pre pozadovanu property. Berie sa do uvahy DATA_TYPES. Vyhladavaju sa vsetky typy ktore su povolene v DATA_TYPES. |
PUT |
/data/relationships/{id} |
Updates relationship's properties. Use the null value for properties that should be removed. |
POST |
/data/relationships/{id} |
Finds relationship by ID and returns the set of requested properties. |
GET |
/data/nodes/possibleLabels |
Returns a list of all node labels existing in the graph db and also a list of node labels defined in the Data Types setting. |
POST |
/data/import/uploadFile |
File is uploaded to the server and a list of file identificators is returned. If a zip file is uploaded identificators for every file inside the zip is returned. This identificator can be used in other import services. Supported file types: csv, xls - Excel '97(-2007), xlsx - Excel 2007 OOXML, xml - GraphML, graphml - GraphML, zip file with a set of files of mentioned types. |
POST |
/data/import/importFile |
Imports an uploaded file to the graph DB. File is identified by the file identificator obtained from the uploadFile service. |
POST |
/data/nodes |
Creates a new node. |
GET |
/data/stats/frequency/{property} |
Returns a statistics summary of values in a particular property. Values from nodes and relationships are counted together. |
POST |
/data/nodes/export/csv |
CSV export of nodes found by ID. |
DELETE |
/data/nodes/{id} |
Deletes a node and all his relationships. The list of all deleted elements is returned in the response. |
POST |
/data/nodes/{id} |
Finds node by ID and returns the set of requested properties. |
PUT |
/data/nodes/{id} |
Updates node's properties. Use the null value for properties that should be removed. |
POST |
/data/import/analyzeFile |
Returns an analysis of an uploaded file identified by the file identificator obtained from the uploadFile service. |
POST |
/data/cypher |
Runs a cypher query and returns the result. |
POST |
/userSettings |
Updates session user's userSettings by type. |
GET |
/userSettings/{type} |
Returns a specific userSettings by type. |
GET |
/groups |
Returns all groups. |
POST |
/groups |
Creates an usergroup. Name must be unique. Returns name of the created group. |
PUT |
/groups/{id} |
Updates an usergroup. |
DELETE |
/groups/{id} |
Deletes an usergroup. |
GET |
/groups/list |
FTL |
POST |
/groups/{id}/propertySecurity |
Updates usergroup's propertySecurity configuration. |
GET |
/groups/{id}/propertySecurity |
Returns usergroup's propertySecurity configuration. |
POST |
/groups/{id}/entitySecurity |
Updates usergroup's entitySecurity configuration. |
GET |
/groups/{id}/entitySecurity |
Returns usergroup's entitySecurity configuration. |
POST |
/groups/permissions |
Replaces usergroup's application permissions. |
GET |
/groups/info |
Returns basic info for all usergroups. |
GET |
/groups/dataSecurity |
Returns all usergroups and their dataSecurity configuration. |
PUT |
/groups/{id}/users |
Replaces user assignments to usergroup. |
GET |
/profile |
Returns the profile information of the session user. |
PUT |
/profile |
Updates the profile information of the session user. |
GET |
/profile/view |
FTL |
GET |
/profile/locales |
Returns all supported locales (languages). |
PUT |
/profile/password |
Updates user's password. |
GET |
/visualizations |
Returns visualization by id for session user. Visualization has to be owned by user, be directly shared or be shared with a group. Postprocessing cleans content of JSON attribute |
POST |
/visualizations |
Creates a new visualization. |
PUT |
/visualizations/{id} |
Updates a visualization. Changing the owner is not allowed. |
GET |
/visualizations/{id} |
Returns visualization by id for session user. Visualization has to be owned by user, be directly shared or be shared with a group. Postprocessing cleans content of JSON attribute |
DELETE |
/visualizations/{id} |
Deletes visualization owned by the session user. |
GET |
/visualizations/list |
FTL |
DELETE |
/visualizations/{id}/hidden |
Unhide the visualization for the session user. |
PUT |
/visualizations/{id}/hidden |
Hides the visualization for the session user. |
GET |
/visualizations/share |
Returns visualizations shared directly or with a group. |
PUT |
/visualizations/{id}/info |
Updates the name and description of a visualization. |
PUT |
/visualizations/{id}/groups |
Shares visualization owned by session user for user groups. |
GET |
/visualizations/own |
Returns visualizations owned by the session user. |
PUT |
/visualizations/{id}/users |
Shares visualization owned by session user with other users. |
GET |
/widgets/{widgetName}/{fileName} |
Returns a file belonging to an external widget. |
POST |
/data/graph |
Returns data of specified nodes and relationships. Elements are idenfied by internal DB IDs. |
POST |
/data/graph/directRelationships |
Returns all direct connections (regardless of the direction) between two groups of nodes. |
POST |
/data/graph/indirectRelationships |
Returns all indirect connections (regardless of the direction) between nodes. |
POST |
/data/graph/explore |
Graph exploring in visualization (doubleclick on a node). |
POST |
/data/graph/uid |
Returns data of specified nodes and relationships. Elements are idenfied by UUIDs defined in Data Types setting. |
POST |
/data/shortestPath |
Returns all shortest paths found between requested nodes (exactly 2 nodes). |
GET |
/logo |
Returns the application logo image. |
GET |
/icons |
Returns names of all custom icons. |
GET |
/icons/{fileName} |
Returns a custom icon image file. |
GET |
/settings |
Returns all application settings. |
PUT |
/settings/{type} |
Updates a specific application setting. |
GET |
/settings/list |
FTL |
GET |
/settings/default |
Updates all application settings with the default configuration. |
GET |
/settings/automatic |
Updates all application settings with an automatically computed configuration (based on a data sample). |
GET |
/settings/default/{type} |
Returns the default configuration for a specific application setting. |
GET |
/settings/export |
Export of all application settings in a zip file. |
POST |
/settings/import |
Import of all application settings from a zip file or as a single file. The name of the file with the configuration must be the name of the imported application setting, e.g. DATA_SCHEMA.json. |
GET |
/settings/automatic/{type} |
Returns automatically computed configuration (based on a data sample) for a specific application setting. |
GET |
/acl/list |
FTL |
GET |
/ |
FTL |
GET |
/search |
FTL. QueryParams: "q" - search pattern used in the first opened tab. |
GET |
/api-documentation |
FTL |
GET |
/login |
|
GET |
/schema/indexes |
Returns all schema indexes. |
POST |
/schema/indexes |
Creates a new schema index. |
DELETE |
/schema/indexes |
Drops a schema index. |
POST |
/audit/data/frontend |
Logs audit message from FE |
GET |
/audit/data |
Vrati zoznam vsetkych audit eventov |
PUT |
/license |
Updates license. |
GET |
/license |
Obtains license content. |