# REST API Command List

* [Structure of the URI](#structure-of-the-uri)
* [Authentication](#authentication)
* [Servlets](#servlets)
* [Projects](#projects)
* [Samples](#samples)
* [Data](#data)
* [Library files](#library-files)
* [Pipelines](#pipelines)
* [Queue](#queue)
* [Users](#users)
* [Roles](#roles)
* [Permission](#permission)
* [Tasks](#tasks)
* [Filters](#RESTAPICommandList-Filters)
* [Commands](#commands)
* [License](#license)
* [Workers](#workers)
* [System](#system)

## Structure of the URI

<http://example.com:8080/flow/api/v1>

## Authentication

The username and access token must be supplied unless the request is made in an authenticated session.

The access token can be generated from the settings page or using the public key included in the PartekFlow-REST.zip as described in [REST API](https://help.connected.illumina.com/partek/partek-flow/user-manual/enterprise-features-and-toolkits/rest-api)

## Servlets

### /servlets

**since** 7.0.180726

**GET** An up-to-date form of this documentation

| Parameter | Type   | Description               | Default |
| --------- | ------ | ------------------------- | ------- |
| format    | string | markup: confluence markup | json    |

## Projects

### /projects

**since** 7.0.18.0125

**POST, PUT**

Add or configure a project

| Parameter                                  | Type                        | Description                                                                                                                                                                                                                              |
| ------------------------------------------ | --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **project\_id or project or new\_project** | integer or string or string | A project specification                                                                                                                                                                                                                  |
| owner                                      | string                      | Sets the project owner                                                                                                                                                                                                                   |
| name                                       | string                      | Sets the project name                                                                                                                                                                                                                    |
| description                                | string                      | Sets the project description                                                                                                                                                                                                             |
| collaborator                               | string                      | If this parameter is specified, then “role” must also be specified. If the role parameter is “remove” then the specified collaborator is removed from the project, otherwise role must be a valid project role (Collaborator or Viewer). |
| my\_output\_folder                         | string                      | Sets the project output folder for the user making the request                                                                                                                                                                           |
| output\_folder                             | string                      | Sets the project output folder for all collaborators the user making the request has permission to affect                                                                                                                                |

### /projects

**since** 7.0.17.0803

**DELETE**

Delete projects

| Parameter                  | Type              | Description                                                 |
| -------------------------- | ----------------- | ----------------------------------------------------------- |
| **project\_id or project** | integer or string | A project specification                                     |
| delete\_files              | String            | Delete files from this project. valid values: all or output |

### /projects

**since** 7.0.17.0524

**GET**

Returns metadata about a project

### /projects/cells

**since** 9.0.20.504

**GET, POST, PUT**

Summarizes the number of input cells in single-cell experiments

### /projects/create

**since** 7.0.19.0120

**GET, POST, PUT**

Creates a new project

| Parameter   | Type   | Description                                     |
| ----------- | ------ | ----------------------------------------------- |
| **project** | String | The name of the new project                     |
| new\_folder | String | Creates a new unique subfolder for this project |

### /projects/error

**since** 7.0.18.0802

**GET, POST, PUT**

Get or set a project-specific error message

| Parameter                  | Type              | Description             |
| -------------------------- | ----------------- | ----------------------- |
| **project\_id or project** | integer or string | A project specification |
| message                    | String            | ggvG                    |

### /projects/export

**since** 7.0.16.1101

**GET, POST, PUT**

Export a specified project to a .zip file

| Parameter           | Type                     | Description                                                                                  | Default                                |
| ------------------- | ------------------------ | -------------------------------------------------------------------------------------------- | -------------------------------------- |
| **project\_ids**    | comma-delimited integers | A specification for one or more projects                                                     |                                        |
| includeLibraryFiles | boolean                  | If true then library files will be included                                                  | false                                  |
| toProject           | boolean                  | If true then rather than downloading a zip file, a new project will be created on the server |                                        |
| task                | integer                  | Export project with this task as the root node                                               |                                        |
| includeDownstream   | boolean                  | If true then tasks downstream of the specified will be included                              | false                                  |
| outputFolder        | String                   | A path on the server to write the exported projects to.                                      | Stream the project(s) to the requestor |

### /projects/file\_entries

**since** 8.0.19.0701

**GET, POST, PUT**

Returns files associated with projects. Matches the files that can be deleted when the project is deleted

### /projects/files

**since** 7.0.17.1101

**GET, POST, PUT**

Returns files associated with projects. Matches files used in the calculation of size shown on the homepage

### /projects/folders

**since** 7.0.17.1101

**GET, POST, PUT**

Returns folders associated with projects

| Parameter    | Type    | Description                                                         |
| ------------ | ------- | ------------------------------------------------------------------- |
| project\_ids | string  | Retrieve specific projects. IDs joined by ,                         |
| project\_id  | integer | Retrieve a single project by ID                                     |
| project      | string  | Retrieve a single project by name                                   |
| sample       | string  | List projects that contain a sample with the specified name         |
| file\_name   | string  | List projects that contain a file matching the specified sub-string |
| user\_id     | integer | List projects for which the specified user is a member              |
| user\_name   | string  | List projects for which the specified user is a member              |

### /projects/import

**since** 7.0.16.1101

**GET, POST, PUT**

Import a project from an exported .zip file

| Parameter                   | Type                       | Description                                                                                   | Default                                                       |
| --------------------------- | -------------------------- | --------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
| **url or filepath or file** | string or string or binary | The location of a project zip: on a remote server or on the specified server or in the stream |                                                               |
| owner\_id or owner\_name    | integer or string          | This user will be the owner of the imported project                                           | By default, the user making the API request will be the owner |

### /projects/list

**since** 7.0.17.1101

**GET, POST, PUT**

Returns a list of projects available on the server

| Parameter    | Type    | Description                                                         |
| ------------ | ------- | ------------------------------------------------------------------- |
| project\_ids | string  | Retrieve specific projects. IDs joined by ,                         |
| project\_id  | integer | Retrieve a single project by ID                                     |
| project      | string  | Retrieve a single project by name                                   |
| sample       | string  | List projects that contain a sample with the specified name         |
| file\_name   | string  | List projects that contain a file matching the specified sub-string |
| user\_id     | integer | List projects for which the specified user is a member              |
| user\_name   | string  | List projects for which the specified user is a member              |

### /projects/output\_folders

**since** 7.0.17.1101

**GET, POST, PUT**

Returns the output folders for projects

| Parameter    | Type    | Description                                                         |
| ------------ | ------- | ------------------------------------------------------------------- |
| project\_ids | string  | Retrieve specific projects. IDs joined by ,                         |
| project\_id  | integer | Retrieve a single project by ID                                     |
| project      | string  | Retrieve a single project by name                                   |
| sample       | string  | List projects that contain a sample with the specified name         |
| file\_name   | string  | List projects that contain a file matching the specified sub-string |
| user\_id     | integer | List projects for which the specified user is a member              |
| user\_name   | string  | List projects for which the specified user is a member              |

### /projects/properties

**since** 7.0.18.0529

**GET, POST, PUT**

List or configure project-specific properties

| Parameter | Type   | Description               |
| --------- | ------ | ------------------------- |
| **key**   | String | The name of the property  |
| value     | String | The value of the property |

### /projects/report

**since** 7.0.18.0902

**GET, POST, PUT**

Generates a tab-delimited report on tasks in a project

| Parameter                  | Type              | Description             |
| -------------------------- | ----------------- | ----------------------- |
| **project\_id or project** | integer or string | A project specification |

### /projects/resources

**since** 7.0.18.0910

**GET, POST, PUT**

Returns meta-data on resources associated with the project

| Parameter                  | Type              | Description             |
| -------------------------- | ----------------- | ----------------------- |
| **project\_id or project** | integer or string | A project specification |

### /projects/samples

**since** 7.0.17.1101

**GET, POST, PUT**

List samples associated with projects

| Parameter    | Type    | Description                                                         |
| ------------ | ------- | ------------------------------------------------------------------- |
| project\_ids | string  | Retrieve specific projects. IDs joined by ,                         |
| project\_id  | integer | Retrieve a single project by ID                                     |
| project      | string  | Retrieve a single project by name                                   |
| sample       | string  | List projects that contain a sample with the specified name         |
| file\_name   | string  | List projects that contain a file matching the specified sub-string |
| user\_id     | integer | List projects for which the specified user is a member              |
| user\_name   | string  | List projects for which the specified user is a member              |

### /projects/search

**since** 7.0.18.0529

**GET, POST, PUT**

Search for projects

| Parameter | Type    | Description                                                                           | Default |
| --------- | ------- | ------------------------------------------------------------------------------------- | ------- |
| exact     | boolean | If true, the search term must match exactly, otherwise sub-string matches are allowed | false   |
| category  | String  | Search for categories applied to samples                                              |         |

### /projects/transfer

**since** 9.0.20.0612

**GET, POST, PUT**

Manages transferring project to remote servers

## Samples

### /samples

**since** 7.0.17.0921

**POST, PUT**

Import a set of attributes

| Parameter                      | Type              | Description                                                               | Default                                                                                                                   |
| ------------------------------ | ----------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| attribute\_json                | String            | A set of attributes in the same format as returned by /samples/attributes |                                                                                                                           |
| attribute\_txt                 | String            | A set of attributes in a tab-delimited file                               |                                                                                                                           |
| force                          | boolean           | false                                                                     | Attribute files with more than 10,000 samples are assumed to be for single cell data, specify force=true to override this |
| **sample\_id or sample\_name** | integer or string | A sample specification                                                    |                                                                                                                           |

### /samples

**since** 7.0.17.0921

**GET, POST, PUT**

Add or query a sample

| Parameter                      | Type              | Description             |
| ------------------------------ | ----------------- | ----------------------- |
| **project\_id or project**     | integer or string | A project specification |
| **sample\_id or sample\_name** | integer or string | A sample specification  |

### /samples/attributes

**since** 7.0.17.0915

**GET, POST, PUT**

Returns attributes associated with a sample

### /samples/list

**since** 7.0.17.0921

**GET, POST, PUT**

Returns samples and attributes in a specified project

| Parameter                  | Type              | Description             |
| -------------------------- | ----------------- | ----------------------- |
| **project\_id or project** | integer or string | A project specification |

### /samples/rename

**since** 7.0.18.1212

**GET, POST, PUT**

Bulk rename samples

| Parameter                  | Type              | Description                                                       |
| -------------------------- | ----------------- | ----------------------------------------------------------------- |
| **project\_id or project** | integer or string | A project specification                                           |
| remove                     | String            | Remove this substring from each sample name                       |
| trim\_left                 | integer           | Remove this many characters from the beginning of the sample name |
| trim\_right                | integer           | Remove this many characters from the end of the sample name       |

## Data

### /data

**since** 7.0.18.0110

**GET, POST, PUT**

Upload data to the server

| Parameter                                  | Type                        | Description                                                                                                                                                    | Default                                                  |
| ------------------------------------------ | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| **project\_id or project or new\_project** | integer or string or string | A project specification                                                                                                                                        |                                                          |
| filepath and/or filepath1 and/or filepath2 | String                      | The location of the file on the server. Up to three files can by imported at once.                                                                             |                                                          |
| count\_matrix                              | String                      | The location of a count matrix file on the server.                                                                                                             |                                                          |
| sample\_id or sample or new\_sample        | integer string string       | The id or name of the sample to add data to. If new\_sample is specified and the sample already exists characters will be added to disambiguate the new sample |                                                          |
| owner or owner\_id                         | string integer              | The username or ID of the user that should be the owner of the data (and the project if it is created by this call).                                           | The owner will be the user account that uploads the data |
| duplicate\_handling                        | String                      | For a count matrix, how to handle any duplicated features: Mean, Maximmum, Sum                                                                                 | Mean                                                     |
| sample                                     | String                      | The name of the sample to associate this data with                                                                                                             | The filename                                             |
| upload\_folder                             | string                      | If the file is uploaded through the servlet it will be put in this directory, if the owner has permission to access it.                                        |                                                          |

### /data/attributes

**since** 7.0.18.0110

**GET, POST, PUT**

Returns attributes associated with a resource

| Parameter        | Type    | Description   |
| ---------------- | ------- | ------------- |
| **resource\_id** | integer | A resource ID |

### /data/files

**since** 7.0.18.0830

**GET, POST, PUT**

Returns the list of files associated with a resource

| Parameter        | Type    | Description   |
| ---------------- | ------- | ------------- |
| **resource\_id** | integer | A resource ID |

### /data/import\_folder

**since** 10.0.21.2111

**GET, POST, PUT**

Imports all files in a specified folder

| Parameter | Type   | Description                    | Default                                    |
| --------- | ------ | ------------------------------ | ------------------------------------------ |
| folder    | String | path to the data on the server |                                            |
| project   | String | Project to import to           | Creates a project based on the folder name |

### /data/managed

**since** 7.0.17.0817

**GET, POST, PUT**

Returns unmanaged files in a given directory

| Parameter     | Type   | Description |
| ------------- | ------ | ----------- |
| **directory** | String |             |

### /data/reassign

**since** 7.0.18.0710

**GET, POST, PUT**

Repair links to data that has changed directories

| Parameter | Type   | Description          |
| --------- | ------ | -------------------- |
| former    | String | Old path to the data |
| current   | String | New path to the data |

### /data/recover

**since** 7.0.19.0520

**GET, POST, PUT**

Recover disk space by deleting unnecessary files

### /data/table

**since** 7.0.18.1120

**GET, POST, PUT**

Exports a task result table

| Parameter    | Type    | Description                                                                                                                                                                                         | Default               |
| ------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
| **task\_id** | integer | The ID of the task that produced the table                                                                                                                                                          |                       |
| table        | String  | The table to download, if ambiguous for the task. QuantificationSummary, TranscriptQuantificationSummary, GeneQuantificationSummary, transcript\_feature\_distribution, gene\_feature\_distribution | QuantificationSummary |

### /data/unmanaged

**since** 7.0.17.0817

**GET, POST, PUT**

Returns unmanaged files in a given directory

| Parameter     | Type   | Description |
| ------------- | ------ | ----------- |
| **directory** | String |             |

### /data/upload

**since** 9.0.20.0617

**GET, POST, PUT**

Uploads data to the server and then imports the uploaded data

| Parameter                                  | Type                        | Description                                                                                                             | Default                                                           |
| ------------------------------------------ | --------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| **project\_id or project or new\_project** | integer or string or string | A project specification                                                                                                 |                                                                   |
| owner or owner\_id                         | string integer              | The username or ID of the user that should be the owner of the data (and the project if it is created by this call).    | The owner will be the user account that uploads the data          |
| upload\_folder                             | string                      | If the file is uploaded through the servlet it will be put in this directory, if the owner has permission to access it. | Data download directory configured on the System preferences page |
| \*                                         | string                      | 1 or more files to receive and import                                                                                   |                                                                   |

## Library files

### /library\_files

**since** 7.0.16.0826

**GET, POST, PUT**

Imports a library file

| Parameter            | Type             | Description                                                                                                                                                          |
| -------------------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **file or filepath** | binary or string | The file content or the path of the file on the server                                                                                                               |
| **file\_type**       | String           | The type of library file. The list of available library file types is returned by /library\_files/types                                                              |
| **assembly**         | String           | The assembly of the library file                                                                                                                                     |
| species              | string           | The species of the library file. This is looked up based on the assembly, and the assembly is used as the species if the assembly is not associated with any species |

### /library\_files/build

**since** 7.0.18.0207

**GET, POST, PUT**

Build a library file derived from an existing managed file

### /library\_files/files

**since** 7.0.17.0921

**GET, POST, PUT**

Returns metadata (including file paths) for managed library files

### /library\_files/list

**since** 7.0.17.0915

**GET, POST, PUT**

Returns metadata for managed library files

| Parameter         | Type   | Description                                 |
| ----------------- | ------ | ------------------------------------------- |
| file\_type        | String | Filters results based on file type          |
| annotation\_model | String | Filters results based on annotation model   |
| descriptions      | String | Filters results based on the description    |
| id                | String | Return a result for a specific library file |

### /library\_files/snp\_eff

**since** 7.0.18.0619

**GET, POST, PUT**

Loads a manually downloaded SnpEff database. A SnpEff bin file must be present on the server under library files assembly/database/SnpEff database/database

| Parameter         | Type   | Description |
| ----------------- | ------ | ----------- |
| **genome\_build** | String |             |
| **database**      | String |             |

### /library\_files/types

**since** 7.0.17.0915

**GET, POST, PUT**

Returns available library file types

## Pipelines

### /pipelines

**since** 7.0.17.0921

**GET, POST, PUT**

Download the specified pipeline specification

| Parameter    | Type   | Description              |
| ------------ | ------ | ------------------------ |
| **pipeline** | String | The name of the pipeline |

### /pipelines/inputs

**since** 7.0.17.0921

**GET, POST, PUT**

List the inputs required by the specified pipeline

| Parameter                  | Type              | Description                                                                          | Default         |
| -------------------------- | ----------------- | ------------------------------------------------------------------------------------ | --------------- |
| **pipeline**               | String            | The name of the pipeline                                                             |                 |
| **project\_id or project** | integer or string | A project specification                                                              |                 |
| data                       | String            | The data node that the pipeline will run on, as returned by the /projects interface. | Unaligned reads |

### /pipelines/list

**since** 7.0.17.0921

**GET, POST, PUT**

Returns pipelines available on the server

### /pipelines/ready

**since** 7.0.17.0921

**GET, POST, PUT**

Run the specified pipeline

| Parameter                  | Type              | Description                                                                          | Default         |
| -------------------------- | ----------------- | ------------------------------------------------------------------------------------ | --------------- |
| **pipeline**               | String            | The name of the pipeline                                                             |                 |
| **project\_id or project** | integer or string | A project specification                                                              |                 |
| data                       | String            | The data node that the pipeline will run on, as returned by the /projects interface. | Unaligned reads |

### /pipelines/run

**since** 7.0.17.0921

**GET, POST, PUT**

Run the specified pipeline

| Parameter                  | Type              | Description                                                                                                                                                | Default         |
| -------------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------- |
| **pipeline**               | String            | The name of the pipeline                                                                                                                                   |                 |
| **project\_id or project** | integer or string | A project specification                                                                                                                                    |                 |
| **inputs**                 | integers          | The ids of the resources, in the order returned by the /pipeline/inputs interface. The ids of library files are returned by the /library\_files interface. |                 |
| data                       | String            | The data node that the pipeline will run on, as returned by the /projects interface.                                                                       | Unaligned reads |

## Queue

### /queue

**since** 7.0.17.0901

**GET, POST, PUT**

Returns summary statistics of the task queue

| Parameter                                   | Type    | Description                            |
| ------------------------------------------- | ------- | -------------------------------------- |
| project or project\_name or project\_filter | String  | Only return tasks in this project      |
| project\_id                                 | integer | Only return tasks in this project      |
| user\_name or user\_filter                  | String  | Only return tasks run by this user     |
| user\_id                                    | integer | Only return tasks run by this user     |
| status                                      | String  | Only return tasks matching this status |

### /queue/cancel

**since** 7.0.17.0901

**GET, POST, PUT**

Cancel tasks in progress

| Parameter                                   | Type    | Description                            |
| ------------------------------------------- | ------- | -------------------------------------- |
| project or project\_name or project\_filter | String  | Only return tasks in this project      |
| project\_id                                 | integer | Only return tasks in this project      |
| user\_name or user\_filter                  | String  | Only return tasks run by this user     |
| user\_id                                    | integer | Only return tasks run by this user     |
| status                                      | String  | Only return tasks matching this status |

### /queue/commands

**since** 7.0.17.0901

**GET, POST, PUT**

Returns information about queued commands

### /queue/downloads

**since** 7.0.17.0901

**GET, POST, PUT**

Returns the count of downloads in progress

### /queue/status

**since** 10.0.22.0322

**GET, POST, PUT**

Check the queue status or request it start or stop handling commands

| Parameter | Type   | Description      |
| --------- | ------ | ---------------- |
| op        | String | Operation start# |

### /queue/tasks

**since** 7.0.17.0901

**GET, POST, PUT**

Returns information about tasks in the queue

| Parameter                                   | Type    | Description                            |
| ------------------------------------------- | ------- | -------------------------------------- |
| project or project\_name or project\_filter | String  | Only return tasks in this project      |
| project\_id                                 | integer | Only return tasks in this project      |
| user\_name or user\_filter                  | String  | Only return tasks run by this user     |
| user\_id                                    | integer | Only return tasks run by this user     |
| status                                      | String  | Only return tasks matching this status |

## Users

### /users

**since** 7.0.17.0901

**POST, PUT**

Add or configure users

| Parameter                              | Type              | Description                                                                                                                                                                                                             | Default                                                                               |
| -------------------------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| user\_id or user\_name                 | integer or string | A user specification. If user\_name is specified the account will be created if it does not already exist                                                                                                               | If this is not specified, the configuration will apply to the user making the request |
| distinguished\_name                    | String            | When creating a new user, this parameter specifies the LDAP distinguished name.                                                                                                                                         |                                                                                       |
| user\_password                         | String            | When creating a new user, this parameter specifies their initial Flow password. If this parameter is absent and this is not an LDAP user then the user will receive an email with a link to set their initial password. |                                                                                       |
| display\_name                          | String            | The name that other users will see.                                                                                                                                                                                     |                                                                                       |
| enabled                                | boolean           | Whether the user is able to log in                                                                                                                                                                                      |                                                                                       |
| add\_role\_name or add\_role\_id       | string or integer |                                                                                                                                                                                                                         |                                                                                       |
| Add the user to the specified role     |                   |                                                                                                                                                                                                                         |                                                                                       |
| remove\_role\_name or remove\_role\_id | string or integer | Remove the user from the specified role                                                                                                                                                                                 |                                                                                       |
| private\_directory                     | String            | If present, the directory will be created and the user will be given permission to use it.                                                                                                                              |                                                                                       |
| add\_directory                         | String            | Add permission for the user to browse files in this directory.                                                                                                                                                          |                                                                                       |
| quota                                  | integer           | The size of the user’s quota (in gigabytes) or “none” to remove any quota                                                                                                                                               |                                                                                       |
| notify\_when\_tasks\_finish            | boolean           | Whether the user will receive an email when a task they have queued completes                                                                                                                                           |                                                                                       |
| notify\_when\_added\_to\_project       | boolean           | Whether the user will receive an email when they are added as a collaborator or viewer to a project                                                                                                                     |                                                                                       |
| decimal\_precision                     | integer           | How many digits to show after the decimal point for numeric values in tables                                                                                                                                            |                                                                                       |

### /users

**since** 7.0.17.0901

**GET**

Returns information about a user

| Parameter              | Type              | Description           | Default                                                            |
| ---------------------- | ----------------- | --------------------- | ------------------------------------------------------------------ |
| user\_id or user\_name | integer or string | A user specification. | If this is not specified, the user making the request will be used |

### /users/files

**since** 8.0.19.0701

**GET, POST, PUT**

List files used by a specified user. Matches files used in the calculation of disk usage as reported on the Users settings page

### /users/list

**since** 7.0.17.0901

**GET, POST, PUT**

Returns a list of known users

### /users/logins

**since** 7.0.18.0102

**GET, POST, PUT**

Returns a list of logged in users and their last activity

### /users/logout

**since** 9.0.20.1222

**GET, POST, PUT**

End the session of the specified user

| Parameter              | Type              | Description           | Default                                                                                |
| ---------------------- | ----------------- | --------------------- | -------------------------------------------------------------------------------------- |
| user\_id or user\_name | integer or string | A user specification. | The user to logoff. If this is not specified, the user making the request will be used |

### /users/preferences

**since** 7.0.18.0912

**GET, POST, PUT**

Get and set user preferences

| Parameter | Type   | Description                 |
| --------- | ------ | --------------------------- |
| **key**   | String | The name of the preference  |
| value     | String | The value of the preference |

### /users/preferences/list

**since** 9.0.20.0625

**GET, POST, PUT**

Lists system preferences which can be set

### /users/roles

**since** 7.0.18.0323

**GET, POST, PUT**

Returns a list of roles assigned to users

### /users/unset\_private\_directory

**since** 7.0.17.1011

**POST, PUT**

Configures the specified user to no longer use a private directory, instead reverting to the server defaults

| Parameter              | Type              | Description           | Default                                                            |
| ---------------------- | ----------------- | --------------------- | ------------------------------------------------------------------ |
| user\_id or user\_name | integer or string | A user specification. | If this is not specified, the user making the request will be used |

## Roles

### /roles

**since** 7.0.18.0710

**GET, POST, PUT**

Apply roles to users

| Parameter | Type   | Description                                                                    |
| --------- | ------ | ------------------------------------------------------------------------------ |
| **file**  | binary | A json file which contains a list of RolePrivileges (as returned by roles/list |

### /roles

**since** 7.0.18.0710

**DELETE**

Remove roles from users

| Parameter | Type    | Description                  |
| --------- | ------- | ---------------------------- |
| role      | integer | the ID of the role to remove |

### /roles/list

**since** 7.0.18.0710

**GET, POST, PUT**

Returns a list of roles available on the server

### /roles/privileges

**since** 7.0.18.0710

**GET, POST, PUT**

Returns a list of privileges available on the server

## Permission

### /permission

**since** 7.0.18.0213

**GET, POST, PUT**

Get or set enforcement of directory permissions

| Parameter | Type    | Description |
| --------- | ------- | ----------- |
| enforce   | boolean |             |

### /permission/add\_directory

**since** 7.0.18.0213

**GET, POST, PUT**

Add permission to access a directory to a specified user

| Parameter                                          | Type                                   | Description            | Default                                                                  |
| -------------------------------------------------- | -------------------------------------- | ---------------------- | ------------------------------------------------------------------------ |
| **directory**                                      | String                                 |                        |                                                                          |
| user\_id or user\_name or group\_id or group\_name | integer or string or integer or string | A member specification | If a user or group is not specified, this action will apply to all users |

### /permission/remove\_directory

**since** 7.0.18.0213

**GET, POST, PUT**

Remove permission to access a directory from a specified user

| Parameter                                          | Type                                   | Description            | Default                                                                  |
| -------------------------------------------------- | -------------------------------------- | ---------------------- | ------------------------------------------------------------------------ |
| **directory**                                      | String                                 |                        |                                                                          |
| user\_id or user\_name or group\_id or group\_name | integer or string or integer or string | A member specification | If a user or group is not specified, this action will apply to all users |

## Tasks

### /tasks

**since** 7.0.17.0207

**GET, POST, PUT**

Returns information about tasks that have run on the server

| Parameter                  | Type              | Description                                                                                      |
| -------------------------- | ----------------- | ------------------------------------------------------------------------------------------------ |
| **project\_id or project** | integer or string | A project specification                                                                          |
| id                         | integer           | A single task ID                                                                                 |
| user\_name or user\_id     | string or integer | The username or ID of a user that has run tasks                                                  |
| status                     | String            | A task status: Pending, Waiting, Running, Done, Canceled, Failed                                 |
| task                       | String            | A sub-string of the task name & version as it appears in the Task entry on the task details page |

### /tasks/delete

**since** 7.0.18.0207

**DELETE, GET, POST**

Deletes tasks

| Parameter    | Type    | Description | Default |
| ------------ | ------- | ----------- | ------- |
| project\_id  | integer |             |         |
| id           | integer |             |         |
| keep\_output | boolean |             | false   |
| task\_type   | String  |             |         |

### /tasks/inputs

**since** 9.0.20.1002

**GET, POST, PUT**

Returns task input values

| Parameter | Type   | Description                                    |
| --------- | ------ | ---------------------------------------------- |
| slots     | String | A comma-delimited list of input slots to query |

### /tasks/license

**since** 7.0.18.0920

**GET, POST, PUT**

Returns a list of available tasks and their license requirements

### /tasks/logs

**since** 7.0.18.0930

**GET, POST, PUT**

Returns task logs

| Parameter                  | Type              | Description                                                                                      |
| -------------------------- | ----------------- | ------------------------------------------------------------------------------------------------ |
| **project\_id or project** | integer or string | A project specification                                                                          |
| id                         | integer           | A single task ID                                                                                 |
| user\_name or user\_id     | string or integer | The username or ID of a user that has run tasks                                                  |
| status                     | String            | A task status: Pending, Waiting, Running, Done, Canceled, Failed                                 |
| task                       | String            | A sub-string of the task name & version as it appears in the Task entry on the task details page |

### /tasks/outputs

**since** 7.0.18.1120

**GET, POST, PUT**

Returns task output resource IDs and descriptions

### /tasks/reload

**since** 10.0.21.0525

**GET, POST, PUT**

Returns a list of task test specifications

### /tasks/report

**since** 7.0.18.1130

**GET, POST, PUT**

Generates a report on recent tasks

| Parameter | Type    | Description                         | Default |
| --------- | ------- | ----------------------------------- | ------- |
| recent    | boolean | Set to false to report on all tasks | true    |

### /tasks/specs

**since** 7.0.18.0207

**GET, POST, PUT**

Returns a list of task test specifications

## Filters

### /filters

**since** 7.0.18.0207

**GET, POST, PUT**

Upload feature filters

| Parameter          | Type   | Description                                                                                     |
| ------------------ | ------ | ----------------------------------------------------------------------------------------------- |
| filepath or filter | String | filepath: a file on the server with filter content or filter: the filter content in json format |

## Commands

### /commands

**since** 7.0.17.0901

**GET, POST, PUT**

Returns information about commands that have run on the server

| Parameter          | Type    | Description                                                  |
| ------------------ | ------- | ------------------------------------------------------------ |
| task               | integer | Filter commands to those belonging to the specified task ID  |
| worker\_identifier | integer | Filter commands to those run on the specified worker         |
| successful         | boolean | Filter commands based on whether they successfully completed |
| command\_line      | String  | Filter commands based on their command-line representation   |

### /commands/description

**since** 7.0.17.0901

**GET, POST, PUT**

Returns a description of commands that have run on the server

| Parameter    | Type    | Description                                                               |
| ------------ | ------- | ------------------------------------------------------------------------- |
| id           | String  | A specific command identifier                                             |
| task         | integer | Filter results based on a task ID                                         |
| command      | String  | Filter results based on the command                                       |
| conservative | boolean | Include/exclude results based on whether they are flagged as conservative |

### /commands/fit

**since** 7.0.17.0901

**GET, POST, PUT**

Returns information about command fits

### /commands/memory

**since** 7.0.17.0901

**GET, POST, PUT**

Returns the memory used by commands

| Parameter    | Type    | Description                                                               |
| ------------ | ------- | ------------------------------------------------------------------------- |
| id           | String  | A specific command identifier                                             |
| task         | integer | Filter results based on a task ID                                         |
| command      | String  | Filter results based on the command                                       |
| conservative | boolean | Include/exclude results based on whether they are flagged as conservative |

### /commands/pending

**since** 7.0.18.1124

**GET, POST, PUT**

Returns a summary report on pending commands

### /commands/prediction

**since** 7.0.17.0901

**GET, POST, PUT**

Returns the predicted utilization of commands

| Parameter    | Type    | Description                                                               |
| ------------ | ------- | ------------------------------------------------------------------------- |
| id           | String  | A specific command identifier                                             |
| task         | integer | Filter results based on a task ID                                         |
| command      | String  | Filter results based on the command                                       |
| conservative | boolean | Include/exclude results based on whether they are flagged as conservative |
| description  | String  | CommandDescription in json format                                         |

### /commands/report

**since** 7.0.18.0902

**GET, POST, PUT**

Generates a tab-delimited report on commands in a task

## License

### /license

**since** 7.0.17.0314

**GET, POST, PUT**

Returns information about license available on the server

| Parameter | Type   | Description                           |
| --------- | ------ | ------------------------------------- |
| feature   | String | Filters results based on feature name |

## Workers

### /workers

**since** 7.0.17.0901

**GET, POST, PUT**

Returns a load summary of all connected workers

### /workers/count

**since** 7.0.17.0901

**GET, POST, PUT**

Returns the number of connected workers

### /workers/internal

**since** 7.0.17.0901

**GET, POST, PUT**

Returns a load summary of the internal worker, if it is enabled

### /workers/remote

**since** 7.0.17.0901

**GET, POST, PUT**

Returns a summary of the load of remote workers

### /workers/shutdown

**since** 10.21.0723

**GET, POST, PUT**

Shuts down workers

| Parameter | Type    | Description                                        | Default |
| --------- | ------- | -------------------------------------------------- | ------- |
| internal  | boolean | Shut down the internal worker                      | true    |
| external  | boolean | Shut down all external workers                     | true    |
| id        | integer | Shut down only the worker matching this identifier |         |

### /workers/start

**since** 10.21.0723

**GET, POST, PUT**

Starts the internal worker

### /workers/submitted

**since** 18.0930

**GET, POST, PUT**

Get and set information about workers that have been submitted to a cluster, but may not yet have connected

| Parameter          | Type    | Description |
| ------------------ | ------- | ----------- |
| submitted\_workers | integer |             |
| max\_memory\_mb    | integer |             |

## System

### /system

**since** 7.0.17.0227

**GET, POST, PUT**

System configuration options

| Parameter                  | Type    | Description                                                                                                                                     |
| -------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| page\_load\_log\_threshold | integer | If specified and greater than 0 a warning will be written to logs/page\_load.log whenever a page-load takes longer than this value (in seconds) |
| reload\_import\_config     | boolean | Reload the partek\_db/import.config file                                                                                                        |
| reload\_help\_config       | boolean | Reload the partek\_db/help.config file                                                                                                          |
| update\_command\_resources | boolean | Download and update command resource estimates                                                                                                  |
| reload\_feature\_lists     | boolean | Reload the feature lists for the user                                                                                                           |

### /system/dump\_heap

**since** 10.0.21.0709

**GET, POST, PUT**

Dumps contents of heap

| Parameter | Type   | Description                       |
| --------- | ------ | --------------------------------- |
| file      | String | Path to write the hprof heap dump |

### /system/execution

**since** 10.0.23.0322

**GET, POST, PUT**

Configure execution of immediate commands, that support the front-end

| Parameter               | Type    | Description                                                           |
| ----------------------- | ------- | --------------------------------------------------------------------- |
| synchronous\_threadpool | integer | Number of threads to use for the synchronous executor                 |
| dispatch\_method        | String  | An optional method for dispatching commands that must run immediately |

### /system/generate\_token

**since** 7.0.18.1020

**GET, POST, PUT**

Generate an access token for the requesting user

| Parameter              | Type              | Description                                         | Default                                                            |
| ---------------------- | ----------------- | --------------------------------------------------- | ------------------------------------------------------------------ |
| user\_id or user\_name | integer or string | A user specification.                               | If this is not specified, the user making the request will be used |
| expiration             | String            | never for no expiration, otherwise: d-M-yyyy h:mm a |                                                                    |
| duration               | integer           | duration of the token, in hours                     |                                                                    |

### /system/import

**since** 7.0.18.0228

**POST, PUT**

Import a set of server preferences from a json specification

### /system/logging

**since** 7.0.17.1024

**GET, POST, PUT**

Configure log levels

| Parameter  | Type   | Description                                                                       |
| ---------- | ------ | --------------------------------------------------------------------------------- |
| logger     | String | The name of a logger or "commands" to configure multiple command-related logs.    |
| log\_level | String | Sets the level of the specified logger: ALL, TRACE, DEBUG, INFO, WARN, ERROR, OFF |

### /system/logs

**since** 10.0.23.0203

**GET, POST, PUT**

Download system logs

### /system/package

**since** 10.0.23.0301

**GET, POST, PUT**

Query or override package paths

| Parameter | Type   | Description                           |
| --------- | ------ | ------------------------------------- |
| get       | String | Return current path to package        |
| package   | String | Set the path of the specified package |

### /system/preferences

**since** 7.0.18.0130

**DELETE**

Delete preferences, reverting the values to default

| Parameter | Type   | Description                                 |
| --------- | ------ | ------------------------------------------- |
| node      | String | Required unless deleting from the root node |
| **key**   | String | The ID of the preference to delete          |

### /system/preferences

**since** 7.0.18.0130

**GET, POST, PUT**

Get and set system preferences

| Parameter | Type   | Description          |
| --------- | ------ | -------------------- |
| node      | String | The node name        |
| key       | String | The preference name  |
| value     | String | The preference value |

### /system/preferences/list

**since** 9.0.20.0625

**GET, POST, PUT**

Lists system preferences which can be set

### /system/preferences/nodes

**since** 7.0.18.0130

**GET, POST, PUT**

Returns a list of preference node names

### /system/revoke

**since** 7.0.18.1020

**GET, POST, PUT**

Revoke API access tokens

| Parameter | Type   | Description                                                                                                                                  |
| --------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------- |
| api\_key  | String | An API token to revoke. "mine" to revoke the requestors tokens, "all" to revoke all managed tokens (requires Change user accounts privilege) |

### /system/stacks

**since** 8.0.23.0419

**GET, POST, PUT**

Return a stack trace of current activity

### /system/status\_report

**since** 8.0.20.0130

**GET, POST, PUT**

Report on recent system activity

| Parameter            | Type    | Description                                                             | Default |
| -------------------- | ------- | ----------------------------------------------------------------------- | ------- |
| all\_threads         | boolean | Show all threads (rather than just those with partek in the class name) | false   |
| heap\_dump           | boolean | Write heap dump to the logs                                             | false   |
| io                   | boolean | Measure the time to write & read a file from mount points               | false   |
| gc                   | boolean | Request System.gc before reporting memory usage                         | true    |
| log                  | boolean | Include the last section of content from various log files              | true    |
| tasks                | boolean | Include the section on running / pending tasks                          | true    |
| top                  | boolean | Write the output of top to the output                                   | false   |
| cpu\_load\_threshold | integer | Print a warning if the system load average exceeds this value           |         |
| mem\_load\_threshold | integer | Print a warning if the percent of heap used exceeds this value          |         |

### /system/token

**since** 18.07.0930

**GET, POST, PUT**

Manage access tokens

| Parameter  | Type   | Description                                         | Default                                               |
| ---------- | ------ | --------------------------------------------------- | ----------------------------------------------------- |
| api\_key   | String | The token to configure                              | Return a list of all tokens managed for the requestor |
| expiration | String | never for no expiration, otherwise: d-M-yyyy h:mm a |                                                       |

### /system/token/list

**since** 7.0.18.1020

**GET, POST, PUT**

Lists all managed tokens (Requires View user accounts privilege)

## Additional Assistance

If you need additional assistance, please visit [our support page](http://www.partek.com/support) to submit a help ticket or find phone numbers for regional support.
