Save multiple job_non_part_usage records. This endpoint accepts a JSON array of job_non_part_usage objects, validates each record, applies default values, and saves them using the repository. The operation is executed through BatchSaveHelper and processed within a transaction. Each record returns its own ResponseResult indicating success or failure.
Request Information
URI Parameters :
None.
Body Parameters :
job_non_part_usage| Name | Description | Type | Additional information |
|---|---|---|---|
| id |
Primary Key |
globally unique identifier |
Required |
| jobs_id |
Foreign key of jobs |
globally unique identifier |
Required |
| user_id |
Foreign key, user that makes the approval |
globally unique identifier | |
| source_db_table_id |
Source Table used to generate this non part usage (Car_travel or user_timesheet) |
globally unique identifier | |
| source_id_in_table |
Source Object Id used to generate this non part usage (car_travel.id or user_timesheet.id) |
globally unique identifier | |
| working_date |
Date when the object has been generated |
date |
Required |
| timesheet_date_from |
In the case of a timesheet, the date+time FROM |
date | |
| timesheet_date_to |
In the case of a timesheet, the date+time TO |
date | |
| type_code |
Type of Non part (WorkingTime or TravelTime) |
string |
Max length: 50 |
| line_code |
code generated from the hour_type.code |
string |
Max length: 50 |
| description |
description generated from the hour_type.commercial_description |
string |
Max length: 255 |
| quantity |
Quantity converted in decimal (45 minutes is 0.75) |
decimal number | |
| price |
Unit Price computed via the hour_type (without discount) |
decimal number | |
| discount | decimal number | ||
| line_memo |
Extra memo on the line filled by the User |
string |
Max length: 4000 |
| job_approval_id |
Foreign key to the approval this lines belongs In case the line was already "included" inside a job approval (daily for exemple), then that value is field and row is now readonly |
globally unique identifier | |
| hour_type_id |
Hour type id |
globally unique identifier | |
| is_under_warranty |
Checking for warranty |
boolean | |
| no_warranty_reason |
Reason of no warranty |
string | |
| company_vat_id | globally unique identifier | ||
| vat_value | decimal number | ||
| vat_rate | decimal number | ||
| invoice_id | globally unique identifier | ||
| invoice_details_id | globally unique identifier | ||
| modified_dateutc |
Readonly system field managed by database, filled with GetUtcDate when adding,updating |
date |
Request Formats :
application/json, text/json
{
"id": "70cc84b4-2314-480b-a1fc-a217ac3440b3",
"jobs_id": "f15605a4-bf08-483b-bf43-863806c1ede4",
"user_id": "c78b669b-7fe4-4895-883e-152663f4f14d",
"source_db_table_id": "ad97af4f-7b96-414e-96cc-8d5c8b8efd51",
"source_id_in_table": "f337ac57-a47c-4f69-a241-0141fd563c06",
"working_date": "2026-06-16T21:15:48.930754+00:00",
"timesheet_date_from": "2026-06-16T21:15:48.930754+00:00",
"timesheet_date_to": "2026-06-16T21:15:48.930754+00:00",
"type_code": "sample string 9",
"line_code": "sample string 10",
"description": "sample string 11",
"quantity": 12.0,
"price": 13.0,
"discount": 14.0,
"line_memo": "sample string 15",
"job_approval_id": "f034f284-466e-465b-8882-a9f6c7999a7d",
"hour_type_id": "63da060f-f8c1-4489-aca8-4cf5f236744e",
"is_under_warranty": true,
"no_warranty_reason": "sample string 19",
"company_vat_id": "15cb46df-ee3d-4c6f-96f8-724ac7bf30ec",
"vat_value": 21.0,
"vat_rate": 22.0,
"invoice_id": "7b0c1ce3-6acb-4185-a9bf-346d4fdea9c2",
"invoice_details_id": "bd078196-2e3d-49c4-8e0c-65e91e5d498c",
"modified_dateutc": "2026-06-16T21:15:48.9440576+00:00"
}
application/xml, text/xml
<job_non_part_usage xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <company_vat_id>15cb46df-ee3d-4c6f-96f8-724ac7bf30ec</company_vat_id> <description>sample string 11</description> <discount>14</discount> <hour_type_id>63da060f-f8c1-4489-aca8-4cf5f236744e</hour_type_id> <id>70cc84b4-2314-480b-a1fc-a217ac3440b3</id> <invoice_details_id>bd078196-2e3d-49c4-8e0c-65e91e5d498c</invoice_details_id> <invoice_id>7b0c1ce3-6acb-4185-a9bf-346d4fdea9c2</invoice_id> <is_under_warranty>true</is_under_warranty> <job_approval_id>f034f284-466e-465b-8882-a9f6c7999a7d</job_approval_id> <jobs_id>f15605a4-bf08-483b-bf43-863806c1ede4</jobs_id> <line_code>sample string 10</line_code> <line_memo>sample string 15</line_memo> <modified_dateutc>2026-06-16T21:15:48.944Z</modified_dateutc> <no_warranty_reason>sample string 19</no_warranty_reason> <price>13</price> <quantity>12</quantity> <source_db_table_id>ad97af4f-7b96-414e-96cc-8d5c8b8efd51</source_db_table_id> <source_id_in_table>f337ac57-a47c-4f69-a241-0141fd563c06</source_id_in_table> <timesheet_date_from>2026-06-16T21:15:48.930Z</timesheet_date_from> <timesheet_date_to>2026-06-16T21:15:48.930Z</timesheet_date_to> <type_code>sample string 9</type_code> <user_id>c78b669b-7fe4-4895-883e-152663f4f14d</user_id> <vat_rate>22</vat_rate> <vat_value>21</vat_value> <working_date>2026-06-16T21:15:48.930Z</working_date> </job_non_part_usage>
Response Information
Resource Description :
IHttpActionResult containing the batch save results for each processed record.
job_non_part_usage| Name | Description | Type | Additional information |
|---|---|---|---|
| id |
Primary Key |
globally unique identifier |
Required |
| jobs_id |
Foreign key of jobs |
globally unique identifier |
Required |
| user_id |
Foreign key, user that makes the approval |
globally unique identifier | |
| source_db_table_id |
Source Table used to generate this non part usage (Car_travel or user_timesheet) |
globally unique identifier | |
| source_id_in_table |
Source Object Id used to generate this non part usage (car_travel.id or user_timesheet.id) |
globally unique identifier | |
| working_date |
Date when the object has been generated |
date |
Required |
| timesheet_date_from |
In the case of a timesheet, the date+time FROM |
date | |
| timesheet_date_to |
In the case of a timesheet, the date+time TO |
date | |
| type_code |
Type of Non part (WorkingTime or TravelTime) |
string |
Max length: 50 |
| line_code |
code generated from the hour_type.code |
string |
Max length: 50 |
| description |
description generated from the hour_type.commercial_description |
string |
Max length: 255 |
| quantity |
Quantity converted in decimal (45 minutes is 0.75) |
decimal number | |
| price |
Unit Price computed via the hour_type (without discount) |
decimal number | |
| discount | decimal number | ||
| line_memo |
Extra memo on the line filled by the User |
string |
Max length: 4000 |
| job_approval_id |
Foreign key to the approval this lines belongs In case the line was already "included" inside a job approval (daily for exemple), then that value is field and row is now readonly |
globally unique identifier | |
| hour_type_id |
Hour type id |
globally unique identifier | |
| is_under_warranty |
Checking for warranty |
boolean | |
| no_warranty_reason |
Reason of no warranty |
string | |
| company_vat_id | globally unique identifier | ||
| vat_value | decimal number | ||
| vat_rate | decimal number | ||
| invoice_id | globally unique identifier | ||
| invoice_details_id | globally unique identifier | ||
| modified_dateutc |
Readonly system field managed by database, filled with GetUtcDate when adding,updating |
date |
Response Formats
application/json, text/json
{
"id": "7f2a1939-c370-428d-8a6f-2dcfda0f753c",
"jobs_id": "51d6bbdf-1b70-4be0-86b4-05d854be6bf1",
"user_id": "ae835b30-740f-4291-91ca-e17af830f1b3",
"source_db_table_id": "5657ae42-8932-44d7-9002-369f2d2bbb5a",
"source_id_in_table": "5b98a761-381e-4da5-b897-a405b0ed6037",
"working_date": "2026-06-16T21:15:48.9909973+00:00",
"timesheet_date_from": "2026-06-16T21:15:48.9909973+00:00",
"timesheet_date_to": "2026-06-16T21:15:48.9909973+00:00",
"type_code": "sample string 9",
"line_code": "sample string 10",
"description": "sample string 11",
"quantity": 12.0,
"price": 13.0,
"discount": 14.0,
"line_memo": "sample string 15",
"job_approval_id": "b2e7ddc9-9e1b-48c9-b8b9-bc626e8f2f54",
"hour_type_id": "faa586b6-7378-4834-bfb4-8eaa1def4df9",
"is_under_warranty": true,
"no_warranty_reason": "sample string 19",
"company_vat_id": "d449a00f-fc5c-404c-a824-280464c22ef5",
"vat_value": 21.0,
"vat_rate": 22.0,
"invoice_id": "693bf244-3f50-4378-8bc6-105901e197f5",
"invoice_details_id": "772d0ce7-d601-437f-aa2e-4ff5173772a7",
"modified_dateutc": "2026-06-16T21:15:48.9909973+00:00"
}
application/xml, text/xml
<job_non_part_usage xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <company_vat_id>d449a00f-fc5c-404c-a824-280464c22ef5</company_vat_id> <description>sample string 11</description> <discount>14</discount> <hour_type_id>faa586b6-7378-4834-bfb4-8eaa1def4df9</hour_type_id> <id>7f2a1939-c370-428d-8a6f-2dcfda0f753c</id> <invoice_details_id>772d0ce7-d601-437f-aa2e-4ff5173772a7</invoice_details_id> <invoice_id>693bf244-3f50-4378-8bc6-105901e197f5</invoice_id> <is_under_warranty>true</is_under_warranty> <job_approval_id>b2e7ddc9-9e1b-48c9-b8b9-bc626e8f2f54</job_approval_id> <jobs_id>51d6bbdf-1b70-4be0-86b4-05d854be6bf1</jobs_id> <line_code>sample string 10</line_code> <line_memo>sample string 15</line_memo> <modified_dateutc>2026-06-16T21:15:48.990Z</modified_dateutc> <no_warranty_reason>sample string 19</no_warranty_reason> <price>13</price> <quantity>12</quantity> <source_db_table_id>5657ae42-8932-44d7-9002-369f2d2bbb5a</source_db_table_id> <source_id_in_table>5b98a761-381e-4da5-b897-a405b0ed6037</source_id_in_table> <timesheet_date_from>2026-06-16T21:15:48.990Z</timesheet_date_from> <timesheet_date_to>2026-06-16T21:15:48.990Z</timesheet_date_to> <type_code>sample string 9</type_code> <user_id>ae835b30-740f-4291-91ca-e17af830f1b3</user_id> <vat_rate>22</vat_rate> <vat_value>21</vat_value> <working_date>2026-06-16T21:15:48.990Z</working_date> </job_non_part_usage>