Update bid line item
const url = 'https://app.buildworkpro.com/api/v1/bids/1/line-items/1';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"productId":1,"markName":"example","description":"example","quantity":"example","width":"example","height":"example","depth":"example","area":"example","perimeterLf":"example","volumeCf":"example","buyTaxPercent":"example","sellTaxPercent":"example","kind":"item","isOptional":true,"order":1,"deletedAt":"example","unitPrice":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://app.buildworkpro.com/api/v1/bids/1/line-items/1 \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "productId": 1, "markName": "example", "description": "example", "quantity": "example", "width": "example", "height": "example", "depth": "example", "area": "example", "perimeterLf": "example", "volumeCf": "example", "buyTaxPercent": "example", "sellTaxPercent": "example", "kind": "item", "isOptional": true, "order": 1, "deletedAt": "example", "unitPrice": "example" }'Authorizations
Section titled “ Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “ Path Parameters ”Header Parameters
Section titled “ Header Parameters ”Idempotent retry key for mutating operations. The first request with a given key executes normally and BuildWorkPro caches the response. Replaying the same key with the same request body (method + path + JSON body, SHA-256 hashed) returns the cached response without re-executing the mutation. Replaying with a DIFFERENT body returns 409 idempotency_key_reused. The cache TTL is 24 hours; after expiry the key is treated as a new operation. Keys are tenant-scoped. Recommended: a fresh UUID v4 per logical operation.
Request Body
Section titled “ Request Body ”object
Item = priced line; section = header grouping the rows after it; note = customer-visible text.
An optional (alternate) priced line, quoted outside the bid total.
Responses
Section titled “ Responses ”Updated
object
object
Item = priced line; section = header grouping the rows after it; note = customer-visible text.
An optional (alternate) priced line, quoted outside the bid total.
Human-friendly mark name, e.g. W-01. Null on section and note rows.
Sort position within the bid. A section covers every following row until the next section.
object
Server-generated request identifier
object
Opaque cursor for the next page; null when no more results
Whether more pages are available after this one
Items in this page
Example
{ "data": { "kind": "item" }}Error
object
URL identifying the problem type
Short human-readable summary
HTTP status code
Human-readable explanation
Server-generated request identifier
Validation error array (422 only)
object
Field path that failed validation
Validation error code
Human-readable validation message
Example generated
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Error
object
URL identifying the problem type
Short human-readable summary
HTTP status code
Human-readable explanation
Server-generated request identifier
Validation error array (422 only)
object
Field path that failed validation
Validation error code
Human-readable validation message
Example generated
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Error
object
URL identifying the problem type
Short human-readable summary
HTTP status code
Human-readable explanation
Server-generated request identifier
Validation error array (422 only)
object
Field path that failed validation
Validation error code
Human-readable validation message
Example generated
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}