Nuix Collection and Survey API
The Collection and Survey API from Nuix — 4 operation(s) for collection and survey.
The Collection and Survey API from Nuix — 4 operation(s) for collection and survey.
openapi: 3.0.1
info:
title: NUIX ECC REST API Command Reference Case Collection and Survey API
description: 'Welcome to the Nuix ECC REST API command reference. From here you can access all available ECC REST APIs. You can also send REST commands to your running ECC Server, as well as view the responses.
**Note\:** The Nuix ECC User Guide includes a gloassary which defines specialized terms such as `Case`, `Custodian` and `Target` which are mentioned throughout this command reference.
**Note\:** This command reference has been updated for Nuix ECC version 9.12.0.'
contact:
name: Nuix
url: https://nuix.github.io/sdk-docs/latest/
email: APISupport@nuix.com
license:
name: Licence
url: https://www.nuix.com/sites/default/files/20200210_EULA_v1.pdf
version: ${customer.version}
servers:
- url: '{protocol}://{address}:{port}/api/ecc'
variables:
protocol:
default: https
description: protocol for communication
enum:
- http
- https
address:
default: 127.0.0.1
description: The location which the ECC resides
port:
default: '80'
description: 80, 443 or alternative
security:
- BasicAuth: []
tags:
- name: Collection and Survey
paths:
/v2/collections:
get:
tags:
- Collection and Survey
summary: Lists all collections for the specified case
description: 'Lists all collections for the specified case.
Note that completed and failed collections are listed as well as currently running collections'
operationId: listCaseCollection
parameters:
- name: caseId
in: query
description: Case identification token of the case to list collections
required: true
schema:
type: string
responses:
'200':
description: Successful Listing of Collections
content:
application/json:
schema:
$ref: '#/components/schemas/listCaseCollectionResponse'
example:
collections:
- id: 110
caseId: 103
name: Latest Collect and Relocate
status: Open
'400':
description: Invalid Case ID supplied
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 400
id: 101
message: Invalid Case ID supplied
post:
tags:
- Collection and Survey
summary: Launch a new collection by Custodian
description: 'Launch a new collection for one or more Custodians.
If location is blank the location is determined from the specified Collection Configuration
Must specify at least one Custodian ID'
operationId: launchCaseCollection
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionRequest'
example:
caseId: 0
name: name of the new collection
configurationId: 0
location: C://collections
custodianIds:
- 1
- 2
- 3
- 4
responses:
'200':
description: Collection was submitted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionResponse'
example:
collectionId: 103
computers:
- computerName: AUSYD-L-NX0142
computerId: E21287F5-9E96-6CFF-0624-056AFA28E902
jobs:
- id: 102
taskName: Collect
taskNum: 1
totalTasks: 1
'400':
description: Invalid Case ID supplied
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 400
id: 101
message: Invalid Case ID supplied
'504':
description: No valid targets selected
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 504
id: 101
message: No valid targets selected
/v2/collectionsByPath:
post:
tags:
- Collection and Survey
summary: Launch a new collection explicitly defining folders and files with no custodian.
description: 'Launch a new collection explicitly defining folders and files with no custodian.
**Note\:** if autoDetect is used it must have the value AllLocalVolumes and when used all files and folders fields are ignored.'
operationId: launchCollectionsByPath
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionByPathRequest'
example:
caseId: 0
name: name of the new collection
computerId: ABCDEF-12345
configurationId: 0
location: C://collections
label: a label
autodetect: ''
folders:
- c:/path1
- c:/path2
files:
- C:/path/file1.csv
- C:/path/file2.txt
folderSpec:
- folder: C://somePath
excludeFolders:
- subPath
- subPath2
excludeFiles:
- someFile.txt
- someFile2.txt
excludeWildcards:
- '*.pdf'
responses:
'200':
description: Collection was submitted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionResponse'
example:
collectionId: 103
computers:
- computerName: AUSYD-L-NX0142
computerId: E21287F5-9E96-6CFF-0624-056AFA28E902
jobs:
- id: 102
taskName: Collect
taskNum: 1
totalTasks: 1
'400':
description: Invalid Case/Computer ID supplied or no collections were specified
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 400
id: 101
message: Invalid Case ID supplied
'504':
description: No valid targets selected
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 504
id: 101
message: No valid targets selected
/v2/collectionsByTarget:
post:
tags:
- Collection and Survey
summary: Launch a new collection specifying only target and collection configuration
description: 'Launch a new collection specifying only target and collection Configuration.
**Note\:** All other job criteria will be determined from the specified Collection Configuration'
operationId: launchCollectionsByTarget
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionByTargetRequest'
example:
caseId: 0
name: name of the new collection
targetId: 1
configurationId: 0
location: C://collections
responses:
'200':
description: Collection was submitted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionResponse'
example:
collectionId: 103
computers:
- computerName: AUSYD-L-NX0142
computerId: E21287F5-9E96-6CFF-0624-056AFA28E902
jobs:
- id: 102
taskName: Collect
taskNum: 1
totalTasks: 1
'400':
description: Invalid Case/Target ID supplied
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 400
id: 101
message: Invalid Case ID supplied
'504':
description: No valid targets selected
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 504
id: 101
message: No valid targets selected
/v2/collectionsByConfiguration:
post:
tags:
- Collection and Survey
summary: Launch a new collection for a specific computer and Collection Configuration
description: 'Launch a new collection for a specific computer and Collection Configuration.
Optionally, the destination can be specified in the `location` field.
**Note\:** since no targets or explicit sources are defined in the API body, the specified Collection Configuration must specify the collection source(s).
**Note\:** if the specified Collection Configuration contains targets, they will be ignored in favor of the specified computer.'
operationId: launchCollectionsByConfiguration
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionByConfigurationRequest'
example:
caseId: 0
name: name of the new collection
computerId: 1
configurationId: 0
location: C://collections
responses:
'200':
description: Collection was submitted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/launchCaseCollectionByConfigurationResponse'
example:
collectionId: 103
computers:
- computerName: AUSYD-L-NX0142
computerId: E21287F5-9E96-6CFF-0624-056AFA28E902
jobs:
- id: 102
taskName: Collect
taskNum: 1
totalTasks: 1
'400':
description: Invalid Case/Computer/Configuration ID supplied
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 400
id: 101
message: Invalid Case ID supplied
'504':
description: No valid targets selected
content:
application/json:
schema:
$ref: '#/components/schemas/standardResponse'
example:
code: 504
id: 101
message: No valid targets selected
components:
schemas:
standardResponse:
type: object
properties:
code:
type: integer
description: http response status code
id:
type: integer
description: id of the affected Object
message:
type: string
description: http status message
launchCaseCollectionResponse:
type: object
properties:
collectionId:
type: integer
description: id of the newly started collection
jobs:
type: array
description: array of job IDs that have been started within the collection
items:
type: integer
CollectionDetail:
type: object
properties:
id:
type: integer
description: id of the collection
caseId:
type: integer
description: id of the case that owns the collection
name:
type: string
description: name of the collection
status:
type: string
description: status of the case
launchCaseCollectionByConfigurationRequest:
type: object
properties:
caseId:
type: integer
description: id of the case within which to start a collection
name:
type: string
description: name of the new collection (must be unique)
computerId:
type: string
description: GUID value that identifies the computer
configurationId:
type: integer
description: id of the collection configuration to use for collection criteria
location:
type: string
description: destination of the collection (if blank uses the location within the specified collection configuration)
launchCaseCollectionByPathRequest:
type: object
properties:
caseId:
type: integer
description: id of the case within which to start a collection
name:
type: string
description: name of the new collection
computerId:
type: string
description: GUID value that identifies the computer
configurationId:
type: integer
description: id of the collection configuration to use for collection criteria
location:
type: string
description: destination of the collection (if blank uses the location defined in the specified collection configuration)
label:
type: string
description: optional, label to be assigned to all tasks within this collection
autodetect:
type: string
description: 'optional, auto-detect option to be used instead of files/folders.
If specified, must be `AllLocalVolumes`.
Note that if autodetect is used, the folders and files fields are ignored'
folders:
type: array
description: full path(s) of folder(s) to collect from on each target computer
items:
type: string
description: full path
files:
type: array
description: full path(s) of file(s) to collect from each target computer
items:
type: string
description: full path
folderSpec:
type: array
description: optional way to specify folders, allowing for exclusions within each specified folder
items:
$ref: '#/components/schemas/FolderSpec'
listCaseCollectionResponse:
type: object
properties:
collections:
type: array
items:
$ref: '#/components/schemas/CollectionDetail'
FolderSpec:
type: object
properties:
folder:
type: string
description: full path of the folder to collect from.
excludeFolders:
type: array
items:
type: string
description: optional, path(s) of folder(s) to exclude. These are relative paths, relative to the `folder` to collect from.
excludeFiles:
type: array
items:
type: string
description: optional, path(s) of file(s) to exclude. These are relative paths, relative to the `folder` to collect from.
excludeWildcards:
type: array
items:
type: string
description: 'optional, wildcard specification(s) (e.g *.pdf) specifying files to exclude from `folder` path.
Note that wildcard exclusions are recursive under `folder` path.'
launchCaseCollectionRequest:
type: object
properties:
caseId:
type: integer
description: id of the case within which to start a collection
name:
type: string
description: name of the new collection
configurationId:
type: integer
description: id of the collection configuration to use for collection criteria
location:
type: string
description: destination of the collection (if blank then destination determined by the specified collection configuration)
custodianIds:
type: array
description: id(s) of the custodian(s) for which to launch this collection
items:
type: integer
ComputerJobs:
type: object
properties:
computerName:
type: string
description: name of the computer where the job is running
computerId:
type: string
description: UUID of the computer
jobs:
type: array
description: List of tasks being run
items:
$ref: '#/components/schemas/JobCreated'
JobCreated:
type: object
properties:
id:
type: integer
description: ID of task
taskName:
type: string
description: Name of task, one of `Collect`, `Relocate` `Deploy` or `Launch`.
taskNum:
type: integer
description: Task number, defines sequence in a multi-job collection
totalTasks:
type: integer
description: Total number of tasks in the collection
launchCaseCollectionByTargetRequest:
type: object
properties:
caseId:
type: integer
description: id of the case within which to start a collection
name:
type: string
description: name of the new collection
targetId:
type: integer
description: id of the Target to use for sources
configurationId:
type: integer
description: id of the collection configuration to use for collection criteria
location:
type: string
description: destination of the collection (if blank uses the destination from the specified collection configuration)
launchCaseCollectionByConfigurationResponse:
type: object
properties:
collectionId:
type: integer
description: id of the newly created collection
computers:
type: array
description: array of computers where the job is running (there will be only one computer)
items:
$ref: '#/components/schemas/ComputerJobs'
securitySchemes:
BasicAuth:
type: http
scheme: basic