# 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>)

![](/files/-M-xhui4vv0eab8YuGsF)

### 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 new User
  * Name: the name of the user
  * Active: true/false if the user is active
  * User ID: the User ID of the user
  * Access level: 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: the user password
  * Email: the user email address
  * Language: the language of the user, defined using language code, e.g. "SV"
  * Culture: the culture of the user, e.g. "sv-SE"
* Add or update user/from record - Adds or updates a user:
  * Name: the name 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"
  * PasswordHash: the password hash (generated by "Set or Change Password" or by "Add new User"). This is not the user password and cannot be used as such.
  * 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
* Update User
  * Name: the name of the user
  * Active: true/false if the user is active
  * User ID: the User ID of the user
  * Access level: 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"
  * Email: the user's email address
  * Language: the language of the user, defined using language code, e.g. "SV"
  * AD Synced: true/false if the user is AD Synced
  * Use AD for authentication: true/false if AD is used for authentication
  * Culture: the culture of the user, e.g. "sv-SE"


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.novacuraflow.com/connectors/areas/utility/flow-environment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
