Skip to content

LegalOn API (1.3.1)

API documentation for LegalOn services

Languages
Servers
The server URL is `{api_base_url}/rest/v1`. You can construct the server URL using the value of `api_base_url` provided in the response when obtaining an access token.
https://{api_base_url_without_scheme}/rest/v1

Users

Operations about user

Operations

User Groups

Operations about user group

Operations

Workspaces

Operations about all tenant workspaces/folders regardless of the user's access permissions.

Operations

Departments

Operations about department

Operations

Contracts(Files)

Operations to create, retrieve, update, and delete contracts. For operations that target a workspace, specify a workspace_id obtained via the common Workspaces endpoint (GET /workspaces).

Operations

Update contract custom attribute values

Request

Updates 1 to 50 values in one request. Omitted definitions remain unchanged. Omit text_value on a specified definition to clear its value. If an unknown ID is included, the request is rejected and none of the values are updated.

Security
OAuth2ClientCredentials
Path
document_idstring(uuid)required

Contract document ID.

Bodyapplication/jsonrequired
custom_attributesArray of objects(ContractCustomAttributePatch)[ 1 .. 50 ] itemsrequired
custom_attributes[].​setting_idstring(uuid)required

Definition ID.

custom_attributes[].​text_valuestring[ 1 .. 300 ] characters

New text value. Omit to clear the value.

