# Flow environment

### Read/Write to Flow Environment

The Flow Environment Connector can be used to read information from the flow 6 database, it can also write new data to said database.

The Flow Environment Connector can be used to read information from the flow 6 database, it can also write new data to said database.

### Configuration

* **Url**: Flow server url (example: <http://flowserver/novacura.flow.server/>)
* **User**: Flow username that can read and write in the environment.
* **Password**: Username password in the flow environment.
* **Storage Service Url**: Flow storage service url (example: <http://flowserver/NovaCura.Flow.Storage.Service>)

![](https://543770944-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LtPTgZOYmpJka4jqs1v%2F-M-xh0j7ctyZ--nbx8HI%2F-M-xhui4vv0eab8YuGsF%2Fhelp_root_connectors_utility_environment_operations.png?alt=media\&token=11902f11-427d-42bf-8bac-6c310c545194)

### Operations

These are the functions that the connector supports, the flow connector can fetch data and write/update data to the flow 6 database. All operations either returns a table, row or a true/false boolean depending on if the operation was successful or not.

### **Connector**

* Get connector name and species - Fetches a table of each connector with its type (species) and name.

### **Language**

* Get Languages - Fetches a table of all languages set in the environment.
* Add or update language - Set a new language with two parameters/use record with parameters in it:
  * Code: Language code e.g "SV"
  * Name: Name of the language e.g "Swedish"
* Delete Language - Delete an existing language set in the environment/use record with parameter in it:
  * Code: Language code e.g "SV"

### **Properties**

* Get properties - Fetches all properties.
* Get user properties - Fetches all properties their types and values connected to the user ID provided:
  * User ID: The Flow User you wish to get property information from.
* Get user type properties - Fetches the name of all properties that are not global.
* Get global type properties - Fetches the name of all properties that are global
* Add property - Adds a new property:
  * Name: the name of the property
  * Type: table or text
  * Column only used in table: name of the column/s
  * Scope: global or user
  * Value only used in global scope: static value
* Get property types - Returns what types of properties that are present in the environment.
* Get property scopes - Return what property scopes that are present in the environment.
* Delete property - Deletes a property using the property name:
  * Name: the name of the property that is to be deleted
* Set value of global property - Sets the value of a global property:
  * Name of property: the name of the property that the value is added to
  * New value: the value of the property

### **Roles**

* Add or update/delete Role Group - Adds/deletes or update an existing role group:
  * Group ID: Id of the role group
  * Group Name: Display name of the role group
  * Inherit Children: true/false if the role group will inherit children
* Add roles to Role Group/Delete roles from role group - Adds/deletes roles to a role group:
  * Group ID: id of the role group the roles will belong to
  * Roles: a table containing the columns "Path" and "DisplayName"\
    &#x20;Path points towards the Rolegroup/Role e.g "Administrators/ITadmins" where Administrators is the rolegroup and the ITadmins is the role. Displayname is the displayname of the role
* Get Role group by group ID - Returns a row containing Name, DisplayName, Inheritchildren and a table containing all role paths.
* Get role groups - Returns a table containing Name, DisplayName, Inheritchildren and a table containing all role paths.
* Add/delete roles to user - Assigns/deletes a role to a user:
  * User ID: User ID that is to receive the role
  * A table containing: Path - path to the role in the format "RolegroupID/Role" DisplayName - The displayname of the role
* Get assigned user roles - Returns a table with Path and DisplayName columns.

### **Users**

* Add or update user/from record - Adds or updates a user:
  * Name: mame of the user
  * Active: true/false if the user is active
  * User ID: the User ID of the user
  * Access level: sets the access level of the user e.g "Work"
  * Group: assigns the user to a group
  * Type: assigns the user to a user-type e.g "FullUser"
  * Password: sets a password for the user
  * Email: sets the email for the user
  * Language: sets the language of the user by using lang codes e.g "SV"
* Delete user - Deletes a user in the environment:
  * User ID: which User ID that is to be deleted
* Get user by User ID - Returns a row with all user values.
* Get access levels - Returns a table with all access levels.
* Get types - Returns a table with all types.
* Get users - Returns a table of all users.
* Get user groups - Returns a table with all user groups.
* Set value of property on user - Sets the value of a property on a user:
  * User ID: the user to receive the property value
  * Property Name: the name of the property
  * Value: the value that is to be added (tables are not supported yet)
* Get value of property on user - Returns the value of a property:
  * User ID: the user to fetch the property from
  * The property name to fetch the value from
* Set connector properties for user - sets the login/password for the connector:
  * User ID: the user id that will get the connector login/password added
  * Connector Name: the connector that is getting values added
  * Connector Username: the username for the connector
  * Connector Password: the password for the connector
