Luminance Documents API
The Documents API from Luminance — 19 operation(s) for documents.
The Documents API from Luminance — 19 operation(s) for documents.
openapi: 3.2.0
info:
title: Luminance Documents API
version: '1.0'
description: 'Operations tagged Documents across 3 of this provider''s published API definitions: luminance-api-v1-3-openapi-original.yml, luminance-api-v1-4-openapi-original.yml, luminance-public-api-v2-openapi-original.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{moniker}.app.luminance.com
description: Your Luminance instance
variables:
moniker:
default: your-instance
description: Instance moniker (e.g. acme)
tags:
- name: Documents
paths:
/projects/{project-id}/documents:
get:
tags:
- Documents
summary: Get Information on a Document collection
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/documentId'
- $ref: '#/components/parameters/createdAt'
- $ref: '#/components/parameters/createdBy'
- $ref: '#/components/parameters/folderId'
- $ref: '#/components/parameters/parentId'
- $ref: '#/components/parameters/documentName'
- $ref: '#/components/parameters/documentMedia_type'
- $ref: '#/components/parameters/documentState'
- $ref: '#/components/parameters/documentVersionGroup'
- $ref: '#/components/parameters/documentVersion'
- $ref: '#/components/parameters/documentVersionState'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/documents_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
delete:
tags:
- Documents
summary: Delete a collection of Documents.
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/project-id'
- in: query
description: Any one or more of the following parameters MUST be used as a query parameter in the deletion request. Please see the 'Document' schema for more information on each parameter
name: deletionparameters
required: true
schema:
type: object
properties:
document_id:
type: integer
format: int32
example: 4638
created_at:
type: string
format: date-time
example: '2021-10-25T11:58:31.879Z'
created_by:
type: integer
format: int32
minimum: 0
example: 5
folder_id:
type: integer
format: int32
minimum: 0
example: 8
parent_id:
type: integer
format: int32
minimum: 0
example: 3473
name:
type: string
format: string
minimum: 0
example: This is a contract.docx
media_type:
type: string
format: string
minimum: 0
example: application/vnd.openxmlformats-officedocument.wordprocessingml.document
state:
type: string
enum:
- import_pending
- import_complete
- import_failure
- upload_failure
- import_extracted
- upload_cancelled
example: import_complete
version_group:
type: integer
format: int32
minimum: 0
example: 247
version:
type: integer
format: int32
minimum: 0
example: 2
version_state:
type: string
enum:
- active
- draft
- replaced
example: active
minProperties: 1
additionalProperties: false
security:
- OAuth2: []
responses:
'204':
$ref: '#/components/responses/204'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/documents/{document-id}/traffic_light_analysis:
post:
tags:
- Documents
summary: Initiates Traffic Light Analysis on a document
parameters:
- $ref: '#/components/parameters/document-id'
- $ref: '#/components/parameters/project-id'
requestBody:
description: Send the taskId of the 'precedent' type Task (Knowledge Bank in the User Interface) which will be used to run traffic light analysis against the documentId in the path
required: true
content:
application/json:
schema:
type: object
properties:
task_id:
type: integer
example: 67
required:
- task_id
security:
- OAuth2: []
responses:
'202':
$ref: '#/components/responses/traffic_light_analysis_202'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/documents/{document-id}:
get:
tags:
- Documents
summary: Get Information on a Single Document
parameters:
- $ref: '#/components/parameters/document-id'
- $ref: '#/components/parameters/project-id'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/documents_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
delete:
tags:
- Documents
summary: Delete a Single Document
parameters:
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/document-id'
security:
- OAuth2: []
responses:
'204':
$ref: '#/components/responses/204'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/folders/{folder-id}/documents:
get:
tags:
- Documents
summary: Get Information on a Document collection
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/folder-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/documentId'
- $ref: '#/components/parameters/createdAt'
- $ref: '#/components/parameters/createdBy'
- $ref: '#/components/parameters/folderId'
- $ref: '#/components/parameters/parentId'
- $ref: '#/components/parameters/documentName'
- $ref: '#/components/parameters/documentMedia_type'
- $ref: '#/components/parameters/documentState'
- $ref: '#/components/parameters/documentVersionGroup'
- $ref: '#/components/parameters/documentVersion'
- $ref: '#/components/parameters/documentVersionState'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/documents_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
delete:
tags:
- Documents
summary: Delete a Document collection in a specific folder path
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/folder-id'
- $ref: '#/components/parameters/project-id'
- in: query
description: Any one or more of the following parameters MUST be used as a query parameter in the deletion request. Please see the 'Document' schema for more information on each parameter
name: deletionparameters
required: true
schema:
type: object
properties:
document_id:
type: integer
format: int32
example: 4638
created_at:
type: string
format: date-time
example: '2021-10-25T11:58:31.879Z'
created_by:
type: integer
format: int32
minimum: 0
example: 5
folder_id:
type: integer
format: int32
minimum: 0
example: 8
parent_id:
type: integer
format: int32
minimum: 0
example: 3473
name:
type: string
format: string
minimum: 0
example: This is a contract.docx
media_type:
type: string
format: string
minimum: 0
example: application/vnd.openxmlformats-officedocument.wordprocessingml.document
state:
type: string
enum:
- import_pending
- import_complete
- import_failure
- upload_failure
- import_extracted
- upload_cancelled
example: import_complete
version_group:
type: integer
format: int32
minimum: 0
example: 247
version:
type: integer
format: int32
minimum: 0
example: 2
version_state:
type: string
enum:
- active
- draft
- replaced
example: active
minProperties: 1
additionalProperties: false
security:
- OAuth2: []
responses:
'204':
$ref: '#/components/responses/204'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/folders/{folder-id}/documents/{document-id}:
get:
tags:
- Documents
summary: Get Information on a single Document in a specific folder path
parameters:
- $ref: '#/components/parameters/folder-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/document-id'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/documents_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
delete:
tags:
- Documents
summary: Delete a Document object in a specific folder path
parameters:
- $ref: '#/components/parameters/folder-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/document-id'
security:
- OAuth2: []
responses:
'204':
$ref: '#/components/responses/204'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/tasks/{task-id}/reviews/documents:
get:
tags:
- Documents
summary: Get Information on a Document collection in a specific task
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/task-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/documentId'
- $ref: '#/components/parameters/createdAt'
- $ref: '#/components/parameters/createdBy'
- $ref: '#/components/parameters/folderId'
- $ref: '#/components/parameters/parentId'
- $ref: '#/components/parameters/documentName'
- $ref: '#/components/parameters/documentMedia_type'
- $ref: '#/components/parameters/documentState'
- $ref: '#/components/parameters/documentVersionGroup'
- $ref: '#/components/parameters/documentVersion'
- $ref: '#/components/parameters/documentVersionState'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/documents_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
delete:
tags:
- Documents
summary: Delete multiple documents in a particular task path
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/task-id'
- $ref: '#/components/parameters/project-id'
- in: query
description: Any one or more of the following parameters MUST be used as a query parameter in the deletion request. Please see the 'Document' schema for more information on each parameter
name: deletionparameters
required: true
schema:
type: object
properties:
document_id:
type: integer
format: int32
example: 4638
created_at:
type: string
format: date-time
example: '2021-10-25T11:58:31.879Z'
created_by:
type: integer
format: int32
minimum: 0
example: 5
folder_id:
type: integer
format: int32
minimum: 0
example: 8
parent_id:
type: integer
format: int32
minimum: 0
example: 3473
name:
type: string
format: string
minimum: 0
example: This is a contract.docx
media_type:
type: string
format: string
minimum: 0
example: application/vnd.openxmlformats-officedocument.wordprocessingml.document
state:
type: string
enum:
- import_pending
- import_complete
- import_failure
- upload_failure
- import_extracted
- upload_cancelled
example: import_complete
version_group:
type: integer
format: int32
minimum: 0
example: 247
version:
type: integer
format: int32
minimum: 0
example: 2
version_state:
type: string
enum:
- active
- draft
- replaced
example: active
minProperties: 1
additionalProperties: false
security:
- OAuth2: []
responses:
'204':
$ref: '#/components/responses/204'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/tasks/{task-id}/reviews/documents/{document-id}:
get:
tags:
- Documents
summary: Get Information on a single Document in a specific task path
parameters:
- $ref: '#/components/parameters/task-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/document-id'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/documents_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
delete:
tags:
- Documents
summary: Delete a single Document in a particular task path
parameters:
- $ref: '#/components/parameters/task-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/document-id'
- in: query
description: Any one or more of the following parameters MUST be used as a query parameter in the deletion request. Please see the 'Document' schema for more information on each parameter
name: deletionparameters
required: true
schema:
type: object
properties:
document_id:
type: integer
format: int32
example: 4638
created_at:
type: string
format: date-time
example: '2021-10-25T11:58:31.879Z'
created_by:
type: integer
format: int32
minimum: 0
example: 5
folder_id:
type: integer
format: int32
minimum: 0
example: 8
parent_id:
type: integer
format: int32
minimum: 0
example: 3473
name:
type: string
format: string
minimum: 0
example: This is a contract.docx
media_type:
type: string
format: string
minimum: 0
example: application/vnd.openxmlformats-officedocument.wordprocessingml.document
state:
type: string
enum:
- import_pending
- import_complete
- import_failure
- upload_failure
- import_extracted
- upload_cancelled
example: import_complete
version_group:
type: integer
format: int32
minimum: 0
example: 247
version:
type: integer
format: int32
minimum: 0
example: 2
version_state:
type: string
enum:
- active
- draft
- replaced
example: active
minProperties: 1
additionalProperties: false
security:
- OAuth2: []
responses:
'204':
$ref: '#/components/responses/204'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/documents/{document-id}/download:
get:
tags:
- Documents
summary: Downloads the file content for a single Document object
parameters:
- $ref: '#/components/parameters/document-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/enable_token_based_linking'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/document_download_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/folders/{folder-id}/documents/{document-id}/download:
get:
tags:
- Documents
summary: Downloads the file content for a single Document object
parameters:
- $ref: '#/components/parameters/document-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/folder-id'
- $ref: '#/components/parameters/enable_token_based_linking'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/document_download_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/tasks/{task-id}/reviews/documents/{document-id}/download:
get:
tags:
- Documents
summary: Downloads the file content for a single Document object
parameters:
- $ref: '#/components/parameters/document-id'
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/task-id'
- $ref: '#/components/parameters/enable_token_based_linking'
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/document_download_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/projects/{project-id}/folders/{folder-id}/upload:
post:
tags:
- Documents
summary: Upload a single document to a specific folder path
parameters:
- $ref: '#/components/parameters/project-id'
- $ref: '#/components/parameters/folder-id'
- in: query
name: matter_id
type: integer
example: 675
description: matterId of the matter you wish to upload the document into.
- $ref: '#/components/parameters/matterVersionType'
- in: query
name: name
required: true
description: Name of document
schema:
type: string
format: string
minimum: 0
example: This is a contract.docx
- in: query
name: replace
required: false
description: Whether, if a document of the same name already exists in the current folder, to 'replace' that document (existing document will be set to version_state:replaced, and version_group will change to the document_id of the document being uploaded), or if 'false' will return a 422 error code and the request will not complete.
schema:
type: boolean
default: false
example: This is a contract.docx
description: The body of the request should contain the file you wish to upload, as a base64 encoded string.
requestBody:
required: true
content:
application/octet-stream:
schema:
type: string
format: byte
security:
- OAuth2: []
responses:
'200':
$ref: '#/components/responses/documents_200'
'401':
$ref: '#/components/responses/401'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'500':
$ref: '#/components/responses/500'
/api2/projects/{project_id}/documents:
servers:
- url: https://{moniker}.app.luminance.com
description: Your Luminance instance
variables:
moniker:
default: your-instance
description: Instance moniker (e.g. acme)
get:
tags:
- Documents
summary: List documents in a project
parameters:
- $ref: '#/components/parameters/projectId'
- in: query
name: id
schema:
type: integer
- in: query
name: folder_id
schema:
type: integer
- in: query
name: parent_id
schema:
type: integer
- in: query
name: name
schema:
type: string
- in: query
name: media_type
schema:
type: string
- in: query
name: state
schema:
type: string
- in: query
name: version_group
schema:
type: integer
- in: query
name: version
schema:
type: integer
- in: query
name: version_state
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Document_2'
example:
- id: 1
created_at: '2024-01-15T12:00:00.000Z'
created_by: 1
folder_id: 1
parent_id: 1
project_id: 1
name: Joe Bloggs
media_type: application/pdf
state: active
version_group: 1
version: 4.1.7
version_state: active
security:
- bearerAuth: []
delete:
tags:
- Documents
summary: Delete documents by filter
parameters:
- $ref: '#/components/parameters/projectId'
- in: query
name: id
schema:
type: integer
responses:
'204':
description: No Content
security:
- bearerAuth: []
/api2/projects/{project_id}/documents/{document_id}:
servers:
- url: https://{moniker}.app.luminance.com
description: Your Luminance instance
variables:
moniker:
default: your-instance
description: Instance moniker (e.g. acme)
get:
tags:
- Documents
summary: Get document
parameters:
- $ref: '#/components/parameters/projectId'
- in: path
name: document_id
required: true
schema:
type: integer
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Document_2'
example:
id: 1
created_at: '2024-01-15T12:00:00.000Z'
created_by: 1
folder_id: 1
parent_id: 1
project_id: 1
name: Joe Bloggs
media_type: application/pdf
state: active
version_group: 1
version: 4.1.7
version_state: active
'404':
description: Not found
security:
- bearerAuth: []
delete:
tags:
- Documents
summary: Delete single document
parameters:
- $ref: '#/components/parameters/projectId'
- in: path
name: document_id
required: true
schema:
type: integer
responses:
'204':
description: No Content
'404':
description: Not found
security:
- bearerAuth: []
/api2/projects/{project_id}/documents/{document_id}/download:
servers:
- url: https://{moniker}.app.luminance.com
description: Your Luminance instance
variables:
moniker:
default: your-instance
description: Instance moniker (e.g. acme)
get:
tags:
- Documents
summary: Download document data file
parameters:
- $ref: '#/components/parameters/projectId'
- in: path
name: document_id
required: true
schema:
type: integer
- in: query
name: enable_token_linking
schema:
type: string
enum:
- 'true'
- 'false'
responses:
'200':
description: File stream
content:
application/octet-stream:
schema:
type: string
format: binary
'403':
description: Forbidden
'404':
description: Not found
'422':
description: Unprocessable Entity
security:
- bearerAuth: []
/api2/projects/{project_id}/documents/{document_id}/traffic_light_analysis:
servers:
- url: https://{moniker}.app.luminance.com
description: Your Luminance instance
variables:
moniker:
default: your-instance
description: Instance moniker (e.g. acme)
post:
tags:
- Documents
summary: Start traffic light analysis for a document
parameters:
- $ref: '#/components/parameters/projectId'
- in: path
name: document_id
required: true
schema:
type: integer
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
task_id:
type: integer
required:
- task_id
example:
task_id: 1
responses:
'202':
description: Accepted
'422':
description: Validation error
security:
- bearerAuth: []
/api2/projects/{project_id}/documents/{document_id}/annotations:
servers:
- url: https://{moniker}.app.luminance.com
description: Your Luminance instance
variables:
moniker:
default: your-instance
description: Instance moniker (e.g. acme)
get:
tags:
- Documents
summary: List document annotations
parameters:
- $ref: '#/components/parameters/projectId'
- in: path
name: document_id
required: true
schema:
type: integer
- in: query
name: id
schema:
type: integer
- in: query
name: type
schema:
type: string
- in: query
name: roles
schema:
oneOf:
- type: string
- type: array
items:
type: string
- in: query
name: state
schema:
type: string
- in: query
# --- truncated at 32 KB (47 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/luminance/refs/heads/main/openapi/luminance-documents-api-openapi.yml