API documentation for LegalOn services
- Get contract information
List contracts
Create a contract document
List contract custom attribute definitions
Get contract custom attribute values
Update contract custom attribute values
Update contract management attributes
Delete a contract
Upload a new latest version
List contract versions
Update contract information
Delete a contract version
Link an existing non-contract file to a contract
Link another contract
Upload other file
Remove a related file link from a contract
Get contract information
LegalOn API (1.3.1)
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
Bodyapplication/jsonrequired
non-empty
Contract management number. An empty string clears the value.
- 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/contracts/{document_id}/management-attributes
- cURL
- JavaScript
- Python
- Java
- Go
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"
}
]
}'- 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/contracts/{document_id}
- cURL
- JavaScript
- Python
- Java
- Go
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>'OK
Document processing status
Enum"PROCESSING""READY""REJECTED""FAILED""SKIPPED"
Preview availability status
Enum"PROCESSING""READY""NOT_AVAILABLE""FAILED"
Item-level metadata extraction statuses. Omitted fields are not available from the current internal source.
Item-level metadata extraction status
Enum"WAITING""PROCESSING""COMPLETED""FAILED""UNAVAILABLE""SKIPPED"
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"
Item-level metadata extraction status
Enum"WAITING""PROCESSING""COMPLETED""FAILED""UNAVAILABLE""SKIPPED"
Contract metadata.
Contract document status code returned in contract metadata.
Enum"COUNTERPARTY_DRAFT""INTERNAL_DRAFT""COUNTERPARTY_REVISION""INTERNAL_REVISION""APPROVED_VERSION""READY_FOR_SIGNATURE""SIGNED"
Contract category and position classifications.
Non-contract related files attached to the contract. Returns up to 30 files ordered by latest related file version creation timestamp in descending order.
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": [ { … } ] }
- 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/contracts/{document_id}
- cURL
- JavaScript
- Python
- Java
- Go
curl -i -X DELETE \
'https://{api_base_url_without_scheme}/rest/v1/contracts/{document_id}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'