# LawVu Contracts

Apis for contract resources

Version: 1.0

## Servers

Sandbox API
```
https://api-sandbox.lawvu.com/contract-apis
```

Production API
```
https://api.lawvu.com/contract-apis
```

## Download OpenAPI description

[LawVu Contracts](https://api-docs.lawvu.com/_bundle/api/Contracts%20API/LawVu%20Contracts.openapi.yaml)

## ContractFiles

### Upload file

 - [POST /v1/contracts/{contractId}/files](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contractfiles/post-v1-contracts-contractid-files.md): Add or update a file in a contract. \
 \
The body of the request must be content-type 'multipart/form-data' and contain the file data. \
 \
To update the contract document: Only specify the 'parentFileId' parameter. The 'folderId' and 'conflictResolution' parameters should not be used for these updates

## ContractKeyDate

### Get contract key dates

 - [GET /v1/contracts/{contractId}/keyDates](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contractkeydate/get-v1-contracts-contractid-keydates.md): Returns a list of contract key dates

## Contracts

### Create contract by upload

 - [POST /v1/contracts](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/post-v1-contracts.md): Creates a new contract, with the main contract file being sent in the body of the request

### Get contracts

 - [GET /v1/contracts](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/get-v1-contracts.md): Gets contracts filtered by single or multiple fields.
 
_To filter by one field_: "filtering.field", "filtering.operator" and "filtering.value" parameters must be filled.
 
_To filter by multiple fields_: "filtering.logic" and "filtering.filters" parameters must be filled.

### Find contracts

 - [GET /v1/contracts/quickfind](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/get-v1-contracts-quickfind.md): Quickly find and filter contracts

### Recent  contracts

 - [GET /v1/contracts/recent](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/get-v1-contracts-recent.md): Returns recently viewed (ref:take) contracts for the user

### Contract entities

 - [GET /v1/contracts/entities](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/get-v1-contracts-entities.md): Gets contract entities (other parties)

### Create contract entity

 - [POST /v1/contracts/entities](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/post-v1-contracts-entities.md): Creates a contract entity

### ExternalId lookup

 - [GET /v1/contracts/externalid/{externalId}](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/get-v1-contracts-externalid-externalid.md)

### Update contract

 - [PATCH /v1/contracts/{contractId}](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/patch-v1-contracts-contractid.md)

### Get contract

 - [GET /v1/contracts/{contractId}](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/get-v1-contracts-contractid.md): Get contract details by contract id

### Get contract fields

 - [GET /v1/contracts/{contractId}/fields](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/get-v1-contracts-contractid-fields.md): Get contract fields by contract id

### Update fields

 - [PATCH /v1/contracts/{contractId}/fields](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/patch-v1-contracts-contractid-fields.md)

### Create contract

 - [POST /v1/contracts/wizard](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracts/post-v1-contracts-wizard.md): Creates a new contract, using the contract template wizard

## ContractStatusMessage

### Add a status message to a contract

 - [POST /v1/contracts/{contractId}/statusMessages](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contractstatusmessage/post-v1-contracts-contractid-statusmessages.md): Add status message to a contract

## ContractTemplates

### Get contract templates

 - [GET /v1/contractsTemplates](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracttemplates/get-v1-contractstemplates.md): Gets a list of contract templates

### Get upload schema

 - [GET /v1/contractsTemplates/{templateId}/uploadSchema](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contracttemplates/get-v1-contractstemplates-templateid-uploadschema.md): Gets the schema for creating a new contract from file upload

## ContractUser

### Add user to a contract

 - [POST /v1/contracts/{contractId}/users](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contractuser/post-v1-contracts-contractid-users.md): Adds a user to a contract as a member

### Get contract users

 - [GET /v1/contracts/{contractId}/users](https://api-docs.lawvu.com/api/contracts-api/lawvu-contracts.openapi/contractuser/get-v1-contracts-contractid-users.md): Returns the users that are assigned to the contract

