The Contracts Management module provides comprehensive functionality for creating, managing, and tracking rental contracts within the Syniotec API Platform.
Base URL:
https://integration-api.ram.syniotec.com/master-data/v1/contract-management
Available Operations:
- POST
/contracts- Create a new contract - GET
/contracts- Retrieve contracts with filtering and pagination - GET
/contracts/{id}- Get contract by ID - PATCH
/contracts/{id}- Update contract - DELETE
/contracts/{id}- Delete contract - GET
/contracts/external-id/{externalId}- Get contract by external ID - POST
/contracts/{contractId}/contact-persons- Create contract contact person - GET
/contracts/{contractId}/contact-persons- Get contract contact persons - GET
/contracts/{contractId}/contact-persons/{id}- Get contact person by ID - PATCH
/contracts/{contractId}/contact-persons/{id}- Update contact person - DELETE
/contracts/{contractId}/contact-persons/{id}- Delete contact person - GET
/contracts/{contractId}/contact-persons/external-id/{externalId}- Get contact person by external ID
Data Models & Schemas
Contract Entity
{
"id": "string",
"pickUpAddress": "string",
"deliveryAddress": "string",
"selfPickUp": "boolean",
"title": "string",
"number": "string",
"startDate": "date-time",
"endDate": "date-time",
"author": "uuid",
"point": {
"lng": "number",
"lat": "number"
},
"organization": "uuid",
"clientId": "uuid",
"structureId": "uuid",
"status": "string",
"billingStatus": "string",
"contractType": "string",
"street": "string",
"city": "string",
"country": "string",
"constructionName": "string",
"zipCode": "string",
"additionalInformation": "string",
"externalId": "string",
"createdAt": "date-time",
"updatedAt": "date-time",
"contactPersons": [
{
"id": "uuid",
"name": "string",
"position": "string",
"phone": "string",
"email": "string",
"isMain": "boolean",
"externalId": "string",
"contractId": "uuid",
"updatedAt": "date-time"
}
],
"bookings": []
}Field Descriptions:
id- A unique identifier for the record, typically a string that ensures each entry can be distinctly referencedpickUpAddress- The pickup address for the contractdeliveryAddress- The delivery address for the contractselfPickUp- A boolean value indicating whether the client will pick up the items themselvestitle- A brief, descriptive title of contract, providing an overview of its purpose or subjectnumber- Autogenerated reference number associated with the record, which could be an internal tracking number or an identifier for organization purposesstartDate- The date and time when contract begins, formatted in ISO 8601 standard (UTC). This field should indicate when the activity is set to startendDate- The date and time when the contract concludes, also formatted in ISO 8601 standard (UTC). This marks the end of the activityauthor- A unique identifier (UUID) representing the individual or system that created the record. This helps track who is responsible for the entrypoint- An object containing geographical coordinates with longitude (lng) and latitude (lat)organization- A unique identifier (UUID) for the organization associated with the record, helping to link the entry to a specific entitystructureId- A unique identifier (UUID) for the structure where the record is associated, might be reflecting different kind of internal organizational classificationclientId- A unique identifier (UUID) for the client associated with the recordstatus- Status of contract which is based on bookings (See available options here: BookingStatus)billingStatus- Billing Status of contract (See available options here: BillingStatus)contractType- Type of contract (See available options here: ContractTypesEnum)street- The street address related to the contract, providing specific location detailscity- The city where the contract takes place, necessary for location identificationcountry- The country associated with the record, important for geographical contextconstructionName- A name associated with the construction or venue, if applicable, providing further identification for the locationzipCode- The postal code for the address, assisting in pinpointing the exact locationadditionalInformation- Any extra details or notes relevant to the record that may not fit into the other specified fieldsexternalId- An identifier that connects this record to external systems or databases, facilitating integration with other platformscreatedAt- Timestamp indicating when this contract was first created in the systemupdatedAt- Timestamp indicating when this contract was last updated in the systemcontactPersons- Array of associated contact persons for this contract ( ContactPersonEntity )bookings- Array of associated bookings for this contract ( BookingEntity )
Enum Fields
contractType:
RENTRENT_TO_OWNSUB_RENTALRENT_WITH_PERSONNELINTERNAL_RENT
ContactPerson Entity
{
"id": "uuid",
"name": "string",
"position": "string",
"phone": "string",
"email": "string",
"isMain": "boolean",
"externalId": "string",
"contractId": "uuid",
"updatedAt": "date-time"
}Field descriptions:
- id - Unique identifier for the contact person
- name - Contact person's name
- position - Contact person's job position or title
- phone - Contact person's phone number
- email - Contact person's email address
- isMain - Whether this is the primary contact person for the contract. Only one contact person per contract can be marked as main
- externalId - External system identifier for the contact person
- contractId - The contract this contact person belongs to
- updatedAt - Timestamp of most recent modification
Error Response DTO
Standard error response format.
{
"status": "number",
"success": "boolean",
"message": "string",
"error": "string"
}Field Descriptions:
status- HTTP status code (400-503)success- Boolean indicating the operation failed (false)message- Human-readable error messageerror- Error code identifier