][ Public API (v1.3.0)

Download OpenAPI specification:Download

Introduction

Welcome to the IPRO Public API.

You can use SwaggerUI to test requests.

There is a sample usage script in JavaScript. To run it you'll need node.js 14+ with axios package installed.

An example demonstrating advanced export workflows is also available.

Example scripts for chunked file upload are provided for PowerShell and bash.

Authentication

Creating a Public API Client

To authenticate, a Public API client must be created in the IPRO Enterprise website, under System Manager. Only users in the "SuperAdmin" group can create Public API Clients.

The client_id and client_secret set, during the API client creation, can be used to obtain a token. (example script here)

bearerToken

APIs are secured using bearer JSON Web Tokens (JWTs), issued by IPRO Identity Server. The token is expected to be in the Authorization header of a request. The value is expected to have the bearer JWT.

Example header:

Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

Tokens can be retrieved from the IPRO Identity Server using OAuth2.0 flow with client credentials grant type. The token endpoint can be found in the configuration discovery document. Example URL: https://<your_url>/auth/.well-known/openid-configuration.

API endpoints are documented with the scopes required to access. The scopes must be requested when sending the below client credentials request to IPRO Identity Server.

The below request example can be used to obtain a token. Replace Host, client_id, and client_secret with actual values.

POST /auth/connect/token HTTP/1.1
Host: example-site.ipro.com
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials
&client_id=xxxxxxxx
&client_secret=xxxxxxxx
&scope=ipro.papi%20ipro.api%20ipro.superadmin

Quick Reference

Versioning

You can check what is the current version via OpenAPI description document's info.version value.

Typical version looks like v1.3, where:

  • v1 is a major version. It corresponds to server URL prefix where API is accessible: https://<host>/v1/cases. It is incremented when the contract introduces any breaking changes.
  • .3 is a minor version. It is incremented for non-breaking changes.

Special type is a preview version. For example, v1.0-preview.1 is a preview version for v1.0. Any changes between preview versions v1.0-preview.2 and v1.0-preview.1 might be backward incompatible.

Response Envelope

All responses follow the format:

{
    "data": {},
    "error": {
        "code": "API0012",
        "message": "An error occurred. See logs for further details.",
        "exceptionMessage": "One or more errors occurred. (Failed to subscribe. ResponseErrorMsg=[Object cannot be cast from DBNull to other types.])"
    },
    "pagination": {}
}
  • data is not present or null if there is an error
  • error is not present or null if there is no error
  • pagination is present only for paginated collections

Pagination

Requests that return multiple results will be paginated to 100 items by default. You can use the pageNumber parameter to specify which page of data to retrieve. Pages start from 1.

To set page size, you use the pageSize query param. This sets the maximum page size. Please note that this does not guarantee that, that many items will be returned, even if there are more items than the maximum page size. It does guarantee that no more than the number provided will be returned.

API responses return pre-built pagination links first, prev, next and last and client applications are encouraged to follow these links for pagination.

Filtering

All filtering for collections uses filter query parameter. Beware, not all collections support all filtering capabilities described in this section.

Example: &filter=name@=awesome title,jobType==imaging (items with a name that contains the phrase "awesome title" and jobType equals "imaging")

filter is a comma-delimited list of {Name}{Operator}{Value} where

  • {Name} is the name of a property. You can also have multiple names (for OR logic) by using a pipe delimiter and parentheses, eg. (LikeCount|CommentCount) > 10 asks if LikeCount or CommentCount is >10
  • {Operator} is one of the supported operators.
  • {Value} is the value to use for filtering. You can also have multiple values (for OR logic) by using a pipe delimiter, eg. Title@=new|hot will return items with titles that contain the text "new" or "hot".

Notes:

  • You can use backslashes to escape commas and pipes within value fields.
  • You can have spaces anywhere except within {Name} or {Operator} fields.
  • Nested objects can be referenced with periods . between property names, such as: queue.pending>=10.

Operators:

Operator Meaning
!= not equals
!@= does not contain
!@=* case-insensitive string does not contain
!_= does not Starts with
!_=* case-insensitive string does not starts with
< less than
<= less than or equal to
== equals
==* case-insensitive string equals
> greater than
>= greater than or equal to
@= contains
@=* case-insensitive string contains
_= starts with
_=* case-insensitive string starts with

Updating Resources

If not stated otherwise, the main method for update is using PATCH with JSON Merge Patch format. Refer to the brief explanation here.

You may notice that some fields are still required in update requests, for example schedule.type. Generally, this can be expected for fields in nested and/or polymorphic objects because we want to make sure that change is intentional and doesn't cause unexpected side-effects.

Asynchronous Operations

Some operations are marked as asynchronous, because they might require some time to complete. Such operations return operationLocation link in the response, which can be used to track operation status (see Operations for details).

Checking operation status via operation endpoint follows polling pattern. But we also support webhooks. The workflow is (for example, case creation):

  1. Register webhook and subscribe to case creation events. (see User notifications for details)
  2. Send request to create a case.
  3. After case creation completion you'll be notified via webhook that case was created via event Enterprise.Case.Created (or if not, with the event Enterprise.Case.CreateFailed).

Most of the events can be traced back to the requests that triggered them via correlation id.

Changelog

All v1.0.0 thru v1.2.0 interactions remain valid; only additions have been made.

v1.3.0 (IPRO release 2022.11.0)

  • Added OCR. New endpoints:
    • /workflows/ocr
    • /workflows/ocr/{id}
    • /workflows/ocr/{id}/pause
    • /workflows/ocr/{id}/resume
    • /workflows/ocr/{id}/cancel

v1.2.0

  • Added reporting. New endpoints:
    • /reports/result/{id}
    • /workflows/{workflowType}/{id}/reports
    • /workflows/{workflowType}/{id}/reports/{reportId}
  • Updated tags: Workflow Reports -> Workflow Status
  • New event notification type: Enterprise.Report.Executed

v1.1.0 (IPRO release 2022.10.0)

  • Added export management and workflows. New endpoints:
    • /exportSeries/{id}
    • /workflows/export/{id}
    • /workflows/export/{id}/pause
    • /workflows/export/{id}/resume
    • /workflows/export/{id}/cancel
    • /workflows/export/{id}/documents
    • /workflows/export
    • /cases/{id}/exportSeries
    • /cases/{id}/workflows/export

Modified Endpoints

POST /cases

  • Request body updated
    • New property: capabilities.ingestion.baseCase.includeAllExportSeries
    • New property: capabilities.ingestion.exportErrorDocuments
    • New property: capabilities.ingestion.exportIntervalMinutes

GET /cases/{id}

  • Modified response: 200
    • New property: data.capabilities.ingestion.activeExportSeriesId
    • New property: data.capabilities.ingestion.exportErrorDocuments
    • New property: data.capabilities.ingestion.exportIntervalMinutes

PATCH /cases/{id}

  • Request body updated
    • New property: capabilities.eda.enabled
    • New property: capabilities.ingestion
    • New property: capabilities.review

GET /cases/{id}/workflows/ingestion and GET /workflows/ingestion

  • Modified response: 200
    • New property: data.items[*].activeExportSeriesId
    • New property: data.items[*].documentCount

GET /workflows/ingestion/{id}

  • Modified response: 200
    • New property: data.activeExportSeriesId
    • New property: data.documentCount

v1.0.0

  • Initial public release.

Connectors

Use connectors to structure data ownership. There are several categories of connectors:

  • live connectors (e.g., Box, M365, etc)
  • archive connectors (used for storing data in NetGovern-specific format)

Retrieve a list of connectors for a client

Retrieve a list of all connectors for a client.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Uploads

Allows uploading your own data for ingestion workflows.

To preserve data integrity, particularly document dates, only archive/container type files can be uploaded. An error will occur if you attempt to import a file that is not in an archive/container format. Allowed formats:

  • File archives (such as .ZIP files)
  • Mail archives (such as .PST files)
  • Forensic image files (such as .E01 files)

The upload API provides a way to reliably upload large files using chunked uploads. Client application uploads a file in parts, allowing it to recover from a failed requests. Thus, an application needs to retry the upload of a single chunk instead of the entire file. We also support uploading chunks concurrently.

Chunked uploads require a sequence of API calls to be made:

  1. Create an upload session
  2. Upload chunks
  3. Check upload status

Create upload session

Create a new upload session for a file.

When a session is created successfully the response includes a session id, allowed chunk size, and how many chunks can be uploaded concurrently.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
filename
required
string non-empty
fileSize
required
integer >= 0

File size in bytes

caseId
required
string (Id) [ 1 .. 500 ] characters

The resource identifier. The format varies for different resources.

description
string

This property can be used to store additional information about the upload for your own records. If not provided, it will be equal to filename.

fileModifiedAt
string <date-time>

Defines the time the file was last modified at. If not set, the upload time will be used.

Responses

Request samples

Content type
application/json
{
  • "filename": "index.zip",
  • "fileSize": 70609,
  • "caseId": "1",
  • "description": "Index archive for Test Case",
  • "fileModifiedAt": "2021-09-26T22:45:40.355Z"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Upload file chunk

Upload a chunk of an upload session for a file.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: multipart/form-data
currentChunkNumber
required
integer >= 1

The index of the chunk in the current upload. First chunk is 1.

chunkSize
required
integer >= 0

The chunk size set during upload session creation. Note that the actual size of a chunk might be lower than this value for the last chunk.

totalFileSize
required
integer >= 0
totalNumberOfChunks
required
integer >= 1

The total number of chunks.

filename
required
string non-empty
file
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Check upload session status

Check upload session status.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel upload session

Cancel an upload session and discard all data uploaded.

This cannot be reversed.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Case Hierarchy

APIs for managing case hierarchy, which is: Managing client > Client > Cases.

Retrieve a list of managing clients

Retrieve a list of all managing clients.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a managing client

Retrieve a managing client.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a list of clients

Retrieve a list of clients.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a client

Retrieve a client.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cases

Cases API provide ability to create and manage cases.

Case Created Successfully Webhook

Event fires when case creation completes successfully

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (CaseCreated) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Case Create Failed Webhook

Event fires when case creation completes with error

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (CaseCreateFailed) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Case Updated Successfully Webhook

Event fires when updating an existing case completes successfully

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (CaseUpdated) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Case Update Failed Webhook

Event fires when updating an existing case completes with error

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (CaseUpdateFailed) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Case Deleted Successfully Webhook

Event fires when deleting a case completes successfully

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (CaseDeleted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Case Delete Failed Webhook

Event fires when deleting a case completes with error

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (CaseDeleteFailed) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Retrieve a list of cases for a client

Retrieve a list of cases for a client.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a list of connectors for a client

Retrieve a list of all connectors for a client.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a list of all cases

Retrieve a list of all cases.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Create a case

Create a new case.

This operation is asynchronous. To check the status use operations endpoint or subscribe to events via webhooks.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
name
required
string non-empty ^[^~!@#$%^&*()+=\[\]{}";:\\|,.<>\/?]+$
required
object
required
object

Responses

Request samples

Content type
application/json
Example
{
  • "name": "Case-01",
  • "hierarchy": {
    },
  • "capabilities": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a case

Retrieve a case.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update a case

Update a case using JSON Merge Patch.

This operation is asynchronous. To check the status use operations endpoint or subscribe to events via webhooks.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/merge-patch+json
name
string non-empty ^[^~!@#$%^&*()+=\[\]{}";:\\|,.<>\/?]+$
object

Responses

Request samples

Content type
application/merge-patch+json
Example
{
  • "name": "Updated Case Name"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Delete a case

Delete a case. If the case has additional temporary locations or workflows attached, they will also be deleted.

This operation is asynchronous. To check the status use operations endpoint or subscribe to events via webhooks.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Export Series

APIs for managing export series in the context of a case's ingestion capability. Export series are added during case creation. If using a base case template with includeAllExportSeries property set to True, and creating a new client, the existing series from the base case's client will be copied. Otherwise, the existing series in the client will be available. If Ingestion and Review capabilities are enabled, then a default export series will be created to push data to Review. More than one case can reference the same export series under the same client.

Retrieve all available export series by case

Retrieve export series.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Get export series settings

Get the output and numbering settings for an Export Series

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
Example
{
  • "id": "15",
  • "name": "Export to Review - 18",
  • "output": {
    },
  • "numbering": {
    }
}

Update export series settings

Update the settings of an export series

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/merge-patch+json
name
string non-empty
object
object

Responses

Request samples

Content type
application/merge-patch+json
Example
{
  • "output": {
    },
  • "numbering": {
    }
}

Response samples

Content type
application/json
{
  • "data": { }
}

Delete an export series

Delete an export series. Existing export workflows will not be deleted.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Ingestion

Ingestion workflows can be configured to push data into a Review case, or to disk, or to Relativity (Load File).

Ingestion Workflow Started Webhook

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (IngestionWorkflowStarted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Ingestion Workflow Completed Webhook

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (IngestionWorkflowCompleted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Retrieve a list of all ingestion workflows

Retrieve a list of all ingestion workflows. Currently filter requires filtering by caseId==

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
query Parameters
filter
required
string

Comma-delimited list of filters, see documentation for details.

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Create ingestion workflows

Create new ingestion workflow(s). One workflow will be created for each custodian/path(s) passed in. Workflows are automatically started upon creation.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
name
required
string non-empty
caseId
required
string (Id) [ 1 .. 500 ] characters

The resource identifier. The format varies for different resources.

required
Array of PathsDataLocation (object) or UploadDataLocation (object) [ 1 .. 10 ] items [ items ]

Each object passed in will be used to create a single workflow. A maximum of ten (10) workflows are allowed per request.

Responses

Request samples

Content type
application/json
{
  • "name": "Ingestion workflow",
  • "caseId": "2",
  • "dataLocations": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a list of all ingestion workflows for a case

Retrieve a list of all ingestion workflows for a case

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve an ingestion workflow

Retrieve an ingestion workflow.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Pause an ingestion workflow

Pause an ingestion workflow. By default, pauses an entire ingestion workflow and all jobs within. Optional properties can be provided to pause specific job types in the workflow.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/json
streaming
boolean
Default: true

Apply action to the streaming job(s) within the ingestion workflow.

export
boolean
Default: true

Apply action to the export job(s) within the ingestion workflow.

Responses

Request samples

Content type
application/json
{
  • "streaming": true,
  • "export": true
}

Response samples

Content type
application/json
{
  • "data": { }
}

Resume an ingestion workflow

Resume an ingestion workflow. By default, resumes an entire ingestion workflow and all jobs within. Optional properties can be provided to resume specific job types in the workflow.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/json
streaming
boolean
Default: true

Apply action to the streaming job(s) within the ingestion workflow.

export
boolean
Default: true

Apply action to the export job(s) within the ingestion workflow.

Responses

Request samples

Content type
application/json
{
  • "streaming": true,
  • "export": true
}

Response samples

Content type
application/json
{
  • "data": { }
}

Cancel an ingestion workflow

Cancel an ingestion workflow. By default, cancels the workflow and all jobs within. Optional properties can be provided to cancel specific job types in the workflow. Cancelled jobs will be deleted. The ingestion workflow will also be deleted when all jobs are cancelled.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/json
streaming
boolean
Default: true

Apply action to the streaming job(s) within the ingestion workflow.

export
boolean
Default: true

Apply action to the export job(s) within the ingestion workflow.

Responses

Request samples

Content type
application/json
{
  • "streaming": true,
  • "export": true
}

Response samples

Content type
application/json
{
  • "data": { }
}

Export

Export workflows allow for advanced export of specific documents into a Review case, or to disk, or to Relativity (Load File).

Documents are provided to the export workflow.

Export Workflow Started Webhook

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (ExportWorkflowStarted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Export Workflow Completed Webhook

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (ExportWorkflowCompleted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Retrieve a list of all export workflows

Retrieve a list of all export workflows. Currently filter requires filtering by caseId==

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
query Parameters
filter
required
string

Comma-delimited list of filters, see documentation for details.

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Create export workflow

Create new export workflow. The workflow is automatically started upon creation.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
name
required
string non-empty
caseId
required
string (Id) [ 1 .. 500 ] characters

The resource identifier. The format varies for different resources.

activeExportSeriesId
required
string (Id) [ 1 .. 500 ] characters

The resource identifier. The format varies for different resources.

required
Array of objects (ResourceId) non-empty [ items ]

List of processed documents from an Ingestion workflow, referenced by the item id.

Responses

Request samples

Content type
application/json
{
  • "name": "Export Workflow example",
  • "caseId": "2",
  • "activeExportSeriesId": "4",
  • "documents": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve an export workflow

Retrieve an export workflow.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a list of all export workflows by case

Retrieve a list of all export workflows by case

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve export workflow documents

Retrieve documents associated with an export workflow.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Pause an export workflow

Pause an export workflow

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Resume an export workflow

Resume an export workflow

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Cancel an export workflow

Cancel an export workflow. Cancelled jobs will be deleted.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

OCR

OCR workflows process images and produce searchable text files in-place.

OCR Workflow Started Webhook

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (OcrWorkflowStarted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

OCR Workflow Completed Webhook

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (OcrWorkflowCompleted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Retrieve a list of all OCR workflows

Retrieve a list of all OCR workflows.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
query Parameters
pageNumber
integer >= 1
Default: 1

The collection page number

pageSize
integer [ 1 .. 100 ]
Default: 100

The number of items to return per page

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "pagination": {
    }
}

Create OCR workflow

Create new OCR workflow. The workflow is automatically started upon creation.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
name
required
string non-empty
path
required
string non-empty

UNC path to the location OCR will be performed on.

ocrLanguages
Array of strings (OcrLanguages) non-empty

Languages to use during OCR of images. Will default to using English (EN) if not passed in. When creating a job for Arabic (AR), no other languages can be included in the request. Only one of: Chinese (ZH-HANS, ZH-HANT), Japanese (JA), or Korean (KO), may be used at a time.

Enum values:

  • EN - English
  • AR - Arabic
  • ZH-HANS - Chinese (Simplified)
  • ZH-HANT - Chinese (Traditional)
  • JA - Japanese
  • KO - Korean
  • AF - Afrikaans
  • SQ - Albanian
  • EU - Basque
  • BE - Belarusian
  • BG - Bulgarian
  • CA - Catalan
  • HR - Croatian
  • CS - Czech
  • DA - Danish
  • NL - Dutch
  • ET - Estonian
  • FO - Faroese
  • FI - Finnish
  • FR - French
  • GL - Galician
  • DE - German
  • EL - Greek
  • HU - Hungarian
  • IS - Icelandic
  • ID - Indonesian
  • IT - Italian
  • LV - Latvian
  • LT - Lithuanian
  • MK - Macedonian
  • NO - Norwegian
  • PL - Polish
  • PT - Portuguese
  • PT-BR - Portuguese (Brazil)
  • RO - Romanian
  • RU - Russian
  • SR-LATN-CS - Serbian
  • SR-CYRL-CS - Serbian (Cyrillic)
  • SK - Slovak
  • SL - Slovenian
  • ES - Spanish
  • SV - Swedish
  • TR - Turkish
  • UK - Ukrainian

Responses

Request samples

Content type
application/json
Example
{
  • "name": "OCR - JS923",
  • "path": "\\\\server-name\\path\\to\\images\\923"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve an OCR workflow

Retrieve an OCR workflow.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Pause an OCR workflow

Pause an OCR workflow

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Resume an OCR workflow

Resume an OCR workflow

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Cancel an OCR workflow

Cancel an OCR workflow. Workflow will persist after cancellation.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Workflow Status

APIs to check workflow reports.

Retrieve status of the workflow

Retrieve status of the workflow.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
workflowType
required
string non-empty

The workflow type

Possible values: ingestion, export, ocr

id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
Example
{
  • "data": {
    }
}

Retrieve workflow errors

Retrieve workflow errors.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
workflowType
required
string non-empty

The workflow type

Possible values: ingestion, export, ocr

id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Reports

APIs to retrieve executed report data

Report Executed Webhook

Event fires when a report execution completes (payload contains success details)

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
userExternalId
string

User ID of the subscribed user

userPrincipalName
string

Username of the subscribed user

batchSize
number

The current size of the returned notifications (set in the user notification configuration)

protocolVersion
number

Protocol version of the Webhook.

Array of objects (ReportExecuted) [ items ]

Responses

Request samples

Content type
application/json
{
  • "userExternalId": "73a32201-aeaf-47f6-8e54-209d10687f92",
  • "userPrincipalName": "jdoe@ipro.com",
  • "batchSize": 10,
  • "protocolVersion": 1,
  • "notifications": [
    ]
}

Retrieve a list of workflow reports

Retrieve a list of available reports by workflow type.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
workflowType
required
string non-empty

The workflow type

Possible values: ingestion, export, ocr

id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
Example
{
  • "data": {
    }
}

Execute a workflow report

Execute a workflow report by workflow type, workflow id, and report id.

This operation is asynchronous. To check the status use operations endpoint or subscribe to events via webhooks.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
workflowType
required
string non-empty

The workflow type

Possible values: ingestion, export, ocr

id
required
string [ 1 .. 500 ] characters

The resource identifier string

reportId
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve the result of an executed report

Retrieves result of an executed report. The result can be retrieved as JSON or CSV. To retrieve report result as CSV, provide Accept request header with value of text/csv. If no header is sent, then application/json will be the default content type.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
Example
{
  • "fileType": [
    ],
  • "fileExtension": [
    ]
}

Operations

APIs to check status of async operations.

Retrieve status of the operation

Retrieve status of the operation.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
category
required
string non-empty

Operation category

id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
Example
{
  • "data": {
    }
}

Users

APIs for managing users.

Retrieve a list of all users

Retrieve a list of all users.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
query Parameters
pageNumber
integer >= 1
Default: 1

The collection page number

pageSize
integer [ 1 .. 100 ]
Default: 100

The number of items to return per page

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "pagination": {
    }
}

Create a user

Create a new user.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
username
required
string non-empty
email
required
string non-empty
password
required
string <password> non-empty

Password must meet the complexity requirements set by the IPRO Identity Server

firstName
string non-empty
lastName
string non-empty
active
boolean
Default: true

Whether the user has access to login

accessToReview
boolean
Default: true

Whether the user has access to Review

forcePasswordReset
boolean
Default: false

Requires the user to set a new password on next login

Responses

Request samples

Content type
application/json
Example
{
  • "username": "jhalpert",
  • "email": "jhalpert@dundermifflin.com",
  • "password": "sTr0NgP@ssw0RD",
  • "firstName": "Jim",
  • "lastName": "Halpert"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a user

Retrieve a user.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update a user

Update a user using JSON Merge Patch.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/merge-patch+json
username
string non-empty
email
string non-empty
firstName
string or null
lastName
string or null
active
boolean

Whether the user has access to login

accessToReview
boolean

Whether the user has access to Review

forcePasswordReset
boolean

Requires the user to set a new password on next login. Once set to true, you cannot revert it to false until a user logs in and changes their password.

Responses

Request samples

Content type
application/merge-patch+json
{
  • "username": "string",
  • "email": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "active": true,
  • "accessToReview": true,
  • "forcePasswordReset": true
}

Response samples

Content type
application/json
{
  • "data": { }
}

Delete a user

Delete a user.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

Groups

APIs for managing groups.

Retrieve a list of all groups

Retrieve a list of all groups.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
query Parameters
pageNumber
integer >= 1
Default: 1

The collection page number

pageSize
integer [ 1 .. 100 ]
Default: 100

The number of items to return per page

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "pagination": {
    }
}

Create a group

Create a new group.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
Request Body schema: application/json
name
required
string non-empty
Array of objects (ResourceIdList) [ items ]

Responses

Request samples

Content type
application/json
{
  • "name": "Internal Reviewers",
  • "permissions": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Retrieve a group

Retrieve a group.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update a group

Update a group using JSON Merge Patch.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/merge-patch+json
name
string non-empty
Array of objects (ResourceIdList) [ items ]

Responses

Request samples

Content type
application/merge-patch+json
Example
{
  • "name": "New Group Name",
  • "permissions": [
    ]
}

Response samples

Content type
application/json
{
  • "data": { }
}

Delete a group

Delete a group.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": { }
}

List the group's users

Retrieve a list of the group's users.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Set a group's users

Set a group's users. Non-existing users are ignored. To remove all users from the group, send an empty list.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/json
required
Array of objects (ResourceId) [ items ]

Responses

Request samples

Content type
application/json
{
  • "users": [
    ]
}

Response samples

Content type
application/json
{
  • "data": { }
}

List the group's cases

Retrieve a list of the group's cases.

The list will be empty for predefined groups, since they have access to all cases.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Set a group's cases

Set a group's cases.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/json
required
Array of objects (ResourceIdList) [ items ]

Responses

Request samples

Content type
application/json
{
  • "cases": [
    ]
}

Response samples

Content type
application/json
{
  • "data": { }
}

List the group's assigned permissions

Retrieve a list of the group's assigned permissions.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Permissions

APIs for managing group permissions.

Retrieve a list of permissions

Retrieve a list of permissions that can be assigned to a group on creation or update.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

User Notifications

APIs subscribing users for webhook notifications. Currently only users who are members of the predefined SuperAdmin group are supported.

Update a user notification configuration

Update a user notification configuration. If there was an active user subscription in place, update might trigger creation of the new subscription. In this case, a new subscription id will be returned.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/json
webhookClientUrl
required
string [ 1 .. 128 ] characters

The URL exposed by the webhook client and ready to receive the subscribed user notifications.

batchSize
integer [ 1 .. 100 ]
Default: 10

Number of notifications to send to the subscribed user. For example:

  • If batchSize: 1, the user is notified as soon as a new event occurs. Webhook notification will have notifications list with 1 event.
  • If batchSize: 2, the user is notified only when there are 2 events in queue; notifications array will have 2 events (potentially with different event types).
protocolVersion
integer [ 1 .. 1 ]
Default: 1

Protocol version of webhook to be used.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
Example
{
  • "data": { }
}

Retrieve an active user's subscription

Retrieve an active user's subscription information.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update user's subscription

Update user's subscription.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Request Body schema: application/json
required
object

Channels user would like to be notified through.

required
Array of objects non-empty [ items ]

Event types user wants to subscribe to.

Responses

Request samples

Content type
application/json
{
  • "eventTypes": [
    ],
  • "channels": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel user's subscription

Cancel user's subscription. If there was an active user subscription, response will contain its id.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
Example
{
  • "data": { }
}

Retrieve event types for a user

Retrieve a list of all subscribable event types for a particular user. These events can be used for configuring user subscriptions.

Authorizations:
bearerToken (
  • ipro.papi
  • ipro.api
  • ipro.superadmin
)
path Parameters
id
required
string [ 1 .. 500 ] characters

The resource identifier string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}