### API Endpoint Examples Source: https://api.pointofrental.com/docs Examples of how to structure API calls, including base URLs and how to include entity IDs. ```APIDOC ## API Endpoint Structure There are two types of URLs you can hit: 1. **Base URL**: No changes needed. Example: `https://api.pointofrental.com/v1/apikey/contacts` 2. **URL with Entity ID**: Include the ID of the entity. Example: For a contact with ID 12345, the URL would be `https://api.pointofrental.com/v1/apikey/contacts/12345` ``` -------------------------------- ### Basic API Endpoint Example Source: https://api.pointofrental.com/docs This is a basic example of a GET request to the contacts endpoint. Ensure your API Key is included in the X-API-Key header. ```http GET /apikey/customers X-API-Key: ``` -------------------------------- ### Get All Call Logs Response Sample Source: https://api.pointofrental.com/docs Example JSON response for retrieving a list of all call logs. This is typically an array of call log objects. ```json [ { "ModelType": "CallLog", "Name": "Customer Follow-up - Equipment Return", "Body": "Customer called regarding scheduled equipment return. Agreed to extend rental period by 2 weeks." } ] ``` -------------------------------- ### Work Order Response Sample Source: https://api.pointofrental.com/docs Example JSON response for a successful work order retrieval. ```json { "ModelType": "WorkOrder", "Id": "WO-20240315-1234", "Name": "WO-20240315-1234 - ACME Construction - CAT 320 Excavator PM Service", "StockId": "STOCK-CAT320-789", "StockName": "2022 CAT 320 Excavator", "DepotId": "DEPOT-DALLAS-001", "OpenDateTime": "2024-03-15T08:00:00Z", "CloseDateTime": "2024-03-15T16:30:00Z", "CustomerId": "CUST-ACME-001", "Status": "Open", "Type": "PM Service", "SubType": "250-Hour Service", "IsCustomerWO": true, "LaborTracking": { "LaborTypes": [ { "Description": "Mechanical Labor", "Value": "4.5" }, { "Description": "Diagnostic Time", "Value": "1.0" } ] }, "Complaint": "Excessive hydraulic noise when operating boom functions, visible oil leak at main pump", "Cause": "Failed seal in main hydraulic pump allowing air infiltration and internal wear", "Correction": "Removed and replaced main hydraulic pump assembly, performed system flush, replaced filters, and tested all functions", "ReportedIssue": "Customer reports loud noise from hydraulic system and oil spots under machine", "OtherComments": "Customer requested notification before proceeding with repairs over $1000. Machine is needed back in service by Friday.", "Operation": "250 Hour Preventive Maintenance Service", "DueDateTime": "2024-03-17T17:00:00Z", "AssignedRemoteUserId": "TECH-JOHN-001", "AdditionalFields": { "purchaseOrderNumber": "PO-4567", "warrantyCase": "WC-789", "mileageReading": "1234.5" }, "CreatedDateTime": "2024-03-15T08:00:00Z", "UpdatedDateTime": "2024-03-15T16:30:00Z" } ``` -------------------------------- ### List Work Order Parts Response Source: https://api.pointofrental.com/docs Example JSON response for retrieving a list of parts associated with a work order. ```json [ { "ModelType": "WorkOrderPart", "Id": "WOP-12345-6789", "Classification": "Sale", "Name": "Oil Filter 10 Micron", "IsBulk": true, "ProductId": "FILTER-10M", "PullFromStock": true, "PurchasePrice": 45.99, "Quantity": "2", "SerialNumber": "CAT123456", "Status": "Out", "StockId": "BIN-A123", "Comments": "Customer requested OEM parts only", "CreatedDateTime": "2024-03-15T14:30:00Z", "UpdatedDateTime": "2024-03-16T09:15:00Z" } ] ``` -------------------------------- ### GET /v1/apikey/products/{ProductId} Source: https://api.pointofrental.com/docs Retrieves a single product by its ID. Supports API Key authorization. ```APIDOC ## GET /v1/apikey/products/{ProductId} ### Description Retrieves a single product by its ID. Supports API Key authorization. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/products/{ProductId} ### Parameters #### Path Parameters - **ProductId** (string) - Required - The unique identifier of the product to retrieve. ### Response #### Success Response (200) - **ModelType** (string) - Description - **Id** (string) - Description - **Name** (string) - Description - **Description** (string) - Description - **Category** (string) - Description - **Manufacturer** (string) - Description - **Model** (string) - Description - **SerialNumber** (string) - Description - **Status** (string) - Description - **DepotId** (string) - Description - **Rates** (array) - Description - **RateType** (string) - Description - **Amount** (number) - Description - **CreatedDateTime** (string) - Description #### Response Example ```json { "ModelType": "Product", "Id": "PROD-123", "Name": "20T Excavator", "Description": "20-ton tracked excavator suitable for large construction projects", "Category": "Heavy Equipment", "Manufacturer": "CAT", "Model": "320", "SerialNumber": "CAT320-123456", "Status": "Available", "DepotId": "DEP-001", "Rates": [ { "RateType": "Daily", "Amount": 450 } ], "CreatedDateTime": "2024-03-15T00:00:00Z" } ``` ``` -------------------------------- ### GET /v1/apikey/products Source: https://api.pointofrental.com/docs Retrieves a list of products. Supports filtering by Name and Identifiers.Key for Elite. Supports API Key authorization. ```APIDOC ## GET /v1/apikey/products ### Description Retrieves a list of products. Supports filtering by Name and Identifiers.Key for Elite. Supports API Key authorization. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/products ### Parameters #### Query Parameters - **Search.Name** (string) - Optional - Filter products by name. - **Search.Identifiers.Key** (string) - Optional - Filter products by identifier key. ### Response #### Success Response (200) - **ModelType** (string) - Description - **Id** (string) - Description - **Name** (string) - Description - **Description** (string) - Description - **Category** (string) - Description - **Manufacturer** (string) - Description - **Model** (string) - Description - **SerialNumber** (string) - Description - **Status** (string) - Description - **DepotId** (string) - Description - **Rates** (array) - Description - **RateType** (string) - Description - **Amount** (number) - Description - **CreatedDateTime** (string) - Description #### Response Example ```json [ { "ModelType": "Product", "Id": "PROD-123", "Name": "20T Excavator", "Description": "20-ton tracked excavator suitable for large construction projects", "Category": "Heavy Equipment", "Manufacturer": "CAT", "Model": "320", "SerialNumber": "CAT320-123456", "Status": "Available", "DepotId": "DEP-001", "Rates": [ { "RateType": "Daily", "Amount": 450 } ], "CreatedDateTime": "2024-03-15T00:00:00Z" } ] ``` ``` -------------------------------- ### Successful Product Creation Response Source: https://api.pointofrental.com/docs This is an example of a successful response when a product is created. It includes the unique identifier and details of the created product. ```json { "ModelType": "Product", "Id": "PROD-123", "Name": "20T Excavator", "Description": "20-ton tracked excavator suitable for large construction projects", "Category": "Heavy Equipment", "Manufacturer": "CAT", "Model": "320", "SerialNumber": "CAT320-123456", "Status": "Available", "DepotId": "DEP-001", "Rates": [ { "RateType": "Daily", "Amount": 450 } ], "CreatedDateTime": "2024-03-15T00:00:00Z" } ``` -------------------------------- ### Create Vendor Request Payload Source: https://api.pointofrental.com/docs This is an example of the JSON payload required to create a new vendor. Ensure all required fields are populated. ```json { "Name": "Equipment Supply Co", "VendorNumber": "V1234", "TaxId": "12-3456789", "Address": { "Line1": "789 Supplier Lane", "City": "Dallas", "Province": "TX", "PostalCode": "75203" }, "ContactName": "Bob Johnson", "ContactEmail": "bjohnson@equipmentsupply.com", "ContactPhone": "214-555-4321", "PaymentTerms": "NET30" } ``` -------------------------------- ### POST /v1/apikey/products Source: https://api.pointofrental.com/docs Creates a new product in the Point of Rental system. Supports Elite and Syrinx. ```APIDOC ## POST /v1/apikey/products ### Description Creates a new product in the Point of Rental system. ### Method POST ### Endpoint https://api.pointofrental.com/v1/apikey/products ### Parameters #### Request Body - **Name** (string) - Required - The display name for the item. Should be clear and descriptive, including key specifications when relevant. - **Identifiers** (object) - Required - Identifying items for Product. Contains various codes and numbers used to track and identify the product across systems. - **Key** (string) - Required - **Barcode** (string) - Required - **Alias** (string) - Required - **CategoryName** (string) - Optional - Denormalized name of the Category. Elite only supports one category name. Used for display and filtering. - **Classification** (string) - Required - Enum: "Rental" "Sale" - Specifies if the product is available for rental or sale. Only Rental and Sale supported for POST. - **DepotId** (string) - Optional - Id of the Depot (Syrinx), Store (Elite), or Company (Essentials) where the equipment is located. - **Description** (string) - Optional - Detailed description of the product including key features, specifications, and use cases. - **IsPart** (boolean) - Optional - Indicates if this is a spare part or consumable item rather than rental equipment. - **AdditionalFields** (object) - Optional - Additional fields for inventory management and ordering. - **ExternalTaxCode** (string) - Optional - **RentalType** (string) - Optional - **CurrentDepotId** (string) - Optional - **ReorderMinimum** (string) - Optional - **ReorderMaximum** (string) - Optional - **CaseQuantity** (integer) - Optional - **RentalCaseQuantity** (integer) - Optional - **CriticalLevel** (integer) - Optional - **TaxCode** (integer) - Optional ### Request Example ```json { "ModelType": "Product", "Name": "Test MOdel ", "Identifiers": { "Key": "12435", "Barcode": "123", "Alias": "smith" }, "CategoryIds": [ "63" ], "CategoryName": "Audio - Video - Lighting", "Classification": "Rental", "Description": "Nodescription", "Images": [ ], "Key": ".ACPLUG", "ModelNumber": "23", "ModelYear": "2025", "OtherUrls": [ ], "Tags": [ ], "DepotId": "000", "AdditionalFields": { "ExternalTaxCode": "12AS", "RentalType": "Rental - Header", "CurrentDepotId": "000", "ReorderMinimum": "2", "ReorderMaximum": "3", "CaseQuantity": 5, "RentalCaseQuantity": 2, "CriticalLevel": 1, "TaxCode": 14 } } ``` ### Response #### Success Response (201) - **ModelType** (string) - Description - **Id** (string) - Description - **Name** (string) - Description - **Description** (string) - Description - **Category** (string) - Description - **Manufacturer** (string) - Description - **Model** (string) - Description - **SerialNumber** (string) - Description - **Status** (string) - Description - **DepotId** (string) - Description - **Rates** (array) - Description - **RateType** (string) - Description - **Amount** (number) - Description - **CreatedDateTime** (string) - Description #### Response Example ```json { "ModelType": "Product", "Id": "PROD-123", "Name": "20T Excavator", "Description": "20-ton tracked excavator suitable for large construction projects", "Category": "Heavy Equipment", "Manufacturer": "CAT", "Model": "320", "SerialNumber": "CAT320-123456", "Status": "Available", "DepotId": "DEP-001", "Rates": [ { "RateType": "Daily", "Amount": 450 } ], "CreatedDateTime": "2024-03-15T00:00:00Z" } ``` ``` -------------------------------- ### Create Vendor Response Sample Source: https://api.pointofrental.com/docs This is an example of a successful response (201 Created) when creating a vendor. It includes the newly created vendor's details and system-generated fields. ```json { "ModelType": "Vendor", "Id": "VEN-001", "Name": "Equipment Supply Co", "VendorNumber": "V1234", "TaxId": "12-3456789", "Address": { "Line1": "789 Supplier Lane", "City": "Dallas", "Province": "TX", "PostalCode": "75203" }, "ContactName": "Bob Johnson", "ContactEmail": "bjohnson@equipmentsupply.com", "ContactPhone": "214-555-4321", "PaymentTerms": "NET30", "Status": "Active", "CreatedDateTime": "2024-01-01T00:00:00Z" } ``` -------------------------------- ### Search Filter Example Source: https://api.pointofrental.com/docs Example of using the 'Search' filter for a broad query across contacts. This filter type is supported on a per-endpoint basis where noted. ```json [ { "field": "Search", "type": "==", "value": "some search query" } ] ``` -------------------------------- ### Paging Example Source: https://api.pointofrental.com/docs Shows how to implement paging for API requests, specifying the desired page number and the number of items per page. The maximum page size is 100. ```json { "page": 1, "pageSize": 25 } ``` -------------------------------- ### GET /apikey/invoices Source: https://api.pointofrental.com/docs Retrieves a list of all invoices. ```APIDOC ## GET /apikey/invoices ### Description Retrieves a list of all invoices. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/invoices ### Response #### Success Response (200) - **ModelType** (string) - Type of the model, expected to be "Invoice". - **Id** (string) - The unique identifier of the invoice. - **InvoiceNumber** (string) - The invoice number. - **CustomerId** (string) - The identifier of the customer associated with the invoice. - **InvoiceDate** (string) - The date the invoice was issued in ISO 8601 format. - **DueDate** (string) - The due date for the invoice in ISO 8601 format. - **SubTotal** (number) - The subtotal amount of the invoice. - **TaxAmount** (number) - The total tax amount for the invoice. - **TotalAmount** (number) - The final total amount of the invoice. - **Status** (string) - The status of the invoice (e.g., "Open"). - **CreatedDateTime** (string) - The date and time when the invoice was created in ISO 8601 format. #### Response Example ```json [ { "ModelType": "Invoice", "Id": "INV-2024-001", "InvoiceNumber": "24001", "CustomerId": "CUST-12345", "InvoiceDate": "2024-03-15T00:00:00Z", "DueDate": "2024-04-14T00:00:00Z", "SubTotal": 1500, "TaxAmount": 123.75, "TotalAmount": 1623.75, "Status": "Open", "CreatedDateTime": "2024-03-15T14:30:00Z" } ] ``` ``` -------------------------------- ### Create a Product API Source: https://api.pointofrental.com/docs Create a new product in the system. This endpoint is used to create a new product with default values. ```APIDOC ## Create a Product Create a new product in the system. This endpoint is used to create a new product in the system. The product will be created with the default values for the product type. ### Method POST ### Endpoint /apikey/products ### Description Creates a new product with default values. ### Authorizations _ApiKey_ ``` -------------------------------- ### GET /apikey/lineItems Source: https://api.pointofrental.com/docs Retrieves a list of all line items. ```APIDOC ## GET /apikey/lineItems ### Description Retrieves a list of all line items. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/lineItems ### Response #### Success Response (200) - **Id** (string) - The unique identifier of the line item. - **ContractId** (string) - The identifier of the contract associated with the line item. - **ProductId** (string) - The identifier of the product associated with the line item. - **Name** (string) - The name of the line item. - **Quantity** (number) - The quantity of the item. - **RateAmount** (number) - The amount per rate. - **RateType** (string) - The type of rate (e.g., "Daily"). - **StartDate** (string) - The start date of the line item in ISO 8601 format. - **EndDate** (string) - The end date of the line item in ISO 8601 format. - **Status** (string) - The status of the line item (e.g., "OnRent"). - **SubTotal** (number) - The subtotal amount for the line item. - **TaxAmount** (number) - The tax amount for the line item. - **TotalAmount** (number) - The total amount for the line item. #### Response Example ```json [ { "Id": "LI-001", "ContractId": "CNT-2024-001", "ProductId": "PROD-123", "Name": "20T Excavator", "Quantity": 1, "RateAmount": 450, "RateType": "Daily", "StartDate": "2024-03-15T00:00:00Z", "EndDate": "2024-04-15T00:00:00Z", "Status": "OnRent", "SubTotal": 13500, "TaxAmount": 1113.75, "TotalAmount": 14613.75 } ] ``` ``` -------------------------------- ### GET /apikey/invoices/{InvoiceId} Source: https://api.pointofrental.com/docs Retrieves a single invoice by its unique identifier. ```APIDOC ## GET /apikey/invoices/{InvoiceId} ### Description Retrieves a single invoice by its unique identifier. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/invoices/{InvoiceId} ### Parameters #### Path Parameters - **InvoiceId** (string) - Required - The unique identifier of the invoice to retrieve. ### Response #### Success Response (200) - **ModelType** (string) - Type of the model, expected to be "Invoice". - **Id** (string) - The unique identifier of the invoice. - **InvoiceNumber** (string) - The invoice number. - **CustomerId** (string) - The identifier of the customer associated with the invoice. - **InvoiceDate** (string) - The date the invoice was issued in ISO 8601 format. - **DueDate** (string) - The due date for the invoice in ISO 8601 format. - **SubTotal** (number) - The subtotal amount of the invoice. - **TaxAmount** (number) - The total tax amount for the invoice. - **TotalAmount** (number) - The final total amount of the invoice. - **Status** (string) - The status of the invoice (e.g., "Open"). - **CreatedDateTime** (string) - The date and time when the invoice was created in ISO 8601 format. #### Response Example ```json { "ModelType": "Invoice", "Id": "INV-2024-001", "InvoiceNumber": "24001", "CustomerId": "CUST-12345", "InvoiceDate": "2024-03-15T00:00:00Z", "DueDate": "2024-04-14T00:00:00Z", "SubTotal": 1500, "TaxAmount": 123.75, "TotalAmount": 1623.75, "Status": "Open", "CreatedDateTime": "2024-03-15T14:30:00Z" } ``` ``` -------------------------------- ### GET /apikey/depots/{DepotId} Source: https://api.pointofrental.com/docs Retrieves a single depot by its unique identifier. ```APIDOC ## GET /apikey/depots/{DepotId} ### Description Retrieves a single depot by its unique identifier. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/depots/{DepotId} ### Parameters #### Path Parameters - **DepotId** (string) - Required - The unique identifier of the depot to retrieve. ### Response #### Success Response (200) - **ModelType** (string) - Type of the model, expected to be "Depot". - **Id** (string) - The unique identifier of the depot. - **Name** (string) - The name of the depot. - **Address** (object) - The address of the depot. - **Line1** (string) - The first line of the address. - **City** (string) - The city of the address. - **Province** (string) - The province or state of the address. - **PostalCode** (string) - The postal code of the address. - **ContactName** (string) - The name of the depot's contact person. - **ContactPhone** (string) - The phone number of the depot's contact person. - **Status** (string) - The status of the depot (e.g., "Active"). - **CreatedDateTime** (string) - The date and time when the depot was created in ISO 8601 format. #### Response Example ```json { "ModelType": "Depot", "Id": "DEP-001", "Name": "Main Equipment Yard", "Address": { "Line1": "1000 Industrial Blvd", "City": "Dallas", "Province": "TX", "PostalCode": "75207" }, "ContactName": "Yard Manager", "ContactPhone": "214-555-7890", "Status": "Active", "CreatedDateTime": "2024-01-01T00:00:00Z" } ``` ``` -------------------------------- ### List All Vendors Response Sample Source: https://api.pointofrental.com/docs This is a sample JSON response when retrieving a list of all vendors. It includes details for a single vendor. ```json [ { "ModelType": "Vendor", "Id": "VEN-001", "Name": "Equipment Supply Co", "VendorNumber": "V1234", "TaxId": "12-3456789", "Address": { "Line1": "789 Supplier Lane", "City": "Dallas", "Province": "TX", "PostalCode": "75203" }, "ContactName": "Bob Johnson", "ContactEmail": "bjohnson@equipmentsupply.com", "ContactPhone": "214-555-4321", "PaymentTerms": "NET30", "Status": "Active", "CreatedDateTime": "2024-01-01T00:00:00Z" } ] ``` -------------------------------- ### GET /v1/apikey/categories/{CategoryId} Source: https://api.pointofrental.com/docs Retrieves a single category by its unique ID. ```APIDOC ## GET /v1/apikey/categories/{CategoryId} ### Description Retrieves a single category by its unique ID. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/categories/{CategoryId} ### Parameters #### Path Parameters - **CategoryId** (string) - Required - The unique identifier of the category. ### Response #### Success Response (200) - **ModelType** (string) - Type of the model, expected to be "Category". - **Images** (array) - An array of image objects associated with the category. - **Uri** (string) - The URI of the image. - **AltText** (string) - Alternative text for the image. - **Tags** (array) - An array of tags associated with the category. #### Response Example ```json { "ModelType": "Category", "Images": [ { "Uri": "https://second-hand-pear.org", "AltText": "beret" }, { "Uri": "https://private-colon.name/", "AltText": "responsibility" }, { "Uri": "https://superficial-nucleotidase.com", "AltText": "completion" } ], "Tags": [ "Shoes" ] } ``` ``` -------------------------------- ### GET /v1/apikey/categories Source: https://api.pointofrental.com/docs Retrieves a list of all available categories within the system. ```APIDOC ## GET /v1/apikey/categories ### Description Retrieves a list of categories. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/categories ### Response #### Success Response (200) - **ModelType** (string) - Type of the model, expected to be "Category". - **Images** (array) - An array of image objects associated with the category. - **Uri** (string) - The URI of the image. - **AltText** (string) - Alternative text for the image. - **Tags** (array) - An array of tags associated with the category. #### Response Example ```json [ { "ModelType": "Category", "Images": [ { "Uri": "https://second-hand-pear.org", "AltText": "beret" }, { "Uri": "https://private-colon.name/", "AltText": "responsibility" }, { "Uri": "https://superficial-nucleotidase.com", "AltText": "completion" } ], "Tags": [ "Shoes" ] } ] ``` ``` -------------------------------- ### GET /apikey/depots Source: https://api.pointofrental.com/docs Retrieves a list of all depots. Supports filtering by Name and Identifiers.Key. ```APIDOC ## GET /apikey/depots ### Description Retrieves a list of all depots. Supports filtering by Name and Identifiers.Key. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/depots ### Parameters #### Query Parameters - **Search.Name** (string) - Optional - Filter depots by name. - **Search.Identifiers.Key** (string) - Optional - Filter depots by identifier key. ### Response #### Success Response (200) - **ModelType** (string) - Type of the model, expected to be "Depot". - **Id** (string) - The unique identifier of the depot. - **Name** (string) - The name of the depot. - **Address** (object) - The address of the depot. - **Line1** (string) - The first line of the address. - **City** (string) - The city of the address. - **Province** (string) - The province or state of the address. - **PostalCode** (string) - The postal code of the address. - **ContactName** (string) - The name of the depot's contact person. - **ContactPhone** (string) - The phone number of the depot's contact person. - **Status** (string) - The status of the depot (e.g., "Active"). - **CreatedDateTime** (string) - The date and time when the depot was created in ISO 8601 format. #### Response Example ```json [ { "ModelType": "Depot", "Id": "DEP-001", "Name": "Main Equipment Yard", "Address": { "Line1": "1000 Industrial Blvd", "City": "Dallas", "Province": "TX", "PostalCode": "75207" }, "ContactName": "Yard Manager", "ContactPhone": "214-555-7890", "Status": "Active", "CreatedDateTime": "2024-01-01T00:00:00Z" } ] ``` ``` -------------------------------- ### URL Structure Examples Source: https://api.pointofrental.com/docs Illustrates the two types of URLs for API calls: one without a specific entity ID and another that requires the entity's ID to be appended. ```http https://api.pointofrental.com/v1/apikey/contacts ``` ```http https://api.pointofrental.com/v1/apikey/contacts/12345 ``` -------------------------------- ### GET /apikey/contacts/{ContactId} Source: https://api.pointofrental.com/docs Retrieves a single customer contact by their unique identifier. ```APIDOC ## GET /apikey/contacts/{ContactId} ### Description Retrieves a single customer contact by their unique identifier. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/contacts/{ContactId} ### Parameters #### Path Parameters - **ContactId** (string) - Required - The unique identifier of the contact to retrieve. ### Response #### Success Response (200) - **ModelType** (string) - Type of the model, expected to be "CustomerContact". - **Addresses** (array) - A list of addresses associated with the contact. - **Type** (string) - The type of address (e.g., "default", "system"). - **Name** (string) - The name associated with the address. - **Line1** (string) - The first line of the address. - **Line2** (string) - The second line of the address. - **Line3** (string) - The third line of the address. - **City** (string) - The city of the address. - **GeoRegion2** (string) - Geographic region 2. - **GeoRegion3** (string) - Geographic region 3. - **Province** (string) - The province or state of the address. - **PostalCode** (string) - The postal code of the address. - **Latitude** (number) - The latitude coordinate. - **Longitude** (number) - The longitude coordinate. - **Country** (string) - The country of the address. #### Response Example ```json { "ModelType": "CustomerContact", "Addresses": [ { "Type": "default", "Name": "Bethany Trantow", "Line1": "7114 Kling Station", "Line2": "Suite 445", "Line3": "swing", "City": "Murrayland", "GeoRegion2": "149 Kertzmann Brooks", "GeoRegion3": "2453 South Avenue", "Province": "Kentucky", "PostalCode": "78376", "Latitude": -55.557, "Longitude": 79.8627, "Country": "Saint Kitts and Nevis" } ] } ``` ``` -------------------------------- ### Create Location Response Sample Source: https://api.pointofrental.com/docs This is a sample JSON response after successfully creating a new location. It includes the assigned 'Id', 'Name', 'CustomerId', 'Address' details, and creation timestamp. ```json { "ModelType": "Location", "Id": "LOC-2024-001", "Name": "Downtown Construction Site", "CustomerId": "CUST-12345", "Address": { "Line1": "456 Project Site", "City": "Dallas", "Province": "TX", "PostalCode": "75202" }, "ContactName": "Site Manager", "ContactPhone": "214-555-5678", "Status": "Active", "CreatedDateTime": "2024-03-15T00:00:00Z" } ``` -------------------------------- ### GET /apikey/workOrders Source: https://api.pointofrental.com/docs Retrieves a list of all work orders. This endpoint is secured with an API key. ```APIDOC ## Retrieve a list of work orders ### Description Retrieve a list of work orders. ### Method GET ### Endpoint /apikey/workOrders ### Parameters #### Query Parameters - **None explicitly mentioned** ### Request Example ```json { "example": "No request body for GET request" } ``` ### Response #### Success Response (200) - **Array of WorkOrder objects** - A list of work order details. #### Response Example ```json [ { "ModelType": "WorkOrder", "Id": "WO-20240315-1234", "Name": "WO-20240315-1234 - ACME Construction - CAT 320 Excavator PM Service", "StockId": "STOCK-CAT320-789", "StockName": "2022 CAT 320 Excavator", "DepotId": "DEPOT-DALLAS-001", "OpenDateTime": "2024-03-15T08:00:00Z", "CloseDateTime": "2024-03-15T16:30:00Z", "CustomerId": "CUST-ACME-001", "Status": "Open", "Type": "PM Service", "SubType": "250-Hour Service", "IsCustomerWO": true, "LaborTracking": { "LaborTypes": [ { "Description": "Mechanical Labor", "Value": "4.5" }, { "Description": "Diagnostic Time", "Value": "1.0" } ] }, "Complaint": "Excessive hydraulic noise when operating boom functions, visible oil leak at main pump", "Cause": "Failed seal in main hydraulic pump allowing air infiltration and internal wear", "Correction": "Removed and replaced main hydraulic pump assembly, performed system flush, replaced filters, and tested all functions", "ReportedIssue": "Customer reports loud noise from hydraulic system and oil spots under machine", "OtherComments": "Customer requested notification before proceeding with repairs over $1000. Machine is needed back in service by Friday.", "Operation": "250 Hour Preventive Maintenance Service", "DueDateTime": "2024-03-17T17:00:00Z", "AssignedRemoteUserId": "TECH-JOHN-001", "AdditionalFields": { "purchaseOrderNumber": "PO-4567", "warrantyCase": "WC-789", "mileageReading": "1234.5" }, "CreatedDateTime": "2024-03-15T08:00:00Z", "UpdatedDateTime": "2024-03-15T16:30:00Z" } ] ``` ``` -------------------------------- ### Filtering Example with AND Operator Source: https://api.pointofrental.com/docs Demonstrates how to filter customer records using the 'LIKE' operator for name and company name, combined with the 'AND' logical operator. This is supported by Elite and Syrinx platforms. ```json [ { "type": "AND", "value": [ { "field": "Name", "type": "LIKE", "value": "John Doe" }, { "field": "CompanyName", "type": "LIKE", "value": "XYZ Company" } ] } ] ``` -------------------------------- ### GET /apikey/vendors/{VendorId} Source: https://api.pointofrental.com/docs Retrieves the details of a specific vendor using their unique VendorId. ```APIDOC ## GET /apikey/vendors/{VendorId} ### Description Retrieves the details of a specific vendor by their unique identifier. ### Method GET ### Endpoint https://api.pointofrental.com/v1/apikey/vendors/{VendorId} ### Parameters #### Path Parameters - **VendorId** (string) - Required - The unique identifier of the vendor. ### Responses #### Success Response (200) - **ModelType** (string) - The type of the model, expected to be "Vendor". - **Id** (string) - The unique identifier of the vendor. - **Name** (string) - The name of the vendor. - **VendorNumber** (string) - The vendor's internal number. - **TaxId** (string) - The vendor's tax identification number. - **Address** (object) - The vendor's address details. - **Line1** (string) - The first line of the address. - **City** (string) - The city. - **Province** (string) - The state or province. - **PostalCode** (string) - The postal code. - **ContactName** (string) - The name of the primary contact person. - **ContactEmail** (string) - The email address of the primary contact. - **ContactPhone** (string) - The phone number of the primary contact. - **PaymentTerms** (string) - The payment terms agreed upon with the vendor. - **Status** (string) - The current status of the vendor (e.g., "Active"). - **CreatedDateTime** (string) - The date and time when the vendor record was created (ISO 8601 format). #### Response Example ```json { "ModelType": "Vendor", "Id": "VEN-001", "Name": "Equipment Supply Co", "VendorNumber": "V1234", "TaxId": "12-3456789", "Address": { "Line1": "789 Supplier Lane", "City": "Dallas", "Province": "TX", "PostalCode": "75203" }, "ContactName": "Bob Johnson", "ContactEmail": "bjohnson@equipmentsupply.com", "ContactPhone": "214-555-4321", "PaymentTerms": "NET30", "Status": "Active", "CreatedDateTime": "2024-01-01T00:00:00Z" } ``` ``` -------------------------------- ### POST /api/users Source: https://api.pointofrental.com/docs Creates a new product record. Only serialized stock is supported for POST at this time. Required fields include Name, Classification, ProductId, and DepotId. ```APIDOC ## POST /api/users ### Description Creates a new product record. Only serialized stock is supported for POST at this time. ### Method POST ### Endpoint https://api.pointofrental.com/v1/apikey/products ### Parameters #### Request Body - **Name** (string) - Required - The display name for the item. Should be clear and descriptive, including key specifications when relevant. - **Identifiers** (object) - Optional - Identifying items for Product. Contains various codes and numbers used to track and identify the product across systems. - **CategoryName** (string) - Optional - Denormalized name of the Category. Elite only supports one category name. Used for display and filtering. - **Classification** (string) - Required - Enum: "Rental" "Sale" - Specifies if the product is available for rental or sale. Only Rental and Sale supported for POST. - **DepotId** (string) - Required - Id of the Depot (Syrinx), Store (Elite), or Company (Essentials) where the equipment is located. - **Description** (string) - Optional - Detailed description of the product including key features, specifications, and use cases. - **IsPart** (boolean) - Optional - Indicates if this is a spare part or consumable item rather than rental equipment. - **AdditionalFields** (object) - Optional - Additional fields for inventory management and ordering. ### Request Example { "ModelType": "Product", "Name": "Test MOdel ", "Identifiers": { "Key": "12345", "Barcode": "123", "Alias": "smith" }, "CategoryIds": [ "63" ], "CategoryName": "Audio - Video - Lighting", "Classification": "Rental", "Description": "Nodescription", "Images": [ ], "Key": ".ACPLUG", "ModelNumber": "23", "ModelYear": "2025", "OtherUrls": [ ], "Tags": [ ], "DepotId": "000", "AdditionalFields": { "ExternalTaxCode": "12AS", "RentalType": "Rental - Header", "CurrentDepotId": "000", "ReorderMinimum": "2", "ReorderMaximum": "3", "CaseQuantity": 5, "RentalCaseQuantity": 2, "CriticalLevel": 1, "TaxCode": 14 } } ### Response #### Success Response (201) - **ModelType** (string) - Description - **Id** (string) - Description - **Name** (string) - Description - **Description** (string) - Description - **Category** (string) - Description - **Manufacturer** (string) - Description - **Model** (string) - Description - **SerialNumber** (string) - Description - **Status** (string) - Description - **DepotId** (string) - Description - **Rates** (array) - Description - **CreatedDateTime** (string) - Description #### Response Example { "ModelType": "Product", "Id": "PROD-123", "Name": "20T Excavator", "Description": "20-ton tracked excavator suitable for large construction projects", "Category": "Heavy Equipment", "Manufacturer": "CAT", "Model": "320", "SerialNumber": "CAT320-123456", "Status": "Available", "DepotId": "DEP-001", "Rates": [ { "RateType": "Daily", "Amount": 450 } ], "CreatedDateTime": "2024-03-15T00:00:00Z" } ```