curl -i -X PATCH \
  'https://{api_base_url_without_scheme}/rest/v1/contracts/{document_id}/custom-attributes' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "custom_attributes": [
      {
        "setting_id": "a85785e9-b0c4-4f26-bdb1-2832c57d90d8",
        "text_value": "string"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
custom_attributesArray of objects(ContractCustomAttribute)required
custom_attributes[].​setting_idstring(uuid)required

Definition ID.

custom_attributes[].​text_valuestring[ 1 .. 300 ] characters

Text value. Omitted when the value is empty.

custom_attributes[].​processing_statusstring

Automatic extraction status.

Enum"completed""failed""processing""not_applicable"
Response
application/json
{ "custom_attributes": [ { … } ] }

Update contract management attributes

Request

Updates only the supplied management attributes. Omitted attributes remain unchanged. An empty string or array clears the corresponding attribute.

Security
OAuth2ClientCredentials
Path
document_idstring(uuid)required

Contract document ID

Bodyapplication/jsonrequired
non-empty
management_numberstring<= 50 characters

Contract management number. An empty string clears the value.

voucher_idsArray of strings<= 10 items

Voucher numbers. An empty array clears the values.

contract_assigneesArray of objects<= 50 items

Contract assignees. An empty array clears the assignees.

curl -i -X PATCH \
  'https://{api_base_url_without_scheme}/rest/v1/contracts/{document_id}/management-attributes' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "management_number": "CN-2026-001",
    "voucher_ids": [
      "V-001",
      "V-002"
    ],
    "contract_assignees": [
      {
        "id": "00000000-0000-0000-0000-000000000001",
        "assignee_type": "user"
      }
    ]
  }'

Responses

Updated

Response
No content

Get contract information

Request

Retrieves information about the specified contract.

Security
OAuth2ClientCredentials
Path
document_idstring(uuid)required

Contract document ID

Query
document_version_idstring(uuid)

Specific version to retrieve. If omitted, the latest version is returned.

curl -i -X GET \
  'https://{api_base_url_without_scheme}/rest/v1/contracts/{document_id}?document_version_id=497f6eca-6276-4993-bfeb-53cbbbba6f08' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
document_idstring(uuid)required

Contract document ID

document_version_idstring(uuid)required

Contract document version ID

file_namestring[ 1 .. 255 ] charactersrequired

Contract file name

mime_typestring[ 1 .. 255 ] charactersrequired

Contract file MIME type

workspace_idsArray of strings(uuid)required

Workspaces that contain this contract document.

created_atstring(date-time)required

Contract document creation timestamp.

updated_atstring(date-time)required

Contract document latest update timestamp.

document_processing_statusstring(document_processing_status)required

Document processing status

Enum"PROCESSING""READY""REJECTED""FAILED""SKIPPED"
preview_statusstring(preview_status)required

Preview availability status

Enum"PROCESSING""READY""NOT_AVAILABLE""FAILED"
metadata_extraction_statusesobject(metadata_extraction_statuses)required

Item-level metadata extraction statuses. Omitted fields are not available from the current internal source.

metadata_extraction_statuses.​title_statusstring(metadata_extraction_status)

Item-level metadata extraction status

Enum"WAITING""PROCESSING""COMPLETED""FAILED""UNAVAILABLE""SKIPPED"
metadata_extraction_statuses.​language_code_statusstring(metadata_extraction_status)

Item-level metadata extraction status

Enum"WAITING""PROCESSING""COMPLETED""FAILED""UNAVAILABLE""SKIPPED"
metadata_extraction_statuses.​contract_category_positions_statusstring(metadata_extraction_status)

Item-level metadata extraction status

Enum"WAITING""PROCESSING""COMPLETED""FAILED""UNAVAILABLE""SKIPPED"
metadata_extraction_statuses.​own_party_statusstring(metadata_extraction_status)

Item-level metadata extraction status

Enum"WAITING""PROCESSING""COMPLETED""FAILED""UNAVAILABLE""SKIPPED"
metadata_extraction_statuses.​counter_party_statusstring(metadata_extraction_status)

Item-level metadata extraction status

Enum"WAITING""PROCESSING""COMPLETED""FAILED""UNAVAILABLE""SKIPPED"
metadataobject(contract_metadata)required

Contract metadata.

metadata.​titlestring[ 1 .. 1000 ] characters

Contract title

metadata.​language_codestring[ 2 .. 35 ] characters

Contract language code

metadata.​document_status_codestring(contract_document_status_code)

Contract document status code returned in contract metadata.

Enum"COUNTERPARTY_DRAFT""INTERNAL_DRAFT""COUNTERPARTY_REVISION""INTERNAL_REVISION""APPROVED_VERSION""READY_FOR_SIGNATURE""SIGNED"
metadata.​contract_category_positionsArray of objects(contract_category_position)

Contract category and position classifications.

metadata.​own_partiesArray of strings(party)

Own party names

metadata.​counter_partiesArray of strings(party)

Counter party names

related_filesArray of objects(related_file)required

Non-contract related files attached to the contract. Returns up to 30 files ordered by latest related file version creation timestamp in descending order.

related_files[].​related_file_idstring(uuid)required

Non-contract related file ID

related_files[].​file_namestring[ 1 .. 255 ] charactersrequired

Non-contract related file name

related_files[].​mime_typestring[ 1 .. 255 ] charactersrequired

Non-contract related file MIME type

previewArray of objects(preview)

Articles in the contract preview.

Response
application/json
{ "document_id": "00000016-0000-0000-0001-100000000001", "document_version_id": "00000016-0000-0000-0001-100000000101", "file_name": "nda_2026_05_08.pdf", "mime_type": "application/pdf", "workspace_ids": [ "00000023-0000-0000-0001-000000000020" ], "created_at": "2026-05-08T03:12:34Z", "updated_at": "2026-05-08T03:13:20Z", "document_processing_status": "PROCESSING", "preview_status": "READY", "metadata_extraction_statuses": { "title_status": "COMPLETED", "language_code_status": "COMPLETED", "contract_category_positions_status": "COMPLETED", "own_party_status": "PROCESSING", "counter_party_status": "PROCESSING" }, "metadata": { "title": "Confidentiality Agreement", "language_code": "en", "contract_category_positions": [ … ], "own_parties": [ … ], "counter_parties": [ … ] }, "related_files": [ { … } ], "preview": [ { … } ] }

Matters

Operations to create, retrieve, update, and delete matters. Matter operations require an API credential owned by a user with a Matter Management Pro license.

Operations

Files

Operations to create and manage files for LegalOn resources.

Operations

Workspaces

Workspaces/folders are the common units used to store and organize resources such as contracts.

Operations